@charset "utf-8";  

/*
	Theme Name: Kui Parks Theme
	Theme URI: https://kuiparks.com.au
	Description: Custom responsive theme for Kui Parks.
	Version: 1.0861
	Author: Studio 84 Design
	Author URI: https://studio84design.com.au/
	Tags: 

	License: MIT
	License URI: https://opensource.org/licenses/mit-license.php
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*::after,
*::before {
	box-sizing:border-box;
	text-rendering:optimizelegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
	visibility:visible;
    opacity:1;
	scroll-behavior:smooth;
}
body {
	font:420 1.6rem/1.5 "Open Sans", sans-serif;
	color:var(--text);
	background:hsl(30, 20%, 98%);
	margin:0;
}
img {
	max-width:100%;
	height:auto;
	vertical-align:bottom;
}
ul,
ol {
	padding:0; 
}
.blog ul,
.blog ol,
.body-text ul,
.body-text ol,
.content ul,
.content ol {
	margin:0 0 3rem 2rem;
}
details ul.wp-block-list,
details ol.wp-block-list {
	margin:0 2rem 3rem 4rem;
}
.blog ul li,
.blog ol li {
	margin-bottom:.5rem;
}
strong {
	font-weight:700;
}
a {
	color:var(--green);
	font-weight:600;
	text-decoration:none;
}
a:hover {
	color:var(--red);
}
.body-text a:hover,
.blog a:hover,
.special-offers-holder a:hover {
	border-bottom:.1rem solid;
}
a:focus {
	outline-color:var(--green);
    outline-width:.1rem;
    outline-style:solid;
    outline-offset:.5rem;
}
a:hover,
a:active {
	outline:0;
}
.body-text img,
.blog img {
	border-radius:.4rem;
	margin-bottom:1rem;
}
hr {
    margin:3rem auto;
    border:none;
    height:.2rem;
    background:var(--light-grey);
}
input:focus {
	outline:.1rem solid var(--green);
}
.logo a:focus {
	outline:none;
}
:target::before {
	content:"";
	display:block;
	height:3rem;
	margin:-3rem 0 0;
}

/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

h1 {
	font:700 3rem/1.2 "Open Sans", sans-serif;
	color:var(--blue);
	letter-spacing:-0.08rem;
	margin:1rem 0 2rem;
}
h1.page-title {
	width:100%;
	color:white;
	text-shadow:0 .2rem .5rem hsla(0, 0%, 0%, .75);
	text-align:center;
	border-bottom:.1rem solid var(--border-grey);
	padding:3rem 0;
	margin:0 auto 2rem;
}
body.latest-news-and-articles h1.page-title,
body.search-results h1.page-title {
	padding-bottom:5rem;
}
h1.park-name {
	font:800 3rem/1.2 "Open Sans", sans-serif;
	color:var(--green);
	text-shadow:0 0 1rem white;
	width:65%;
	max-width:74rem;
	margin:1rem 0 2rem;
}
h1.map-title {
	position:absolute;
	top:6.5rem;
	font-size:2.6rem;
	color:white;
	margin:1rem 5% 0;
	z-index:9;
}
h2 {
	font:700 2.4rem/1.2 "Open Sans", sans-serif;
	color:var(--blue);
	letter-spacing:-0.05rem;
	margin:1.5rem 0 3rem;
}
h3 {
	font:620 1.8rem/1.3 "Open Sans", sans-serif;
	color:var(--text);
	letter-spacing:-0.02rem;
	margin:1.5rem 0 1rem;
}
h4 {
	font:700 1.7rem/1.5 "Open Sans", sans-serif;
	color:var(--text);
	letter-spacing:-0.03rem;
	margin:3rem 0 2rem;
}
.body-text h2,
.body-text h3,
.body-text h4,
.blog h2,
.blog h3,
.blog h4 {
	margin:2.5rem 0 1rem;
}
.body-text h3 {
	font:700 1.8rem/1.3 "Open Sans", sans-serif;
}
.green-text { color:var(--green); }
.blue-text { color:var(--blue); }
.red-text { color:var(--red); }
.black-text { color:var(--text); }


/*------------------------------------*\
    UNIVERSIAL
\*------------------------------------*/

html {
	--green:hsl(134, 55%, 42%);
	--light-green:hsl(134, 55%, 50%);
	--red:hsl(358, 70%, 40%);
	--blue:hsl(223, 100%, 33%);
	--light-blue:hsl(223, 100%, 56%);
	--medium-blue:hsl(223, 100%, 29%);
	--dark-blue:hsl(223, 100%, 25%);
	--yellow:hsl(52, 100%, 60%);
	--border-grey:hsl(0, 0%, 78%);
	--grey:hsl(0, 0%, 64%);
	--light-grey:hsl(0, 0%, 86%);
	--text:hsl(180, 0%, 21%);
}

/* margins */
main .margin-top-1 { margin-top:1rem; }
main .margin-top-2 { margin-top:2rem; }
main .margin-top-3 { margin-top:3rem; }
main .margin-top-4 { margin-top:4rem; }
main .margin-top-5 { margin-top:5rem; }
main .margin-top-6 { margin-top:6rem; }
main .margin-top-7 { margin-top:7rem; }
main .margin-top-8 { margin-top:8rem; }

main .margin-bottom-1 { margin-bottom:1rem; }
main .margin-bottom-2 { margin-bottom:2rem; }
main .margin-bottom-3 { margin-bottom:3rem; }
main .margin-bottom-4 { margin-bottom:4rem; }
main .margin-bottom-5 { margin-bottom:5rem; }
main .margin-bottom-6 { margin-bottom:6rem; }
main .margin-bottom-7 { margin-bottom:7rem; }
main .margin-bottom-8 { margin-bottom:8rem; }

/* padding */
main .padding-1 { padding:1rem; }
main .padding-2 { padding:2rem; }
main .padding-3 { padding:3rem; }
main .padding-4 { padding:4rem; }

/* buttons */
button#booking-enquiry-link,
button#booking-enquiry-link-mobile,
button#park-review-link,
button#park-review-link-mobile {
	border:none;
}
main .wp-block-button__link,
.park-banner .blue-btn,
button#booking-enquiry-link,
button#booking-enquiry-link-mobile,
button#park-review-link,
button#park-review-link-mobile {
    background-color:var(--blue);
	background-image:url(img/icons/arrow-white-right.svg);
	background-repeat:no-repeat;
	background-position:right 1.5rem center;
	background-size:2rem;
	border-bottom:.5rem solid var(--light-blue);
    border-radius:.3rem;
    box-shadow:none;
	font:600 1.8rem / 1.2 "Open Sans", sans-serif;
	color:white;
    text-decoration:none;
    padding:1rem 5rem 1rem 1.5rem;
	cursor:pointer;
}
main .booking-link.wp-block-button__link {
	background-image:url(img/icons/online-booking-icon.svg);
	background-size:1.4rem;
}
main .wp-block-button__link:hover,
.park-banner .blue-btn:hover,
button#booking-enquiry-link:hover,
button#booking-enquiry-link-mobile:hover {
    background-color:var(--light-blue);
    border-bottom:.5rem solid var(--blue);
}
main .green-btn .wp-block-button__link,
button#park-review-link,
button#park-review-link-mobile,
.state-links a {
	background-color:var(--green) !important;
	border-color:var(--light-green);
}
main .green-btn .wp-block-button__link:hover,
button#park-review-link:hover,
button#park-review-link-mobile:hover,
.state-links a:hover {
	background-color:var(--light-green) !important;
	border-color:var(--green);
}
.state-links a {
	color:white;
	border-bottom:.5rem solid var(--light-green);
	border-radius:.3rem;
    padding:1rem 2.5rem;
}
.park-banner .white-btn {
	color:var(--blue);
    background:white;
	border:.1rem solid var(--blue);
    border-radius:.3rem;
    box-shadow:none;
    text-decoration:none;
    padding:1rem 1.5rem;
    font-size:1.8rem;
}
.park-banner .white-btn:hover {
	color:white;
    background:var(--light-blue);
}
.video-link a {
	display:inline-block;
	color:white;
	background:var(--red);
	border-radius:.3rem;
	padding:.5rem 1.5rem;
}
.video-link a:hover {
	background:var(--text);
	border:none;
}
.video-link a::before {
	position:relative;
	display:inline;
	font-family:dashicons;
	content:'';
	margin-right:1rem;
	vertical-align:bottom;
}

/* boxes */
.white-box,
.green-box,
.yellow-box,
.red-box,
.blue-box {
	border-radius:.3rem;
	padding:.5rem 1.9rem 1rem;
	margin:2rem auto;
}
.white-box {
	background:white;
	border:.1rem solid var(--border-grey);
}
.green-box {
	background:hsl(134, 55%, 92%);
	border:.1rem solid hsl(134, 55%, 44%);
}
.yellow-box {
	background:hsl(56, 100%, 90%);
	border:.1rem solid hsl(56, 100%, 44%);
}
.red-box {
	background:hsl(358, 70%, 93%);
	border:.1rem solid hsl(358, 70%, 55%);
}
.blue-box {
	background:hsl(223, 100%, 94%);
	border:.1rem solid hsl(223, 100%, 40%);
}

/* backgrounds */
.white-bg { background-color:white; }
.blue-bg { background-color:var(--blue); }
.green-bg { background-color:var(--green); }
.red-bg { background-color:var(--red); }
.grey-bg { background-color:var(--grey); }

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	display:flex;
	flex-direction:column;
	width:100%;
	margin:0;
	position:relative;
	min-height:100vh;
}
/* header */
.header {
	width:100%;
	height:6rem;
	background:white;
	border-bottom:.1rem solid var(--border-grey);
}
.header-inner {
	display:grid;
	grid-template-columns:8rem auto;
	column-gap:1rem;
	width:90%;
	max-width:164rem;
	margin:0 auto;
}
/* socials */
.socials {
	display:none;
	z-index:2;
}
.socials ul {
	display:flex;
	list-style-type:none;
	margin-top:1.1rem;
}
.socials ul li a {
	display:block;
	height:4rem;
}
.socials ul li a:hover {
	fill:var(--blue);
	border-bottom:.3rem solid;
}
/* logo */
.logo {
	width:8rem;
	height:auto;
	margin-top:.3rem;
	z-index:9999;
}
/* nav */
.nav {
	margin:0;
}
.nav ul li.home-btn svg {
	display:none;
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated {
    transform:scale(1) !important;
}
div#mega-toggle-block-1 {
    width:3.1rem;
}
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner, 
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner::before, 
#mega-menu-wrap-header-menu .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner::after {
    width:3.1rem !important;
    height:.3rem !important;
}
#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.highlight {
	background:var(--green);
	border-radius:.3rem;
}
#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.highlight a {
	color:white;
}
#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.highlight > ul.mega-sub-menu {
	right:0;
}
span.mega-indicator {
    margin-right:-.5rem !important;
}
#mega-menu-wrap-header-menu .mega-menu-toggle + #mega-menu-header-menu {
    z-index:999 !important;
}
/* content */
main {
	flex:1;
}
.body-text {
	width:90%;
	max-width:80rem;
	margin:2rem auto 4rem;
}
.body-text p,
.blog p {
	line-height:1.6em;
}
.content {
	width:90%;
	max-width:108rem;
	margin:2rem auto 4rem;
}
.link-box {
	position:sticky;
    top:3rem;
    background:white;
}
.link-box ul,
.park-link-box ul {
    padding:0;
	margin:0;
	list-style-type:none;
	font-size:1.5rem;
}
.link-box ul li,
.park-link-box ul li {
    border:.1rem solid var(--border-grey);
	border-top:none;
}
.link-box ul li:last-of-type,
.park-link-box ul li:last-of-type {
	border-radius:0 0 .5rem .5rem;
}
.link-box ul li a,
.park-link-box ul li a {
	display:block;
    color:var(--text);
	padding:.8rem 1.8rem;
}
.link-box ul li a:hover,
.park-link-box ul li a:hover {
	background:var(--light-grey);
}
.link-box p.title,
.park-link-box p.title {
    color:white;
    background:var(--blue);
	border:.1rem solid var(--blue);
	border-radius:.5rem .5rem 0 0;
    padding:1rem 2rem;
    margin:0;
}
/* sidebar */
.sidebar {
	display:none;
}
/* footer */
.footer {
	width:100%;
	background:white;
	margin:0;
	padding:0;
}
.footer-top {
	width:100%;
	border-top:.1rem solid var(--border-grey);
	border-bottom:.1rem solid var(--border-grey);
	padding:2rem 0;
}
.footer-top-inner {
	display:grid;
	width:90%;
	max-width:108rem;
	text-align:center;
	margin:0 auto;
}
.footer-top-inner ul {
	padding:0;
	margin:0;
}
.footer-top-inner ul li {
	list-style-type:none;
	margin-bottom:1rem;
}
.footer-top a {
	color:var(--text);
	font-size:1.5rem;
	font-weight:450;
}
.footer-bottom {
	display:grid;
	text-align:center;
	align-items:center;
    justify-items:center;
	width:90%;
	max-width:108rem;
	font-size:1.4rem;
	margin:0 auto;
	padding:2rem 0 2.5rem;
}
.footer-bottom .footer-logo {
	width:5rem;
	height:auto;
}
.footer-bottom li {
	list-style-type:none;
}
.footer-bottom a {
	font-size:1.4rem;
	color:var(--text);
}
.footer-top a:hover,
.footer-bottom a:hover {
	color:var(--green);
	border-bottom:.1rem solid;
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/

/* home slider */
main .home-slider {
    border-bottom:.1rem solid var(--border-grey);
}
main .home-slider div.n2-ss-section-main-content {
	padding:3rem 0 5rem !important;
}
main .home-slider .n2-ss-slider .n2-ss-item-image-content {
	text-align:center;
}
main .home-slider .n2-ss-layer-with-background {
	background-position:center !important;
    background-size:cover !important;
}
main .home-slider .n2-ss-slider .n2-ss-item-image-content img {
	width:100%;
    height:120rem;
	transform:rotate(90deg);
}
main .home-slider .banner-location,
main .home-slider .banner-title h1,
main .home-slider .banner-title h2 {
	font-weight:800;
}
main .home-slider .banner-location,
main .home-slider .banner-title,
main .home-slider .banner-sub-title,
main .home-slider .banner-btn,
main .home-slider .banner-book-btn,
main .home-slider .banner-btn-holder {
	width:90% !important;
	max-width:162rem !important;
	margin:0 auto 2rem !important;
}
main .home-slider .banner-location p::before,
.park-banner .banner-location::before {
	position:relative;
	display:inline-block;
	content:'';
	width:1rem;
	height:1.1rem;
	background:var(--red);
	margin-right:.5rem;
}
main .home-slider .banner-btn,
main .home-slider .banner-book-btn {
	width:100% !important;
	margin-bottom:1rem !important;
}
main .home-slider .banner-btn a {
	max-width:90% !important;
	border-bottom:.5rem solid var(--light-blue) !important;
}
main .home-slider .banner-btn a:hover {
	border-bottom:.5rem solid var(--blue) !important;
}
main .home-slider .banner-book-btn a {
	max-width:90% !important;
}
main .home-slider .n2-ss-layer[data-sstype="col"] {
	height:5rem;
    margin:1.5rem 0 0 !important;
}
main .home-slider .n2-ss-layer-row {
    padding:0 !important;
}

/* search bar */
.search-bar {
	position:relative;
	width:100%;
	max-width:116rem;
	background:var(--blue);
	margin:0 auto;
	z-index:9;
}
.search-bar-inner {
	color:var(--text);
	padding:4rem 5% 2rem;
}
form.home-search {
	position:relative;
	display:grid;
	grid-template-columns:calc(100% - 6rem) 6rem;
	width:100%;
	outline:.1rem solid var(--text);
	border-radius:.3rem;
	margin:-6.5rem 0 1rem;
    z-index:9;
}
form.home-search input[type="text"] {
	background:white !important;
	font:400 1.6rem / 1.2 "Open Sans", sans-serif;
	padding:1.5rem 2rem;
	border:none;
}
form.home-search button[type="submit"] {
	width:100%;
	background-color:var(--green);
	font:600 1.8rem / 1.2 "Open Sans", sans-serif;
	color:white;
	padding:1.4rem 2rem 1.6rem;
	border:none;
	cursor:pointer;
}
form.home-search button[type="submit"]:hover {
	background-color:var(--red);
}
.search-bar-sub-title {
    text-transform:uppercase;
    letter-spacing:.03rem;
    font-weight:500;
    font-size:1.5rem;
	text-align:center;
	color:white;
	margin-bottom:.5rem;
}
.search-filter-holder > div {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	gap:1rem;
    margin:0 auto;
}
.search-filter {
	position:relative;
	width:calc(33% - .6rem);
	color:white;
	text-align:center;
	padding-top:4.5rem;
}
.search-filter:hover {
	color:white;
	background:var(--light-blue);
	border-radius:.3rem;
}
.search-filter a {
	position:absolute;
	top:0;
	left:0;
	display:block;
	width:100%;
	height:100%;
}
.search-filter img,
.search-filter svg {
	width:5rem;
	fill:white;
	margin-top:.5rem;
}
.search-filter:hover svg {
	fill:white;
}
.search-filter p {
	font-size:1.2rem;
	font-weight:400;
	margin:.5rem auto 1rem;
}

/* feature parks & top journeys & blog */
.feature-parks,
.blog-list,
.states {
	width:100%;
}
.top-journeys {
	width:100%;
	background:white;
	border-top:.1rem solid var(--border-grey);
	border-bottom:.1rem solid var(--border-grey);
}
.feature-parks-inner,
.top-journeys-inner,
.blog-list-inner,
.states > div {
	width:90%;
	max-width:108rem;
	padding:2rem 0 3rem;
	margin:0 auto;
}
.feature-parks-inner ul, 
.top-journeys-inner ul,
.blog-list-inner ul {
	display:grid;
	grid-template-columns:100%;
	margin:0;
    row-gap:2rem;
}
.feature-parks-inner ul li,
.top-journeys-inner ul li,
.blog-list-inner ul li {
	list-style-type:none;
}
.feature-parks figure,
.top-journeys figure,
.blog-list figure {
	display:flex;
    align-content:center;
    flex-wrap:wrap;
	height:20rem;
	overflow:hidden;
}
.blog-list figure {
	height:auto;
}
.feature-parks figure a,
.top-journeys figure a,
.blog-list figure a {
	width:100%;
    height:100%;
}
.feature-parks figure img,
.top-journeys figure img,
.blog-list figure img {
	width:100%;
    height:100%;
	border-radius:.3rem;
	object-fit:cover;
}
.feature-parks h3 a,
.top-journeys h3 a,
.blog-list h3 a,
.blog-recent h3 a {
	color:var(--text);
	font-weight:610;
}
.feature-parks .wp-block-post-excerpt__excerpt,
.top-journeys .wp-block-post-excerpt__excerpt,
.blog-list .wp-block-post-excerpt__excerpt {
	margin:0 0 1rem;
}
.feature-parks .wp-block-post-excerpt__more-text,
.top-journeys .wp-block-post-excerpt__more-text,
.blog-list .wp-block-post-excerpt__more-text {
	margin:0;
}
.feature-parks .wp-block-post-excerpt__more-text a,
.top-journeys .wp-block-post-excerpt__more-text a,
.blog-list .wp-block-post-excerpt__more-text a,
.blog-recent .read-more a,
.park-specials p a {
	color:var(--blue);
    letter-spacing:-.03rem;
    background-image:url(img/icons/arrow-read-more.svg);
    background-position:100%;
    background-repeat:no-repeat;
    background-size:1.6rem;
    padding:1rem 2.2rem 1rem 0;
    transition:padding-right .12s;
}
.feature-parks .wp-block-post-excerpt__more-text a:hover,
.top-journeys .wp-block-post-excerpt__more-text a:hover,
.blog-list .wp-block-post-excerpt__more-text a:hover,
.blog-recent .read-more a:hover,
.park-specials p a:hover {
	color:var(--green);
    padding-right:2.6rem;
    text-decoration:none;
}
.park-specials {
	margin-bottom:3rem;
}
.park-specials h3 {
	color:var(--red);
}
.park-specials strong {
	color:var(--green);
}
.park-specials figure {
	position:relative;
}
.park-specials figure::before {
	position:absolute;
	top:0;
	right:0;
	display:inline-block;
	content:'';
	width:10rem;
	height:3rem;
	background:url(img/icons/park-specials-label.svg) top right no-repeat;
	background-size:10rem;
}

/* state btns */
.states-inner > div {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:1rem;
	padding:0 0 1rem;
}
.state-btn {
	position:relative;
	width:100%;
	font-weight:700;
	text-align:center;
	padding:6.5rem 0 0;
	border-radius:.3rem;
}
.state-btn:hover {
	color:white;
	background:var(--light-blue);
}
.state-btn a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border-radius:.3rem;
}
.state-btn img {
	width:7.5rem;
	max-height:15rem;
}

/* cta */
.cta-membership-1 {
	width:100%;
	max-width:108rem;
	padding:2rem 5% 4rem;
	margin:0 auto;
	background:url(img/green-bar-bg.svg) center no-repeat;
	background-position:50%;
    background-size:cover;
	text-align:center;
}
.cta-membership-1 h1,
.cta-membership-1 h2,
.cta-membership-1 h3,
.cta-membership-1 h4,
.cta-membership-1 strong {
	color:white;
}
.cta-membership-1 h2 {
	font-size:3rem;
    line-height:3.8rem;
	margin-bottom:0;
}
.cta-membership-1 h3 {
	margin:.5rem 0 1.5rem;
    font-size:1.8rem;
    line-height:2.4rem;
}
.cta-membership-1 strong {
	font-weight:420;
}
.cta-membership-1 img {
	max-width:26rem;
}
.booking-cta {
    background-color:var(--blue);
    border-radius:0 0 .6rem .6rem;
    color:white;
	text-align:center;
}
.booking-cta p {
	position:relative;
	padding:1.5rem 5% 1.5rem calc(5% + 5rem);
	margin:0;
}
.booking-cta p::before {
	position:absolute;
	display:block;
	content:'';
	width:5rem;
	height:4rem;
	background:url(img/kui-parks-logo.svg) center no-repeat;
	background-size:5rem;
	margin:0 0 0 -5rem;
}
.booking-cta a {
    color:var(--yellow);
}
.booking-cta a:hover {
    border-bottom:.1rem solid var(--yellow);
}

/* blog */
.blog {
	width:90%;
	max-width:80rem;
	padding:2rem 0 3rem;
	margin:0 auto;
}
.blog .date {
	font:500 1.5rem/1.5 "Open Sans", sans-serif;
	color:hsl(0, 0%, 40%);
}
.blog .date::before {
	position:relative;
	display:inline-block;
	content:"";
	font-family:dashicons;
	margin-right:1rem;
	vertical-align:bottom;
}
.blog-recent-holder {
	width:100%;
	padding:2rem 0;
	border-top:.1rem solid var(--border-grey);
	background:white;
}
.blog-recent-holder h2 {
	width:90%;
	max-width:108rem;
	text-align:center;
	margin:0 auto 2rem;
}
.blog-recent-holder ul {
	display:grid;
	gap:1rem;
	width:90%;
	max-width:108rem;
	margin:0 auto;
}
.blog-recent-holder ul li {
	list-style-type:none;
}
.blog-recent-holder ul li .thumb {
	height:20rem;
}
.blog-recent-holder ul li img {
	width:100%;
    height:100%;
	object-fit:cover;
	border-radius:.3rem;
}

/* pagination */
nav.wp-block-query-pagination {
	row-gap:.5rem;
	margin:2rem auto;
}
nav.wp-block-query-pagination a {
	display:inline-block;
	color:white;
	background:var(--text);
	border-radius:.3rem;
	padding:.8rem 1.5rem;
}
nav.wp-block-query-pagination span.current {
	color:var(--text);
	font-weight:bold;
	background:white;
	border:.1rem solid var(--text);
	border-radius:.3rem;
	padding:.8rem 1.5rem;
}
nav.wp-block-query-pagination a:hover {
	background:var(--red);
}
nav a.wp-block-query-pagination-previous {
	background:var(--blue);
}
nav a.wp-block-query-pagination-next {
	background:var(--green);
}

/* accordian */
.wp-block-details {
	position:relative;
}
.wp-block-details summary {
	background:white;
	border-radius:.4rem;
	list-style:none;
	outline:.1rem solid var(--light-grey);
	padding:1rem 5rem 1rem 2rem;
	margin-top:1rem;
}
.wp-block-details summary::after {
	position:absolute;
	right:2rem;
	display:inline-block;
	content:"";
    font-family:dashicons;
    font-weight:normal;
	transition:transform 200ms;
}
.wp-block-details summary:hover {
	cursor:pointer;
	background:var(--green);
	outline:.1rem solid var(--green);
    color:white;
}
.wp-block-details[open] summary {
	background:var(--blue);
	outline:.1rem solid var(--blue);
	color:white;
}
.wp-block-details[open] > summary:first-of-type::after {
	transform:rotate(180deg);
	transition:transform 200ms;
}
.wp-block-details[open] {
	padding-bottom:.5rem;
}
.wp-block-details p,
.wp-block-details h3 {
	padding:0 2rem;
}

/* specials */
.special-offers-holder > div > div {
	display:grid !important;
	gap:0;
	align-items:start;
	background:white;
	border-radius:.3rem;
	box-shadow:0 .1rem 1.5rem -.5rem var(--light-grey);
	margin:1rem 0;
	overflow:hidden;
}
.special-offers-holder > div > div:hover {
	box-shadow:0 .1rem 1.5rem 0 var(--light-grey);
}
.special-offers-holder .info p,
.special-offers-holder .info h3,
.special-offers-holder .specials-description {
	padding:0 2rem .5rem;
}
.special-offers-holder .info h3 {
	color:var(--red);
    font-size:2.2rem;
}
.special-offers-holder p.location {
	border-bottom:.2rem solid var(--border-grey);
    padding:0 0 1rem;
    margin:1.5rem 2rem 2rem;
}
.special-offers-holder p.location img {
	display:none;
    max-width:13rem;
    max-height:5.5rem;
    float:right;
    margin-left:2rem;
}
.special-offers-holder span {
	display:block;
}
.special-offers-holder a.profile-link {
	display:inline-block;
    color:white;
    background:var(--green);
    border-radius:.3rem;
    padding:1rem 2rem;
}
.special-offers-holder a.profile-link:hover {
    background:var(--blue);
	border:none;
}
.special-offers-holder:has(span:empty) {
	display:none;
}
.states.offers > div,
.states-inner.offers > div {
	width:100%;
	padding:0 0 .5rem;
	margin:0;
}
#special-offers .offers-holder,
.mobile-offers-holder {
	background:white;
    border:.1rem solid var(--border-grey);
    border-radius:.5rem;
    padding-bottom:1rem;
}
.mobile-offers-holder {
	padding:0 1.5rem .5rem;
    margin-bottom:3rem;
}
#special-offers .offers-holder summary {
	margin-top:0;
	list-style:none;
}

/* testimonials */
.testimonials .special-offers-holder {
	margin-bottom:2rem;
}
.testimonials .special-offers-holder img {
	width:100%;
	border-radius:.3rem;
}

/* memberships */
.join-btn {
	gap:1rem;
	margin:0 auto 4rem;
}
.join-btn a {
	display:inline-block;
}
ul.tick-box-list {
	margin-top:2rem;
}
ul.tick-box-list li {
	font-size:1.8rem;
	list-style-type:none;
	margin-bottom:1rem;
}
.app-icons {
	max-width:46rem;
    margin:2rem auto 3rem;
}

/* offers */
.offer-col-holder {
	width:90%;
	max-width:108rem;
	gap:1.5rem;
	margin:0 auto;
}
.offer-col-holder .body-text {
    width:100%;
	max-width:100%;
}
.partner-offer {
	border-bottom:.2rem solid var(--light-grey);
	padding-bottom:2rem;
	margin-bottom:3rem;
}
.partner-offer:not(:has(~ .partner-offer)) {
	border-bottom:none;
}

/* contact page */
.contact-holder > div {
	display:grid;
	width:90%;
	max-width:108rem;
	margin:0 auto 4rem;
}
.contact-form form {
	width:100%;
	margin:5rem auto 3rem;
}
.contact-form form label,
.modal-content form label,
.park-review-form {
	width:100%;
}
span.required {
    color:var(--red);
    font-weight:700;
}
.contact-form form input,
.contact-form form textarea,
.modal-content form input,
.modal-content form button,
.modal-content form textarea,
.park-review-form input,
.park-review-form textarea,
.modal-content select {
	width:100%;
	font:420 1.6rem/1.5 "Open Sans", sans-serif;
    color:var(--text);
	padding:.8rem 1.5rem;
    outline:.1rem solid var(--grey);
    border:none;
    border-radius:.3rem;
	margin-top:.5rem;
}
.contact-form input[type="checkbox"] {
	outline:0;
	margin:0;
}
.contact-form fieldset,
.modal-content fieldset {
	border:none;
    padding:0;
    margin:0;
}
.contact-form fieldset p,
.modal-content fieldset p {
    display:flex;
	flex-wrap:wrap;
    column-gap:1rem;
	row-gap:.5rem;
	background:var(--light-grey);
    border-radius:.3rem;
    padding:1rem 1.5rem .5rem;
	margin:1rem 0;
}
.contact-form .wpcf7-list-item label {
    display:flex;
    gap:1rem;
}
.contact-form .wpcf7-list-item {
    margin:0;
}
.contact-form input[type="submit"],
.modal-content input[type="submit"],
.park-review-form button[type="submit"] {
    font-size:1.8rem;
    color:white;
    background:var(--green);
    outline:none;
	border:none;
    border-bottom:.5rem solid var(--light-green);
    padding:1rem 2rem;
	cursor:pointer;
}
.contact-form input[type="submit"]:hover,
.modal-content input[type="submit"]:hover,
.park-review-form button[type="submit"]:hover {
    background:var(--light-green);
    border-bottom:.5rem solid var(--green);
}
.contact-form .wpcf7-not-valid-tip,
.modal-content .wpcf7-not-valid-tip {
    color:var(--red);
    font-size:1.4rem;
    margin-top:.3rem;
}
.wpcf7 form .wpcf7-response-output {
    margin:0 0 .5rem;
    padding:.5rem 1.5rem;
	background:hsl(125, 44%, 86%);
    border:.2rem solid hsl(194, 100%, 41%);
	border-radius:.3rem;
}
.wpcf7-spinner {
    display:block;
    margin-top:-3.8rem;
}
.grecaptcha-badge {
    visibility:hidden;
}

/* map download */
.map-download figure a {
	position:relative;
}
.map-download figure a:hover {
	border-bottom:none;
}
.map-download figure a::after {
	position:absolute;
	top:0;
	content:'';
	display:block;
	width:100%;
	height:100%;
	background:hsla(0, 0%, 0%, .25) url(img/icons/search-icon-large.svg) center no-repeat;
	background-size:10rem;
	border-radius:.4rem;
	transition:opacity .3s ease;
	opacity:0;
}
.map-download figure a:hover::after {
	opacity:1;
}
.map-download img {
	border-radius:.4rem;
}


/*------------------------------------*\
    PARK PROFILES
\*------------------------------------*/

/* banner */
.park-banner {
	position:relative;
}
.park-banner .text-holder {
	display:grid;
	align-items:center;
}
.park-banner .text {
	position:relative;
	grid-row:1;
    grid-column:1;
	width:90%;
	max-width:164rem;
	padding:2rem 0 0;
	margin:0 auto;
	z-index:9;
}
.park-banner .banner-location {
	max-width:65%;
	font:800 1.5rem/1.2 "Open Sans", sans-serif;
	color:var(--red);
	text-transform:uppercase;
}
.park-banner .overlay {
	position:relative;
	grid-area:1 / 1 / 2;
	width:100%;
	height:100%;
	background:url(img/banner-overlay.svg) center no-repeat;
	background-size:auto 150%;
    background-position-x:48%;
	z-index:8;
}
main .park-slider {
    grid-area:1 / 1 / 2;
	width:100%;
	height:100%;
}
main .park-slider .slide {
	height:100%;
	opacity:0;
}
main .park-slider .slide img {
	object-fit:cover;
	width:100%;
	height:100%;
	margin-left:20%;
}
.park-banner .btn-holder {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	background:var(--blue);
	text-align:center;
}
.park-banner .btn-holder-2 {
	display:none;
}
.park-banner .btn-holder-2 a {
	display:inline-block;
}
.park-banner a.bookings.blue-btn {
    background-image:none;
    padding:1rem 2.5rem;
	line-height:2.7rem;
}
.park-banner .btn-holder a.bookings,
.park-banner .btn-holder a.contact {
	display:inline-block;
	background:none;
	border:none;
	font-size:1.6rem;
	line-height:2.4rem;
	color:white;
	padding:1rem;
}
.park-banner .btn-holder a.bookings::before,
.park-banner .btn-holder a.contact::before,
.park-banner .btn-holder-2 a.bookings::before,
.park-banner .btn-holder-2 a.contact::before {
	position:relative;
	display:inline;
	font-family:dashicons;
	font-weight:normal;
	margin-right:.8rem;
	vertical-align:bottom;
}
.park-banner .btn-holder a.bookings::before,
.park-banner .btn-holder-2 a.bookings::before {
	/*content:'';*/
	display:inline-block;
	content:'';
	width:1.6rem;
	height:2rem;
	background:url(img/icons/online-booking-icon.svg) no-repeat;
	background-size:1.4rem;
}
.park-banner .btn-holder-2 a.bookings::before {
	height:2.2rem;
}
.park-banner .btn-holder a.contact::before,
.park-banner .btn-holder-2 a.contact::before {
	content:'';
}
.park-banner .btn-holder a.bookings:hover,
.park-banner .btn-holder a.contact:hover {
	background:var(--light-blue);
}

/* park gallery lightbox */
.park-gallery-inner {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:1rem;
	width:90%;
	height:34rem;
    overflow:hidden;
	max-width:108rem;
	margin:3rem auto 0;
}
.park-gallery-inner img {
	width:100%;
    height:100%;
    object-fit:cover;
	border-radius:.3rem;
}
.park-gallery-inner .lightboxed {
	position:relative;
	height:12rem;
	color:white;
	font-weight:400;
	text-shadow:0 .1rem .5rem black;
}
.park-gallery-inner .lightboxed:first-child {
	grid-column-start:span 2;
	height:20rem;
}
.park-gallery-inner .lightboxed:nth-child(3)::after,
.park-gallery-inner .lightboxed:nth-child(5)::after,
.park-gallery-inner .lightboxed:nth-child(7)::after {
	position:absolute;
	top:0;
	left:0;
	display:block;
	content:'View all photos';
	width:100%;
	height:100%;
	background:hsla(0, 0%, 0%, .4);
	border-radius:.3rem;
	text-align:center;
	padding-top:4.6rem;
}
.park-gallery-inner .lightboxed:nth-child(5)::after,
.park-gallery-inner .lightboxed:nth-child(7)::after {
	display:none;
	padding-top:6.2rem;
}

/* park sections */
.park-profile-large-screen {
	display:none;
}
.park-intro,
.park-facilities,
.park-contact,
.local-attractions,
.park-reviews,
.park-rates {
	width:100%;
}
.local-attractions,
.park-reviews {
	border-top:.1rem solid var(--border-grey);
	border-bottom:.1rem solid var(--border-grey);
}
.section-inner {
	width:90%;
	max-width:108rem;
	padding:2rem 0 3rem;
	margin:0 auto;
}
.park-accordion {
	width:100%;
	padding:0 5%;
}
.park-accordion summary {
    padding:2rem 0;
	list-style:none;
}
.park-accordion summary h2 {
	margin-bottom:1.5rem;
}
.park-accordion[open] summary h2 {
	margin-bottom:1rem;
}
.park-accordion summary::after {
	position:absolute;
	right:2rem;
	display:inline-block;
	content:"";
    font-family:dashicons;
    font-weight:normal;
	transition:transform 200ms;
	margin-top:-4rem;
}
.park-accordion summary:hover {
	cursor:pointer;
}
.park-accordion[open] > summary:first-of-type::after {
	transform:rotate(180deg);
	transition:transform 200ms;
	margin-top:-3.5rem;
}
.park-accordion[open] {
	padding-bottom:2rem;
}
.accommodation-bar ul,
.park-facilities ul,
.park-contact ul,
.park-rates ul {
	margin:0;
}
.accommodation-bar ul li,
.park-facilities ul li,
.park-contact ul li,
.local-attractions ul li,
.park-rates ul li {
	list-style:none;
}

/* intro */
.park-intro .tagline {
	font-size:2rem;
	letter-spacing:-0.03rem;
}
.page-intro .intro,
.park-intro .intro,
.local-attractions .intro,
.local-attractions .intro-mobile {
	max-height:5lh;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:4;
	-webkit-box-orient:vertical; 
	transition:max-height 0.5s;
}
.local-attractions .intro,
.local-attractions .intro-mobile {
	max-height:calc(7lh + 1.6rem);
	-webkit-line-clamp:7;
}
.page-intro .intro h2,
.page-intro .intro h3,
.page-intro .intro h4,
.park-intro .intro h2,
.park-intro .intro h3,
.park-intro .intro h4,
.local-attractions .intro h2,
.local-attractions .intro h3,
.local-attractions .intro h4,
.local-attractions .intro-mobile h2,
.local-attractions .intro-mobile h3,
.local-attractions .intro-mobile h4 {
	margin:1.5lh 0 -.5lh;
}
.park-intro .intro p,
.page-intro .intro p,
.local-attractions .intro p,
.local-attractions .intro-mobile p {
	margin-top:1lh;
	margin-bottom:0;
}
.page-intro .intro p:first-of-type,
.park-intro .intro p:first-of-type,
.local-attractions .intro p:first-of-type,
.local-attractions .intro-mobile p:first-of-type {
	margin-top:1.6rem;
}
.page-intro input,
.park-intro input,
.local-attractions input {
	position:absolute;
	opacity:0;
	visibility:hidden;
}
.page-intro input:checked ~ .intro,
.park-intro input:checked ~ .intro,
.local-attractions input:checked ~ .intro,
.local-attractions input:checked ~ .intro-mobile {
	-webkit-line-clamp:unset;
	max-height:500lh;
}
.page-intro input:not(:checked) ~ label::after,
.park-intro input:not(:checked) ~ label::after,
.local-attractions input:not(:checked) ~ label::after {
	content:'Read More';
}
.page-intro input:checked ~ label::after,
.park-intro input:checked ~ label::after,
.local-attractions input:checked ~ label::after {
	content:'Read Less';
}
.page-intro label,
.park-intro label,
.local-attractions label {
	display:inline-block;
	cursor:pointer;
	font-size:1.5rem;
    border:.1rem solid var(--border-grey);
    border-radius:.3rem;
    padding:.5rem 1.5rem .6rem;
	margin-top:1lh;
}
.local-attractions label {
	margin-bottom:2rem;
}
.page-intro label:hover,
.park-intro label:hover,
.local-attractions label:hover {
	background:var(--border-grey);
}

/* accommodation bar */
.accommodation-bar {
	width:100%;
	max-width:108rem;
	background:var(--blue);
	padding:2rem 5% 3rem;
	margin:0 auto 1rem;
}
.accommodation-bar a {
	font:400 1.2rem/1.4 "Open Sans", sans-serif;
	color:white;
}
.accommodation-bar a:hover {
	color:white;
}
.accommodation-bar ul {
	display:flex;
	column-gap:.5rem;
    row-gap:1rem;
	flex-wrap:wrap;
    align-content:flex-start;
    justify-content:center;
}
.accommodation-bar ul li {
	width:calc(33% - .3rem);
	text-align:center;
	border-radius:.3rem;
	padding:.5rem;
}
.accommodation-bar ul li:hover {
	background:var(--light-blue);
}
.accommodation-bar ul li span::before {
	position:relative;
	display:block;
	content:'';
	width:5rem;
	height:4.8rem;
	background-size:6.7rem;
	margin:0 auto;
}
.accommodation-bar ul li span.accom-icon-cabins::before {
	background:url(img/icons/accomo-icon--cabins.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-pet-friendly-cabins::before {
	background:url(img/icons/accomo-icon--pet-cabins.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-wheelchair-accessible-cabins::before {
	background:url(img/icons/accomo-icon--accessible-cabins.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-motel-rooms::before {
	background:url(img/icons/accomo-icon--motel-rooms.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-ensuite-sites::before {
	background:url(img/icons/accomo-icon--ensuite-sites.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-glamping::before {
	background:url(img/icons/accomo-icon--glamping.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-grassed-camp-sites::before {
	background:url(img/icons/accomo-icon--grassed-camp-sites.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-large-rig-friendly-sites::before {
	background:url(img/icons/accomo-icon--large-rig.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-pet-friendly-sites::before {
	background:url(img/icons/accomo-icon--pet-friendly.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-powered-sites::before {
	background:url(img/icons/accomo-icon--powered-sites.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-unpowered-sites::before {
	background:url(img/icons/accomo-icon--unpowered-sites.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-tinyhouse::before {
	background:url(img/icons/accomo-icon--tinyhouse.svg) center no-repeat;
}
.accommodation-bar ul li span.accom-icon-no-pets::before {
	background:url(img/icons/accomo-icon--no-pets.svg) center no-repeat;
}

/* park facilities */
.park-facilities .park-accordion {
    border-top:.1rem solid var(--border-grey);
}
.park-facilities ul {
    display:grid;
	grid-template-columns:repeat(2, 1fr);
    column-gap:2rem;
}
.park-facilities ul li,
.local-attractions ul li {
	font-size:1.5rem;
	margin-bottom:1rem;
}
.park-facilities ul li span,
.local-attractions ul li span {
	display:grid;
    grid-template-columns:2.6rem 1fr;
    column-gap:1.5rem;
}
.park-facilities ul li span::before,
.local-attractions ul li span::before {
	position:relative;
	display:block;
	content:'';
	width:2.6rem;
	height:2.6rem;
	background-size:2.6rem;
}
.park-facilities ul li span.facilities-icon-bbq-facilities::before {
	background:url(img/icons/facility-icon--bbq.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-camp-kitchen::before {
	background:url(img/icons/facility-icon--camp-kitchen.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-caravan-storage::before {
	background:url(img/icons/facility-icon--caravan-storage.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-defibrillator::before {
	background:url(img/icons/facility-icon--defibrillator.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-dog-bathing-facilities::before {
	background:url(img/icons/facility-icon--dog-bathing.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-doggy-daycare::before {
	background:url(img/icons/facility-icon--dog-daycare.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-disability-amenities::before {
	background:url(img/icons/facility-icon--wheelchair-amenities.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-electric-car-charge-point::before {
	background:url(img/icons/facility-icon--ev-charging.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-fires-permitted::before {
	background:url(img/icons/facility-icon--fires-permitted.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-fuel::before {
	background:url(img/icons/facility-icon--fuel.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-gym::before {
	background:url(img/icons/facility-icon--gym.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-happy-hour::before {
	background:url(img/icons/facility-icon--happy-hour.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-laundry-facilities::before {
	background:url(img/icons/facility-icon--laundry.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-lpg-gas::before {
	background:url(img/icons/facility-icon--lpg.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-pizza-oven::before {
	background:url(img/icons/facility-icon--pizza-oven.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-playground::before {
	background:url(img/icons/facility-icon--playground.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-recreation-room::before {
	background:url(img/icons/facility-icon--recreation.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-sewage-dump-point::before {
	background:url(img/icons/facility-icon--sewage-dump.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-shop-kiosk-vending-machine::before {
	background:url(img/icons/facility-icon--shop.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-swimming-pool::before {
	background:url(img/icons/facility-icon--swimming.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-tennis-court::before {
	background:url(img/icons/facility-icon--tennis-court.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-tourist-information::before {
	background:url(img/icons/facility-icon--info.svg) center no-repeat;
}
.park-facilities ul li span.facilities-icon-wifi-available::before {
	background:url(img/icons/facility-icon--wifi.svg) center no-repeat;
}

/* video */
.video-embed {
    padding:0 5%;
}
.video-embed iframe {
    display:block;
    max-width:54rem;
	/*width:90%;
    height:auto;
    aspect-ratio:16 / 9;*/
    margin:0 auto 3rem;
    border-radius:.3rem;
	margin-top:2.5rem;
}

/* contact details */
.park-contact .section-inner > div {
	display:grid;
}
.park-contact ul {
	margin-bottom:2rem;
}
.park-contact li {
	margin-bottom:.6rem;
}
li.park-hosts:has(span:empty),
li.park-address:has(span:empty),
li.park-gps:has(span:empty),
li.park-what3words:has(span:empty) {
	display:none;
}
li.park-emergency-phone:has(a:empty), 
li.park-phone:has(a:empty), 
li.park-website:has(a:empty), 
li.park-email:has(a:empty) {
	display:none;
}
.park-contact .park-logo {
	width:auto;
	max-height:12rem;
	margin:0 0 2rem;
}
.park-contact img.park-logo[src=""] {
    display:none;
}
.park-contact .map-embed iframe {
	width:100%;
	border-radius:.6rem;
}

/* local attractions */
.local-attractions .section-inner > div {
    display:grid;
	align-items:start;
	margin-top:-1.6rem;
}
.local-attractions ul {
    display:grid;
	grid-template-columns:repeat(2, 1fr);
    column-gap:2rem;
}
.local-attractions ul li span.attraction-icon-bird-watching::before {
	background:url(img/icons/attraction-icon--bird-watching.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-boat-ramp::before {
	background:url(img/icons/attraction-icon--boat-ramp.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-boating::before {
	background:url(img/icons/attraction-icon--boating.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-bush-walking::before {
	background:url(img/icons/attraction-icon--bush-walking.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-cycling::before {
	background:url(img/icons/attraction-icon--cycling.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-fishing::before {
	background:url(img/icons/attraction-icon--fishing.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-food-and-wine::before {
	background:url(img/icons/attraction-icon--food-and-wine-region.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-fossicking::before {
	background:url(img/icons/attraction-icon--fossicking.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-golf::before {
	background:url(img/icons/attraction-icon--golf.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-historical-sites::before {
	background:url(img/icons/attraction-icon--historical-sites.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-lawn-bowls::before {
	background:url(img/icons/attraction-icon--lawn-bowls.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-mountain-biking::before {
	background:url(img/icons/attraction-icon--mountain-biking.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-photographic-sites::before {
	background:url(img/icons/attraction-icon--photographic-sites.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-scenic-drives::before {
	background:url(img/icons/attraction-icon--scenic-drives.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-swimming::before {
	background:url(img/icons/facility-icon--swimming.svg) center no-repeat;
}
.local-attractions ul li span.attraction-icon-tennis::before {
	background:url(img/icons/attraction-icon--tennis.svg) center no-repeat;
}

/* reviews */
main .glsr-contact_form_7 .glsr-review-date {
	display:none;
}
.glsr-review-author {
	color:grey;
	font-style:italic;
}
button#park-review-link,
button#park-review-link-mobile {
	margin:2rem 0 1rem;
}

/* rates */
.park-profile-mobile .park-rates {
	border-bottom:.1rem solid var(--border-grey);
}
.park-rates .rates-intro p {
	margin-top:0;
}
.park-rates .btn-box {
	margin-top:1.5rem;
}
.park-rates a.booking-link {
	display:inline-block;
	width:auto;
	margin:1rem 0;
    padding:1.4rem 5.5rem 1.2rem 2.5rem;
}
.park-rates button#booking-enquiry-link,
.park-rates button#booking-enquiry-link-mobile {
	display:inline-block;
	width:auto;
	font-weight:600;
    color:var(--blue);
    background:white url(img/icons/booking-enquiry--icon.svg) no-repeat;
    background-position:right 1.5rem center;
    background-size:2.5rem;
    border:.1rem solid var(--blue);
	padding:1.3rem 5.8rem 1.7rem 2.5rem !important;
	margin:0 0 2rem;
}
.park-rates button#booking-enquiry-link:hover,
.park-rates button#booking-enquiry-link-mobile:hover {
    color:white;
    background-color:var(--light-blue);
}
.park-rates a.booking-link[href=""],
.park-rates .hide:has(.form:empty),
.park-rates .special-offers:has(.offers:empty),
.local-events {
	display:none;
}
.park-rates .rates-table figure {
	font-size:1.5rem;
	background:white;
	border-radius:.6rem;
    border:.1rem solid var(--border-grey);
}
.park-rates table {
	width:100%;
	text-align:left;
}
.park-rates table thead {
	border-bottom:none;
}
.park-rates table th {
	border:none;
	border-bottom:.2rem solid var(--border-grey);
	padding:1rem 1.5rem;
}
.park-rates table th:nth-of-type(even) {
	border-left:.1rem solid var(--border-grey);
}
.park-rates table td {
	border:.1rem solid var(--border-grey);
	border-top:none;
	border-left:none;
	padding:1rem 1.5rem;
	vertical-align:top;
}
.park-rates table td:nth-of-type(even) {
	border-right:none;
}
.park-rates table tr:last-of-type td {
	border-bottom:none;
}
.park-rates .special-offers h2 {
	margin-top:4rem;
}
.park-rates .offers {
	max-width:72rem;
	padding:2rem 3rem;
}
.park-profile-mobile .park-rates .offers {
	padding:0;
}
.park-rates .offers p {
    padding:0;
    margin:0 0 1.5rem;
}
.park-rates .offers ul li,
.park-rates .offers ol li {
	list-style:disc;
	margin:0 0 .5rem 2rem;
}
.park-rates .offers ul li:last-of-type,
.park-rates .offers ol li:last-of-type {
	margin-bottom:3rem;
}

/* events */
section.tribe-common-l-container.tribe-events-l-container {
	padding-top:2rem;
}
.tribe-events-header__events-bar {
	border-radius:.5rem;
}
.tribe-events .tribe-events-c-events-bar__search-container,
.tribe-events .tribe-events-c-view-selector--tabs .tribe-events-c-view-selector__content {
	background-color:transparent;
}
.tribe-events .tribe-events-c-search__button, 
.tribe-events button.tribe-events-c-search__button {
	background-color:var(--light-blue);
}
.tribe-events .tribe-events-c-search__button:hover, 
.tribe-events button.tribe-events-c-search__button:hover {
	background-color:var(--blue);
}
.single-tribe_events .tribe-events-c-subscribe-dropdown__container, 
.tribe-events .tribe-events-c-subscribe-dropdown__container,
.tec-events-category-color-filter__dropdown-icon,
.tec-events-category-color-filter__dropdown-header,
button.tribe-events-c-events-bar__search-button /* mobile search button */ {
	display:none !important;
}
.tribe-events .tribe-events-header { /* header */
	display:grid;
	grid-template-columns:100%;
}
.tec-events-category-color-filter__dropdown { /* state filters */
	background:var(--blue);
	border-radius:.5rem;
	color:white;
	padding:1rem !important;
	margin-top:1rem !important;
}
.tribe-events .tribe-events-c-events-bar {
	position:absolute;
	top:0;
	right:5%;
	display:flex;
	flex-direction:row-reverse;
	z-index:99;
}
div#tribe-events-view-selector-content {
	background-color:transparent;
}
ul.tec-events-category-color-filter__dropdown-list {
	display:flex;
	justify-content:space-evenly;
	column-gap:1.5rem;
	row-gap:.5rem;
	flex-wrap:wrap;
}
input.tec-events-category-color-filter__checkbox {
	transform:scale(1.2);
}
button.tec-events-category-color-filter__reset.tribe-common-c-btn-border-small { /* reset button */
	padding:1rem;
	margin-top:1rem;
}
img.tribe-events-calendar-list__event-featured-image {
	border-radius:.5rem;
}
.tribe-events .datepicker .day.active {
	background:var(--green) !important;
}
.tribe-events .datepicker .day.current {
	background:hsl(134, 55%, 90%);
	color:var(--green);
}
.tribe-events .datepicker .day.current::before {
	border-color:var(--green);
}
.tribe-embed a, 
.tribe-events-event-meta a, 
.tribe-events-single a {
	color:var(--green);
}
.tribe-embed a:hover, 
.tribe-events-event-meta a:hover, 
.tribe-events-single a:hover {
	color:var(--red);
}
.single-tribe_events .tribe-events-single-event-title {
	color:var(--blue);
	line-height:3.8rem !important;
}
p.tribe-events-schedule__datetime {
	background:white;
	border:.1rem solid var(--border-grey);
	border-radius:.5rem;
	padding:.2rem 1.5rem;
	margin:1rem auto !important;
}
section.tribe-events-pg-template img {
	border-radius:.5rem;
}
.tribe-block__event-website a,
a.wp-block-button__link.wp-element-button {
	color:white;
	border-bottom:none;
	background-image:none;
	background-color:var(--light-blue);
	padding:1.2rem 2.5rem;
	margin:1.5rem 0 0;
}
.tribe-block__event-website a:hover,
a.wp-block-button__link.wp-element-button:hover {
	color:white;
	background-color:var(--blue);
}
img.tribe-events-calendar-list__event-featured-image {
	object-fit:cover;
	height:20rem;
	width:100%;
}
.tribe-events .tec-category-filtered-hide {
	display:none;
}
.tribe-events .tribe-events-calendar-month .tec-category-filtered-hide {
	display:block;
}

/* events embed */
.local-events:has(.events):has(div#ect-events-list-content) { /* show local events if div exists */
	display:block;
}
.local-events h2 {
	margin:1.5rem 0 0;
}
.local-events .ect-list-post-right-table {
	flex-direction:row-reverse;
}
.local-events .ect-list-post.style-2 {
    border-radius:.5rem;
	margin:1.5rem 0 0;
}
.local-events .ect-list-post-left {
	width:calc(100% + 2rem);
    margin:-1rem 0 0 -1rem;
}
.local-events .ect-list-post.style-2 .modern-list-right-side {
    border-radius:.3rem;
}
.local-events .ect-list-post.style-2 .ect-list-img {
    border-radius:.3rem .3rem 0 0;
	background-position:center !important;
}
.local-events #ect-events-list-content h2.ect-list-title, 
.local-events #ect-events-list-content h2.ect-list-title a.ect-event-url {
	color:var(--blue);
}
.local-events #ect-events-list-content h2.ect-list-title:hover, 
.local-events #ect-events-list-content h2.ect-list-title a.ect-event-url:hover {
	color:var(--red);
	filter:opacity(1);
}
.local-events #ect-events-list-content .ect-list-post-right .ect-list-description .ect-event-content, 
.local-events #ect-events-list-content .ect-list-post-right .ect-list-description .ect-event-content p {
	color:var(--text);
}

/* discover state links */
.state-links {
	width:90%;
	max-width:108rem;
	margin:4rem auto;
}

/* newsletter signup */
.newsletter-holder,
.newsletter-holder-2 {
	width:100%;
	background:white;
	border-top:.1rem solid var(--border-grey);
	padding:2rem 0 4rem;
	margin:0 auto;
}
.newsletter-holder-2 {
	background:none;
	border-top:none;
}
.newsletter-holder > div {
	width:90%;
	max-width:108rem;
	text-align:center;
	margin:0 auto;
}
.newsletter-holder-2 > div {
	width:90%;
	max-width:108rem;
	text-align:center;
	margin:0 auto;
}
/* news search */
.news-search-holder {
	width:90%;
    max-width:84rem;
    margin:0 auto;
}
.news-search-holder form {
	display:grid;
}
.news-search-holder form div.wp-block-search__inside-wrapper {
	height:5rem;
	outline:.1rem solid var(--text);
	border:none;
    border-radius:.3rem;
	padding:0;
	z-index:2;
}
.news-search-holder form input {
	width:100%;
	padding:0 1rem;
}
.news-search-holder form button {
	background-color:var(--green);
    font:600 1.8rem / 1.2 "Open Sans", sans-serif;
    color:white;
    padding:.8rem 1.5rem;
    border:none;
    cursor:pointer;
}
.news-search-holder form button:hover {
	background-color:var(--red);
}
.search-results p.results {
	max-width:84.2rem;
	font:420 1.4rem/1.4 "Open Sans", sans-serif;
	text-align:center;
    background:var(--border-grey);
    border-radius:0 0 .3rem .3rem;
    padding:1rem 2rem;
	margin:-2rem auto 3rem;
}
.search-results .blog-recent img {
    width:100%;
    height:auto;
    max-height:28rem;
    object-fit:cover;
}
.search-results .pagination {
	display:flex;
    flex-wrap:wrap;
    row-gap:.5rem;
    column-gap:.5rem;
	margin:2rem auto;
}
.search-results .pagination span.current {
	height:4rem;
    color:var(--text);
    font-weight:bold;
    background:white;
    border:.1rem solid var(--text);
    border-radius:.3rem;
    padding:.7rem 1.5rem;
}
.search-results .pagination a {
    color:white;
	height:4rem;
    background:var(--text);
    border-radius:.3rem;
    padding:.7rem 1.5rem;
}
.search-results .pagination a.next {
    background:var(--green);
}
.search-results .pagination a.prev {
    background:var(--blue);
}
.search-results .pagination a:hover {
    background:var(--red);
}

/* ads */
.ad-banner-header {
	width:90%;
	max-width:97rem;
	margin:1rem auto;
}
.ad-banner-footer {
	width:90%;
	max-width:108rem;
	margin:1rem auto;
}
.single-parks .ad-body-1,
.single-parks .ad-body-2 {
    margin:5rem auto 0;
}
.single-parks .park-profile-mobile .ad-body-3 {
    margin:3rem auto 3rem;
}
.single-parks .ad-banner-footer {
    margin:-3rem auto 3rem;
}
.blog-list-inner ul .ad-body-1 {
	grid-row:
}
.news-feed-ad {
	grid-row:3;
}
.footer-ad-news {
    margin:0 auto 3rem;
}
.footer-ad-events {
	margin:-3rem auto 6rem;
}


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:20em) { /* 320px */
	/* header */
	.header-inner {
		grid-template-columns:8rem 11rem auto;
	}
	.socials {
		display:block;
	}
}
@media only screen and (min-width:21.25em) { /* 340px */
	/* home serarch */
	.search-filter {
		width:calc(25% - .8rem);
	}
	/* states */
	.state-btn {
		padding:7.5rem 0 0;
	}
	.state-btn img {
		width:9rem;
	}
}
@media only screen and (min-width:25em) { /* 400px */
	/* type */
	h1.park-name {
		font:800 3.6rem/1.2 "Open Sans", sans-serif;
	}
	h1.map-title {
		top:8.5rem;
	}
	/* structure */
	.header {
		height:8rem;
	}
	.header-inner {
		grid-template-columns:10rem 11rem auto;
	}
	.logo {
		width:10rem;
		margin-top:1rem;
	}
	.socials ul {
		margin-top:2.3rem;
	}
	/* nav */
	#mega-menu-wrap-header-menu .mega-menu-toggle {
		height:8rem !important;
	}
	.mobile-nav label.main,
	.mobile-nav input[type="checkbox"]:checked + label.main {
		top:2.9rem;
	}
	.mobile-nav ul {
		margin-top:8rem;
	}
	/* blog */
	.blog-recent-holder ul {
		grid-template-columns:repeat(2, 1fr);
		gap:1.5rem;
	}
	/* park profile */
	.accommodation-bar ul li {
		width:calc(25% - .4rem);
	}
}
@media only screen and (min-width:30em) { /* 480px */
	/* type */
	h1.page-title {
		padding:5rem 0;
		margin:0 auto 3rem;
	}
	body.latest-news-and-articles h1.page-title,
	body.search-results h1.page-title {
		padding-bottom:7rem;
	}
	h1.map-title {
		top:10.5rem;
	}
	h2 {
		font:700 2.8rem/1.2 "Open Sans", sans-serif;
	}
	/* buttons */
	main .wp-block-button__link,
	button#park-review-link, 
	button#park-review-link-mobile,
	.park-rates button#booking-enquiry-link,
	.park-rates button#booking-enquiry-link-mobile {
		padding:1.2rem 5.5rem 1.2rem 2.5rem;
		background-position:right 2.5rem center;
	}
	/* structure */
	.header {
		height:10rem;
	}
	.header-inner {
		grid-template-columns:12rem 11rem auto;
		column-gap:2rem;
	}
	.logo {
		width:12.5rem;
		margin-top:1.2rem;
	}
	.socials ul {
		margin-top:3.4rem;
	}
	/* nav */
	#mega-menu-wrap-header-menu .mega-menu-toggle {
		height:10rem !important;
	}
	.mobile-nav label.main,
	.mobile-nav input[type="checkbox"]:checked + label.main {
		top:4rem;
	}
	.mobile-nav ul {
		margin-top:10rem;
	}
	.footer-top-inner {
		grid-template-columns:repeat(2, 1fr);
		column-gap:1.5rem;
		text-align:left;
	}
	.footer-bottom ul.links {
		margin-left:1rem;
	}
	/* home slider */
	main .home-slider .banner-location p,
	main .home-slider .banner-title h1,
	main .home-slider .banner-sub-title div {
		max-width:65% !important;
	}
	main .home-slider .banner-location p::before,
	.park-banner .banner-location::before {
		width:2rem;
	}
	main .home-slider .n2-ss-layer-row-inner {
		flex-wrap:nowrap !important;
		gap:1rem;
		width:37rem !important;
		margin:0 !important;
	}
	main .home-slider .banner-btn,
	main .home-slider .banner-book-btn {
		width:18rem !important;
		margin:0 !important;
	}
	main .home-slider .banner-book-btn a {
		padding-bottom:1.3rem !important;
	}
	main .home-slider .n2-ss-layer-col {
		padding:0 !important;
	}
	main .home-slider .n2-ss-layer[data-sstype="col"] {
		margin:0 0 1.5rem !important;
	}
	/* home search */
	.search-bar-inner {
		padding:4rem 5%;
	}
	.search-filter img,
	.search-filter svg {
		width:7rem;
	}
	.search-filter p {
		font-size:1.4rem;
		margin:2rem auto 1rem;
	}
	/* sections */
	.feature-parks-inner,
	.top-journeys-inner,
	.blog {
		padding:3rem 0 4rem;
	}
	.blog-list-inner {
		padding:1rem 0 4rem
	}
	.feature-parks-inner ul,
	.top-journeys-inner ul,
	.blog-list-inner ul {
		grid-template-columns:repeat(2, calc(50% - 1rem));
		column-gap:2rem;
	}
	/* cta */
	.cta-membership-1 {
		padding:4rem 5% 6rem;
		margin-bottom:4rem;
	}
	.cta-membership-1 h2 {
		font-size:4.6rem;
		font-weight:800;
		line-height:4.8rem;
		margin-bottom:0;
	}
	.cta-membership-1 h3 {
		margin:1.5rem 0;
		font-size:2.6rem;
		line-height:3.2rem;
	}
	.cta-membership-1 strong {
		font-size:2.2rem;
		line-height:2.6rem;
	}
	/* states */
	.states {
		padding-top:1.5rem;
	}
	.states-inner > div {
		padding:0 0 2rem;
	}
	.state-btn {
		padding:10.5rem 0 0;
	}
	.state-btn img {
		width:12rem;
	}
	/* pagination */
	nav.wp-block-query-pagination,
	.search-results .pagination {
		margin:3rem auto;
	}
	/* park profile */
	.park-gallery-inner {
		grid-template-columns:repeat(3, 1fr);
		height:37rem;
	}
	.park-gallery-inner .lightboxed {
		height:15rem;
	}
	.park-gallery-inner .lightboxed:nth-child(2) {
		height:20rem;
	}
	.park-gallery-inner .lightboxed:nth-child(3)::after {
		display:none;
	}
	.park-gallery-inner .lightboxed:nth-child(5)::after {
		display:block;
	}
	.park-rates a.booking-link,
	.park-rates button#booking-enquiry-link,
	.park-rates button#booking-enquiry-link-mobile {
		margin-top:0;
	}
	/* blog */
	.blog-recent-holder {
		padding:3rem 0 4rem;
	}
	.blog-recent-holder h2 {
		margin:0 auto 3rem;
	}
	/* newsletter signup */
	.newsletter-holder {
		padding:3rem 0 5rem;
	}
	/* news search */
	.search-results p.results {
		margin:-1rem 0 3rem;
	}
	/* ads */
	.news-feed-ad {
		grid-column:1 / span 2;
	}
} 
@media only screen and (min-width:32.5em) { /* 520px */
	/* park profile */
	.accommodation-bar a {
		font:400 1.4rem/1.4 "Open Sans", sans-serif;
	}
	.accommodation-bar ul li {
		width:calc(20% - .4rem);
	}
}
@media only screen and (min-width:37.5em) { /* 600px */
	/* states */
	.states-inner > div {
		grid-template-columns:repeat(4, 1fr);
	}
	/* specials */
	.special-offers-holder p.location img {
		display:block;
	}
	/* park profile */
	.accommodation-bar ul li span::before {
		width:6rem;
		height:5.8rem;
	}
	.park-rates .offers ul li,
	.park-rates .offers ol li {
		margin:0 0 .5rem 4rem;
	}
}
@media only screen and (min-width:40em) { /* 640px */
	/* type */
	h1.park-name {
		font:800 4.2rem/1.2 "Open Sans", sans-serif;
	}
	/* specials */
	section#wa {
		margin-bottom:6rem;
	}
	/* park profile */
	.park-banner {
		border-bottom:.1rem solid var(--border-grey);
	}
	.park-banner .text {
		padding:4rem 0;
	}
	.park-banner .overlay {
		background-size:auto 200%;
		background-position-x:50%;
	}
	.park-intro {
        padding-top:1rem;
    }
	main .glsr-reviews {
		grid-template-columns:repeat(2, 1fr);
		column-gap:4rem;
		align-items:start;
	}
	/* rates */
	.park-rates table th,
	.park-rates table td {
		min-width:10rem;
	}
	/* newsletter signup */
	.newsletter-holder {
		padding:4rem 0 6rem;
	}
}
@media only screen and (min-width:45em) { /* 720px */
	/* park profile */
	.park-contact .section-inner > div {
		grid-template-columns:repeat(2, 1fr);
		column-gap:4rem;
		row-gap:1rem;
	}
	.park-contact .park-logo,
	.park-contact .map-embed {
		grid-column-start:span 2;
	}
	/* specials */
	.special-offers-holder > div > div {
		grid-template-columns:1fr 25%;
		gap:2rem;
	}
	.special-offers-holder:last-of-type {
		margin-bottom:2rem;
	}
	.special-offers-holder .photo figure {
		height:100%;
	}
	.special-offers-holder .info {
		padding:1rem;
	}
	/* testimonials */
	.testimonials .special-offers-holder figure {
		height:100%;
		padding:2rem 2rem 2rem 0;
	}
}
@media only screen and (min-width:48em) { /* 768px */
	/* universial */
	main .margin-top-1 { margin-top:2rem; }
	main .margin-top-2 { margin-top:3rem; }
	main .margin-top-3 { margin-top:4rem; }
	main .margin-top-4 { margin-top:5rem; }
	main .margin-top-5 { margin-top:6rem; }
	main .margin-top-6 { margin-top:7rem; }
	main .margin-top-7 { margin-top:8rem; }
	main .margin-top-8 { margin-top:9rem; }
	/* type */
	h1 {
		font:700 4rem/1.2 "Open Sans", sans-serif;
	}
	h1.park-name {
		font:800 4.8rem/1.1 "Open Sans", sans-serif;
		width:55%;
	}
	h1.map-title {
		top:12.3rem;
		font-size:3rem;
	}
	h2 {
		font:700 3.2rem/1.2 "Open Sans", sans-serif;
	}
	.body-text h2,
	.body-text h3,
	.body-text h4,
	.blog h2,
	.blog h3,
	.blog h4	{
		margin:3.5rem 0 1rem;
	}
	.body-text h3,
	.blog h3 {
		font:700 2.2rem/1.3 "Open Sans", sans-serif;
	}
	/* structure */
	.header {
		height:11rem;
	}
	.header-inner {
		grid-template-columns:15rem 11rem auto;
	}
	.logo {
		width:14rem;
		margin-top:1rem;
	}
	.socials ul {
		margin-top:3.6rem;
	}
	/* nav */
	div#mega-toggle-block-1 {
		margin-top:-.8rem;
	}
	#mega-menu-wrap-header-menu .mega-menu-toggle {
		height:12rem !important;
	}
	.wrapper #mega-menu-wrap-header-menu #mega-menu-header-menu {
		margin-top:-1rem;
	}
	.mobile-nav label.main,
	.mobile-nav input[type="checkbox"]:checked + label.main {
		top:4.8rem;
	}
	.mobile-nav ul {
		margin-top:12rem;
	}
	/* footer */
	.footer-bottom {
		grid-template-columns:7rem auto 50%;
		text-align:left;
		justify-items:left;
	}
	.footer-bottom ul.links li {
		display:inline-block;
	}
	.footer-bottom ul.links li:first-of-type {
		margin-right:1rem;
	}
	.footer-bottom ul.links li:first-of-type::after {
		display:inline;
		content:'|';
		margin-left:1rem;
	}
	/* home slider */
	main .home-slider div.n2-ss-section-main-content {
		padding:0 0 10rem !important;
	}
	main .home-slider div#n2-ss-2 .n2-ss-slide {
		padding:1rem 0 5rem;
	}
	main .home-slider div#n2-ss-2 .n2-ss-slide,
	main .home-slider div#n2-ss-2 .n2-ss-slider-4 {
		max-height:52rem;
	}
	main .home-slider .banner-location p::before,
	.park-banner .banner-location::before {
		width:4rem;
	}
	main .home-slider .n2-ss-slider .n2-ss-item-image-content img {
		object-fit:cover;
		transform:none;
		margin-left:20rem;
	}
	main .home-slider .banner-title h1,
	main .home-slider .banner-title h2 {
		font-size:4.8rem !important;
		line-height:5.2rem !important;
		letter-spacing:-0.1rem !important;
	}
	main .home-slider .banner-sub-title {
        font-size:2rem !important;
        line-height:2.6rem !important;
		letter-spacing:-0.05rem !important;
    }
	main .home-slider .banner-title,
	main .home-slider .banner-sub-title {
		margin:0 auto 1.5rem !important;
	}
	main .home-slider .banner-btn a {
		font-size:2rem !important;
		padding:1.4rem 2.5rem 1.3rem !important;
		margin-top:1rem;
	}
	main .home-slider .banner-book-btn a {
		font-size:2rem !important;
		padding:1.4rem 1.5rem 1.6rem !important;
		margin-top:1rem;
	}
	main .home-slider .n2-ss-layer[data-sstype="col"] {
		margin:0 !important;
	}
	/* home search */
	.search-bar {
		width:95%;
		border-radius:.4rem;
		margin:-8rem auto 0;
	}
	.search-bar-inner {
		padding:2rem;
	}
	form.home-search {
		grid-template-columns:auto 16rem;
		margin:-5rem 0 1rem;
	}
	form.home-search input[type="text"] {
		padding:2rem 3rem;
	}
	form.home-search button[type="submit"] {
		background-image:url(img/icons/arrow-white-right.svg);
		background-repeat:no-repeat;
		background-position:right 3rem center;
		background-size:2rem;
		padding:1.9rem 6rem 2.1rem 4rem;
	}
	.search-filter {
        width:calc(14.2% - .8rem);
    }
	/* sections */
	.feature-parks-inner,
	.top-journeys-inner,
	.blog {
		padding:4rem 0 5rem;
	}
	.blog-list-inner {
		padding:3rem 0 7rem
	}
	.feature-parks-inner ul {
		grid-template-columns:repeat(3, 1fr);
		column-gap:2rem;
	}
	.feature-parks figure {
		height:26rem;
	}
	.feature-parks-divider > div {
		display:grid;
		grid-template-columns:calc(25% - 2rem) 75%;
		column-gap:2rem;
	}
	.park-rates a.booking-link {
		margin-bottom:.2rem;
	}
	/* cta */
	.cta-membership-1 {
		width:90%;
		border-radius:.3rem;
	}
	.cta-membership-1 strong::before {
		position:relative;
		display:inline-block;
		content:'';
		width:5rem;
		height:1.5rem;
		background:white;
		margin-right:1.2rem;
	}
	/* states */
	.states {
		padding-top:3rem;
	}
	.states-inner > div {
		grid-template-columns:repeat(6, 1fr);
		padding:2rem 0 5rem;
	}
	.state-btn {
		padding:10.5rem 0 0;
	}
	.state-btn img {
		width:12rem;
	}
	/* pagination */
	nav.wp-block-query-pagination,
	.search-results .pagination {
		margin:5rem auto;
	}
	/* offers */
	.offer-col-holder {
		gap:4rem;
	}
	/* park profile */
	.park-banner .btn-holder {
		display:none;
	}
	.park-banner .btn-holder-2 {
		display:flex;
		gap:1rem;
	}
	.park-gallery-inner {
		height:40rem;
	}
	.park-gallery-inner .lightboxed {
		height:18rem;
	}
	.park-gallery-inner .lightboxed:nth-child(5)::after {
		padding-top:7.6rem;
	}
	.section-inner {
		padding-top:4rem;
		padding-bottom:5rem;
	}
	.park-profile-mobile {
		display:none;
	}
	.park-profile-large-screen {
		display:block;
	}
	.switch {
		display:flex;
        flex-direction:column-reverse;
	}
	.park-intro {
		padding:2rem 0 0;
	}
	.park-intro .tagline {
		font-size:2.2rem;
		letter-spacing:-0.06rem;
	}
	.park-intro .body-text {
		margin-bottom:2rem;
	}
	.park-gallery {
		margin-bottom:5rem;
	}
	.park-accordion {
		width:90%;
		padding:2rem 0;
	}
	.video-embed iframe {
		margin:0 auto 6rem;
	}
	.accommodation-bar ul {
		column-gap:1.5rem;
		row-gap:1.5rem;
	}
	.accommodation-bar ul li {
		width:11rem;
		padding:1rem;
	}
	.accommodation-bar ul li span::before {
		width:7.5rem;
		height:6.8rem;
	}
	.park-facilities ul {
		grid-template-columns:repeat(3, 1fr);
	}
	.local-attractions .section-inner > div {
		grid-template-columns:repeat(2, 1fr);
		column-gap:4rem;
	}
	.local-attractions ul {
		grid-template-columns:1fr;
	}
	/* rates */
	.park-rates .offers ul li,
	.park-rates .offers ol li {
		margin:0 0 .5rem 6rem;
	}
	.park-rates .btn-box {
		display:flex;
		flex-direction:row;
		column-gap:1rem;
		height:5.6rem;
		margin-bottom:2.5rem;
	}
	/* partner offer */
	.partner-offer {
		padding-bottom:3rem;
		margin-bottom:5rem;
	}
	/* blog */
	.blog-recent-holder {
		padding:4rem 0 5rem;
	}
	.blog-recent-holder h2 {
		margin:0 auto 4rem;
	}
	.blog-recent-holder ul {
		grid-template-columns:repeat(4, 1fr);
		gap:2rem;
	}
	/* contact page */
	.contact-holder > div {
		grid-template-columns:repeat(2, 1fr);
		column-gap:5rem;
		row-gap:1.5rem;
		margin-bottom:8rem;
	}
	.contact-holder .notice {
		grid-column-start:span 2;
	}
	.contact-form form {
		margin-top:0;
	}
	.contact-form fieldset p {
		column-gap:1.5rem;
	}
	.contact-form input[type="submit"],
	.modal-content input[type="submit"] {
		max-width:18rem;
	}
	.wpcf7-spinner {
		margin-left:20rem;
	}
	/* events */
	section.tribe-common-l-container.tribe-events-l-container {
		padding-bottom:6rem !important;
	}
	.local-events, 
	.ad-body-1 {
		grid-column-start:1;
    	grid-column-end:3;
	}
	.local-events h2 {
		margin:4rem 0 1rem;
	}
	.local-events .ect-list-post.style-2 {
		gap:0;
	}
	.local-events .ect-list-post-left {
		width:42%;
		margin:0;
	}
	.local-events .ect-list-post-right {
		width:58%;
	}
	.local-events .ect-list-post.style-2 .ect-list-img {
		border-radius:.3rem 0 0 .3rem;
	}
	.local-events .ect-list-post.style-2 .modern-list-right-side {
		border-radius:0 .3rem .3rem 0;
		margin-right:1.5rem;
	}
	.local-events .ect-list-post-right .ect-list-description {
		justify-content:start;
	}
	/* ads */
	.footer-ad-news {
		margin:-1rem auto 3rem;
	}
	/* news search */
	.news-search-holder {
		margin:-5.5rem auto 1rem;
	}
	.news-search-holder form input {
		padding:0 2rem;
	}
	.news-search-holder form button {
		background-image:url(img/icons/arrow-white-right.svg);
        background-repeat:no-repeat;
        background-position:right 2rem center;
        background-size:2rem;
        padding:.8rem 5rem .8rem 3rem;
	}
	.search-results p.results {
		margin:-4rem auto 5rem;
	}
}
@media only screen and (min-width:48.875em) { /* 782px */
	.offer-col-holder .link-box {
		margin-top:3rem;
	}
	/* events */
	section.tribe-common-l-container.tribe-events-l-container {
		padding-top:5rem !important;
	}
	.tribe-events .tribe-events-c-events-bar {
		position:relative;
		right:0;
	}
	.tec-events-category-color-filter__dropdown {
		min-width:36rem;
	}
	img.tribe-events-calendar-list__event-featured-image {
		max-width:30rem;
		float:right;
	}
}
@media only screen and (min-width:56em) { /* 896px */
	/* footer */
	.footer-top-inner {
		grid-template-columns:repeat(3, 1fr);
		column-gap:2rem;
	}
	/* sections */
	.top-journeys-inner figure,
	.blog-list-inner figure {
		height:28rem;
	}
	/* park profile */
	.park-gallery-inner {
		height:50rem;
	}
	.park-gallery-inner .lightboxed {
		height:24rem;
	}
	.park-gallery-inner .lightboxed:first-child,
	.park-gallery-inner .lightboxed:nth-child(2) {
		height:24rem;
	}
	.park-gallery-inner .lightboxed:nth-child(5)::after,
	.park-gallery-inner .lightboxed:nth-child(7)::after {
		font-size:1.8rem;
		padding-top:10.8rem;
	}
	.local-attractions ul {
		grid-template-columns:repeat(2, 1fr);
	}
	/* events */
	.tec-events-category-color-filter__dropdown {
		display:flex;
		justify-content:space-between;
		min-width:46rem;
		padding-left:1.5rem !important;
	}
	button.tec-events-category-color-filter__reset.tribe-common-c-btn-border-small {
		margin-top:0;
	}
	input.tec-events-category-color-filter__checkbox {
		margin-right:.3rem;
	}
	li.tec-events-category-color-filter__dropdown-item {
		padding-top:.2rem;
	}
}
@media only screen and (min-width:64em) { /* 1024px */
	/* universial */
	main .margin-top-1 { margin-top:3rem; }
	main .margin-top-2 { margin-top:4rem; }
	main .margin-top-3 { margin-top:5rem; }
	main .margin-top-4 { margin-top:6rem; }
	main .margin-top-5 { margin-top:7rem; }
	main .margin-top-6 { margin-top:8rem; }
	main .margin-top-7 { margin-top:9rem; }
	main .margin-top-8 { margin-top:10rem; }
	/* type */
	h1 {
		font:700 5rem/1.2 "Open Sans", sans-serif;
		letter-spacing:-0.1rem;
	}
	h1.page-title {
		padding:8rem 0;
		margin:0 auto 4rem;
	}
	body.latest-news-and-articles h1.page-title,
	body.search-results h1.page-title {
		padding-bottom:10rem;
	}
	h1.park-name {
		font:800 6.2rem/1.1 "Open Sans", sans-serif;
		letter-spacing:-.2rem;
	}
	h1.map-title {
		font-size:3.4rem;
	}
	/* nav */
	#mega-menu-wrap-header-menu #mega-menu-header-menu {
		height:auto;
	}
	#mega-menu-wrap-header-menu {
		margin-top:4rem;
	}
	#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item.highlight {
		margin-left:1.2rem;
	}
	.nav ul li.home-btn .hide,
	.nav ul li.hide-1,
	.nav ul li.hide-2,
	.nav ul li.hide-3,
	.nav ul li.hide-4 {
		display:none !important;
	}
	.nav ul li.home-btn svg {
		display:inline-block;
        vertical-align:sub;
        margin-bottom:.1rem;
	}
	/* footer */
	.footer-top {
		padding:5rem 0 7rem;
	}
	.footer-top-inner {
		grid-template-columns:repeat(4, 1fr);
		column-gap:4rem;
	}
	.footer-bottom ul.links {
		margin-left:2rem;
	}
	/* home slider */
	main .home-slider .banner-location p,
	main .home-slider .banner-title h1,
	main .home-slider .banner-title h2,
	main .home-slider .banner-btn a {
		max-width:96rem !important;
	}
	main .home-slider div.n2-ss-section-main-content {
		padding:2rem 0 10rem !important;
	}
	main .home-slider div#n2-ss-2 .n2-ss-slide,
	main .home-slider div#n2-ss-2 .n2-ss-slider-4 {
		max-height:52rem;
	}
	main .home-slider .banner-location p::before,
	.park-banner .banner-location::before {
		width:5rem;
	}
	main .home-slider .banner-title h1,
	main .home-slider .banner-title h2 {
		font-size:5.2rem !important;
		line-height:5.8rem !important;
	}
	/* home search */
	.search-bar-inner {
		padding:2rem 4rem;
	}
	/* sections */
	.feature-parks figure {
		height:30rem;
	}
	.top-journeys-inner ul,
	.blog-list-inner ul {
		grid-template-columns:repeat(2, calc(50% - 2rem));
		column-gap:4rem;
		row-gap:4rem;
	}
	/* states */
	.states-inner > div {
		gap:1.5rem;
	}
	.state-btn img {
		max-height:18rem;
	}
	/* offers */
	.offer-col-holder {
		gap:8rem;
	}
	.states.offers > div, 
	.states-inner.offers > div {
		padding:0 0 1.5rem;
	}
	section#wa {
		margin-bottom:10rem;
	}
	/* park profile */
	.park-banner .text {
		padding:6rem 0;
	}
	.park-banner .overlay {
		background-position-x:51%;
	}
	.park-intro {
		padding:3rem 0 0;
	}
	.park-gallery {
		margin-bottom:1rem;
	}
	.park-gallery-inner {
		gap:1.5rem;
		margin:4rem auto 0;
	}
	.accommodation-bar {
		width:90%;
		border-radius:.3rem;
		padding:3rem 3rem 4rem;
	}
	.accommodation-bar ul li span.accom-icon-wheelchair-accessible-cabins {
		height:12rem;
		display:block;
	}
	.park-contact ul {
		margin-bottom:1rem;
	}
	button#park-review-link,
	button#park-review-link-mobile {
		margin:3rem 0 1rem;
	}
	/* cta */
	.cta-membership-1 {
		text-align:left;
		padding:3rem 5rem 4rem;
		margin-bottom:6rem;
	}
	.cta-membership-1 h2 {
		font-size:5.2rem;
		line-height:5.4rem;
		margin-bottom:0;
	}
	.cta-membership-1 h3 {
		margin:1.5rem 0;
		font-size:2.8rem;
		line-height:3.4rem;
	}
	.cta-membership-1 img {
		max-width:42rem;
		float:right;
	}
	.cta-membership-1 .wp-container-core-buttons-is-layout-1,
	.cta-membership-1 .wp-block-buttons.is-content-justification-center {
		justify-content:start;
	}
	/* newsletter signup */
	.newsletter-holder {
		padding:6rem 0 8rem;
	}
	/* news search */
	.news-search-holder {
        margin:-6.5rem auto 1rem;
    }
}
@media only screen and (min-width:68em) { /* 1088px */
	/* nav */
	.nav ul li.hide-1 {
		display:inline-block !important;
	}
	/* home slider */
	main .home-slider .banner-sub-title div {
		max-width:68rem !important;
	}
	main .home-slider div.n2-ss-section-main-content {
        padding:2rem 0 16rem !important;
    }
}
@media only screen and (min-width:68.5em) { /* 1096px */
	/* blog */
	.blog .ad-body-1,
	.blog .ad-body-2,
	.blog .ad-body-3 {
		width:97rem;
    	margin:4rem 0 4rem -8.5rem;
	}
}
@media only screen and (min-width:73.5em) { /* 1176px */
	/* nav */
	.nav ul li.hide-2 {
		display:inline-block !important;
	}
}
@media only screen and (min-width:74em) { /* 1184px */
	/* home slider */
	main .home-slider .n2-ss-slider .n2-ss-item-image-content img {
		margin-left:0;
	}
	/* home search */
	.search-filter img,
	.search-filter svg {
		margin-top:1rem;
	}
	.search-filter p {
		margin:3rem auto 1.5rem;
	}
	/* cta */
	.cta-membership-1 img {
        margin-top:-2rem;
    }
	/* states */
	.state-btn {
		padding:14.5rem 0 0;
	}
	.state-btn img {
		width:auto;
	}
	/* park profile */
	.park-gallery-inner .lightboxed {
		height:24rem;
	}
	.park-gallery-inner .lightboxed:nth-child(5)::after {
		display:none;
	}
	.park-gallery-inner .lightboxed:nth-child(7)::after {
		display:block;
	}
	.park-gallery-inner,
	.park-facilities ul {
		grid-template-columns:repeat(4, 1fr);
	}
	/* blog */
	.blog-recent-holder {
		padding:6rem 0 8rem;
	}
	/* ads */
	.footer-ad-news {
		margin:-2rem auto 4rem;
	}
}
@media only screen and (min-width:80em) { /* 1280px */
	/* type */
	h1.page-title {
		margin:0 auto 5rem;
	}
	/* nav */
	#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item {
		margin-left:.5rem;
	}
	/* park-profile */
	main .park-slider,
	.park-banner .overlay {
		height:42.5rem;
		max-height:42.5rem;
	}
	/* news search */
	.news-search-holder {
        margin:-7.5rem auto 1rem;
    }
}
@media only screen and (min-width:82.625em) { /* 1322px */
	/* nav */
	.nav ul li.hide-3 {
		display:inline-block !important;
	}
}
@media only screen and (min-width:102.5em) { /* 1640px */
	.park-banner .overlay {
		background-position-x:52%;
	}
	/* nav */
	.nav ul li.hide-4 {
		display:inline-block !important;
	}
}
@media only screen and (min-width:107.5em) { /* 1720px */
	/* link box */
	.park-link-box {
		display:block;
	}
}

@media only screen and (min-width:20em) /* 320px */ and (max-width:30em) { /* 480px */
	/* home search */
	main .home-slider .banner-btn-holder {
		margin-top:-1rem !important;
	}
	main .banner-btn-holder .n2-ss-layer-row-inner {
		display:grid;
		grid-template-columns:1fr 1fr;
		column-gap:1rem;
		margin:0 !important;
	}
	main .home-slider .banner-btn a,
	main .home-slider .banner-book-btn a {
		max-width:100% !important;
	}
	main .home-slider .banner-btn a {
		padding:.8rem 1.5rem !important;
	}
	main .banner-btn-holder div {
		width:100% !important;
		padding:0 !important;
	}
	.banner-sub-title > div {
		text-shadow:0 .1rem .6rem white !important;
	}
}

/* max width media queries */
@media only screen and (max-width:48em) { /* 768px */
	/* home search */
	form.home-search .search-btn {
		position:absolute;
        top:1.5rem;
        right:2rem;
		width:2rem;
		height:2rem;
		background:url(img/icons/search-icon.svg) center no-repeat;
		background-size:2rem;
	}
	form.home-search .hide {
		display:none;
	}
}
@media only screen and (max-width:64em) { /* 1024px */
	.wrapper #mega-menu-wrap-header-menu #mega-menu-header-menu {
		min-height:100vh;
		padding-bottom:3rem;
		border-bottom:.1rem solid var(--border-grey);
	}
	#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link {
		padding:0 2rem;
	}
	#mega-menu-wrap-header-menu #mega-menu-header-menu li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator {
		position:absolute;
		top:0;
		right:0;
		width:8rem;
		height:5rem;
		text-align:center;
		border-left:.2rem solid var(--border-grey);
		margin:0 !important;
		float:none;
	}
}

/* height bassed media queries */
@media only screen and (max-height:53.75em) { /* 860px */
	#lightboxed--container div#lightboxed--thumbs {
		bottom:.5rem;
	}
}
@media only screen and (max-height:45.5em) { /* 728px */
	#lightboxed--container div#lightboxed--thumbs {
		bottom:0;
	}
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:var(--light-grey);
	color:var(--text);
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.has-text-align-center {
    text-align:center;
}
.alignnone {
	margin:.5rem 2rem 2rem 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:.5rem auto;
}
.alignright {
	float:right;
	margin:.5rem 0 2rem 2rem;
}
.alignleft {
	float:left;
	margin:.5rem 2rem 2rem 0;
}
a img.alignright {
	float:right;
	margin:.5rem 0 2rem 2rem;
}
a img.alignnone {
	margin:.5rem 2rem 2rem 0;
}
a img.alignleft {
	float:left;
	margin:.5rem 2rem 2rem 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:white;
	border:.1rem solid hsl(0, 0%, 94%);
	max-width:96%;
	padding:.5rem .3rem 1rem;
	text-align:center;
}
.wp-caption.alignnone {
	margin:.5rem 2rem 2rem 0;
}
.wp-caption.alignleft {
	margin:.5rem 2rem 2rem 0;
}
.wp-caption.alignright {
	margin:.5rem 0 2rem 2rem;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:1.1rem;
	line-height:1.7rem;
	margin:0;
	padding:0 .4rem .5rem;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:black !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]::after {
		content:" (" attr(href) ")";
	}
	abbr[title]::after {
		content:" (" attr(title) ")";
	}
	.ir a::after,
	a[href^="javascript:"]::after,
	a[href^="#"]::after {
		content:"";
	}
	pre,blockquote {
		border:1px solid hsl(0, 0%, 60%);
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
