/* 
Theme Name: athedunes2022
Author: RealTech Services, Inc. 
Author URI: https://www.realtechvr.com
Description: Streamline VRS API Integrated Theme
*/
 *, *:before, *:after {
     -moz-box-sizing: border-box;
     -webkit-box-sizing: border-box;
     box-sizing: border-box;
}
 body {
     background: #fff;
     margin:0;
     font-size: 18px;
     font-weight: 300;
     line-height: 1.75;
}
 .site-wrap {
     background: transparent;
     overflow: hidden;
}
 img {
     max-width: 100%;
     height: auto;
}
 iframe {
     max-width: 100%;
}
 html {
     font-size: 100%;
     font-family: futura-pt, sans-serif;
}
/* screen readers only class - for accessible invisible content & skiplinks */
.sr-only {
    position:absolute;
    left:-10000px;
    top:auto;
    width:1px;
    height:1px;
    overflow:hidden;
}
.banner-image {
    display: block;
    width: 100%;
}
/*fontello fun*/
@font-face {
  font-family: 'rt-font';
  src: url('font/rt-font.eot?10228311');
  src: url('font/rt-font.eot?10228311#iefix') format('embedded-opentype'),
       url('font/rt-font.woff2?10228311') format('woff2'),
       url('font/rt-font.woff?10228311') format('woff'),
       url('font/rt-font.ttf?10228311') format('truetype'),
       url('font/rt-font.svg?10228311#rt-font') format('svg');
  font-weight: normal;
  font-style: normal;
} 
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'rt-font';
    src: url('../font/rt-font.svg?4761947#rt-font') format('svg');
  }
}
*/
 
 [class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "rt-font";
  font-style: normal;
  font-weight: normal;
  speak: none;
  vertical-align: middle;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
 
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
 
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
 
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
 
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
 
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-plus-circled:before { content: '\21'; } /* '!' */
.icon-star:before { content: '\22'; } /* '&quot;' */
.icon-share:before { content: '\23'; } /* '#' */
.icon-reply-all:before { content: '\24'; } /* '$' */
.icon-comment:before { content: '\25'; } /* '%' */
.icon-export-1:before { content: '\26'; } /* '&amp;' */
.icon-basket:before { content: '\27'; } /* ''' */
.icon-heart-circled:before { content: '\28'; } /* '(' */
.icon-cancel:before { content: '\29'; } /* ')' */
.icon-th:before { content: '\2a'; } /* '*' */
.icon-cancel-circled-outline:before { content: '\2b'; } /* '+' */
.icon-eye:before { content: '\2c'; } /* ',' */
.icon-toggle-off:before { content: '\2d'; } /* '-' */
.icon-toggle-on:before { content: '\2e'; } /* '.' */
.icon-balance-scale:before { content: '\31'; } /* '1' */
.icon-location:before { content: '\32'; } /* '2' */
.icon-direction:before { content: '\33'; } /* '3' */
.icon-lightbulb:before { content: '\34'; } /* '4' */
.icon-paper-plane-empty:before { content: '\35'; } /* '5' */
.icon-paper-plane:before { content: '\36'; } /* '6' */
.icon-lightbulb-alt:before { content: '\37'; } /* '7' */
.icon-ok-circled:before { content: '\38'; } /* '8' */
.icon-ok:before { content: '\39'; } /* '9' */
.icon-users:before { content: '\3a'; } /* ':' */
.icon-sliders:before { content: '\3c'; } /* '&lt;' */
.icon-bed:before { content: '\3d'; } /* '=' */
.icon-bath:before { content: '\3e'; } /* '&gt;' */
.icon-guidedog:before { content: '\3f'; } /* '?' */
.icon-paw:before { content: '\40'; } /* '@' */
.icon-swimming:before { content: '\41'; } /* 'A' */
.icon-shower:before { content: '\42'; } /* 'B' */
.icon-wheelchair:before { content: '\43'; } /* 'C' */
.icon-wifi:before { content: '\44'; } /* 'D' */
.icon-signal:before { content: '\45'; } /* 'E' */
.icon-desktop:before { content: '\46'; } /* 'F' */
.icon-toilet:before { content: '\48'; } /* 'H' */
.icon-cafe:before { content: '\49'; } /* 'I' */
.icon-lodging:before { content: '\4a'; } /* 'J' */
.icon-hot-tub:before { content: '\4b'; } /* 'K' */
.icon-tennis:before { content: '\4c'; } /* 'L' */
.icon-bbq:before { content: '\4d'; } /* 'M' */
.icon-linens:before { content: '\4e'; } /* 'N' */
.icon-heart-empty:before { content: '\4f'; } /* 'O' */
.icon-picture:before { content: '\50'; } /* 'P' */
.icon-minus-circled-1:before { content: '\51'; } /* 'Q' */
.icon-attention-circled:before { content: '\52'; } /* 'R' */
.icon-calendar:before { content: '\53'; } /* 'S' */
.icon-help-circled:before { content: '\54'; } /* 'T' */
.icon-cancel-circled-1:before { content: '\55'; } /* 'U' */
.icon-calendar-2:before { content: '\56'; } /* 'V' */
.icon-info-circled-1:before { content: '\e800'; } /* '' */
.icon-globe:before { content: '\e801'; } /* '' */
.icon-group:before { content: '\e802'; } /* '' */
.icon-print:before { content: '\e803'; } /* '' */
.icon-users-1:before { content: '\e804'; } /* '' */
.icon-heart:before { content: '\e805'; } /* '' */
.icon-export-alt:before { content: '\e806'; } /* '' */
.icon-th-list:before { content: '\e807'; } /* '' */
.icon-th-1:before { content: '\e808'; } /* '' */
.icon-reply-all-1:before { content: '\e809'; } /* '' */
.icon-list:before { content: '\e80a'; } /* '' */
.icon-home:before { content: '\e80b'; } /* '' */
.icon-search:before { content: '\e80c'; } /* '' */
.icon-info-circled:before { content: '\e80d'; } /* '' */
.icon-search-1:before { content: '\e80e'; } /* '' */
.icon-search-2:before { content: '\e80f'; } /* '' */
.icon-mail:before { content: '\e810'; } /* '' */
.icon-commerical-building:before { content: '\e811'; } /* '' */
.icon-ok-circle:before { content: '\e812'; } /* '' */
.icon-plus-circled-1:before { content: '\e813'; } /* '' */
.icon-tag:before { content: '\e814'; } /* '' */
.icon-home-1:before { content: '\e815'; } /* '' */
.icon-print-1:before { content: '\e816'; } /* '' */
.icon-left-open:before { content: '\e817'; } /* '' */
.icon-right-open:before { content: '\e818'; } /* '' */
.icon-play-circled2:before { content: '\e819'; } /* '' */
.icon-check:before { content: '\e81a'; } /* '' */
.icon-asterisk:before { content: '\e81b'; } /* '' */
.icon-phone:before { content: '\e81c'; } /* '' */
.icon-calendar-1:before { content: '\e81d'; } /* '' */
.icon-export:before { content: '\e81e'; } /* '' */
.icon-golf:before { content: '\e81f'; } /* '' */
.icon-restaurant:before { content: '\e820'; } /* '' */
.icon-share-rt:before { content: '\e821'; } /* '' */
.icon-rt-circle-icon:before { content: '\e822'; } /* '' */
.icon-ask-question-rt:before { content: '\e823'; } /* '' */
.icon-spin3:before { content: '\e832'; } /* '' */
.icon-skiing:before { content: '\e836'; } /* '' */
.icon-warehouse:before { content: '\e840'; } /* '' */
.icon-twitter:before { content: '\f099'; } /* '' */
.icon-facebook:before { content: '\f09a'; } /* '' */
.icon-docs:before { content: '\f0c5'; } /* '' */
.icon-pinterest-squared:before { content: '\f0d3'; } /* '' */
.icon-mobile:before { content: '\f10b'; } /* '' */
.icon-quote-left:before { content: '\f10d'; } /* '' */
.icon-quote-right:before { content: '\f10e'; } /* '' */
.icon-calendar-empty:before { content: '\f133'; } /* '' */
.icon-youtube:before { content: '\f167'; } /* '' */
.icon-youtube-play:before { content: '\f16a'; } /* '' */
.icon-tumblr:before { content: '\f173'; } /* '' */
.icon-tumblr-squared:before { content: '\f174'; } /* '' */
.icon-cc-visa:before { content: '\f1f0'; } /* '' */
.icon-cc-mastercard:before { content: '\f1f1'; } /* '' */
.icon-cc-discover:before { content: '\f1f2'; } /* '' */
.icon-cc-amex:before { content: '\f1f3'; } /* '' */
.icon-pinterest:before { content: '\f231'; } /* '' */
.icon-universal-access:before { content: '\f29a'; } /* '' */
.icon-twitter-squared:before { content: '\f304'; } /* '' */
.icon-facebook-squared:before { content: '\f308'; } /* '' */
.icon-instagram:before { content: '\f32d'; } /* '' */
/*end fontello*/

.icon-calendar:before {content: url(images/icon-Calendar-Gray.png);margin-right: 0.6em;}

/*top alert message*/
 @media (max-width:40em) {
    .hide24 {
        font-size:12pt !important;
    }
}
 .hide24 {
    color:#888;
     background-color:rgba(255,255,255,.9);
     height:200px;
     width:80%;
     position:absolute;
     top:100px;
     left:0;
     right:0;
     z-index:500;
     height:200px;
     box-shadow:0px 0px 15px rgba(0,0,0,.3);
     font-size:18pt;
     padding:25px;
     margin:0 auto;
}
 .hide24 h3 {
    margin: 0 auto;
     color: #000;
}
 .alert-box-close {
     position: absolute;
     top: 10px;
     right: 20px;
     cursor: pointer;
}
 .hidden {
    display:none;
}
/* end alert css */

 .footerleft, .footerright {
     padding:.325em 0;
}
 .logo {
     width: auto;
     flex: 0 0;
     flex-basis: auto;
     align-self: center;
}
 .logo-smaller {
     display:none;
}
.logo, .logo-smaller {
    position: relative;
    line-height: 0;
    margin-right: auto;
}
 .sidebar {
     flex: 1 1 300px;
     padding: 0.625em;
     border-left: 1px solid #f0f0f3;
     text-align: left;
}
/*if parallax*/
 .parallax-home {
     min-height:500px;
     z-index:1;
}
/* some blog stuff */
/*.widget {position: relative;
     margin-bottom:20px;
     background: #f4f4f4;
     border-width: 0px;
    padding: 5px 30px 30px;}
.content-left {float:left; max-width:67%; padding-right:20px;}*/
 .featuredimage {
     width: 350px;
     height: 200px;
     overflow: hidden;
}
 .post-prev-img {
     float: left;
     padding: 0 0.95em 0.625em 0;
}
 .article-container {
     background-color: #FAFAFA;
     border: 1px solid #f4f4f4;
     padding: 10px;
     line-height: 1.5;
}
/*end blog*/

/* Custom Style */

.ft-social-icons {display: flex;align-items: baseline;}

div.video-overlay {  content: '';
    background:-webkit-linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0),rgba(255, 255, 255, 0));
    background-image:linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0),rgba(255, 255, 255, 0));
    background-image:-moz-linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0),rgba(255, 255, 255, 0),rgba(255, 255, 255, 0));
    background-image:-ms-linear-gradient(rgba(255, 255, 255, 1), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0), rgba(255, 255, 255, 0),rgba(255, 255, 255, 0));

    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    z-index:2;}
#background-video {
    height: 88vh;
    width: 100vw;
    object-fit: cover;
    max-width: 100%;
    overflow: hidden;
    display: block;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
}

.map-pin {position: absolute; top:51%; left: 22.5%; }
.home-map-title {position: absolute; top: 18px; left: 5%;font-family: dolce, sans-serif;font-size: 3em;}
.mapleft {    position: absolute;
    top: 48%;
    left: 12%;
    text-align: right;
    font-size: .9em;}
.bold-map {font-weight: 600;}
.mapright {position: absolute; top:37%; left: 37%; font-size: .9em; }
.home-cnt-box {display: flex; background: #f7f7f5; padding: 20px;margin: 50px 0;align-items: center;}
.home-cnt-left {width:50%; padding: 30px; line-height: 2;}
.home-cnt-right {width:50%;padding: 60px 0;}
.home-map-wrapper {
    color: #3d3b3e;
    position: relative;
}
.home-map-legend {
    position: absolute;
    top: 11%;
    left: 5%;
    background: rgba(255,255,255,.6);
    padding: .35em .75em;
    font-size: 2rem;
}

.home-map-google {
    bottom: 3px;
    left: 21px;
    position: absolute;
    font-style: italic;
    font-size: .8em;
}

@media (max-width: 1350px) {
    .mapright {font-size: 0.7em;left: 36%; }
    .mapleft {font-size: 0.7em; }
    .ft-social-icons {display: block;}
}

/* end custom styles */

/*new mobile menu*/
 ul.clearfix.hide-nav {
     display:inline-block;
}
 .menu-primary-container {
     display:inline-block;
}
 .content-wrap {
     -webkit-transition: -webkit-transform 0.3s;
     transition: transform 0.3s;
     height: 100%;
}
 .menu-primary-container li:last-child .sub-menu {
     right:0;
}
 .c-menu {
     position: fixed;
     z-index: 200;
     background-color: #2c3081;
     transition: transform 0.3s;
}
 .c-menu__items {
     list-style: none;
     margin: 0;
     padding: 0;
}
/** * Close button. */
 .c-menu__close {
     color: #fff;
     background-color: #2c3081;
     font-size: 12px;
     border: none;
     box-shadow: none;
     border-radius: 0;
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     cursor: pointer;
}
/** * Close button resets. */
 .c-menu__close:focus {
     outline: none;
}
/** * Body states. * * When a menu is active, we want to hide the overflows on the body to prevent * awkward document scrolling. */
 body.has-active-menu {
     overflow: hidden;
}
/** * Mask component */
 .content-mask {
     position: fixed;
     z-index: 100;
     top: 0;
     left: 0;
     overflow: hidden;
     width: 0;
     height: 0;
     background-color: #000;
     opacity: 0;
     transition: opacity 0.3s, width 0s 0.3s, height 0s 0.3s;
}
 .content-mask.is-active {
     width: 100%;
     height: 100%;
     opacity: 0.7;
     transition: opacity 0.3s;
}
/*actual menu stuff*/
 .c-menu--push-left {
     width: 100%;
     height: 100%;
     overflow-y: scroll;
}
 .content-wrap.is-active {
     width: 100%;
     height: 100%;
     opacity: .7;
     -webkit-transition: opacity .3s;
     transition: opacity .3s;
}
 .content-wrap.has-push-left {
     -webkit-transform: translateX(300px);
     -ms-transform: translateX(300px);
     transform: translateX(300px);
}
 .c-menu--push-left .c-menu__close {
     display: block;
     padding: 12px 24px;
     width: 100%;
}
 .c-menu--push-left.is-active {
     transform: translateX(0);
     -webkit-transform: translateX(0);
     -ms-transform: translateX(0);
}
 .c-menu--push-left {
     top: 0;
     left: 0;
     transform: translateX(-100%);
     -webkit-transform: translateX(-100%);
     -ms-transform: translateX(-100%);
}
 @media (min-width: 320px) {
     .c-menu--push-left {
         transform: translateX(-300px);
         width:300px;
    }
}
 .navclass li {
     list-style-type: none;
}
 .navclass li ul {
     display: none;
     position: absolute;
     top: 100%;
}
 .navclass li ul {
     position: static;
    padding: 1.25em;
    /* 20 */
     padding-top: 0;
}
/*end menu*/
/*video full screen styling*/
 .video-section .buttonBar{
     display:none;
}
 .player {
     font-size: 1px;
}
 .pattern-overlay {
     padding: 110px 0 32px;
     height: 850px;
     overflow: hidden;
}
 @media (max-width: 1350px) and (min-width: 1150px) {
     .pattern-overlay {
         height: 600px;
         overflow: hidden;
    }
}
 @media (max-width: 1150px) and (min-width: 768px) {
     .pattern-overlay {
         height: 500px;
         overflow: hidden;
    }
     .headerimage {
         overflow: hidden;
    }
     .mbYTP_wrapper {
         width: 900px!important;
    }
}
 @media (max-width: 767px) and (min-width: 0px) {
     .pattern-overlay {
         height: 400px;
         overflow: hidden;
    }
     .headerimage {
         overflow: hidden;
    }
     .mbYTP_wrapper {
         width: 900px!important;
    }
}
/*end video*/
 .clear {
     clear: both;
}
 .no-mar {
     margin-right:0px;
}
 .headerright {
     display: block;
     flex: 0 1;
     flex-basis: auto;
     text-align: right;
     padding: 0 .625em;
     color: #333;
     letter-spacing: .01em;
     font-size: 1.15rem;
     font-weight: 300;
     white-space: nowrap;
     line-height: 2;
     transition: color 0.3s linear;
     -o-transition: color 0.3s linear;
     -moz-transition: color 0.3s linear;
     -webkit-transition: color 0.3s linear;
}
.headerright a {
    color: #333;
    transition: color 0.2s linear;
    -o-transition: color 0.2s linear;
    -moz-transition: color 0.2s linear;
    -webkit-transition: color 0.2s linear;
}
.headerright a:hover {
    color: #000;
}
.headerright-top {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    flex: 1 1;
    flex-basis: auto;
    font-size: 1em;
    font-weight: normal;
    margin: 0;
    align-items: baseline;
}
.headerright-top div {
    margin: 0 5px;
    flex: 0 1;
    flex-basis: auto;
}
.headerright-top .rt-icon {
    margin: 5px;
}

header.smaller .headerright a {
    color: #333;
    transition: color 0.2s linear;
    -o-transition: color 0.2s linear;
    -moz-transition: color 0.2s linear;
    -webkit-transition: color 0.2s linear;
}
header.smaller .headerright a:hover {
    color: #000;
}

figure {margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    margin: 0;
}
 .contained {
     width: 95%;
     max-width: 1500px;
     margin: 0 auto;
}
.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], .gform_wrapper .gform_page_footer input.button, .gform_wrapper .gform_page_footer input[type=submit] {
    width:95% !important;
    padding:15px;
}
/*shrink header*/
/*CHANGE HEIGHT of header-main-wrapper class below. Assign min-height based on header height so the content pushes down;
 you may need to remove this on home page or set as 0px for homepage if you use a photo or slideshow and set it as relative -- this is mostly for the secondary pages if they don't have anything there that's relatively positioned */
 .header-main-wrapper {
     position: relative;
     background: transparent;
}
 header {
     width: 100%;

     overflow: visible;
     position: fixed;
     top: 0;
     z-index: 100;
     left: 0;
     -webkit-transition: height 0.3s ease;
     -moz-transition: height 0.3s ease;
     -ms-transition: height 0.3s ease;
     -o-transition: height 0.3s ease;
     transition: height 0.3s ease;

     /* height: 100px; */
    /*important so the height transition is smooth to smaller header */
}

 .page-template-api-propertydetail header { position: relative; }

 header.smaller {
     top: 0;
     padding-top: 0;
     background-color: rgba(255, 255, 255, .9);
     /* height: 145px; */
     /*-webkit-transition: all 0.3s;
     -moz-transition: all 0.3s;
     -ms-transition: all 0.3s;
     -o-transition: all 0.3s;
     transition: all 0.3s;*/
     -moz-box-shadow: 0 2px 3px 0px rgba(0, 0, 0, 0.16);
     -webkit-box-shadow: 0 2px 3px 0px rgba(0, 0, 0, 0.16);
     box-shadow: 0 2px 3px 0px rgba(0, 0, 0, 0.16);
}
header .logo img {
    height: 150px;
    transition: transform 0.5s ease;
    transform-origin: left;
}
header.smaller .logo img {
    transform: scale(0.75);
}

 header.smaller .nav {
     margin-top: 0;
     -webkit-transition: all 0.3s;
     -moz-transition: all 0.3s;
     -ms-transition: all 0.3s;
     -o-transition: all 0.3s;
     transition: all 0.3s;
}
/*end header*/

.header {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
 .header-wrap {
     width: 100%;
     padding: 5px 0;
}
.page-title {
    text-align: center;
    text-transform: none;
    overflow: hidden;
    font-weight: 300;
}

.page-title-home {
    font-family: dolce, sans-serif;
    font-size: 3em;
    text-transform: none;
    overflow: hidden;
    font-weight: 300;
}

 .content {
     width: 100%;
     margin: 0 auto;
     padding: 0;
     position: relative;
     color: #333;
     background-color: #fff;
     overflow: hidden;
     z-index: 1;
}
 .content-full {
     color: #333;
     background-color: #fff;
     margin: auto;
}
 .footer-wrap {
     position: relative;
     width: 100%;
     background: #3d3b3e;
     color: #fff;
     padding: 10px 0;
     display: inline-block;
     text-align: center;
}
 .footer-wrap a {
     color: #fff;
     transition: color 0.3s linear;
     -o-transition: color 0.3s linear;
     -moz-transition: color 0.3s linear;
     -webkit-transition: color 0.3s linear;
}
.footer-wrap a:hover {
    color: #F2EB1A !important;
}
.footer {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
     font-size: .75em;
}
.footerright,
.footerleft, .footermiddle {
    flex: 1 0 auto;
}
.footerleft {
    text-align: left;
}
.footerright {
    text-align: right;
}
 .sidebar {
     padding: .625em;
}
 .sidebar h2 {
     font-size: 1.1em;
     margin: .83em 0 .3125em 0;
}
 .sidebar ul {
     list-style-type: none;
     margin: 0.3125em 0 0.625em 0.625em !important;
     padding-left: 0;
}
.sidebar li {
    margin: 5px 0 15px;
    padding: 0 !important;
    line-height: 1.15;
}
 .sidebar li li {
     list-style-type: none;
     margin-left: .95em;
     padding-left: 0;
}
 .ft-top {
     color: #3d3b3e;
     width: 100%;
     background: #f4f4ed;
     padding: 5px 0;
}
.ft-top a,
.ft-top a:active {
    color: #3d3b3e !important;
    transition: color 0.3s linear;
    -o-transition: color 0.3s linear;
    -moz-transition: color 0.3s linear;
    -webkit-transition: color 0.3s linear;
}
.ft-top a:hover {
    color: #c7c7c7 !important;
}
.ft-column-title {
    margin: 10px 0 20px 0;
    font-size: 1.5rem;
    color: #3d3b3e;
    text-transform: capitalize;
    letter-spacing: .08em;
}
.ft-top ul, .twocol-menu ul {
     margin: 0;
    padding-left: 0;
}
.ft-top li {
    list-style: none;
    line-height: 1.5em;
}
.ft-top i:before {
    font-size: 25px;
}
.footer-divide {
    height: 2px;
    width: 80%;
    margin: auto;
    border-radius: 80%;
    background: #fff;
}
.twocol-menu {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    column-rule: 0 solid #fff;
    column-gap: 25px;
    white-space: normal;
    padding: 0;
}
.twocol-menu li {
    list-style: none;
    line-height: 1.15em;
    padding: 5px 0;
    text-align: left;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
}

/*flexbox designed for 4 footer columns, but can also be used for infinite # of columns/rows*/
 .flex-wrapper {
     margin-bottom: 1em;
     line-height: 1.5;
}
 .flex-item {
     flex: 1 1 250px;
     margin: 10px auto;
     padding: 0 10px;
     text-align: left;
     white-space: initial;
}
 .flex-container {
     display: flex;
     align-items: stretch;
     justify-content: space-between;
     flex-wrap: wrap;
     margin: 15px auto;
}
 .flex-item .demo-icon:before {
     font-size: 16px;
     color: #429cc1;
     background-color: #fff;
     width: 30px;
     height: 30px;
     margin: 4px;
     padding: 6px 4px 6px 5px;
     border-color: transparent;
     border-style: solid;
     border-width: 1px;
     border-radius: 50%;
     transition: color 0.3s linear, background-color 0.3s linear;
     -o-transition: color 0.3s linear, background-color 0.3s linear;
     -moz-transition: color 0.3s linear, background-color 0.3s linear;
     -webkit-transition: color 0.3s linear, background-color 0.3s linear;
}
.flex-item .demo-icon:hover:before {
    color: #fff;
    background-color: transparent;
}
 .icon {
     display: inline-block;
     vertical-align: top;
     margin-right: 10px;
     max-width: 10%;
}
/*max-width keeps the address from wrapping under the icon*/
 .info-block {
     display: inline-block;
     vertical-align: top;
     max-width: 83%;
}
/*the end of icon images*/
 hr {
     height: 1px;
     background: #f0f0f3;
     border: none;
}
/* Typeface */
h1, h2, h3, h4, h5, h6 {
    line-height: 1.25;
    margin: 10px 0;
}
h1, h2 {
    letter-spacing: .075em;
    font-weight: 500;
}
h3, h4, h5, h6 {
    letter-spacing: .05em;
    color: #687175;
}
h2, h3 {
    font-weight: 300;
}
h1 {
    color: #163a4e;
    font-size: 1.75rem;
    text-transform: none;
}
h2 {
    font-size: 2.5rem;
    line-height: 1.75;
    color: #163a4e;
    text-transform: none;
    font-family: dolce, sans-serif;
}
h3 {
    font-size: 1.35rem;
    text-transform: none;

}
/* links */
 a {
     color: #429cc1;
     text-decoration: none;
     transition: color 0.3s linear;
     -o-transition: color 0.3s linear;
     -moz-transition: color 0.3s linear;
     -webkit-transition: color 0.3s linear;
}
 a:hover {
     text-decoration: none;
     color: #1e7ab4;
}
 .sidebar a {
     color: #429cc1;
}
 .sidebar a:hover {
     color: #1e7ab4;
}
 .content a.readmore {
     text-decoration: underline;
}
 .content a.readmore:hover {
     text-decoration: none;
}
a.overall-anchor {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: transparent;
    z-index: 2; }

input[type=submit],
.button,
a.button {
    display: block;
    cursor: pointer;
    background-color: #1f1050;
    width: 95%;
    max-width: 600px;
     color: #FFF;
    text-align: center;
    letter-spacing: 1px;
    padding: 8px 15px;
    margin: 0.625em auto;
     border: 0;
    border-radius: 0;
    text-transform: uppercase;
    white-space: normal;
    transition: background-color 0.2s linear;
    -o-transition: background-color 0.2s linear;
    -moz-transition: background-color 0.2s linear;
    -webkit-transition: background-color 0.2s linear;
}
input[type=submit].focus-visible,
.button.focus-visible,
a.button.focus-visible,
button.focus-visible {
    outline: 1px solid red!important;
}
input[type=submit]:hover,
.button:hover,
a.button:hover {
    background: #404040;
    color: #fff!important;
}
 div.entry {
     position: relative;
     text-align: left;
}
.post-excerpt {
    text-align: left;
}
 .post-prev-img {
     padding: 0 0.95em 0.625em 0;
}
 .alignleft {
     float: left;
}
 .alignright {
     float: right;
}
 .aligncenter {
     display: block;
     margin-left: auto;
     margin-right: auto;
}
 img.alignleft {
     margin: 0 0.625em 0.625em 0;
}
 img.alignright {
     margin: 0 0 0.625em 0.625em;
}
img.alignleft, img.alignright {
    max-width: 55%;
}
 img.aligncenter {
     margin: 0 auto 0.625em;
}
 .wp-caption {
     margin-bottom: 24px;
     max-width:100%;
     color: #767676;
}
 .wp-caption img[class*="wp-image-"] {
     display: block;
     margin: 0;
}
 .wp-caption-text {
     font-size: 0.75em;
     font-style: italic;
     line-height: 1.5em;
     margin: 0.55em 0;
     padding-right: 0.625em;
}
 .wp-smiley {
     border: 0;
     margin-bottom: 0;
     margin-top: 0;
     padding: 0;
}
.widget {
    margin: 0 auto;
}
 img.wp-post-image {

}
/*Extensions for Gutenberg elements*/
.wp-block-column {
    margin: 10px !important;
    flex: 1 1;
}
.wp-block-columns.has-2-columns .wp-block-column {
    flex-basis: 45%;
}
.wp-block-columns.has-3-columns .wp-block-column {
    flex-basis: 31%;
}
.wp-block-columns.has-4-columns .wp-block-column {
    flex-basis: 23%;
}
.wp-block-quote {
    position: relative;
    margin: 45px 10%;
    color: rgba(0,0,0,.8);
}
.wp-block-quote:before, .wp-block-quote:after {
    position:absolute;
    font-size:100px;
}
.wp-block-quote:before {
    content: '\201c';
    left:-45px;
    top: -50px;
    color: rgba(0,0,0,.3);
    font-family: Georgia, Times, "Times New Roman", serif;
}
.wp-block-quote:after {
}
.wp-block-image .alignright, .wp-block-image .alignleft {
    max-width: 55%;
}
.wp-block-cover .wp-block-cover-text {
    font-size: 4rem;
    font-weight: 700;
    color: rgba(255,255,255,.85);
}
.wp-block-table {
    margin: 10px auto;
}
.wp-block-table td, .wp-block-table th {
    padding: 5px 10px;
}
/*End Extensions for Gutenberg elements*/

/* Flex Boxes. Some styling appears under media queries*/
.equal-flex-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    margin: auto;
}
.simple-flex-item {
    margin: 10px;
    flex: 1 1 auto;
}
.content-left {
    flex: 7 1 400px;
    text-align: left;
    padding: 0 10px;
}
.article-container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    background-color: rgba(160, 187, 193, 0.1);
    border: solid 3px rgba(160, 187, 193,.1);
    margin: 10px auto !important;
    padding: 10px;
    line-height: 1.5;
}
.article-container .article-thumbnail {
    text-align: center;
    flex: 1 1;
    flex-basis: 350px;
}
.article-container .article-preview {
    flex:4 1;
    flex-basis: 350px;
    text-align: left;
    padding: 0 10px;
}
.article-container .article-preview h2 {
    margin: 0 0 15px;
    line-height: 1.15;
}
.reviewdisplay { border-bottom: 1px solid #DDD; margin-top: 5px; }
.reviewdisplay:last-child { border-bottom: 0px solid #DDD; }
/*menu for above 40em/640px*/
 @media (min-width: 641px) {
     .navclass ul {
         -webkit-padding-start: 0px;
         -webkit-margin-before: 0;
         -webkit-margin-after: 0;
         margin:0;
    }
     .navclass li {
         position: relative;
    }
     .navclass li a {
         display: block;
         text-transform:uppercase;
    }
     .navclass ul.sub-menu {
         padding: 0 !important;
    }
    /*this adds the arrow that points down in the main navigation if there's a submenu -- you may need to add again under mobile sizing and change the color*/
     .navclass .menu-item-has-children > a:after {
         width: 0;
         height: 0;
         border: 0.313em solid transparent;
         border-bottom: none;
         border-top-color: #3d3b3e;
        /*change depending on arrow color needed*/
         content: '';
         vertical-align: middle;
         display: inline-block;
         position: relative;
         right: -0.313em;
    }
     .nav {
         flex: 1 1;
         flex-basis: auto;
         padding-left: 10px;
         white-space: normal;
    }
     .nav ul.menu > a {
         display: none;
    }
     .nav ul.menu {
         width: auto;
         margin: 0 auto;
         position: relative;
         z-index: 1;
         padding: 0 10px;
         text-align: right;
    }
     .nav ul.menu li {
         list-style-type: none;
         position: relative;
         display: inline-block;
    }
     .nav ul.menu li a {
         display: block;
         text-decoration: none;
         text-align: center;
         margin-left: 30px;
         margin-right: 5px;
         padding: 5px 0;
         line-height: 1.2;
         color: #3d3b3e;
         text-transform: capitalize;
         letter-spacing: .01em;
         font-size: 1.3em;
         cursor: pointer;
         transition: color 0.2s linear;
         -o-transition: color 0.2s linear;
         -moz-transition: color 0.2s linear;
         -webkit-transition: color 0.2s linear;
    }
     .nav ul.menu li > a {
         position: relative;
    }
     .nav ul.menu li ul li > a {
         position: relative;
         margin-bottom:0;
    }
     .nav ul.menu li ul li > a:hover:before {
         visibility: hidden;
    }
     .nav ul.menu li > a:hover:before {
         visibility: visible;
         -webkit-transform: scaleX(1);
         transform: scaleX(1);
    }
    /* second level */
     .nav ul.menu li ul {
         display: none;
         position: absolute;
         top: 100%;
         right: -10px;
         padding: 0;
         margin: 0;
    }
     .nav ul.menu li:hover > ul.sub-menu, .focusSubmenu {
         display: block!important;
         background-color: rgba(0,0,0,.65);
    }
     a.focus-visible {
         outline: 1px solid red!important;
     }
     .nav ul.menu li ul li {
         white-space: nowrap;
         display: block;
    }
     .nav ul.menu li ul li a {
         margin-left: 0;
         margin-right: 0;
         padding: 10px;
         text-align: right;
        background: rgba(42, 46, 130, .9);
        /*background color for dropdown links*/
         width: 230px;
         text-transform: none;
         line-height: 30px;
         letter-spacing:.5px;
         font-size: 15px;
         color: #fff;
         transition: all 0.2s linear;
         -o-transition: all 0.2s linear;
         -moz-transition: all 0.2s linear;
         -webkit-transition: all 0.2s linear;
    }
     .nav ul.menu li ul li a:hover {
         color: #fff;
         background: rgba(9,42,68,.8);
        /*background hover color*/
    }
    /*more levels*/
     .nav ul.menu li ul li {
         white-space: nowrap;
         display: block;
    }
    /*this is the arrow/triangle that points to the right for submenu items with another submenu - you may need to change the color, and also the margin to adjust where it lands. If you want it next to the menu item, change float:right to display:inline-block and remove the margin-top */
     .nav ul.menu li ul li.menu-item-has-children > a:after {
         border: solid white;
         border-width: 0 2px 2px 0;
         float:right;
         margin-top:10px;
        /*may need to change*/
         padding: 3px;
         transform: rotate(-45deg);
         -webkit-transform: rotate(-45deg);
    }
     .nav ul.menu ul ul {
         top: 0;
         left: 100%;
         display: block;
    }
     .nav ul.menu li:hover ul ul {
         display: none;
    }
     .nav ul.menu ul li:hover ul {
         display: block;
    }
}
/*menu for 64.0em/1024px and below*/
@media (max-width: 1024px) {
    /*headings*/
    h1 {
        font-size:1.5rem;
    }
    h2 {
        font-size:1.5rem;
    }
    h3 {
        font-size: 1.25rem;
    }
    p {
        font-size:15px;
    }
    header {
        background: rgba(255, 255, 255, 0.6);
        box-shadow: none;
        position: relative;
    }
    .header {
        flex-wrap: wrap;
    }
    .logo,
    .logo-smaller,
    .headerright {
        text-align: center;
        line-height: 1.65;
        width: 100%;
        flex: 0 1;
        flex-basis: 550px;
        margin: auto;
    }
    .headerright-top {
        justify-content: center;
        margin: 5px auto;
        max-width: 85%;
    }
    header .logo img {
        max-width: 70%;
        height: auto !important;
        transform-origin: center;
    }
    header.smaller .logo img {
        transform: none; /*If you want to have the logo reduce on scroll, unapply this property */
    }
    /*menu mobile*/
    ul.clearfix.hide-nav {
        display:none;
    }
    header.smaller .navclass .menu-item-has-children > a:after {
        border-top-color: #fff !important;
    }
    .navclass li {
        font-size:19px;
    }
    .navclass li a {
        color:#FFF;
    }
    #nav-acc {
        padding: 10px;
    }
    #nav-acc > ul > li.has-sub.active > a:after {
        content: '';
        vertical-align: middle;
        position: relative;
        right: -8px;
        bottom: 0em;
        border: solid white;
        border-width: 0 2px 2px 0;
        display: inline-block;
        padding: 3px;
        transform: rotate(225deg);
        -webkit-transform: rotate(225deg);
        transition:.2s all;
    }
    #nav-acc > ul > li > ul > li.has-sub.active > a:after {
        content: '';
        vertical-align: middle;
        position: relative;
        right: -8px;
        bottom: 0px;
        border: solid white;
        border-width: 0 2px 2px 0;
        display: inline-block;
        padding: 3px;
        transform: rotate(225deg);
        -webkit-transform: rotate(225deg);
        transition:.2s all;
    }
    .navclass .menu-item-has-children > a:after {
        content: '';
        vertical-align: middle;
        position: relative;
        right: -8px;
        bottom: 1px;
        border: solid white;
        border-width: 0 2px 2px 0;
        display: inline-block;
        padding: 3px;
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
    }
    /*end menu*/
    /*add this section for nav sub-menu down arrow if your nav colors change so you can change the arrow color*/
    #nav .menu-item-has-children > a:after {
        width: 0;
        height: 0;
        border: 4px solid transparent;
        border-bottom: none;
        border-top-color: #fff;
        content: '';
        vertical-align: middle;
        display: inline-block;
        position: relative;
        right: -4px;
    }
    /*toggle applies to the hamburger menu button*/
    .toggle-spot {
        position: absolute;
        width:30px;
        height:30px;
        right:20px;
        top:10px;
    }
    /*where do you want hamburger to show up? */
    #toggle {
        display: block;
        width: 60px;
        height: 50px;
        margin: 0;
        position: absolute;
        top: 30px;
         right: 0;
        cursor:pointer;
        z-index: 1;
    }
    #toggle span:after, #toggle span:before {
        content: "";
        position: absolute;
        left: 0;
        top: -9px;
    }
    #toggle span:after {
        top: 9px;
    }
    #toggle span {
        position: relative;
        display: block;
    }
    #toggle span, #toggle span:after, #toggle span:before {
        width: 100%;
        height: 4px;
        background-color: #000;
        transition: all 0.3s;
        backface-visibility: hidden;
        border-radius: 20px;
    }
    header.smaller #toggle span, header.smaller #toggle span:after, header.smaller #toggle span:before {
        background-color: #888;
    }

    /*IMPORTANT: Change the header wrapper height on mobile below so that the
content starts at the appropriate place & not under the header */
    .nav ul.menu li a {
        color: #fff;
        text-decoration: none;
        text-transform: uppercase;
        text-align: left;
        font-size: 16px;
        margin-right: 8%;
    }
    .nav ul.menu li a:hover {
        color: #ccc;
        text-decoration: none;
    }
    .menu {
        -webkit-padding-start: 0;
        margin-left: 25px;
        margin-right: 25px;
    }
    .navclass {
        position: absolute;
        top: 19%;
        right: 0;
        -webkit-padding-start: 0;
        z-index: 500;
        width: 100%;
    }
    .navclass li {
        list-style-type: none;
        line-height: 40px;
    }
    .navclass > ul {
        height: auto;
        display: none;
        position: absolute;
        left: 0;
        right: 0;
        top: 60px;
        -webkit-margin-before: 0;
        -webkit-padding-start: 0;
        margin: 0 auto;
        color: #FFF;
    }
    .navclass li ul {
        display: none;
        position: absolute;
        top: 100%;
    }
    .navclass li ul {
        position: static;
        padding: 1.25em;
        padding-top: 0;
    }
    /*flexbox stuff*/
    .flex-item {
        margin: 10px auto;
        text-align: center;
    }
    /*end flex*/
    .ft-column-title {
        margin: 10px 0 5px 0;
    }
}
/* For 960px and below */
@media (max-width: 960px) {

}
/*768 pixels and below*/
@media (max-width: 768px) {

}
/* cell phones/small tablets (640px) */
 @media (max-width: 640px) {
     .home-cnt-left {width:100%;}
     .home-cnt-right {width:100%;padding:0;}
     .home-cnt-box {flex-direction: column;}

     .post-excerpt {
         text-align: center;
     }
     .footerleft, .footerright, .footermiddle {
         width: 100%;
         text-align: center;
         padding: 0;
     }
     .footermiddle {
         order: 1;
     }
     .footerleft {
         order: 2;
     }
     .footerright {
         order: 3;
     }
     .breadcrumbs {text-align: center;}
     .article-container .article-preview h2 {
         text-align: center;
     }
     /*Extensions for Gutenberg elements*/
     .wp-block-cover .wp-block-cover-text {
         font-size: 3rem;
     }
}
 
 /* over 1024px/64em for desktop */
@media (min-width: 1025px) {
    .c-menu { display: none;}
    .twocol { display: inline-block; width: 49.6%; vertical-align: top; }
 }
/* cell phones/small tablets (640px) */
@media (max-width: 640px) {
    h1 {
        font-size: 1.25rem;
    }
    h2 {
        font-size: 1.2rem;
    }
    h3 {
        font-size: 1.15rem;
    }
    h4,
    h5,
    h6 {
        font-size: 1.1rem;
    }
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    h1.page-title {
        text-align: center;
    }
    .post-prev-img {
        float: left;
        padding: 0 0.95em 0.625em 0;
    }
    .wp-block-image .alignleft, .wp-block-image .alignright, .wp-block-image .aligncenter {
        max-width: 100%;
    }
    .alignleft, .wp-block-image .alignleft {
        float: none;
        display: block;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }
    .alignright, .wp-block-image .alignright {
        float: none;
        display: block;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }
    .aligncenter, .wp-block-image .aligncenter {
        display: block;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }
    img.alignleft {
        margin: 0.625em auto;
        max-width: 100%;
    }
    img.alignright {
        margin: 0.625em auto;
        max-width: 100%;
    }
    img.aligncenter {
        margin: 0 auto 0.625em;
    }
    .gallery-item {
        width: 100% !important;
    }
    .wp-block-columns.has-4-columns .wp-block-column {
        flex-basis: 48%;
    }
    .sidebar {
        margin: 0 auto;
        border-radius: .625em;
        border: 1px solid #f0f0f3;
        text-align: center;
    }
}
/* Below 30em */
@media (max-width: 480px) {
    .wp-block-columns.has-2-columns .wp-block-column {
        flex-basis: 100%;
    }
    .wp-block-columns.has-3-columns .wp-block-column {
        flex-basis: 100%;
    }
    .wp-block-columns.has-4-columns .wp-block-column {
        flex-basis: 100%;
    }
    .wp-block-cover .wp-block-cover-text {
        font-size: 2rem;
    }
    h1.page-title {
        font-size: 1.65rem;
    }
}
 
 /* for print only */
@media print {

    .headerright img, .rv, .qswrap, #reviews, .detailsec h2 span, #carousel, .flex-direction-nav, #locationbox { display: none; }
    .header-wrap { border-top: 0; border-bottom: 1px solid #FF5A01; }
    header, header.smaller { box-shadow: none; position: relative; }
    #nav, .rtbreadcrumbs { display: none; }
    ul, li { list-style-type: none; margin: 0; padding: 0; line-height: 1.15; }
    .stripe { background: #FFFFFF!important; }
    .pricescol { border-bottom: 1px solid #EEEEEE; }
    .pdwrap { display: block; width: 55%; float: left; }
    .calsec { display: block; width: 45%; float: right; min-width: 45%; }
    .ratechart { background: #FFFFFF; }
    h1 { font-size: 1.4em; }
    h2 { font-size: 1em; }
    .receipt { width: 100%!important; }
    .rtitle { color:#000!important; line-height: normal!important; white-space: nowrap; background: #EEE; border-right:0!important; height: 14px!important; }
    .rcolumn { width: auto!important; border-bottom: 1px solid #AAA!important; display: block; margin: 0!important; }
    .rcolumn div { width: 40%; display: inline-block; line-height: 16px!important; height: 18px!important; }
    .pdwrap .introslide-overlay, .calendar-layout, .ft-top .flex-item, .banner-image { display: none; }
    .pdwrap .introslide img, .ft-top .flex-item:first-child { display: block; }
    #amenities .detailsec-content, .ratechart { line-height: 1.15; font-size: 12px; }
    .amen-left, .amen-right { text-align: left!important; padding: 0; }
    .amen-wrap { width: 49%; display: inline-block; }
    .header-main-wrapper { min-height: 0; }
    div.ssbuttons, .calsec h2, .legend-booked, .legend-selected, .calsec .button { display: none!important; }
    header.smaller .headerright { display: block; }
}

/* for reduced motion users */
@media screen and
(prefers-reduced-motion: reduce),
(update: slow) {
    * {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        -webkit-transition: all  0.001ms !important;
        -moz-transition: all  0.001ms !important;
        -ms-transition: all  0.001ms !important;
        -o-transition: all  0.001ms !important;
        transition: all  0.001ms !important;
    }
}
