html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

embed,
iframe,
object {
	max-width: 100%;
}

/* Sections
	 ========================================================================== */

body {
	color: #363636;
	background: #f9f9f9;
	font: 18px/1.33 "Lato", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
	min-width: 320px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0;
}

.visual {
	min-height: 48.26vh;
	background-size: cover;
	background-position: 50%;
	text-align: center;
	font: 22px/1.33 "Ubuntu", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
	color: #f4f4f4;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	z-index: 1;
}

.container {
	width: 100%;
	max-width: 1200px;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/* Text-level semantics
	 ========================================================================== */

a {
	background-color: transparent;
}

a:hover {
	text-decoration: underline;
}

abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	text-decoration: underline dotted; /* 2 */
}

b, strong {
	font-weight: bolder;
}

code, kbd, samp {
	font-family: "Lato", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
	font-size: 16px;
}

small {
	font-size: 80%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img {
	border-style: none;
}

/* IE 10 Fixes
	 ========================================================================== */

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/

h1, h2, h3, h4, h5, h6 {
	clear: both;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

h1, .h1, h2, .h2, .privacy-content-block h1, h3, .h3, .privacy-content-block h2, h4, .h4, .privacy-content-block h3, h5, .h5, h6, .h6, .h {
    font-family: "Ubuntu", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    line-height: 1.2;
    font-weight: 300;
    margin: 0 0 .6em;
    color: #e9b418;
    text-transform: capitalize;
}

h1 {
	font-size: 52px;
	color: inherit;
	font-weight: bold;
}

h2, .h2, .privacy-content-block h1 {
    font-size: 40px;
}

h3, .h3, .privacy-content-block h2 {
	font-size: 32px;
}

p {
	margin: 0 0 1.5em;
}

.btn {
    font-family: "Ubuntu", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    font-size: 18px;
    line-height: 1.33;
    color: #f4f4f4;
    background: #71b340;
    padding: 0.6em 0.6em;
    font-weight: 500;
    min-width: 187px;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    border: 2px solid #71b340;
}

.btn:hover {
	text-decoration: none;
	background: #f4f4f4;
	color: #71b340;
}

.btn.btn-yellow {
	background: #e9b418;
	border-color: #e9b418;
	color: #f4f4f4;
}

.btn.btn-yellow:hover {
	background: none;
	color: #e9b418;
}

.btn.btn-white {
	border-color: #f4f4f4;
	background: #f4f4f4;
	color: #363636;
	border-color: #f4f4f4;
}

.footer .btn-white:hover {
	border-color: #f4f4f4;
	background: none;
	color: #f4f4f4;
}

.non-underline:hover {
	text-decoration: none;
}

.btn.btn-default:hover {
    background: #363636;
    color: #f4f4f4;
}

.btn.btn-default {
    background: none;
    border-color: #363636;
    color: #363636;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

figure {
	margin: 1em 0;
	/* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button, input[type='button'], input[type='reset'], input[type='file'], input[type='submit'] {
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	border-radius: 0;
	cursor: pointer;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #71b340;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #71b340;
}

input[type='text'], input[type='tel'], input[type='email'], input[type='search'], input[type='password'], textarea {
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	border-radius: 0;
	box-sizing: border-box;
	border: 1px solid #363636;
	padding: 0.9em 0.9em;
	font-size: 14px;
	font-style: italic;
	width: 100%;
	background: #f4f4f4;
}

input {
	line-height: normal;
}

input::placeholder {
	color: #c8c3c0;
}

select {
	border: 1px solid #71b340;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
.header {
	background: #f4f4f4;
	height: 90px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	max-height: none;
	z-index: 2;
}

.header .fluid-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
}

.fluid-container, .container {
    padding: 20px;
    margin: 0 auto;
}

.logo img {
    display: inline;
    vertical-align: top;
}

.header-holder {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

#nav {
    text-transform: uppercase;
    font-family: "Ubuntu", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

@media (max-width: 1023px) {
	#nav {
	    position: absolute;
	    width: 100%;
	    top: 90px;
	    bottom: 0;
	    left: 0;
	    padding: 15px 0;
	    visibility: hidden;
	}
}

@media (max-width: 1199px) {
	#nav {
	    font-size: 15px;
	}

	.header .btn {
    	font-size: 15px;
	}

	.logo {
    	width: 200px;
	}
}

.nav-opener {
    vertical-align: middle;
    width: 30px;
    height: 22px;
    position: relative;
    margin: 0 0 0 10px;
    display: none;
}

.nav-opener span, .nav-opener:before, .nav-opener:after {
    background: #363636;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 4px;
    margin-top: -2px;
    transition: all .3s linear;
}

.nav-opener:before, .nav-opener:after {
    content: '';
    top: 0;
    margin-top: 0;
}

.open-nav .nav-opener span {
    opacity: 0;
}

.open-nav .nav-opener:before, .open-nav .nav-opener:after {
    transform: rotate(45deg);
    top: 50%;
    left: 0;
    right: 0;
}

.nav-opener:after {
    bottom: 0;
    top: auto;
}

.open-nav .nav-opener:after {
    transform: rotate(-45deg);
}

@media (max-width: 1023px) {
	.nav-opener {
	    display: block;
	}
}

.header .btn {
    font-weight: 400;
    min-width: 145px;
    margin: 0 0 0 15px;
}

#nav ul, .footer .buttons-list, .visual .button-list, .visual .navbar ul, .tabset, .info-card .buttons-list, .testimonials-block .left-col ul, .contact-block .contact-list, .search-results ul, .map-section .map-tabset, .map-section .map-list-container .map-list, .error-block ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#nav ul li {
    float: left;
    padding: 0 10px;
}

#nav ul a {
    color: inherit;
}

#nav ul li:hover, #nav ul li.active {
    color: #e9b418;
}

.text-uppercase {
    text-transform: uppercase;
}

.mobile-visible {
    display: none;
}

.open-nav #nav {
    visibility: visible;
}

@media (max-width: 1023px) {
	#nav .nav-frame {
	    overflow-y: auto;
	    height: 100%;
	}

	#nav ul {
    	padding-bottom: 30px;
	}

	#nav ul li {
    	float: none;
	}

	#nav ul a {
    	display: block;
    	padding: 10px;
    	border-bottom: 1px solid #6c6b6b;
	}

	.open-nav .header {
    	height: 100%;
    	z-index: 100;
	}

	.header {
    	transition: height 0.4s ease-in, background 0.4s ease-in;
	}
}

@media (max-width: 1199px) {
	#nav ul li {
	    padding: 0 8px;
	}
}

.animating-burger-menu body, .open-nav body {
    overflow: hidden;
}

@media (max-width: 767px) {
	.mobile-hidden {
		display: none;
	}
	.header .btn {
		margin: 0;
	}
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #71b340;
  text-decoration: none;
}

a:hover, a:active {
	outline: 0;
}

.navbar__text-item a:hover, .author-share a:hover {
    text-decoration: none;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Blog Post Holder CSS
--------------------------------------------------------------*/

.post-list {
	margin: 0 -.175rem;
	padding: 0;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

.post-list li {
	list-style: none;
	width: 100%;
	-webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.25);
	background-color: #FCFCFC;
	border-radius: 10px;
	margin-bottom: 40px;
	transition-duration: 0.3s;
}

@media (min-width: 860px) {
	.post-list li {
		width: 400px;
	}
}

@media (min-width: 1180px) {
	.post-list li {
			width: 565px;
	}

	.post-list {
		justify-content: space-between;
	}
}

.post-list li:hover {
	transform: scale(1.03);
}

.post-wrapper {
	width: 100%;
	padding-bottom: 60px;
}

.post-box-img {
	width: 100%;
	height: 280px;
	background-size: cover;
	background-position: center center;
	border-radius: 10px 10px 0 0;
}

.post-content {
	width: 495px;
	margin: 25px auto 0;
	text-align: justify;
	max-width: 90%;
}

.post-content .title {
	font-size: 32px;
	color: #71B340;
	font-weight: 300;
	margin-bottom: 18px;
}

.post-content p {
	margin-top: 0;
	font-size: 16px;
	color: #363636;
}

.post-author {
	display: flex;
	align-items: center;
}

.post-author .author-image-container {
	width: 60px;
	height: 60px;
	margin-right: 15px;
}

.post-author .author-image-container img {
	border-radius: 50%;
}

.post-author .author-meta-container .author-name {
	margin-bottom: 10px;
}

.post-author .author-meta-container .publish-date {
	margin-bottom: 0;
	color: #BEBEBE;
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.blog-main-offset {
	margin-top: -140px;
	z-index: 10;
	background: #f9f9f9;
	border-top: 3px solid #FDB813;
	padding: 20px;
}

.entry-title {
	font-weight: 300;
	font-size: 40px;
	color: #E9B418;
	margin-bottom: 20px;
}

.entry-content h2 {
	font-size: 40px;
	margin-bottom: 18px;
}

.entry-content p {
	font-size: 18px;
	line-height: 24px;
	margin-bottom: 20px;
	text-align: justify;
}

.blog-post-row {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.sidebar-left {
	width: 120px;
}

.sidebar-left .publish-date-holder {
	padding: 18px 38px;
	background: #363636;
	text-align: center;
	color: #FFFFFF;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 10px;
}

.sidebar-left .publish-date-holder p {
	margin-bottom: 0;
	font-size: 16px;
	font-weight: 300;
}

.sidebar-left .publish-date-holder .publish-day {
	font-size: 32px;
	font-weight: 700;
}

.sidebar-left-text {
	font-size: 14px;
	font-weight: 300;
	margin-bottom: 10px;
}

.sidebar-left .author-share {
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 2px solid #E9B418;
}

.sidebar-left .author-share a {
	margin-bottom: 10px;
	display: flex; 
	align-items: center;
	color: #363636;
}

.sidebar-left .related-posts {
	display: flex;
	flex-direction: column;
}

.sidebar-left .related-post {
	width: 120px;
	height: 80px;
	-webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
	background-size: cover;
	margin-bottom: 10px;
}

.sidebar-left .related-post-overlay {
	width: 100%;
	height: 100%;
}

.sidebar-left .related-post-overlay:hover {
	background: #71b34075;
}

.content-middle {
	width: 750px;
}

.sidebar-right {
	width: 240px;
}

.sidebar-right .vaccine-sidebar {
	margin-bottom: 30px;
	text-align: center;
	padding: 20px;
	border: 1px solid #363636;
	border-radius: 5px;
}

.sidebar-right .widget-area ul {
	margin: 0;
	list-style: none;
	padding: 0;
}

.sidebar-right .widget-area li {
	margin-bottom: 10px;
}

/* Responsive Design */

@media (max-width: 1150px) {
	.sidebar-left {
		width: 100%;
		margin-bottom: 20px;
	}

	.sidebar-left .author-share {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.sidebar-left .author-share {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.sidebar-left .author-share a, .sidebar-left .author-share p {
		margin-right: 10px;
	}

	.sidebar-left .related-posts {
		display: flex;
		flex-direction: row;
		align-items: center;
		padding-bottom: 20px;
		border-bottom: 2px solid #E9B418;
	}

	.sidebar-left .related-posts p, .sidebar-left .related-posts .related-post {
		margin-bottom: 0;
		margin-right: 15px;
	}
}

@media (max-width: 1060px) {
	.sidebar-right {
		display: none;
	}

	.content-middle {
		width: 100%;
	}

	.content-middle .wp-block-image {
		margin: 0 auto 1em;
		text-align: center;
	}
}

/*--------------------------------------------------------------
## Footer CSS
--------------------------------------------------------------*/

/* Booking Row */
.booking-row {
	background: #71b340;
	color: #f4f4f4;
}

.booking-row .container {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-align: center;
	align-items: center;
}

.booking-row .title {
	font: 300 32px "Ubuntu", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

.booking-row .btn {
	border-color: #f4f4f4;
	background: #f4f4f4;
	color: #71b340;
	margin-left: 30px;
	min-width: 255px;
}

.booking-row .btn:hover {
	background: #71b340;
	color: #f4f4f4;
}

/* Search Section */

.section-search {
	color: #fff;
	display: -ms-flexbox;
	display: flex;
}

.section-search .col {
	padding: 20px;
	min-height: 530px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: center;
	background-position: 50%;
	background-size: cover;
}

.section-search h2 {
	color: inherit;
	margin-bottom: 10px; 
}

.search-form {
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	max-width: 710px;
}

.search-form .input-holder {
	-ms-flex-positive: 1;
	flex-grow: 1;
	position: relative;
}

.search-form input[type="text"] {
	border: none;
	width: 100%;
	color: #363636;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	text-align: left;
	height: 100%;
}

.search-form .input-holder.has-icon > input {
	padding-right: 52px;
}

.search-form .locate-button {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	border: none;
	background: none;
	padding: 0;
	width: 35px;
}

/* main footer */

.footer {
	background: #363636;
	color: #f4f4f4;
}

.footer .fluid-container {
	padding-top: 90px;
	padding-bottom: 50px;
}

.footer .cols {
	display: -ms-flexbox;
	display: flex;
	margin-left: -50px;
}

.footer .col {
	-ms-flex-positive: 1;
	flex-grow: 1;
	-ms-flex-negative: 1;
	flex-shrink: 1;
	-ms-flex-preferred-size: 0;
	flex-basis: 0;
	padding: 0 0 0 50px;
}

.footer-logo {
	margin-bottom: 25px;
	margin-top: -17px;
}

.footer h3 {
	color: inherit;
	font-size: inherit;
	text-transform: uppercase;
	font-weight: 500;
	margin: 0 0 30px;
}

.footer ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

.footer a {
	color: inherit;
}

.footer .buttons-list li {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 15px;
}

.footer .buttons-list li:first-child {
	margin-right: 15px;
}

.footer .col:nth-child(2) {
	-ms-flex-preferred-size: inherit;
	flex-basis: inherit;
	-ms-flex-positive: 0;
	flex-grow: 0;
}

/* responsive */

@media (max-width: 1023px) {
	.section-search {
			display: block;
	}

	.booking-row .title {
    font-size: 25px;
	}

	.footer .cols {
    display: block;
    padding: 0 30% 0 0;
    position: relative;
    margin: 0;
	}

	.footer .col {
    padding: 0 0 40px;
	}
}

@media (max-width: 767px) {
	.booking-row .title {
			display: block;
			margin-bottom: 30px;
	}

	.booking-row .container {
    display: block;
    text-align: center;
	}

	.footer {
    text-align: center;
	}

	.footer .buttons-list li:first-child {
    margin: 0 0 15px;
	}

	.footer .buttons-list li {
    display: block;
    margin: 0 0 15px;
	}

	.footer .fluid-container {
			padding-top: 40px;
			padding-bottom: 40px;
	}

	.footer .cols {
			padding: 0;
	}
}

/* Error */

.error-block {
	text-align: center;
	padding: 70px 0;
	font-size: 21px;
}

.error-block .image-holder {
	width: 28.11vw;
	margin: 0 auto 70px;
}

.error-block .text-holder {
	max-width: 560px;
	margin: 0 auto;
}

.error-block li {
	display: inline-block;
	vertical-align: middle;
	padding: 0 4px 0 8px;
}

@media (max-width: 1023px) {
	.error-block {
			padding: 35px 0;
	}

	.error-block .image-holder {
    margin-bottom: 35px;
	}
}

@media (max-width: 767px) {
	.error-block {
			padding: 15px 0;
			font-size: inherit;
	}

	.error-block .image-holder {
    width: 50vw;
    margin-bottom: 15px;
	}
}