/*
Theme Name: Travel Outside Themes
Theme URI: https://traveloutsidewebsites.com
description: Theme for Travel Outside Directory Websites
Author: Travel Outside
Author URI: https://traveloutside.com
Version: 0.0.7.1
*/


@font-face {

}

@media (prefers-reduced-motion:no-preference){
    :root{
        scroll-behavior:smooth;
    }
}

/*=============
Variables
 ==============*/

:root {
	--primary: hsla(170, 23%, 21%, 1);;
	--secondary: hsla(63, 85%, 60%, 1);
	--accent: hsla(0, 0%, 0%, 1);
}


/*=============
 Reset Styles
 ==============*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box
}

body {
	line-height: 1.5;
	font-size: 16px;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;

}

ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
	font-style: italic;
	font-size: .9em;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

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

strong {
    font-weight: 700;
}

a {
	color: #000;
	text-decoration: none;
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

p{
	margin-bottom: 20px;
}

h1{
	line-height: 1.25;
	margin-bottom: .5em;
}

h2{
	line-height: 1.25;
	margin-bottom: .25em;
}

h3{
	line-height: 1.5;
	margin: 0 0 .5em;
}

h4 {
    line-height: 1.33;
    margin-bottom: 1em;
}

h5 {
    line-height: 1.33;
    margin-bottom: 1em;
}

h6 {
    line-height: 1.33;
    margin-bottom: 1em;
}


/*=============
 Fonts
 ==============*/

body{
	font-family: "Plus Jakarta Sans", sans-serif;
}

.fwlight{
	font-weight: 300;
}

.fwreg{
	font-weight: 400;
}

.fwmed{
	font-weight: 500;
}

.fwsemi-bold{
	font-weight: 600;
}

.fwbold{
	font-weight: 700;
}

.fwextra-bold{
	font-weight: 800;
}

.uppercase{
	text-transform: uppercase;	
}

.title-initial{
	text-transform: initial;
}


.fs1,
.page-content h1{
	font-size: 40px;
	font-weight: 700;
	line-height: 1.2;
	padding: 0;
}

.fs2,
.page-content h2{
	font-size: 36px;
	font-weight: 700;
	line-height: 1.2;
	padding: 0;
}

.fs3,
.page-content h3{
	font-size: 32px;
	font-weight: 700;	
	line-height: 1.2;
	padding: 0;
}

.fs4,
.page-content h4{
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4;
	padding: 0;
}

.fs5,
.page-content h5{
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	padding: 0;
}

.fs6,
.page-content h6{
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	padding: 0;
}

@media(min-width:1024px){
	.fs1,
	.page-content h1{
		font-size: 72px;
	}

	.fs2,
	.page-content h2{
		font-size: 48px;
	}

	.fs3,
	.page-content h3{
		font-size: 40px;
	}

	.fs4,
	.page-content h4{
		font-size: 32px;
		line-height: 1.3;
	}

	.fs5,
	.page-content h5{
		font-size: 24px;
	}

	.fs6,
	.page-content h6{
		font-size: 20px;
	}
}

.text-tiny{
	font-size: 12px;
}

.text-sm{
	font-size: 14px;
}

.text-reg{
	font-size: 16px;
}

.text-med{
	font-size: 18px;
}

.text-lg{
	font-size: 20px;
}



/*=============
 Colors
 ==============*/


.clr-white{
	color: #fff;
}

.clr-black{
	color: #000;
}

.bkg-white{
	background: #fff;
}

.bkg-black{
	background: #000;
}
/*=============
 
 ==============*/
 section{
 	padding: 7rem 0;
 }

.container {
    margin: auto;
    max-width: 1312px;
}

.inner_container {
    margin: auto;
    max-width: 768px;
}

.text-center{
	text-align: center;
}

.is-hidden{
	display: none;
}

.learn-more,
.from-link {
/*    color: #000;
    text-decoration: underline;*/
    position: relative;
}

.learn-more:after,
.from-link:after {
    content: "";
    background: url(/wp-content/themes/travel-outside-theme/images/link-arrow.svg) no-repeat center;
    height: 24px;
    width: 24px;
    position: absolute;
    top: 50%;
    transform: translateY(-40%);
}

.pricing-btn {
    padding: 8px 20px;
    display: inline-block;
    border-radius: 100px;
    border: 1px solid #D8E138;
    background: #D8E138;
    color: #29423E;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.375;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.pricing-btn:hover,
.pricing-btn:focus {
	background: #29423E;
	color: #D8E138;
}

.cta-btn,
input[type=submit] {
    padding: 12px 24px;
	background: #000;
	color: #fff;
	display: inline-block;
	font-weight: 700;
	-webkit-appearance: none;
	appearance: none;
	-webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;

}

.cta-btn:hover,
.cta-btn:focus,
.cta-btn.transparent:hover,
.cta-btn.transparent:focus,
input[type=submit]:hover,
input[type=submit]:focus {
	background: #fff;
	color: #000;
}

.cta-btn.transparent{
	background: none;
	color: #fff;
	border: 1px solid #fff;
}

.cta-btn.reverse{
	background: #fff;
	color: #000;
	border: 1px solid #000;
}

.cta-btn.reverse:hover,
.cta-btn.reverse:focus{
	background: #000;
	color: #fff;
}

.page-numbers {
    background: var(--secondary);
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: 5px;
    margin: .33rem;
    display: inline-block;
    font-size: 1rem;
}

.page-numbers.current,
.page-numbers:hover,
.page-numbers:focus {
    background: var(--primary);
}

.df{
	display: flex;
}

.m-auto{
	margin: auto;
}

.mx-auto{
	margin: 0 auto;
}

.mb1{
	margin-bottom: 1em;
}

.mb2{
	margin-bottom: 2em;
}

.mb3{
	margin-bottom: 3em;
}

.mb4{
	margin-bottom: 4em;
}

.mb5{
	margin-bottom: 5em;
}

.m1x0{
	margin: 1em 0;
}
.m2x0{
	margin: 2em 0;
}

.m3x0{
	margin: 3em 0;
}

.m5x0{
	margin: 5em 0;
}

.p0{
	padding: 0;
}

.p1{
	padding: 1em;
}

.p2{
	padding: 2em;
}

.p3{
	padding: 3em;
}

.p5{
	padding: 5em;
}

.p1x0{
	padding: 1em 0;
}

.p2x0{
	padding: 2em 0;
}

.p3x0{
	padding: 3em 0;
}

.pt3{
	padding-top: 3em;
}

.p5x0,
.p10x0x5{
	padding: 5em 0;
}

.ch20{
	max-width: 20ch;
    margin-left: auto;
    margin-right: auto;
}

.ch40{
	max-width: 40ch;
    margin-left: auto;
    margin-right: auto;
}

.ch60{
	max-width: 60ch;
    margin-left: auto;
    margin-right: auto;
}

.ch80{
	max-width: 80ch;
    margin-left: auto;
    margin-right: auto;
}

@media(min-width:1200px){
	.p10x0x5{
		padding: 10em 0 5em;
	}
}

button.slick-prev:before,
button.slick-next:before {
    content: "";
}

ul.slick-dots li {
    height: 8px;
    width: 8px;
}

ul.slick-dots li button {
    background: #ccc;
    border: none;
    border-radius: 100px;
    height: 8px;
    width: 8px;
}

ul.slick-dots li.slick-active button {
    background: #000;
}

.slider ul.slick-dots {
    width: auto;
}

.slider button.slick-prev.slick-arrow {
	background: url(/wp-content/themes/travel-outside-theme/images/prev.svg) no-repeat center / cover;
	width: 50px;
	height: 50px;
    left: auto;
    right: 5rem;
    top: auto;
    bottom: -3.5rem;
    z-index: 9999;
}

.slider button.slick-next.slick-arrow {
	background: url(/wp-content/themes/travel-outside-theme/images/next.svg) no-repeat center / cover;
	width: 50px;
	height: 50px;
    right: 1rem;
    top: auto;
    bottom: -3.5rem;
    z-index: 9999;
}


.testimonial-slider ul.slick-dots li button {
    background: #666666;
}

.testimonial-slider ul.slick-dots li.slick-active button {
    background: #fff;
}

.testimonial-slider ul.slick-dots {
    left: 50%;
    width: auto;
    margin: auto;
    transform: translatex(-50%);
}

.testimonial-slider ul.slick-dots li.slick-active button {
    background: #fff;
}

.testimonial-slider button.slick-prev.slick-arrow {
	background: url(/wp-content/themes/travel-outside-theme/images/prev-white.svg) no-repeat center / cover;
	width: 50px;
	height: 50px;
    left: 0rem;
    z-index: 9999;
}

.testimonial-slider button.slick-next.slick-arrow {
	background: url(/wp-content/themes/travel-outside-theme/images/next-white.svg) no-repeat center / cover;
	width: 50px;
	height: 50px;
    right: 1rem;
    z-index: 9999;
}

.gallery-slider button.slick-prev.slick-arrow {
	background: url(/wp-content/themes/travel-outside-theme/images/prev.svg) no-repeat center / cover;
	width: 50px;
	height: 50px;
    left: -1rem;
    z-index: 9999;
}

.gallery-slider button.slick-next.slick-arrow {
	background: url(/wp-content/themes/travel-outside-theme/images/next.svg) no-repeat center / cover;
	width: 50px;
	height: 50px;
    right: -1rem;
    z-index: 9999;
}

.gallery-slider img {
    margin: 0 10px;
}

/*=============
 Header Styles
 ==============*/

#pricing-top {
    background: #29423E;
    position: sticky;
    top: 0;
	z-index: 100;
}

.header {
    border-bottom: 1px solid #eee;
}

.header__container {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.tod-logo img{
	width: 124px;
}

#header-nav li {
    display: inline;
}

.resident-login {
    padding: 1em 0;
    text-align: right;
}

#header-nav li a {
    color: #000;
    font-weight: 700;
	padding: .5em 1em;
	position: relative;
}

#header-nav li a:hover,
#header-nav li a:focus,
#header-nav li.current-menu-item > a{
	background: var(--primary);
	color: #fff;
}

/*#header-nav .current-menu-item a:after {
    content:" ";
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border: 20px solid transparent;
	border-top: 20px solid var(--accent);
}*/

.navButtonWrapper {
    display: none;
}

.navButton {
    float: right;
    position: relative;
    width: 20px;
    height: 17px;
}

.navButtonBar {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    float: left;
    width: 100%;
    position: absolute;
    height: 3px;
    background: var(--primary);
    margin: 7px 0 0;
}

.navButtonBar--top {
    margin-top: 1px;
}

.navButtonBar--bottom {
    margin-top: 13px;
}

body.is-showingNav .navButtonBar {
    background: red;
}

body.is-showingNav .navButtonBar--top {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: 7px
}

body.is-showingNav .navButtonBar--middle {
    opacity: 0;
    filter: alpha(opacity=0);
}

body.is-showingNav .navButtonBar--bottom {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: 7px;
}

.navButtonBar--top {
    margin-top: 0px;
}
.navButtonBar--bottom {
    margin-top: 14px;
}

#mobile-nav {
    background-color: var(--primary);
    height: 100%;
    overflow-y: scroll;
    padding-top: 60px;
    position: fixed;
    right: -320px;
    top: 0;
    width: 320px;
    z-index: 99999;
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

#mobile-nav, 
#mobile-nav li a  {
    color: #fff;
}

#mobile-nav > ul > li {
	border-bottom: 1px solid var(--accent);
    width: 100%;
}

#mobile-nav li a {
    padding: 1em;
    width: 100%;
    display: block;
    text-transform: uppercase;
}

#mobile-nav ul.sub-menu {
    margin-left: 20px;
}

.main-nav-contact-container {
    padding: 12px 30px;
}

body.is-showingNav {
    overflow: hidden;
}

body.is-showingNav #mobile-nav {
    display: block;
    right: 0;
}

body.is-showingNav .header__container {
    transform: translateX(-320px);
}

body.is-showingNav .mobile-overlay {
    position: fixed;
    width: 100%;
    height: 100vh;
    z-index: 9999;
    top: 0;
}

#header-nav li.menu-item-has-children > a {
    padding-right: 1.5rem;
}

.menu-item-has-children:after {
    content: "";
    background: url(/wp-content/themes/travel-outside-theme/images/menu-arrow.svg) no-repeat center;
    position: absolute;
    right: 0;
    height: 24px;
    width: 25px;
}

@media(max-width: 1420px){
	.nav-wrap{
		display: none;
	}
	
	.navButtonWrapper {
		display: flex;
    	align-items: center;
	}
	
}

#header-nav li {
    position: relative;
}

#header-nav .sub-menu {
    color: inherit;
    padding: 0 0px 0px 20px;
    top: 28px;
    left: 0;
    white-space: nowrap;
    transition: opacity 0.2s ease-in-out,visibility 0s 0.2s ease-in-out;
	z-index: 99;
}

#header-nav .menu-item:hover > .sub-menu{
	display: block;
    visibility: visible;
    opacity: 1;
    transition: opacity 0.2s ease-in-out, visibility 0s ease-in-out;
    border: 1px solid var(--primary);
}

#header-nav .sub-menu li.menu-item a:hover{
    color: #fff;
}

#header-nav .sub-menu .menu-item{
    display: block;
    padding: 0;
}

#header-nav .sub-menu .menu-item:last-child{
    border-bottom: none;
}

#header-nav .sub-menu .menu-item a {
    display: inline-block;
    letter-spacing: initial;
    line-height: 1;
    border-left:1px solid transparent;
    padding: .75em 1em;
    width: 100%;
}

@media (min-width: 1021px){
    
    #header-nav .sub-menu {
        background: #fff;
/*      visibility: hidden;
        opacity: 0; */
		display: none;
        padding: .5em 0;
        position: absolute;
    }
}

/*=============
 Footer
 ==============*/

.footer-menus li {
    margin-bottom: 1em;
}

footer a,
.copyright a {
	color: #000;
}

.copyright .container {
    border-top: 1px solid #000;
}

/*=============
 Home
 ==============*/

 .home-hero{
 	height: 100vh;
 	max-height: 850px;
 }


#testimonials blockquote{
	max-width: 768px;
	margin: 0 auto 2rem;
}

.call-out a{
    color: #fff;
    text-decoration: underline;
}


#who-us li{
	position: relative;
	padding-left: 32px;
	margin-bottom: 16px;
}

#who-us li:before{
	content:"";
	background: url(/wp-content/themes/travel-outside-theme/images/list-arrow.svg) no-repeat center;
	height: 16px;
	width: 16px;
	display: inline-block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}

.card-wrap{
	margin: 0 0 80px;
}

.card-img{
	width: 100%;
}


.trips-hero{
	height: 100vh;
	max-height: 550px;
}

.overview-detail-item {
    padding-left: 32px;
    position: relative;
}

.trip-detail-hero{
	height: 100vh;
	max-height: 850px;
}

.overview-detail-item {
	margin-bottom: 48px;
}

.overview-detail-item h3 {
	line-height: 1;
}

.overview-detail-item:before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.overview-detail-item img,
.overview-detail-item p {
	margin: 1em;
}

.overview-detail-item.duration:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-duration.svg) no-repeat center;
}


.overview-detail-item.date:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-date.svg) no-repeat center;
}

.overview-detail-item.pricing:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-pricing.svg) no-repeat center;
}

.overview-detail-item.locations:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-locations.svg) no-repeat center;
}

.overview-detail-item.activities:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-activities.svg) no-repeat center;
}

.overview-detail-item.difficulty:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-difficulty.svg) no-repeat center;
}

.overview-detail-item.prerequisites:before {
    background: url(/wp-content/themes/travel-outside-theme/images/icons/icon-prerequisites.svg) no-repeat center;
}


#book-cta{
	background: url(/wp-content/uploads/2024/08/cta-book-trip.jpg) no-repeat center / cover;
}


.itinerary-item {
    padding-left: 32px;
}

.itinerary-item:first-of-type {
    border-left: 2px solid #000;
}

.form-control,
.form-select{
	border-radius: 0;
	border: 1px solid #000;
	padding: 12px 24px;
}

.contact-item img {
    height: 32px;
    width: 32px;
}


.contact-info.desktop{
	display: none;
}

@media(min-width: 992px){
	.contact-info.desktop{
		display: block;
	}

	.contact-info.mobile{
		display: none;
	}
}


.explore-item {
    padding-left: 32px;
}

.explore-item:first-of-type {
    border-left: 2px solid #000;
}

.why-reason {
    padding-left: 72px;
    position: relative;
}

.why-reason:before {
    content:"";
	background: url(/wp-content/themes/travel-outside-theme/images/list-arrow-lg.svg) no-repeat center;
	height: 48px;
	width: 48px;
	display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.post-card>*{
	display: block;
	margin-bottom: 8px;
}

.author-image{
	height: 48px;
	width: 48px;
	border-radius: 50px;
	object-fit: cover;
}

.page-content .wp-block-image.size-large {
	margin-bottom: 3em;
}

.page-content .wp-element-caption {
    border-left: 2px solid;
    padding-left: 8px;
    line-height: 1;
}

.page-content blockquote {
	font-size: 20px;
	font-style: italic;
    border-left: 2px solid;
    padding-left: 20px;
    line-height: 1;
    margin: 2em 0;
}

.page-content ul {
	margin-bottom: 20px;
}

.page-content li {
	list-style: disc;
	margin-left: 20px;
}

.theme-pricing-wrap{
	max-width: 1195px;
	margin: auto;
}

.pricing-card li{
	position: relative;
	padding-left: 32px;
	margin-bottom: 16px;
}

.pricing-card li:before{
	content:"";
	background: url(/wp-content/themes/travel-outside-theme/images/list-arrow-md.svg) no-repeat center;
	height: 24px;
	width: 24px;
	display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.pricing-schedule-call-wrap{
	max-width: 1024px;
	margin: auto;
}

#theme-option-1 {
    background: linear-gradient(320deg, #225C43 23.09%, #1E3D3D 81.6%);
}

#theme-option-2 {
    background: #FAF3EB;
}

.blog-category-links li {
    display: inline-block;
}

.blog-category-links li a{
    padding: .5em 1em;
    border: 1px solid transparent;
    display: inline-block;
}

.blog-category-links li.active a,
.blog-category-links li a:hover,
.blog-category-links li a:focus{
    border: 1px solid #000;
}



.slider-item{
    margin: 0 20px 0 0;
}