/*
    Theme Name: Sperling Starter
    Theme URI: https://www.sperlinginteractive.com
    Description: Sperling Interactive WordPress Starter Theme
    Version: 1.0
    Author: Sperling Interactive
  Theme URI: https://www.sperlinginteractive.com
*/
/*------------------------------------*\


\*------------------------------------*/
/* global box-sizing */
*,
*:after,
*:before {
    box-sizing: border-box;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

:root {
  --blue: #1B449C;
}

/* html element 62.5% font-size for REM use */
html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    color: #444;
    font: 300 11px/1.4 'Helvetica', sans-serif;
}

/* clear */
.clear:before,
.clear:after {
    content: ' ';
    display: table;
}

.clear:after {
    clear: both;
}

.clear {
    *zoom: 1;
}

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

/* Lightspeed Lazy load fade in */
img[data-lazyloaded] {
    opacity: 0;
}

img.litespeed-loaded {
    -webkit-transition: opacity .5s linear 0.2s;
    -moz-transition: opacity .5s linear 0.2s;
    transition: opacity .5s linear 0.2s;
    opacity: 1;
}

a {
    text-decoration: none;
}

a:hover {}

a:focus {
    outline: 0;
}

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

input:focus {
    border: 1px solid #04A4CC;
    outline: 0;
}

p,
ul,
ol {
    font-size: 1.6rem;
}

p a{
  color: #1B449C;
  transition: ease-in .3s;
 
}

p a:hover{
  color: #70A6D6;
}

h1 {
  color: #1A2F59;
    font-size: 4.5rem;
    font-weight: 700;
    line-height: 1;
    font-family: 'museo', serif;
}

h2 {
    color: #1A2F59;
    font-size: 2.8rem;
    font-family: 'museo', serif;
}

h3 {
  color: #1B449C;
    font-size: 2.2rem;
    font-family: 'museo', serif;
}

h4 {
    color: #1B449C;
    font-size: 1.8rem;
    font-family: 'museo', serif;
}

h5,
.upcoming-events .per-event .event-title {
    font-size: 1.7rem;
    /* font-family: 'museo', serif; */
}

h6,
.listing-details .main-dets h2 {
    font-size: 1.5rem;
    font-family: 'museo', serif;
}

blockquote {
    margin: 25px 0;
    padding: 25px 0 25px 5vw;
    font-style: italic;
    border-top: 1px solid;
    border-bottom: 1px solid;
    font-weight: 700;
}

.darkblue-bg{
  background-color: #1A2F59;
  color: #fff;
}

.darkblue-bg p,
.darkblue-bg h2,
.darkblue-bg h3{
  color: #fff;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
/* Buttons */
.btn-container{
  display: inline-block;
  margin: 15px 0;
}

.button{
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #1B449C;
  color: #fff;
  padding: 15px 20px;
  font-size: 1.5rem;
  border-radius: 5px;
  transition: ease-in .3s;
}

.button.light-blue{
  background-color: #70A6D6;
}

.button.light-blue:hover{
  background-color: #fff;
  color: #1B449C
}

.button span{
  line-height: 1;
}

.button i{
  margin-left: 10px;
  font-size: 1.8rem;
}

.button:hover{
  background-color: #70A6D6;
}

/* wrapper */
.wrapper {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    min-height: 100vh;
    position: relative;
    width: 100%;
    max-width: 2560px;
}

.container {
    max-width:1280px;
    align-self: center;
    flex: 1 auto;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 0 20px;
}

.container-fluid{
  max-width:1400px;
  align-self: center;
  flex: 1 auto;
  margin: 0 auto;
  width: 100%;
  height: 100%;
  padding: 0 20px;
}

/* header */
.header {
  background: #fff;
  box-shadow: 0px 3px 6px rgba(0,0,0,0.29);
}

.header-inner{
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.header .logo{
  padding-left: 30px;
}

.logo-img {
    backface-visibility: hidden;
    height: 160px;
    margin: 10px 0;
}

/* nav */
.header-nav .top-nav{
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.header-right{
  display: flex;
}

.header-nav .top-nav ul{
  list-style-type: none;
  padding: 0;
}

.header-nav .top-nav ul li{
  display: inline-block;
  padding: 5px 10px;
}

.header-nav .top-nav ul a{
  color: #1B449C;
  transition: ease-in .3s;
}

.header-nav .top-nav ul a:hover{
  color: #c2a112;
}

.header-nav{
  max-width: 1050px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.header-nav .nav {
  font-family: 'museo', serif;
}

.header-nav .nav ul{
  list-style-type: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
}

.header-nav .nav ul li{
  display: inline-block;
}

.header-nav .nav ul a{
  color: #1B449C;
  font-weight: 700;
  font-size: 1.7rem;
  padding: 10px 15px;
  display: inline-block;
}

.header-nav .nav ul li:last-child a{
  padding-right: 0;
}

.header-nav .nav #mega-menu-item-49 #mega-menu-item-nav_menu-2,
.header-nav .nav #mega-menu-item-46 #mega-menu-item-nav_menu-2,
.header-nav .nav #mega-menu-item-447 #mega-menu-item-nav_menu-2{
  padding: 0 0 30px !important;
}

#mega-menu-49-0-0,
#mega-menu-46-0-0,
#mega-menu-447-0-0{
  padding: 0 25px 30px !important;
  background-color: #1A2F59 !important;
  color: #fff;
}

#mega-menu-49-0-1,
#mega-menu-46-0-1,
#mega-menu-447-0-1{
  padding: 0 40px !important;
}

.header-nav .nav #mega-menu-item-text-3 .img-wrapper a{
  padding: 0 !important
}

.header-nav .nav .textwidget p.mega-title-ftrd{
  color: #fff;
  font-weight: 700;
  font-size: 2.5rem;
}

.header-nav .nav .textwidget .ftrd-desti-mega p{
  color: #fff;
}

.header-nav .nav ul a.button{
  color: #fff;
  padding: 10px 20px !important;
  font-size: 1.5rem;
  font-weight: 300;
  font-family: 'Helvetica', sans-serif;
}

.ftrd-desti-mega img{
  border-radius: 0;
}

.header-nav .nav  .textwidget p{
  color: #1B449C;
  font-size: 2rem;
}

.header-nav .nav ul#menu-things-to-do,
.header-nav .nav ul #menu-places-to-eat,
.header-nav .nav ul #menu-places-to-stay{
  justify-content: flex-start;
}

.header-nav .nav ul#menu-things-to-do li,
.header-nav .nav ul #menu-places-to-eat li,
.header-nav .nav ul #menu-places-to-stay li{
  width: 33.33%;
  padding-right:20px;
  font-family: 'Helvetica', sans-serif;
}

.header-nav .nav ul#menu-things-to-do li a,
.header-nav .nav ul #menu-places-to-eat li a,
.header-nav .nav ul #menu-places-to-stay li a{
  color: #1A2F59;
  transition: ease-in .3s;
}

.header-nav .nav ul#menu-things-to-do li a:hover,
.header-nav .nav ul #menu-places-to-eat li a:hover,
.header-nav .nav ul #menu-places-to-stay li a:hover{
  color: #E9C31E;
}

/* Mega Menu Events */
.upcoming-events.mega-events{
  padding-top: 30px;
  border-top: 1px solid #BBBCBB;
}

.upcoming-events.mega-events .per-event{
  align-items: flex-start;
}

.upcoming-events.mega-events .per-event .event-title{
  line-height: 1.2;
}

.upcoming-events.mega-events .per-event .event-title a{
  color: #1A2F59;
  padding: 0;
}

.upcoming-events.mega-events .per-event .date a{
  padding: 10px 25px !important
}

.upcoming-events.mega-events .per-event p{
  font-size: 1.6rem;
  font-weight: 400;
  font-family: 'Helvetica', sans-serif;
}

.upcoming-events.mega-events .per-event p.time{
  color: #1A2F59 !important;
  font-weight: 300;
  margin-top: 3px;
}

.upcoming-events.mega-events .per-event .date p{
  margin-bottom: 2px !important;
  color: #1A2F59 !important;
}

.upcoming-events.mega-events .per-event h3{
  color: #1A2F59;
}
/* /Mega Menu Events */

.travel-guide-button{
  height: 100%;
  position: relative;
}

.travel-guide-button:after{
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 165px;
  background: #70A6D6;
}

.travel-guide-button a{
  height: 100%;
  width: 240px;
  z-index: 1;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 20px 10px 20px 0;
}

.travel-guide-button .tg-label{
  font-family: 'museo', serif;
  font-size: 1.8rem;
  padding: 20px 20px 20px 10px;
  color: #fff;
  width: 100px;
}

/* search bar */
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #1B449C;
  opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #1B449C;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #1B449C;
}

.search-wrapper div{
    display: flex;
    align-items: center;
}

.search-wrapper label{
  font-size: 2rem;
  color: #1B449C;
  margin-right: 3px;
}

.search-wrapper .search-input{
  width: 70px;
  font-size: 1.6rem;
  padding: 5px 0;
  color: #1B449C;
  border: 0;
  -webkit-transition: width 0.5s ease-in-out;
  -moz-transition: width 0.5s ease-in-out;
  -o-transition: width 0.5s ease-in-out;
  transition: width 0.5s ease-in-out;
}

.search-wrapper .search-input:focus{
  width: 150px;
  border-bottom: 1px solid #1B449C;
}

/* search result */
.search h3 a{
  color: #1A2F59;
  transition: ease-in .3s;
}

.search h3 a:hover{
  color: #e9c31e;
}

.search article.post{
  margin: 20px 0;
}

/* sidebar */
.sidebar {}

/* footer */
.footer{
  background: #fff;
}

.footer a{
  color: #1B449C;
  transition: ease-in .3s;
}

.footer a:hover{
  color: #E9C31E;
}

.footer .top-sec{
  padding: 20px 0;
  border-top: 1px solid #BBBCBB;
  border-bottom: 1px solid #BBBCBB;
}

.footer .nav ul{
  list-style-type: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.footer .nav ul li{
  text-align: center;
  margin: 15px 0;
  width: 50%;
  font-weight: 500;
  font-family: 'museo', serif;
}

.footer .top-sec p{
  color: #1B449C;
  font-weight: 500;
  font-family: 'museo', serif;
  margin-bottom: 10px;
}

.footer .with_frm_style input[type=email]{
  border: 1px solid #e2e2e2;
  height: auto;
  padding: 10px 15px;
  border-radius: 7px;
  box-shadow: 0px 3px 6px rgba(0,0,0,0.29);
}

.footer .with_frm_style .frm_submit{
  text-align: right;
}

.footer .bottom-sec{
  padding: 10px 0;
}

.footer .bottom-sec p{
  color: #1B449C;
  margin: 0;
  text-align: center;
}

.footer .copyright-socials{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.footer .socials-gtranslate{
  display: flex;
  align-items: center;
}

.footer ul.socials{
  list-style-type: none;
  padding: 0 10px 0 0;
  border-right: 2px solid #777777;
}

.gtranslate-wrapper{
  padding-left: 15px;
}

.footer ul.socials li{
  display: inline-block;
  margin: 5px 3px;
  font-size: 1.8rem;
}

/* FORMIDABLE */
.frm_style_formidable-style.with_frm_style .frm_submit button{
  background-color: #1B449C;
  border: 0;
  color: #fff;
  margin: 0;
  padding: 10px 20px;
  font-size: 1.5rem;
  border-radius: 5px;
  transition: ease-in .3s;
}

.frm_style_formidable-style.with_frm_style .frm_submit button:hover,
.frm_style_formidable-style.with_frm_style .frm_submit button:focus{
  background-color: #70A6D6;
  color: #fff;
}

#form_requestaguide #frm_field_15_container{
  background: #1A2F59;
  padding: 20px;
}

#form_requestaguide #frm_field_15_container .frm_checkbox label{
  color: #fff;
  font-size: 1.5rem;
}

.pagination {
  margin-top: 30px;
    font-size: 1.8rem;
    text-align: center;
}

.pagination .page-numbers{
  padding: 5px 8px;
  color: #1A2F59;
  background: transparent;
  transition: ease-in .3s;
}

.pagination .page-numbers:hover,
.pagination .page-numbers.current{
  background: #1A2F59;
  color: #fff;
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    height: auto;
}

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

/*------------------------------------*\
    FORMS 
\*------------------------------------*/

.ctct-form-wrapper {
  max-width: 850px;

}

form.ctct-form-1130 small {
  display: block;
  padding: 2rem 0 0;
}

form.ctct-form-1130 p,
form.ctct-form-1130 small {
  font-size: 1.8rem;
}

form.ctct-form-1130 label {
  font-size: 1.4rem !important;
}

form.ctct-form-1130 .ctct-form-field-email input{
  width: 100%;
  max-width: 700px;

}

p.ctct-form-field.ctct-form-field-submit input {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #1B449C;
  color: #fff;
  padding: 15px 35px;
  font-size: 1.5rem;
  border-radius: 5px;
  transition: ease-in .3s;
  border: none;
  margin: 2rem 0;
}

p.ctct-form-field.ctct-form-field-submit input:hover,
p.ctct-form-field.ctct-form-field-submit input:focus,
p.ctct-form-field.ctct-form-field-submit input:active{
  background-color: #70A6D6;
}

form.ctc-form-1130 .ctct-disclosure {
  max-width: 850px;
}

/*------------------------------------*\
    PAGE HEADER
\*------------------------------------*/
.home .page-hero{
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 400px;
  max-height: 685px;
  height: 40vw;
}

.page-hero{
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 400px;
  max-height: 685px;
  height: 30vw;
}

.home .page-hero .upcoming-events{
  display: none;
}

/*------------------------------------*\
    HOMEPAGE
\*------------------------------------*/
.home .page-hero{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

.upcoming-events{
  background: rgba(255,255,255,.25);
  backdrop-filter: blur(30px);
  padding: 20px 0;
  width: 100%;
}

.upcoming-events .per-event{
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 15px 0;
}

.upcoming-events .per-event .date{
  background: #E9C31E;
  text-align: center;
  border-radius: 5px;
  margin-right: 15px;
}

.upcoming-events .per-event .date a{
  padding: 10px 25px;
  display: inline-block;
}

.upcoming-events .per-event p.month-date{
  color: #fff;
  margin: 0;
  line-height: 1;
  font-weight: 400;
  font-size: 3.5rem;
}

.upcoming-events .per-event .event-title{
  margin: 0;
  font-weight: 600;
  font-family: 'Helvetica', sans-serif;
}

.upcoming-events .per-event .event-title a{
  color: #fff;
  transition: ease-in .3s;
}

.upcoming-events .per-event .event-title a:hover{
  color: #1B449C;
}

.upcoming-events .per-event p{
  margin: 0;
  line-height: 1.2;
  color: #fff;
}

.per-section{
  padding: 5% 0;
  position: relative;
}

.per-section .content strong{
  color: #1B449C;
}

.wide-section{
  padding: 50px 0;
}

.listing-slider{
  padding: 20px 10%;
}

.listing-slider .slick-track{
  padding: 10px 0;
}

.per-listing{
  border-radius: 15px;
  overflow: hidden;
  /* min-height: 380px; */
  padding: 0;
  margin: 0 0.75em 25px;
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(39,68,150,0.4);
}

.listing-inner{
  height: 100%;
}

.listing-details{
  min-height: 220px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
}

.nearby-section .listing-details{
  min-height: 165px;
}

.listing-details .main-dets{
  padding: 10px 15px;
  color: #1B449C;
}

.listing-details .main-dets div{
  width: 100%;
}

.placestostay .listing-details{
  min-height: 240px;
}

.listing-details div{
  width: 100%;
}

.per-listing .img-wrapper img{
  border-radius: 0;
}

.per-listing h2,
.home .per-listing h6{
  margin: 10px 0;
}

.per-listing p{
  font-size: 1.4rem;
}

.per-listing h2,
.home .per-listing h6{
  color: #1B449C;
}

.per-listing  .listing-details p{
  color: #414042;
  transition: ease-in .3s;
}

.listing-details .listing-btn{
  padding: 10px 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 1px solid #D9D9D9;
}

.listing-details .listing-btn i.fa-duotone{
  color: #E9C31E;
  font-size: 2.5rem;
  margin-right: 5px;
  transition: ease-in .3s;
}

.listing-details .listing-btn span{
  font-size: 1.6rem;
  color: #1B449C;
  font-weight: 600;
  transition: ease-in .3s;
}

.per-listing a .listing-details .listing-btn{
  background: #fff;
  transition: ease-in .3s;
}

.per-listing a:hover .listing-details .listing-btn{
  background: #1A2F59;
}

.per-listing a:hover .listing-details .listing-btn i.fa-duotone,
.per-listing a:hover .listing-details .listing-btn span{
  color: #fff;
}

.slick-next{
  right: 0;
}

.slick-prev{
  left: 0;
}

.slick-next,
.slick-prev{
  height: auto;
  width: auto;
  z-index: 1;
}

.slick-next:before,
.slick-prev:before{
  color: #E9C31E;
  font-size: 6rem;
}

.slick-next:before{
  content: '\f105';
  font-family: "Font Awesome 5 Pro";
}

.slick-prev:before{
  content: '\f104';
  font-family: "Font Awesome 5 Pro";
}

.home .things-to-do-wrapper{
  border-top: 1px solid #D9D9D9;
  border-bottom: 1px solid #D9D9D9;
  padding: 40px;
}

.home .things-to-do-wrapper .content-wrap{
  border-left: 0;
  border-top: 1px solid #D9D9D9;
}

.bottom-c .cities p{
  margin: 0;
}

.bottom-c .cities p a{
  font-size: 1.8rem;
  margin: 5px 0;
  color: #70A6D6;
}

/* Train BG Images */
.home .per-section:first-child:before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/sec-one-train.svg');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 600px;
  height: 1198px;
  top: 0;
  left: 20px;
  z-index: -1;
}

.home .per-section:nth-child(2):before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/sec-two-train.svg');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 560px;
  height: 535px;
  bottom: -210px;
  left: 50px;
  z-index: -1;
}

.home .per-section:nth-child(4):before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/sec-three-train.svg');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 306px;
  max-height: 974px;
  height: 100%;
  top: -180px;
  left: 50px;
  z-index: -1;
}

.home .per-section:nth-child(5):before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/sec-four-train.svg');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  width: 289px;
  max-height: 1100px;
  height: 100%;
  top: -265px;
  right: 120px;
  z-index: -1;
}


/*------------------------------------*\
    REGIONS
\*------------------------------------*/
.main-copy{
  max-width: 1024px;
  margin: 0 auto;
}

.ttd-inner .content{
  /* padding: 0 15px; */
}

.map-wrapper{
  position: relative;
}

.map-wrapper .loc-pin{
  position: absolute;
  width: 25px;
  height: 33px;
  top: 23%;
  right: 29%;
  z-index: 1;
}

path.region{
  cursor: pointer;
  transition: ease-in .3s;
}

path.region:hover,
path.region.active{
  fill: #E9C31E !important;
}

.per-region h4{
  margin-top: 10px;
}

.per-region h5{
  color: #70A6D6;
  margin-bottom: 15px;
  font-family: 'Helvetica', sans-serif;
}

.per-region{
  display: none;
}

.per-region.active {
  display: block;
}

/*------------------------------------*\
    NEWS
\*------------------------------------*/
.home .news-wrapper{
    margin: 30px 0 50px;
}

.home .news-wrapper h2{
  color: #1A2F59;
}

.featured-news{
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 5px;
  display: flex;
  justify-content: flex-end;
}

.featured-news .featured-inner{
  background-color: rgba(26,47,89,0.6);
  min-height: 350px;
  height: 100%;
  max-width: 350px;
  margin-right: 50px;
  padding: 30px 40px 50px;
  color: #fff;
}

.per-blog{
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
}

.per-blog .blog-dets{
  width: 100%;
}

.blog-dets h5{
  color: #1B449C;
  margin: 10px 0 15px;
}

.blog-dets .date{
  color: #70A6D6;
  margin-bottom: 10px;
}

/*------------------------------------*\
    ABOUT
\*------------------------------------*/
.two-col.two-imgs .content{
  padding-left: 0;
}

.two-col-imgs{
  display: flex;
  position: relative;
}

.two-col-imgs .img-wrapper:first-child img{
  margin-top: 245px;
}

.two-col-imgs:before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/about-train.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 600px;
  /* height: 980px; */
  height: 1190px;
  z-index: -1;
  right: 0;
  top: 50px;
}

.about .main-content{
  /* overflow: hidden; */
  padding: 0 0 70px;
  margin: 0;
}

/*------------------------------------*\
    HISTORY
\*------------------------------------*/
.wide-column{
  padding: 20px 10% 30px;
  border-radius: 5px;
  margin-bottom: 50px;
}

.wide-column h3{
  color: #fff;
}

.history .column-left h3,
.history .column-right h3{
  color: #1B449C;
}

.history .column-left .content,
.history .column-right .content{
  max-width: 604px;
  margin: 0 auto;
}

.history .column-left .per-column,
.history .column-right .per-column{
  margin-bottom: 30px;
}

.history .cont-builder-wrapper .columns .column{
  position: relative;
}

.history .cont-builder-wrapper .column:first-child:after{
  display: none;
  content:'';
  position: absolute;
  background-image: url('img/history-train-track.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 63.55px;
  height: 1000px;
  top: -140px;
  right: -30px;
  z-index: -1;
}

.history .cont-builder-wrapper .column:nth-child(3):after{
  display: none;
  content:'';
  position: absolute;
  background-image: url('img/history-track.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 143px;
  height: 2410px;
  top: 0;
  right: 45%;
  z-index: -1;
}
/*------------------------------------*\
    PAGE LISTING CATEGORY TEMPLATE
\*------------------------------------*/
.per-section:nth-child(odd) .blocks{
  flex-flow: row-reverse;
}

.blocks{
  display: flex;
  justify-content: flex-end;
  margin-top: 30px;
}

.blocks .sml-block{
  width: 100px;
  height: 100px;
  border-radius: 5px;
  background-color: #70A6D6;
}

.blocks .big-block{
  width: 200px;
  height: 200px;
  border-radius: 5px;
  margin-top: 100px;
  background-color: #1B449C;
}

.per-section:nth-child(even) .blocks .sml-block{
  background-color: #E9C31E;
}

.per-section:nth-child(even) .blocks .big-block{
  background-color: #1A2F59;
}

.places-to-stay .section-content-wrapper .per-section.section-1 .img-wrapper,
.places-to-stay .section-content-wrapper .per-section.section-1 .big-block,
.places-to-stay .section-content-wrapper .per-section.section-2 .img-wrapper{
  position: relative;
}

.places-to-stay .section-content-wrapper .per-section.section-1 .img-wrapper:before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/places-to-stay-track1.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 224px;
  height: 63px;
  top: 25%;
  left: -195px;
  z-index: -1;
}

.places-to-stay .section-content-wrapper .per-section.section-1 .img-wrapper:after{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/places-to-stay-track2.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 286px;
  height: 304px;
  bottom: -190px;
  right: -30px;
  z-index: -1;
}

.places-to-stay .section-content-wrapper .per-section.section-1 .big-block:after{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/places-to-stay-track3.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 566px;
  height: 673px;
  top: 40px;
  right: -400px;
  z-index: -1;
}

.places-to-stay .section-content-wrapper .per-section.section-2 .img-wrapper:before{
  display: none;
  content: '';
  position: absolute;
  background-image: url('img/places-to-stay-track4.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 299px;
  height: 280px;
  bottom: -10px;
  left: -180px;
  z-index: -1;
}

/*------------------------------------*\
    LISTING CAT LANDING PAGE
\*------------------------------------*/
.listing-img-bg{
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 5px;
  min-height: 350px;
  height: 100%;
}

.ftrd-listing{
  margin: 20px 0 50px;
}

.ftrd-listing .content{
  border-radius: 5px;
  padding: 30px;;
  height: 100%;
  background-color: #fff;
  box-shadow: 0px 3px 6px rgb(39 68 150 / 67%);
}

.ftrd-listing h2{
  font-size: 2.8rem;
}

.ftrd-listing h2 a{
  color: #1B449C;
  transition: ease-in .3s;
}

.ftrd-listing h2 a:hover,
.ftrd-listing p a:hover{
  color: #E9C31E;
}

.ftrd-listing strong{
  color: #1B449C;
}

.ftrd-listing p a{
  color: #000;
}

.ftrd-listing .listing-link{
  margin-top: 35px;
}

.ftrd-listing .listing-link a{
  display: flex;
  align-items: center;
}

.ftrd-listing .listing-link a span{
  font-size: 1.6rem;
  color: #1B449C;
  font-weight: 600;
  transition: ease-in .3s;
}

.ftrd-listing .listing-link a i{
  color: #E9C31E;
  font-size: 2.5rem;
  margin-right: 5px;
  transition: ease-in .3s;
}

.ftrd-listing .listing-link a:hover span{
  color: #E9C31E;
}

.tax-listing-category .main-content{
  margin-bottom: 50px;
}

/*------------------------------------*\
    Single Listing Page
\*------------------------------------*/
.listing-content{
  margin: 20px 0;
  padding: 30px 0 0;
  border-bottom: 1px solid #BBBCBB;
}

.listing-contact-info{
  padding-bottom: 20px;
}

.listing-contact-info ul.contact-info{
  list-style-type: none;
  padding: 20px 30px 0;
}

.listing-contact-info ul.contact-info li{
  display: flex;
  align-items: center;
  margin: 20px 0;
  line-height: 1.2;
}

.listing-contact-info ul.contact-info li i{
    color: #1B449C;
    font-size: 2.5rem;
    margin-right: 15px;
}

.listing-contact-info ul.contact-info li span{
  font-size: 1.5rem;
  color: #000;
}

.listing-contact-info ul.contact-info li a:hover span{
  color: #1B449C;
}

.socials-wrapper{
  padding: 0 30px;
}

.socials-wrapper h6{
  color: #1B449C;
  margin-bottom: 10px;
}

.socials-wrapper ul{
  list-style-type: none;
  padding: 0;
  display: flex;
  align-items: center;
  margin-top: 0;
}

.socials-wrapper ul li{
  margin-right: 15px;
}

.socials-wrapper ul li:last-child{
  margin: 0;
}

.socials-wrapper ul li a{
  color: #1A2F59;
  font-size: 2.5rem;
  transition: ease-in .3s;
}

.socials-wrapper ul li a:hover{
  color:  #E9C31E;
}

/* Special Offers */
.special-offers-wrapper{
  padding: 50px 0;
}

.offer-slider{
  padding: 0 30px;
}

.per-offer{
  margin: 0 10px;
  padding: 20px 0;
}

.per-offer a{
  background-color: #fff;
  box-shadow: 0px 3px 6px rgba(0,0,0,0.29);
  border-radius: 10px;
  overflow: hidden;
  display: flex;
}

.per-offer .amount-discount{
  background: #1B449C;
  color: #E9C31E;
  padding: 20px;
  display: flex;
  align-items: center;
}

.per-offer .amount-discount p{
  line-height: 1.2;
  margin: 0;
  width: 100%;
}

.per-offer .amount-discount .amount{
  font-size: 2.5rem;
  font-weight: 600;
}

.per-offer .discount-desc{
  padding: 10px 20px;
  color: #000;
}

/* Tips & Tricks */
.tips-tricks-wrapper{
  padding: 50px 0;
}

.per-tips-tricks i.fa-circle-exclamation{
  font-size: 3rem;
  color: #E9C31E;
}

.per-tips-tricks p{
  margin-top: 10px;
}

/* Gallery & Video */
.vid-wrapper .embed-container{
  border-radius: 20px 20px 0 0;
  overflow: hidden;
}

.gallery-wrapper .img-wrapper img{
  border-radius: 0;
}

/*------------------------------------*\
    Things To Do
\*------------------------------------*/
.city-content .cont-head{
  display: flex;
  align-items: center;
}

.city-content .cont-head .city-logo{
  margin-right: 20px;
}

.city-content .direction-frm-revere{
  padding: 0 30px;
}

.city-content .direction-frm-revere h3{
  margin-bottom: 15px;
  color: #274496;
}

.surrounding-destinations .things-to-do-wrapper{
  position: relative;
}

.surrounding-destinations .things-to-do-wrapper:before{
  content: '';
  width: 30%;
  height: 1px;
  margin: 0 auto;
  background: #707070;
  position: absolute;
  top: 0;
  left: 35%;
}

.surrounding-destinations .cities-towns-wrapper{
  position: relative;
}

.surrounding-destinations .cities-towns-wrapper:before{
  display: none;
  position: absolute;
  content: '';
  background-image: url('img/sd-track1.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 756px;
  height: 525px;
  top: 0;
  left: 0;
  z-index: -1;
}

.surrounding-destinations .cities-towns-wrapper:after{
  display: none;
  position: absolute;
  content: '';
  background-image: url('img/sd-track2.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 499px;
  height: 574px;
  top: -70px;
  right: 0;
  z-index: -1;
}

/*------------------------------------*\
    Cities
\*------------------------------------*/
.img-city-bg{
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 200px;
  max-height: 200px;
  height: 40vw;
}

.per-city{
  background-color: #fff;
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  box-shadow: 0px 3px 6px rgb(39 68 150 / 40%);
}

.per-city .city-dets{
  position: relative;
  text-align: center;
}

.per-city .city-dets{
  padding: 0 20px 20px;
}

.per-city .city-dets h6{
  margin: 0;
  padding: 15px 0;
  font-family: 'museo', serif;
  border-bottom: 1px solid #BBBCBB;
}

.per-city .city-dets h6{
  color: #1B449C;
  transition: ease-in .3s;
}

.per-city:hover .city-dets h6{
  color: #E9C31E;
}

.per-city .city-dets p{
  font-size: 1.5rem;
  font-weight: bold;
  color: #1A2F59;
  margin: 0;
  padding: 10px 5px;
  background-color: transparent;
  transition: ease-in .3s;
}

.per-city:hover .city-dets p{
  color: #fff;
  background-color: #1A2F59;
}

.per-city .city-dets div{
  display: inline-block;
  margin-top: -25px;
  background-color: #fff;
  padding: 5px;
  border-radius: 50%;
}

/*------------------------------------*\
    Events
\*------------------------------------*/
.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-events-bar--border{
  border-color: #1F2F56 !important;
}

.tribe-events .tribe-events-c-search__input-control-icon-svg,
.tribe-events .tribe-events-c-view-selector__list-item-text{
  color: #1A2F59 !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button,
.tribe-common .tribe-common-c-btn-border-small, .tribe-common a.tribe-common-c-btn-border-small{
  color: #1A2F59;
  background-color: #fff;
  border: 1px solid #1A2F59;
  transition: ease-in .3s;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button:hover,
.tribe-common .tribe-common-c-btn-border-small:hover, .tribe-common a.tribe-common-c-btn-border-small:hover{
  color: #fff;
  background-color: #1A2F59;
}

.tribe-common .tribe-common-c-btn-icon--caret-left:disabled .tribe-common-c-btn-icon__icon-svg path, .tribe-common .tribe-common-c-btn-icon--caret-right:disabled .tribe-common-c-btn-icon__icon-svg path{
  fill: #1A2F59;
}

.tribe-common .tribe-common-h3{
  color: #1A2F59 !important;
}

.tribe-events .tribe-events-calendar-list__event-date-tag-weekday,
.tribe-common .tribe-common-h5, .tribe-common .tribe-common-h6,
.tribe-events .tribe-events-calendar-list__event-datetime{
  color: #274496;
}

.tribe-common a, .tribe-common a:active,
.tribe-common a:focus, .tribe-common a:hover,
.tribe-common a:visited{
  color: #274496 !important;
}

.tribe-events .tribe-events-calendar-list__event-title,
.tribe-events .tribe-events-calendar-month__calendar-event-tooltip-title{
  color: #274496;
  font-family: 'museo', serif;
}

.tribe-events .tribe-events-calendar-month__day-date-daynum{
  color: #1A2F59;
}

.tribe-events .tribe-events-calendar-month__multiday-event-bar{
  background-color: #1B449C;
}

.tribe-events .tribe-events-calendar-month__multiday-event-bar-title{
  color: #fff;
}

.tribe-events .tooltipster-box .tribe-events-calendar-month__calendar-event-tooltip-title{

}

.tribe-common p{
  font-size: 1.6rem !important;
  font-family: 'Helvetica', sans-serif;
}

.tribe-common .tooltipster-box p{
  font-weight: 400;
  font-size: 1.3rem;
}

.tribe-events .datepicker .day.active, .tribe-events .datepicker .day.active.focused,
.tribe-events .datepicker .day.active:focus, .tribe-events .datepicker .day.active:hover,
.tribe-events .datepicker .month.active, .tribe-events .datepicker .month.active.focused,
.tribe-events .datepicker .month.active:focus, .tribe-events .datepicker .month.active:hover,
.tribe-events .datepicker .year.active, .tribe-events .datepicker .year.active.focused,
.tribe-events .datepicker .year.active:focus, .tribe-events .datepicker .year.active:hover{
  background: #1A2F59;
  transition: ease-in .3s;
}

/*------------------------------------*\
    SINGLE EVENT PAGE
\*------------------------------------*/
.single #tribe-events-pg-template{
  max-width: 100%;
  width: 100%;
  padding: 0;
}

.single .single-event-wrapper{
  max-width: 1048px;
  margin: 0 auto;
  padding: 30px 25px;
}

.tribe-events-single-event-title{
  color: #1F2F56;
  font-family: 'museo', serif;
}

.single .tribe-events-schedule{
  margin: 0;
}

.tribe-events-schedule h2{
  color: #70A6D6;
}

.tribe-events-content ol,
.tribe-events-content p,
.tribe-events-content ul{
  font-size: 1.6rem;
}

.tribe-events-meta-group .tribe-events-single-section-title{
  color: #1B449C;
  font-size: 1.8rem;
}

.tribe-events-event-meta dt{
  font-weight: bold;
  color: #70A6D6;
  font-size: 1.6rem;
}

/*------------------------------------*\
    Groups & Weddings
\*------------------------------------*/
.per-gw-cat{
  display: flex;
  align-items: flex-end;
  color: #fff;
  position: relative;
  border-radius: 5px;
  overflow: hidden;
}

.per-gw-cat:before{
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  transition: ease-in .3s;
  background-color: rgba(26,47,89,0.2);
}

.per-gw-cat:hover:before{
  background-color: rgba(26,47,89,0.6);
}

.per-gw-cat h5{
  position: absolute;
  z-index: 1;
  left: 10px;
  bottom: 10px;
  margin: 0;
  color: #fff;
  font-family: 'museo', serif;
}

/*------------------------------------*\
    Request a Guide
\*------------------------------------*/
.request-guide .with_frm_style .frm_top_container .frm_primary_label,
.contact .with_frm_style .frm_top_container .frm_primary_label{
  font-family: 'Helvetica', sans-serif;
  font-weight: 600;
  color: #1B449C;
}

.request-guide .with_frm_style input[type=text],
.request-guide .with_frm_style input[type=email],
.contact .with_frm_style input[type=text],
.contact .with_frm_style input[type=email],
.contact .with_frm_style input[type=tel],
.contact .with_frm_style textarea{
  height: auto;
  padding: 10px 15px;
  font-size: 1.6rem;
  font-family: 'Helvetica', sans-serif;
}

/*------------------------------------*\
    Blogs
\*------------------------------------*/
.blogs-wrapper{
  margin-bottom: 100px;
}

.blogs-wrapper .featured-news,
.blogs-wrapper .per-blog{
  margin: 10px;
}

/* Single Blog */
.blog-header p.date{
  font-weight: bold;
  color: #70A6D6;
}

.blog-header .social-share h5{
  color: #1B449C;
  margin-bottom: 15px;
  font-family: 'museo', serif;
}

/*------------------------------------*\
    Contact
\*------------------------------------*/
ul.contact-information{
  list-style-type: none;
  padding: 0;
}

ul.contact-information li{
  display: flex;
  align-items: center;
}

ul.contact-information li i.fa-solid{
  margin-right: 15px;
  font-size: 2rem;
  color: #1A2F59;
}

.socials-wrap h6{
  color: #1B449C;
  margin-bottom: 0;
}

.socials-wrap ul{
  list-style-type: none;
  padding: 0;
  display: flex;
  align-items: center;
}

.socials-wrap ul li{
  margin-right: 20px;
  font-size: 2.8rem;
}

.socials-wrap ul li a{
  color: #1A2F59;
  transition: ease-in .3s;
}

.socials-wrap ul li a:hover{
  color: #E9C31E;
}

/*------------------------------------*\
    Page Ad
\*------------------------------------*/
.page-ad-wrapper a{}
.per-ad{
  text-align: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 260px;
  padding: 25px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative;
}

.per-ad:before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: ease-in .3s;
  background-color: rgba(0,0,0,0);
}

.page-ad-wrapper a:hover .per-ad:before{
  background-color: rgba(0,0,0,0.5);
}

.per-ad h5{
  text-align: center;
  color: #fff;
  margin: 0;
  position: relative;
  z-index: 1;
}

.per-ad span{
  position: absolute;
  font-size: 1.5rem;
  z-index: 1;
  top: 10px;
  left: 10px;
  color: #fff;
}

/*------------------------------------*\
    THANK YOU PAGE
/*------------------------------------*/
.thank-you h1{
  text-align: center;
}

.thank-you a.button{
  display: inline-block;
}

/*------------------------------------*\
    GETTING AROUND PAGE
\*------------------------------------*/
.getting-around{}

/*------------------------------------*\
    IMAGES
\*------------------------------------*/
.img-wrapper{
  text-align: center;
}

.img-wrapper img{
  border-radius: 5px;
}

/*------------------------------------*\
    GOOGLE TRANSLATE
/*------------------------------------*/
#goog-gt- h1,
#goog-gt-.VIpgJd-yAWNEb-L7lbkb{
  display: none !important;
}

/*------------------------------------*\
    ACF GOOGLE MAP
\*------------------------------------*/

.acf-map {
    width: 100%;
    height: 100%;
    min-height: 400px;
    max-height: 600px;
    border: #ccc solid 1px;
    margin: 20px 0;
  }

   /* Fixes potential theme css conflict. */
  .acf-map img {
   max-width: inherit !important;
  }


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/
.show-desktop,
.show-tablet{
  display: none;
}

.form-box {
  margin-top: 50px;
}



#videoHeader {
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  min-height: 550px;
  max-height: 95vh;
  overflow: hidden;
}

#videoHeader:before {
  content: " ";
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;

  z-index: 1;
}

#videoHeader video {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.hero.hero-video {
  height:550px;
  min-height:550px;
}
.hero {
  height:550px;
  min-height:550px;
  background-position:center;
  background-repeat: no-repeat;
  background-size:cover;
  position:relative;
  
}

.hero .container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position:relative;
  z-index:1;
}

.hero .hero-box  {
  max-width:600px;

}
.hero p {
  color:white;
  font-weight:400;
}

.hero h1 {
  color: var(--white);
  font-size: 6rem;
  line-height: 1.3;
  margin-bottom: 15px;
  margin-top: 0px;
  position:relative;
  margin-bottom: 25px;
}
.hero h1:after{
  content:'';
  display:block;
  width:65px;
  height:2px;
  background-color:white;
  position:absolute;
  left:0px;
  bottom: -11px;
}
.hero .slider-box {
  position:absolute;
  top: 0px;
  left: 0px;
  width:100%;
  height:100%;
}

.hero .slider-box .slick-list{
  height:100%;
}
.hero .slider-box .image-box {
  height:100vh;
  min-height:750px;
  background-position:center;
  background-repeat: no-repeat;
  background-size:cover;
  z-index:1;
  border-radius: 0px;
}

.hero .slider-box .image-box:before{
  content:'';
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  left:0px;
  top:0px;
  z-index:1;
 
}


.hero .slick-dots {
  position: relative;
  max-width: 1380px;
  margin: 0px auto;
  text-align:left;
  bottom: 50px;
  padding: 0px 20px;
  z-index:2;
}
.hero .slick-dots li {
  margin: 0px 3px;
}
.hero .slick-dots li button {
  padding: 0px;
  width:17px;
  height:17px;
  border:1px solid var(--blue);
  border-radius:50%;
  background-color:white;
  transition: 0.3s ease;

}

.hero slick-dots li button:hover,
.slick-dots li.slick-active button{
  background-color: var(--blue);
}
.hero .slick-dots li button:before {
 
  display:none;
}



.new-hero .upcoming-events  {
  position:absolute;
  bottom: 0px;
  z-index:2;
}


@media only screen and (min-width:320px) {}

@media only screen and (min-width:480px) {

}

@media only screen and (min-width:600px) {
  .listing-slider {
    padding: 20px 5%;
  }

  .per-gw-cat h5{
    left: 20px;
    bottom: 20px;
  }
}

@media only screen and (min-width:769px) {
  .show-tablet{
    display: block;
  }

  h1 {
    font-size: 5.8rem;
  }

  h2 {
    font-size: 3rem;
  }

  h3 {
    font-size: 2.5rem;
  }

  h4 {
    font-size: 2rem;
  }

  h5,
  .upcoming-events .per-event .event-title {
    font-size: 1.8rem;
  }

  .footer .nav ul li{
    width: 33.33%;
  }

  .recent-post .post-cont{
    margin-right: 50px;
  }

  .map-wrapper .loc-pin{
    top: 24.5%;
    right: 29.5%;
  }
}

@media only screen and (min-width:1024px) {
  h1 {
    font-size: 6rem;
  }

  h2 {
    font-size: 3.2rem;
  }

  h3 {
    font-size: 2.8rem;
  }

  h4 {
    font-size: 2.4rem;
  }

  h5,
  .upcoming-events .per-event .event-title {
    font-size: 2.0rem;
  }

  .error404 .columns.reversed{
    flex-flow: row-reverse;
  }

  .show-desktop{
    display: block;
  }

  .home .per-section:nth-child(odd) .columns{
    flex-flow: row-reverse;
  }

  .per-section:nth-child(odd) .content{
    padding-right: 50px;
  }

  .per-section:nth-child(even) .content{
    padding-left: 50px;
  }

  .page-template-template-listing-category .per-section:nth-child(even) .columns,
  .getting-around .per-section:nth-child(even) .columns  {
    flex-flow: row-reverse;
  }

  .page-template-template-listing-category .per-section:nth-child(even) .content,
  .getting-around .per-section:nth-child(even) .content{
    padding-right: 50px;
  }

  .page-template-template-listing-category .per-section:nth-child(odd) .content,
  .getting-around .per-section:nth-child(odd) .content{
    padding-left: 50px;
  }

  .map-wrapper{
    padding-right: 30px;
  }

  .home .content{
    padding-left: 30px;
  }

  .home .things-to-do-wrapper .content-wrap{
    border-left: 1px solid #D9D9D9;
    border-top: 0;
  }

  .footer .nav ul li{
    text-align: left;
  }

  .footer .copyright-socials{
    justify-content: space-between;
    flex-wrap: nowrap;
  }

  .two-col.two-imgs .columns{
    flex-flow: row-reverse;
  }

  .two-col.two-imgs .content{
    padding-right: 30px;
  }

  .history .content{
    padding: 0;
  }

  .history .column-right .per-column{
    padding-left: 20%;
    margin-top: 10%;
  }

  .history .column-left .per-column{
    padding-right: 20%;
  }

  .listing-content .content{
    padding-right: 30px;
  }

  .listing-contact-info{
    border-left: 1px solid #BBBCBB;
  }

  .request-guide .img-wrapper{
    padding-left: 50px;
  }

  .request-guide #frm_form_3_container{
    padding-right: 50px;
  }

  .blog-header .columns.reversed{
    flex-flow: row-reverse;
  }

  .contact-cont{
    padding-right: 50px;
  }

  .contact-information,
  .socials-wrap{
    margin-left: 50px;
  }

  .surrounding-destinations .cities-towns-wrapper{
    padding-top: 90px;
  }

  .home .per-section:first-child:before,
  .home .per-section:nth-child(2):before,
  .home .per-section:nth-child(4):before,
  .home .per-section:nth-child(5):before,
  .two-col-imgs:before,
  .history .cont-builder-wrapper .column:first-child:after,
  .history .cont-builder-wrapper .column.is-full:after,
  .places-to-stay .section-content-wrapper .per-section.section-1 .img-wrapper:before,
  .places-to-stay .section-content-wrapper .per-section.section-1 .img-wrapper:after,
  .places-to-stay .section-content-wrapper .per-section.section-1 .big-block:after,
  .places-to-stay .section-content-wrapper .per-section.section-2 .img-wrapper:before,
  .surrounding-destinations .cities-towns-wrapper:before,
  .surrounding-destinations .cities-towns-wrapper:after{
    display: block;
  }

  .home .page-hero .upcoming-events{
    display: block;
  }

  .map-wrapper .loc-pin{
    top: 20%;
    right: 32%;
  }

  .home .sec-1 .content{
    padding-left: 13%;
  }

}

@media only screen and (min-width:1140px) {
  .home .sec-1 .content{
    padding-left: 13%;
  }
}

@media only screen and (min-width:1280px) {
  .home .sec-1 .content{
    padding-left: 10%;
  }
}

@media only screen and (min-width:1400px) {
  .map-wrapper .loc-pin{
    top: 88px;
    right: 215px;
  }

  .home .sec-1 .content{
    padding-left: 30px;
  }

}


@media only screen and (max-width: 1023px) {
  .new-hero .upcoming-events {
    display:none;
  }
}


/*------------------------------------*\
    MISC
\*------------------------------------*/
::selection {
    background: #04A4CC;
    color: #FFF;
    text-shadow: none;
}

::-webkit-selection {
    background: #04A4CC;
    color: #FFF;
    text-shadow: none;
}

::-moz-selection {
    background: #04A4CC;
    color: #FFF;
    text-shadow: none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #FFF;
    border: 1px solid #F0F0F0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.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: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

.sticky {}

.bypostauthor {}

/*------------------------------------*\
    PRINT
\*------------------------------------*/
@media print {
    * {
        background: transparent !important;
        box-shadow: none !important;
        color: #000 !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 {
        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;
    }

    .nav,
    .sidebar,
    .home-slider,
    #respond {
        display: none;
    }

    @page {
        margin: 2cm;
    }
}

.image-content {
  margin: 20px 0;
}

.image-content .centered-content {
  display: flex;
  align-items: center;
  justify-content: center;
}