
/*
Theme Name: GEN2 Theme
Author: AS @ theCreativeCollective
Description: An efficient theme loosely based on _s
Version: 2.0
*/

/* !! css reset
--------------------------------------------*/
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

h1 {
	font-size: 2em;
	margin-bottom: .67em;
	margin-top: 0;
}

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
}

b, strong {
	font-weight: bolder;
}

code, kbd, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

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

sub {
	bottom: -.25em;
}

sup {
	top: -.5em;
}

img {
	border-style: none;
}

button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button, input {
	overflow: visible;
}

button, select {
	text-transform: none;
}

button, [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
	outline: 1px dottedButtonText;
}

fieldset {
	padding: .35em .75em .625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"], [type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

html {
	box-sizing: border-box;
}

*, *:before, *:after {
	box-sizing: inherit;
}

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

.textwidget.custom-html-widget .modal-backdrop, iframe .modal-backdrop {
	display: none !important;
}

.modal {
	top: unset !important;
	bottom: 0 !important;
}

.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;
}

/* !! html defaults
--------------------------------------------*/
body {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

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

ul, ol {
	margin: 0;
	padding-left: 15px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

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

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

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: .85em;
}

td, th {
	padding: 10px;
	border-bottom: solid 1px var(--gray30);
}

th {
	background-color: var(--brand1);
	color: white;
	text-align: left;
	font-weight: normal;
}

/* !! utility classes
--------------------------------------------*/

/* --> MINIMAL FLEXBOX */
.flexi-parent * {
	box-sizing: border-box;
}

.flexi-parent {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
}

.flexi-columns {
	flex-direction: column;
	flex-wrap: wrap;
}

.flexi-center {
	justify-content: center;
}

.flexi-middle {
	align-items: center;
}

.flexi-spaced {
	justify-content: space-between;
}

.flexi-child {
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 30px;
	width: 100%;
}

.flexi-parent.one-per-row .flexi-child {
	max-width: 100%;
}

.flexi-parent.two-per-row .flexi-child {
	max-width: 50%;
}

.flexi-parent.three-per-row .flexi-child {
	max-width: 33.33%;
}

.flexi-parent.four-per-row .flexi-child {
	max-width: 25%;
}

.flexi-parent.five-per-row .flexi-child {
	max-width: 20%;
}

.flexi-parent.six-per-row .flexi-child {
	max-width: 16.66%;
}

.flexi-child .inner {
	height: 200px;
}

/*  Small screens */
@media only screen and (max-width: 768px) {
	.flexi-parent.one-per-row .flexi-child, .flexi-parent.two-per-row .flexi-child, .flexi-parent.three-per-row .flexi-child, .flexi-parent.four-per-row .flexi-child, .flexi-parent.five-per-row .flexi-child, .flexi-parent.six-per-row .flexi-child, .flexi-child {
		max-width: 100%;
	}
}

/* --> 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;
}

.alignfull {
	width: 100vw;
	margin-left: calc(50% - 50vw);
}

.alignwide {
	width: calc(100% + 20vw);
	position: relative;
	left: -10vw;
}

/* --> CLEARFIX */
.clearfix:before, .clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

/* --> RESPONSIVE VIDEO */
.video-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.video-container iframe, .video-container object, .video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* --> SPACING */
.spacing-top {
	padding-top: 80px;
}

.spacing-bottom {
	padding-bottom: 80px;
}

.tm0 {
	margin-top: 0 !important;
}

.bm0 {
	margin-bottom: 0 !important;
}

/* !! fonts
--------------------------------------------*/
:root {
	--fontprimary: "Montserrat", sans-serif;
	--fontdisplay: "Cardo", serif;
}

/* !! colours
--------------------------------------------*/
:root {
	--brand1: #40154e;
	/* colour1 */
	--brand2: #485a26;
	/* colour2 */
	--brand3: #610010;
	/* colour3 */
	--gray5: #e9e8ea;
	--gray10: #e6e1e2;
	--gray20: #cac5c6;
	--gray30: #afaaab;
	--gray40: #948f91;
	--gray50: #7a7677;
	--gray60: #5e5e5e;
	--gray70: #474747;
	--gray80: #303030;
	--gray90: #1b1b1b;
	--light: var(--gray10);
	--mid: var(--gray50);
	--dark: var(--gray80);
}

.bg-brand1 {
	background-color: var(--brand1);
}

.bg-brand2 {
	background-color: var(--brand2);
}

.bg-brand3 {
	background-color: var(--brand3);
}

.bg-dark {
	background-color: var(--dark);
}

.bg-mid {
	background-color: var(--mid);
}

.bg-light {
	background-color: var(--light);
}

.txt-brand1 {
	color: var(--brand1);
}

.txt-brand2 {
	color: var(--brand2);
}

.txt-brand3 {
	color: var(--brand3);
}

.txt-dark {
	color: var(--dark);
}

.txt-mid {
	color: var(--mid);
}

.txt-light {
	color: var(--light);
}

/* !! typography
--------------------------------------------*/
body {
	font-size: 15px;
	font-weight: 300;
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	margin-bottom: 20px;
	line-height: 1.2;
}

h1 {
	font-size: 50px;
	font-weight: 400;
}

h2 {
	font-size: 32px;
	font-weight: 400;
}

h2.extra-strong {
	text-transform: uppercase;
	font-size: 36px;
}

h3 {
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 10px;
}

h4 {
	font-size: 18px;
	font-weight: 400;
}

h5 {
	font-size: 16px;
}

h6 {
	font-size: 16px;
}

@media only screen and (max-width: 768px) {
	h1 {
		font-size: 30px;
	}
	
	h2 {
		font-size: 20px;
	}
	
	body {
		font-size: 13px;
	}
}

@media only screen and (max-width: 1024px) {
	h2 {
		font-size: 24px;
	}
}

p:first-of-type {
	margin-top: 0;
}

.para-large, big {
	font-size: 125%;
}

small {
	font-size: 80%;
}

a {
	color: var(--brand1);
	text-decoration: none;
}

.dark-bg a {
	color: white !important;
	text-decoration: underline;
}

a:hover {
	color: var(--brand2);
}

ul {}

.scripty {
	font-family: "Sacramento", cursive;
}

h2 .scripty {
	font-size: 82px;
}

/*  !!  icons
--------------------------------------------*/
.header-icons a {
	display: inline-block;
	margin-right: 22px;
	text-align: center;
	color: white;
	vertical-align: middle;
}

.social-icons a {
	font-size: 20px;
	display: inline-block;
	margin-right: 22px;
	text-align: center;
	vertical-align: middle;
}

.header-icons.contacts a {
	margin-right: 45px;
}

.header-icons a i {
	font-size: 20px;
	vertical-align: middle;
}

.header-icons.socials {
	text-align: right;
}

.contact-icons i {
	display: inline-block;
	margin-right: 10px;
	font-size: 15px;
}

/* !! forms
--------------------------------------------*/
.button, .gform_button, input[type="button"], input[type="reset"], input[type="submit"] {
	background-color: var(--brand1);
	border: 1px solid white;
	font-size: 14px;
	display: inline-block;
	line-height: 1;
	padding: 14px 26px;
	color: #fff;
	margin-bottom: 5px;
	cursor: pointer;
	border-radius: 3px;
}

.button:hover, .gform_button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
	background-color: white;
	border: 1px solid var(--brand1);
	color: var(--brand1);
}

.button.button-reverse {
	background-color: white;
	color: var(--brand1);
}

.button.button-reverse:hover {
	background-color: var(--brand1);
	border-color: white;
	color: white;
}

.button-small {
	font-size: 75%;
	padding: 6px 10px;
}

.button-large {
	font-size: 130%;
	padding: 18px 30px;
}

.button.button-outline {
	background-color: white;
	border-color: var(--brand1);
	color: var(--brand1);
}

.button.button-outline:hover {
	background-color: var(--brand1);
	color: white;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 9px 6px;
	color: var(--gray20);
	font-size: 14px;
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus {
	color: var(--gray50);
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/* --> search form */
form.search-form {
	position: relative;
}

form.search-form label {
	width: 100%;
	display: block;
}

form.search-form input.search-field {
	width: 100%;
	height: 100%;
	padding-left: 20px;
}

form.search-form input.search-submit {
	line-height: 1;
	font-size: 12px;
	position: absolute;
	right: 2px;
	top: 2px;
	bottom: 2px;
	margin-bottom: 0;
	padding-left: 10px;
	padding-right: 10px;
}

/* --> toggle search form v2 */
.search-toggle {
	text-align: right;
}

.search-toggle #searchform {
	position: fixed;
	top: -200px;
	height: 200px;
	left: 0;
	right: 0;
	padding: 30px;
	background-color: black;
	z-index: 100;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

body.search-toggle-active {
	margin-top: 200px;
}

body.search-toggle-active .search-toggle #searchform {
	top: 0;
}

.search-toggle #searchform .searchinput {
	width: 100%;
	height: 100%;
	text-align: center;
	font-size: 24px;
	background-color: transparent;
	border: none;
}

/* --> subscribe form -- */
footer .gform_wrapper .gform_footer {
	padding: 0;
	margin: 0;
	margin-top: 10px;
}

footer .gform_wrapper li.hidden_label input {
	margin-top: 0;
}

body footer .gform_wrapper .top_label div.ginput_container {
	margin-top: 0;
}

/* !! ZONE: above header
--------------------------------------------*/
#above-header-wrap {
	background-color: var(--brand1);
	padding-top: 12px;
	padding-bottom: 12px;
}

/* !! ZONE: header
--------------------------------------------*/
.widget_tcc_logo_widget {
	font-size: 0;
}

.widget_tcc_logo_widget .custom-logo {
	width: 150px;
}

#branding-wrap {
	padding-top: 20px;
	padding-bottom: 20px;
}

#branding-wrap #nav_menu-5 {
	margin-left: auto;
}

#navigation-fixed-wrap .logo-small {
	max-width: 100px;
}

/* !! ZONE: Content
--------------------------------------------*/
#page-content-wrap {
	padding: 30px 0 0;
}

#above-footer .tripadvisor-banner {
	background-color: #000;
	padding: 80px 0;
	font-weight: 900;
}

#above-footer .tripadvisor-banner i.fa-tripadvisor {
	background-color: #40d98a;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	vertical-align: middle;
	padding: 12px;
	margin-left: 20px;
}

/* !! ZONE: navigation
--------------------------------------------*/

/* --> NAV MENUS GLOBAL STYLE */
#site-header ul.menu {
	margin: 0;
	padding-left: 0;
}

ul.menu li {
	list-style: none;
}

#site-header ul.menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

#site-header ul.menu a {
	display: inline-block;
}

/* --> LEVEL 1 */
#site-header ul.menu > li {
	position: relative;
}

#site-header ul.menu > li > a {
	padding: 12px;
	color: var(--gray80);
	font-weight: 500;
	font-size: 17px;
}

#site-header ul.menu > li:hover > a {
	color: var(--gray40);
}

#site-header ul.menu > li .dashicons {
	padding-left: 8px;
	font-size: 16px;
	vertical-align: bottom;
}

/* --> LEVEL 2 */
#site-header ul.menu ul.sub-menu {
	box-shadow: 0 3px 3px rgba(0, 0, 0, .2);
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 999;
	text-align: left;
	padding: 0;
}

#site-header ul.menu > li.menu-item-has-children:hover > ul.sub-menu {
	left: auto;
}

#site-header ul.menu ul.sub-menu a {
	width: 275px;
	padding: 12px;
	background-color: var(--brand1);
	color: white;
}

#site-header ul.menu ul.sub-menu a:hover {
	background-color: var(--brand2);
}

/* Book now button */
#site-header ul.menu li.menu-cta {
	align-self: center;
	margin-left: 20px;
}

#site-header ul.menu li.menu-cta a {
	background-color: var(--brand1);
	border: 1px solid var(--brand1);
	padding: 8px 12px;
	color: white;
	border-radius: 3px;
	line-height: 1;
}

#site-header ul.menu li.menu-cta a:hover {
	background-color: white;
	color: var(--brand1);
}

/* --> STICKY NAVIGATION */
body #navigation-fixed-wrap {
	opacity: 0;
	position: fixed;
	top: -100px;
	z-index: 99;
	width: 100vw;
	background-color: white;
	border-bottom: 1px solid var(--gray20);
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
	padding-top: 10px;
	padding-bottom: 10px;
}

@media only screen and (min-width: 769px) {
	body.scrolled #navigation-fixed-wrap {
		top: 0;
		opacity: 1;
	}
	
	body.scrolled.admin-bar #navigation-fixed-wrap {
		top: 30px;
	}
}

#navigation-fixed-wrap .gen2-mobile-nav {
	margin-left: auto;
}

#navigation-fixed-wrap .small-logo {
	width: 40px;
	height: auto;
	font-size: 0;
}

/* --> mobile menu.v2 */
.overlay {
	display: none;
}

@media only screen and (max-width: 768px) {
	.overlay {
		display: block;
		margin-left: auto;
	}
	
	body #navigation-fixed-wrap {
		top: 0;
		opacity: 1;
		padding-left: 15px;
		padding-right: 15px;
	}
	
	body #navigation-fixed-wrap .row {
		min-height: 45px;
	}
	
	#page-content-wrap {
		margin-top: 33px;
	}
	
	html {
		margin-top: 45px;
	}
	
	html #wpadminbar, #above-header-wrap, #branding-wrap, #navigation-wrap, .gen2-mobile-nav .fixed-menu {
		display: none;
	}
	
	.menubutton {
		width: 30px;
		padding: 4px;
		cursor: pointer;
		transition: all .4s ease;
		position: relative;
		z-index: 101;
	}
	
	.menubutton .bar {
		position: relative;
		height: 4px;
		background-color: #333;
		transition: all .4s ease;
		opacity: 1;
		top: 0;
	}
	
	.menubutton .bar:not(:last-child) {
		margin-bottom: 4px;
	}
	
	.menubutton.active .bar {
		background-color: white;
	}
	
	.menubutton.active .bar2 {
		opacity: 0;
	}
	
	.menubutton.active .bar1 {
		transform: rotate(45deg);
		top: 8px;
	}
	
	.menubutton.active .bar3 {
		transform: rotate(-45deg);
		top: -8px;
	}
	
	.overlay {
		position: fixed;
		z-index: 100;
		height: 0;
		width: 100%;
		top: 0;
		left: 0;
		right: 0;
		overflow: hidden;
		background-color: rgba(0, 0, 0, .9);
		transition: all .5s ease;
	}
	
	.overlay.active {
		height: 100%;
		bottom: 0;
		overflow-y: scroll;
	}
	
	.overlay .modal-menu {
		padding-left: 20%;
		padding-top: 15%;
	}
	
	.overlay .modal-menu ul {
		padding-left: 0;
	}
	
	.overlay .modal-menu li {
		list-style-type: none;
		font-size: 20px;
		margin-top: 10px;
		line-height: 0;
		opacity: 0;
		transition: all .5s ease;
		transition-delay: .4s;
	}
	
	.overlay .modal-menu li.menu-item-has-children {
		position: relative;
	}
	
	.overlay .modal-menu .showmore {
		position: absolute;
		left: -20px;
		top: -2px;
		font-size: 30px;
		-webkit-transition: all .3s ease;
		transition: all .3s ease;
	}
	
	.overlay .modal-menu .showmore.open {
		transform: rotate(90deg);
	}
	
	.overlay .modal-menu li.menu-item a {
		color: white;
	}
	
	.overlay .modal-menu ul.sub-menu {
		margin-bottom: 20px;
		display: none;
	}
	
	.overlay .modal-menu ul.sub-menu a {
		font-size: 85%;
		padding-left: 5%;
	}
	
	.overlay.active .modal-menu li.menu-item {
		line-height: 1.2;
		opacity: 1;
	}
	
	.overlay.active .modal-menu li.menu-item.menu-cta-button {
		margin-top: 40px;
		margin-left: -25px;
	}
}

/* !! ZONE: sidebar
--------------------------------------------*/
#secondary {
	width: 320px;
	padding: 15px;
	margin-left: 30px;
	font-size: 14px;
}

@media only screen and (max-width: 1024px) {
	#secondary {
		width: 100%;
		margin-left: 0;
	}
}

#secondary section {
	margin-bottom: 30px;
}

#secondary h2 {
	text-transform: uppercase;
	font-size: 16px;
	margin-bottom: 10px;
}

/* !! ZONE: footer
--------------------------------------------*/
#site-footer-wrap {
	font-size: 14px;
	padding-top: 100px;
	padding-bottom: 30px;
	background-color: var(--gray5);
}

#site-footer-wrap h2 {
	font-size: 16px;
	text-transform: uppercase;
	margin-bottom: 8px;
	margin-top: 0;
}

#site-footer-wrap ul {
	list-style: none;
	padding-left: 0;
}

#site-footer-wrap ul ul {
	padding-left: 15px;
}

#site-footer-wrap #site-info {
	padding: 15px;
}

#site-footer-wrap h2.widget-title {
	font-weight: 600;
}

#footer-1, #footer-2, #footer-3, #footer-4 {
	margin-bottom: 20px;
}

#footer-2 .menu > li {
	font-weight: 600;
}

/* !! Page Banner
--------------------------------------------*/
body.hide-title header.entry-header, body.home header.entry-header {
	display: none;
}

header.entry-header {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	background-image: url("https://cdn-bfnac.nitrocdn.com/VXSHQkhKLICjQlIMXINVabNJDSjhLUft/assets/images/optimized/rev-d91f8da/ihophuntervalley.com.au/wp-content/uploads/2020/03/grapes-1952073_1920.jpg");
	background-size: cover;
	background-position: center;
	padding-top: 80px;
	padding-bottom: 80px;
	color: white;
	margin-bottom: 80px;
	position: relative;
}

header.entry-header.nitro-lazy {
	background-image: none !important;
}

header.entry-header:before {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	content: "";
	background-color: rgba(0, 0, 0, .4);
}

header.entry-header h1 {
	position: relative;
	z-index: 10;
}

body.page-template-page-express-pass header.entry-header {
	margin-bottom: 0;
}

/* --> small screens*/
@media only screen and (max-width: 768px) {
	header.entry-header {
		padding-top: 20px;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
}

/* !! page content
--------------------------------------------*/
@media only screen and (max-width: 1024px) {
	#primary {
		width: 100%;
	}
}

.container {
	transition: all .4s ease;
	-webkit-transition: all .4s ease;
}

/* --> front page */
.popular-tours .section-title {
	margin-bottom: 20px;
}

.popular-tours h2 {
	margin-bottom: 0;
}

.popular-tours .content-blocks .wp-block-column {
	background-color: white;
	text-align: center;
	position: relative;
	padding: 0 12px;
	padding-bottom: 55px;
}

.popular-tours .content-blocks .wp-block-column figure {
	margin: 0 -12px;
	max-width: initial;
}

.popular-tours .content-blocks a.button {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin-bottom: 0;
}

.tripadvisor-strip h2 {
	font-weight: bold;
}

.tripadvisor-strip i.fa-tripadvisor {
	background-color: #40d98a;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	vertical-align: middle;
	padding: 9px;
	margin-left: 20px;
}

.tours-grid {
	margin-bottom: 20px;
}

.tours-grid .widget_sow-image {
	overflow: hidden;
	height: 246px;
}

.tours-grid h3 {
	margin-top: 0;
}

/* !! Blog page
--------------------------------------------*/
body.blog .posts-navigation .nav-previous, body.blog .posts-navigation .nav-next {
	display: inline-block;
	margin-right: 10px;
}

body.blog .posts-navigation a {
	background-color: var(--brand1);
	border: 1px solid var(--brand1);
	padding: 8px 12px;
	color: white;
	border-radius: 3px;
	line-height: 1;
}

body.blog .posts-navigation a:hover {
	background-color: white;
	color: var(--brand1);
}

/* --> tablet&larger */
@media only screen and (min-width: 768px) {
	/* Masonry container */
	body.blog #content {
		/* -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; */
		
		/* -moz-column-gap: 1em; -webkit-column-gap: 1em; column-gap: 1em; */
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	/* Masonry bricks or child elements */
	body.blog #content > article {
		background-color: #eee;
		display: inline-block;
		/* margin: 0 0 1em; */
		padding: 1em;
		/* width: 100%; */
		width: 32%;
		margin-bottom: 30px;
	}
	
	body.blog .paging-navigation {
		background-color: #fff;
	}
	
	body.blog .posts-navigation {
		margin-bottom: 30px;
	}
}

/* --> mobiles */
@media only screen and (max-width: 768px) {
	body.blog article.post {
		margin-bottom: 60px;
	}
}

.post-img {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
	width: 400px;
	max-width: 50%;
	text-align: right;
}

/*  !! Post Grid - tours & destinations
--------------------------------------------*/
.custom-grid .item {
	margin-bottom: 20px;
	min-height: 350px;
	overflow: hidden;
}

.custom-grid .content {
	position: relative;
	height: 100%;
	padding: 25px;
	overflow: hidden;
	border-radius: 3px;
}

.custom-grid .content .background-img {
	background-size: cover;
	background-position: center center;
	-webkit-transition: all 1s ease;
	transition: all 1s ease;
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.custom-grid .content:hover .background-img {
	transform: scale(1.2);
}

.custom-grid .content a.link-overlay {
	background-color: rgba(0, 0, 0, .15);
	-webkit-transition: all 1s ease;
	transition: all 1s ease;
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.custom-grid .content:hover a.link-overlay {
	background-color: rgba(0, 0, 0, .65);
}

.custom-grid .content h3.title {
	position: relative;
	z-index: 3;
	color: white;
	pointer-events: none;
	margin-top: 0;
	font-size: 26px;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, .65);
}

.custom-grid .content h5 {
	position: relative;
	z-index: 3;
	color: white;
	font-weight: 400;
	font-size: 12px;
	text-transform: uppercase;
}

/* IPad */
@media only screen and (max-width: 768px) and (min-width: 440px) {
	.custom-grid .content h3.title {
		font-size: 22px;
	}
}

.custom-grid .content .hop-id {
	position: relative;
	z-index: 3;
	color: white;
	pointer-events: none;
	margin-top: 0;
	font-size: 14px;
	background-color: var(--brand1);
	padding: 8px 16px;
	border-radius: 3px;
	margin-bottom: 20px;
}

/*  !! Post Grid - destinations carousel
--------------------------------------------*/
.custom-grid.destinations-carousel .content {
	height: 350px;
}

/* --> mobile view */
@media only screen and (max-width: 768px) {
	.custom-grid.destinations-carousel .content {
		height: 200px;
		padding: 12px;
	}
	
	.custom-grid .content h3.title {
		font-size: 18px;
		text-shadow: 1px 1px 2px rgba(0, 0, 0, .65);
	}
	
	.custom-grid .item {
		min-height: 250px;
	}
}

/* !! HOHO Pages
--------------------------------------------*/
.hoho-content .bookings-wrapper {
	color: white;
	text-align: center;
}

.hoho-content .bookings-wrapper .item {
	margin-bottom: 20px;
}

.hoho-content .bookings-wrapper .inner {
	background-color: #000;
	padding: 30px;
	height: 100%;
}

.hoho-content .items {
	font-size: 18px;
	line-height: 1.3;
	margin-bottom: 12px;
}

.hoho-content .items span.inner {
	display: inline-block;
	padding-left: 36px;
}

.hoho-content .fa-check-circle {
	position: absolute;
	left: 17px;
	top: 0;
	font-size: 22px;
}

.hoho-content .key-items .fa-check-circle {
	color: var(--brand1);
}

.hoho-content .bookable-items .fa-check-circle {
	color: var(--brand2);
}

.hoho-content .bookings-wrapper .inner {
	position: relative;
	padding-bottom: 105px;
}

.hoho-content .bookings-wrapper .button-holder {
	position: absolute;
	bottom: 45px;
	left: 0;
	text-align: center;
	width: 100%;
}

.hoho-content .below-gallery {
	padding-top: 40px;
	max-width: 80%;
}

/* --> express pass page */
.express-pass .inner {
	padding-top: 80px;
	padding-bottom: 80px;
}

/* !! Tours & Destinations
--------------------------------------------*/
.column-content {}

.gallery {
	margin-bottom: 40px;
}

.tour-slide {
	margin-bottom: 15px;
}

.tour-slide .slide-img {
	height: 350px;
	background-size: cover;
	background-position: top center;
}

.tour-slide-nav img {
	margin: 0 3px;
	cursor: pointer;
}

.column-content .section {
	padding-top: 30px;
}

.column-content :first-child {
	margin-top: 0;
}

.tour-footer {
	padding-top: 40px;
}

.booking-link-wrap {
	padding-top: 80px;
	padding-bottom: 80px;
	background-color: var(--brand1);
	text-align: center;
	color: white;
}

.feature-checklist ul {
	padding-left: 35px;
}

.feature-checklist ul li {
	list-style-type: none;
	position: relative;
	margin-bottom: 10px;
}

.feature-checklist ul li::before {
	content: "";
	font-family: dashicons;
	color: var(--brand1);
	font-size: 24px;
	display: inline-block;
	margin-left: -36px;
	position: absolute;
	top: -6px;
}

/* !! Slide Anything
--------------------------------------------*/
#slider_17848 .owl-item .sa_hover_container {
	display: -webkit-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#slider_17848 .owl-item {
	color: white;
}

#slider_17848 .owl-item h2 {
	font-weight: 400;
	font-size: 50px;
}

#slider_17848 .owl-item p {
	font-weight: 300;
}

/* !! LazyBlocks
--------------------------------------------*/

/* --> !! Flip Box */
.flip-box {
	background-color: transparent;
	perspective: 1000px;
}

.flip-box-inner {
	position: relative;
	width: 100%;
	padding-bottom: 100%;
	text-align: center;
	transition: transform .8s;
	transform-style: preserve-3d;
}

.flip-box:hover .flip-box-inner {
	transform: rotateY(180deg);
}

.flip-box-front, .flip-box-back {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	/* Safari */
	backface-visibility: hidden;
}

.flip-box-back {
	transform: rotateY(180deg);
}

/* --> !! FAQs */
.wp-block-lazyblock-faq {
	margin-bottom: 50px;
}

.wp-block-lazyblock-faq h3 {
	border-bottom: 1px solid var(--gray10);
	padding-bottom: 10px;
	margin-bottom: 15px;
}

.wp-block-lazyblock-faq b {
	font-weight: 500;
	font-size: 18px;
}

.wp-block-lazyblock-faq p {
	margin-top: 0;
}

.wp-block-lazyblock-faq .qa {
	margin-bottom: 30px;
	padding-left: 30px;
}

/* --> !! Accordion */
.wp-block-lazyblock-accordion {
	max-width: 600px;
	width: 100%;
	margin: 0 auto;
}

.wp-block-lazyblock-accordion h3 {
	font-size: 20px;
	font-weight: 300;
	cursor: pointer;
	position: relative;
	margin-bottom: 0;
}

.wp-block-lazyblock-accordion h3 i.fas {
	position: absolute;
	right: 0;
}

.wp-block-lazyblock-accordion .ui-accordion-content {
	padding-left: 50px;
	font-style: italic;
	font-weight: 400;
	color: var(--gray60);
	margin-bottom: 60px;
}

.wp-block-lazyblock-accordion .ui-accordion-content p {
	margin: 0;
}

.wp-block-lazyblock-accordion .ui-accordion-content p:empty {
	display: none;
}

/* --> !! Portals */
.section-portals .content {
	text-align: center;
	background-size: cover;
	position: relative;
	padding-bottom: 100%;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.section-portals a.portal-link {
	color: white;
	font-weight: 200;
	font-size: 20px;
	letter-spacing: 4px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
	border: solid 1px rgba(255, 255, 255, .3);
	background-color: rgba(0, 0, 0, .35);
	padding: 10%;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.section-portals .content:hover > a.portal-link {
	letter-spacing: 0;
	border: solid 1px rgba(255, 255, 255, .7);
	background-color: rgba(0, 0, 0, .8);
	font-weight: 700;
	top: 20px;
	left: 20px;
	right: 20px;
	bottom: 20px;
}

/* !! Tour Helper Form
--------------------------------------------*/
.gform_wrapper.decision-tree_wrapper .chooser ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}

.gform_wrapper.decision-tree_wrapper .chooser ul li {
	display: flex;
	flex-wrap: wrap;
	padding: 20px 5px !important;
	font-size: 18px;
	text-align: center;
	justify-content: center;
	align-content: center;
}

.gform_wrapper.decision-tree_wrapper .chooser ul li input[type="radio"] {
	display: none;
}

.gform_wrapper.decision-tree_wrapper .chooser ul li {
	width: auto;
	min-width: 15%;
	background-color: var(--gray5);
	border-right: 1px solid var(--gray20);
	border-left: 1px solid white;
	transition: all .4s ease;
	position: relative;
	top: 0;
}

.gform_wrapper.decision-tree_wrapper .chooser ul li:hover {
	background-color: var(--brand1);
	color: white;
	top: -5px;
}

.gform_wrapper.decision-tree_wrapper .chooser ul li:first-child {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.gform_wrapper.decision-tree_wrapper .chooser ul li:last-child {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	border-right: none;
}

/* --> mobile view */
@media only screen and (max-width: 768px) {
	.gform_wrapper.decision-tree_wrapper .chooser ul {
		display: block;
		font-size: 90%;
	}
	
	.gform_wrapper.decision-tree_wrapper .chooser ul li {
		border-bottom: 1px solid var(--gray20);
		border-top: 1px solid white;
	}
	
	.gform_wrapper.decision-tree_wrapper .chooser ul li:first-child {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}
	
	.gform_wrapper.decision-tree_wrapper .chooser ul li:last-child {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}
	
	.gform_wrapper .gfield_radio li {
		margin-bottom: 0;
	}
}

.gform_wrapper.decision-tree_wrapper .chooser-2 ul li {}

.gform_wrapper.decision-tree_wrapper .gfield_html {
	text-align: center;
}

.end-branch {
	animation-name: fadeup;
	animation-duration: 2s;
	background-color: var(--brand1);
	border: 1px solid white;
	font-size: 18px;
	display: inline-block;
	line-height: 1;
	padding: 22px 32px;
	color: #fff;
	margin-bottom: 5px;
	cursor: pointer;
	border-radius: 3px;
	position: relative;
	transition: all .4s ease;
}

.end-branch:before {
	content: "Try ";
}

.end-branch:hover {
	background-color: var(--brand2);
	color: white;
}

@keyframes fadeup {
	0% {
		opacity: 0;
		bottom: -30px;
	}
	
	100% {
		opacity: 1;
		bottom: 0;
	}
}

/*-- custom --*/
.inner h3 {
	font-size: 19px;
}

@media screen and (max-width: 768px) and (min-width: 440px) {
	.tours-grid .widget_sow-image {
		height: 480px;
	}
}

/* ==================================== */

/* ANCHOR LATE ADDITIONS */

/* ==================================== */
.entry-header .entry-meta, .entry-header .entry-meta a {
	color: white;
	position: relative;
}
