/* DESKTOP — RZ VIDEO POPUP FINAL */
@media only screen and (min-width: 768px) {
    .mfp-wrap.rz-video-modal .mfp-container {
        padding: 40px 20px !important;
        text-align: center !important;
    }

    .mfp-wrap.rz-video-modal .mfp-content {
        width: 850px !important;
        max-width: calc(100vw - 40px) !important;
        margin: 0 auto !important;
        text-align: left !important;
    }

    .mfp-wrap.rz-video-modal .mfp-video-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        background: #000;
        box-shadow: 0 20px 60px rgba(0,0,0,0.6);
    }

    .mfp-wrap.rz-video-modal .mfp-video-wrapper video,
    .mfp-wrap.rz-video-modal .mfp-content video {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }

    .mfp-wrap.rz-video-modal .mfp-close {
        position: absolute !important;
        top: -40px !important;
        right: 0 !important;
        font-size: 32px !important;
        color: #ffffff !important;
        opacity: 1 !important;
        z-index: 99999 !important;
        display: block !important;
    }
}
/* MOBILE — RZ VIDEO POPUP FINAL */
@media only screen and (max-width: 767px) {
    .mfp-wrap.rz-video-modal .mfp-container {
        padding: 40px 8px 20px !important;
        text-align: center !important;
    }

    .mfp-wrap.rz-video-modal .mfp-content {
        width: auto !important;
        max-width: calc(100vw - 16px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .mfp-wrap.rz-video-modal .mfp-video-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        background: #000;
    }

    .mfp-wrap.rz-video-modal .mfp-video-wrapper video {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        display: block !important;
    }

    .mfp-wrap.rz-video-modal .mfp-close {
        top: -38px !important;
        right: 0 !important;
    }
}
/* MOBILE LANDSCAPE — RZ VIDEO POPUP HEIGHT SAFE */
@media only screen and (max-width: 767px) and (orientation: landscape) {
    .mfp-wrap.rz-video-modal .mfp-container {
        padding: 24px 12px 16px !important;
        text-align: center !important;
    }

    .mfp-wrap.rz-video-modal .mfp-content {
        width: auto !important;
        max-width: calc(100vw - 24px) !important;
        max-height: calc(100vh - 40px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .mfp-wrap.rz-video-modal .mfp-video-wrapper {
        width: auto !important;
        max-width: calc((100vh - 40px) * 1.7777) !important;
        max-height: calc(100vh - 40px) !important;
        margin: 0 auto !important;
        background: #000;
    }

    .mfp-wrap.rz-video-modal .mfp-video-wrapper video {
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100vh - 40px) !important;
        height: auto !important;
        display: block !important;
    }

    .mfp-wrap.rz-video-modal .mfp-close {
        top: -34px !important;
        right: 0 !important;
    }
}
html,body {
    width:100%;
    height:100%;
    padding:0;
    margin-left:0;
    margin-right:0;
}
body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
}
a{
    color: #252525;
    text-decoration: none;
}
a:hover, a:focus{
    color: #626262;
    text-decoration: none;
    outline: 0;
}
.noscroll{
    overflow:hidden;
}
img {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
    user-drag: none;
}
.valign{
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
section{
    position: relative;
}
.container {
    position: relative;
    z-index:2;
    overflow:hidden;
}
section .container{
    padding-top:20px;
    padding-bottom:50px;
}
.tight-section {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}
#contactIntro .container {
    padding-top: 75px;
    padding-bottom: 75px;
}
/* MOBILE — CONTACT INTRO SPACING */
@media only screen and (max-width: 767px) {
    #contactIntro .container {
        padding-top: 20px !important;
        padding-bottom: 15px !important;
    }
}
.row{
    z-index:3;
    position:relative;
}
.preloaderLogo{
    min-width: 200px;
    max-width: 300px;
    width: 15%;
}
.black-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background:
        radial-gradient(ellipse at 40% center, rgba(0,0,0,0) 0%, rgba(0,0,0,0.35) 100%),
        linear-gradient(to bottom, rgba(0,0,0,0.2), rgba(0,0,0,0.4));
}
/*buttons*/
.btn{
    background: transparent;
    border-radius: 0;
    border: 0;
    font-family: 'Raleway', sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    position: relative;
    display: inline-block;
    font-size: 12px;
    color: black;
    padding: 0 40px;
    line-height: 40px;
    letter-spacing: .2em;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    outline: 1px solid transparent;
    -webkit-transition: all .5s ease .25s;
    transition: all .5s ease .25s;
}
.btn:hover{
    border:none;
    border-top: 1px solid white;
    border-bottom: 1px solid white;
}
.btn:after, .btn:before {
    -webkit-transition: all .2s ease 0s;
    content: '';
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    background: black;
    z-index:5;
    transition: all .3s ease 0s;
    outline: 1px solid transparent;
}
.btn:before {
    left: -10px;
}
.btn:hover:before {
    left: -4px;
}
.btn:after {
    right: -10px;
}
.btn:hover:after {
    right: -4px;
}
.btn-white{
    background-color:rgba(250,250,250,0.1);
    color: #d5d5d5;
}
.btn-white:after, .btn-white:before {
    background: white;
}
.btn-default{
    background-color:rgba(245,245,245,1);
}
.btn-primary{
    background-color:rgba(66,139,202,0.1);
}
.btn-primary:after, .btn-primary:before {
    background: #428bca;
}
.btn-white:hover, .btn-white:focus, .btn-white:active, .btn-white.active, .open>.dropdown-toggle.btn-white {
    color: white;
}
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open>.dropdown-toggle.btn-default {
    color: #333;
    background-color:rgba(250,250,250,0.2);
    border-color: white;
}
.btn:active, .btn.active {
    background-image: none;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.btn:focus, .btn:active:focus, .btn.active:focus {
    outline: 0;
}
.btn-black{
    color:#282828;
}
.btn-black:after, .btn-black:before {
    background: #282828;
}
.btn-black:hover {
    color: white;
    background-color: #282828;
    border-color: #282828;
}
/*NAVBAR */
.navbar-default {
    padding:30px;
    padding-left:50px;
    padding-right:50px;
    background-color: transparent;
    border-color: transparent;
    -webkit-transition: all .5s ease .25s;
    transition: all .5s ease .25s;
}
.navbar-default .navbar-brand{
    font-family: 'Lato', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color:white;
}
.navbar-brand .serif{
    letter-spacing:-3px;
    font-style: italic;
    font-size:150%;
    font-weight:400;
}
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus {
    color: white;
    background-color: transparent;
}
.affix{
    background-color: #ffffff;
    padding-top:5px;
    padding-bottom:5px;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}
.affix .navbar-brand{
    color:#282828;
}

.affix.navbar-default .navbar-nav>.active>a, .affix.navbar-default .navbar-nav>.active>a:hover, .affix.navbar-default .navbar-nav>.active>a:focus {
    color: black;
    background-color: transparent;
}
.navbar-default .navbar-toggle .icon-bar {
    background-color: white;
}
.affix.navbar-default .navbar-toggle .icon-bar {
    background-color: #282828;
}
.navbar-default .navbar-toggle {
    border-color: transparent;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
    background-color: transparent;
}
.navbar-default .navbar-nav>.open>a, .navbar-default .navbar-nav>.open>a:hover, .navbar-default .navbar-nav>.open>a:focus {
    color: #000000;
    background-color: transparent;
}
.navbar-nav > li > a {
    font-size: 12px;
    font-weight: 600;
    font-family: 'Raleway', sans-serif;
    text-transform: uppercase;
    color: #d5d5d5;
    letter-spacing: 1.6px;
    position: relative;
    padding-left: 18px;
}
.navbar-default .navbar-nav>li>a {
    color: white;
}
.affix.navbar-default .navbar-nav>li>a {
    color: #ababab;
}
.nav li:first-child a:before{
    display: none;
}
.nav li a:before {
    content: "";
    position: absolute;
    width: 4px;
    height: 4px;
    top: 50%;
    left: 2px;
    transform: translateY(-65%);
    background: rgba(0, 180, 200, 0.75);
    border-radius: 50%;
    opacity: 1;
    transition: opacity 0.2s ease, transform 0.25s ease, background 0.25s ease;
}
.navbar-nav > li > a:hover:before,.navbar-nav > li.active > a:before {
    opacity: 1;
    transform: translateY(-65%) scale(1.6);
    background: #00d4ff;
}
/* MOBILE NAV — remove desktop divider dots */
@media only screen and (max-width: 767px) {
    .navbar-nav > li > a:before,
    .nav li a:before {
        display: none !important;
        content: none !important;
    }
}
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    float: left;
    min-width: 160px;
    padding: 5px 0;
    margin: 3px 0 0;
    font-size: 10px;
    text-align: left;
    list-style: none;
    background-color: white;
    background-clip: padding-box;
    border: 0;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
}
.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus {
    color: #d5d5d5;
}
.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus {
    color: #282828;
    background-color: #d5d5d5;
}
/*TEXT STYLES*/
h1 {
    font-size: 42px;
    line-height: 54px;
    margin-bottom: 7px;
    text-transform: uppercase;
}
h2 {
    font-size: 32px;
    line-height: 50px;
    margin-bottom: 10px;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
}
h3 {
    font-size: 24px;
    line-height: 36px;
    margin-bottom: 7px;
}
h4 {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 7px;
}
h5 {
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 7px;
}
h6 {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 7px;
    text-transform: uppercase;
}
h1,h2,h3,h4,h5,h6 {
    letter-spacing: -0.5px;
    -webkit-font-smoothing: antialiased;
    font-family: 'Open Sans', sans-serif;
    font-weight:800;
}

.sectionIntro h1 {
    text-transform: uppercase;
    letter-spacing:3px;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
}
.sectionIntro h1.minimal{
    margin-top:40px;
}
.sectionIntro h2.sectionSubhead {
    font-size: 28px !important;
    line-height: 1.0 !important;
    font-weight: 300 !important;
    letter-spacing: -1px !important;
    margin: 10px 0 !important;
    padding: 0 !important;
    text-transform: none;
}
.sectionIntro h2.sectionSubhead small {
    font-size: 85% !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    color: inherit !important;
}
.caption-heading .cardTitle {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0px;
    margin: 15px 0 10px;
    color: inherit;
}
.manuscriptSubhead {
    margin: 10px 0;
    padding: 0;
}
.manuscriptSubhead small {
    font-size: 28px !important;
    line-height: 1.0 !important;
    font-weight: 300 !important;
    letter-spacing: -1px !important;
    margin: 10px 0 !important;
    padding: 0 !important;
    text-transform: none;
}

.sectionIntro h3{
    margin-top:-10px;
}
p {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 24px;
    color: #4c4c4c;
}
.minimal{
    font-family: 'Raleway', sans-serif;
    font-weight:900;
    text-transform: uppercase;
}
h1.minimal{
    font-size:54px;
    letter-spacing: -6px;
}
h1 small{
    font-weight:300;
    font-size: 54px;
    letter-spacing: -5px;
}
h2.minimal{
    font-size:46px;
    letter-spacing: -3.5px;
}
h2 small{
    font-weight:300;
    font-size: 36px;
    letter-spacing: -1px;
}
h3.minimal{
    font-size:38px;
    letter-spacing: -2.5px;
}
h3 small{
    font-weight:300;
    font-size: 38px;
    letter-spacing: -2px;
}
h4.minimal{
    font-size:28px;
    letter-spacing: -2px;
}
h4 small{
    font-weight:400;
    font-size: 28px;
    letter-spacing: -2px;
}
h5.minimal{
    font-size:22px;
    letter-spacing: -1px;
}
h5 small{
    font-weight:400;
    font-size: 22px;
    letter-spacing: -1px;
}
.idyleaseStatement {
    font-weight: 400;
    margin-top: 25px;
    color: #222;
}
p.bold{
    font-weight:700;
}
.serif{
    font-family: 'Old Standard TT', serif;
    text-transform:none;
    font-style:italic;
    font-weight:300;
    letter-spacing:-1px;
}
h3 .serif{
    font-size:110%
}
h4 .serif{
    font-size:120%
}
.customH4 {
    font-family: 'Raleway', sans-serif !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 2.9px !important;
    color: #fff !important;
    font-style: normal !important;
}
h5 .serif{
    font-size:120%
}
h6 .serif{
    font-size:120%
}
h3 small, h4 small, h5 small{
    -webkit-font-smoothing: antialiased;
}
.timerWrapper p {
    -webkit-font-smoothing: subpixel-antialiased;
}

.idyleaseIntro {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
    max-width: 720px;
    margin: 40px auto 30px;
}
.writingIntro {
    font-family: 'Raleway', sans-serif;
    font-weight: 300 !important;
    font-size: 20px;
    line-height: 1.2;
    color: rgba(255,255,255,0.65);
    /* NOT pure white */
    max-width: 680px;
    margin: 15px auto 15px;
    text-align: center;
}
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
/*<!--Decorative elements -->*/
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
#text-separator-testimonials .sectionIntro {
    max-width: 72ch;
    margin: 0 auto;
    text-align: center;
}
.inclineLine{
    position:absolute;
    top:-6px;
    width:70px;
    height: 87px;
    left:45%;
    z-index:-1;
}
.zigzagSep{
    width:100px;
    height:12px;
    margin-top:30px;
    margin-bottom:50px;
}
.sectionIntro .zigzagSep{
    margin-bottom:20px;
}
.lineSeparator{
    width:100px;
    height:1px;
    background:black;
    margin-top:20px;
    margin-bottom:25px;
}
.verticallineSeparator{
    position:relative;
    height:50px;
    width:1px;
    background:black;
    margin-bottom:20px;
}

.sectionIntro .verticallineSeparator{
    margin-top:30px;
    background:#d5d5d5
}
/*social icons*/
#footer .bottomLine .allIconsSocialWrapper{
    text-align:right;
    width:100%;
}
#contactContent .allIconsSocialWrapper{
    margin-top:25px;
    text-align:center;
}
.socialWrapper{
    width:50px;
    height:50px;
    margin:2px;
    display: inline-block;
    margin-left:auto;
    margin-right:auto;
    position:relative;
}
.black-icon .socialIcon i {
    color: white;
}
.socialIcon i{
    color:#282828;
    font-size:14px;
    padding:15px;
}
.socialIcon {
    display: inline-block;
    font-size: 0px;
    cursor: pointer;
    margin: 10px;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    text-align: center;
    position: relative;
    z-index: 1;
    color: white;
}
.black-icon .socialIcon{
    color: #282828;
}
.socialIcon:after {
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    content: '';
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}
.socialIcon-effect-1 .socialIcon {
    background: rgba(245,245,245,1);
    -webkit-transition: background 0.2s, color 0.2s;
    -moz-transition: background 0.2s, color 0.2s;
    transition: background 0.2s, color 0.2s;
}
.black-icon .socialIcon-effect-1 .socialIcon {
    background: rgba(28, 28, 28, 1);
}
.socialIcon-effect-1 .socialIcon:after {
    top: -4px;
    left: -4px;
    padding: 4px;
    box-shadow: 0 0 0 2px #282828;
    -webkit-transition: -webkit-transform 0.2s, opacity 0.2s;
    -webkit-transform: scale(.9);
    -moz-transition: -moz-transform 0.2s, opacity 0.2s;
    -moz-transform: scale(.9);
    -ms-transform: scale(.9);
    transition: transform 0.2s, opacity 0.2s;
    transform: scale(.9);
    opacity: 0;
}
.black-icon .socialIcon-effect-1 .socialIcon:after {
    box-shadow: 0 0 0 2px black;
}
.socialWrapper:hover .socialIcon i{
    color:white;
}
.socialWrapper:hover .socialIcon-effect-1a .socialIcon{
    background: rgba(0,0,0,1);
}
.socialWrapper:hover .socialIcon-effect-1a .socialIcon:after {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
/*<!--Intro -->*/
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
#intro h1, #intro p, #intro h1.minimal small{
    color:white;
}
#intro h1{
    letter-spacing: 3px;
}
.introLogo{
    position:relative;
    width:200px;
}
#intro a{
    color:white;
}
.introSmallCaption p{
    margin-bottom: 30px;
    font: 14px/24px 'Open Sans', sans-serif;
    font-style: normal;
    text-transform: none;
    font-weight: 300;
}
#intro .leftIntroLink{
    padding: 25px 30px 25px 200px;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    border-right: 1px solid white;
}
#intro .rightIntroLink{
    padding:25px 200px 25px 30px;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    text-transform:uppercase;
}
#intro .leftIntroLink::after{
    width:3px;
    height:200px;
    background:white;
}

.leftIntroLink i, .rightIntroLink i{
    font-style:normal;
    font-size:25px;
}
.introSmallCaption {
    color: #fff;
    padding: 20px 20px 0 20px;
}

.introSmallCaption p.minimal{
    font: 14px/24px 'Open Sans', sans-serif;
    font-style:normal;
    text-transform: none;
    font-weight:300;
}
.introSmallCaption h4{
    font-family: 'Old Standard TT', serif;
    font-weight:700;
    letter-spacing:-1px;
    font-style:italic;
}
.introSmallCaption h4.minimal{
    font-family: 'Raleway', sans-serif;
    font-weight:900;
    text-transform: uppercase;
    letter-spacing:-2px;
    font-style:normal;
    font-size:36px;
}
#intro .btn{
    background-color: rgba(245,245,245,0.2);
}
#intro h2, #intro h2 small{
    color:white;
}
#intro .verticallineSeparator{
    margin-top:3px;
    background:white;
}
#intro .minimal-style {
    padding-top:0;
}
#intro h5 small{
    text-transform:none;
    color:white;
}
#intro p {
    color:#d5d5d5;
}
#hospitality .hospitalityIntro {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 22px;
    /* KEY CHANGE */
    line-height: 1.5;
    letter-spacing: 0.3px;
    color: rgba(255,255,255,0.92);
    margin-top: 25px;
    margin-bottom: 10px;
    text-align: center;
}
@media only screen and (max-width: 767px) {
    #hospitality.hospitality-dark {
        padding-top: 20px !important;
        padding-bottom: 44px !important;
    }

    #hospitality > .container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

#hospitality {
    color: rgba(255,255,255,0.9);
}
#hospitality .sectionTitle,#hospitality .minimal {
    color: rgba(255,255,255,0.9) !important;
}
#hospitality .minimal small {
    color: rgba(255,255,255,0.65) !important;
}
#hospitality .verticallineSeparator {
    background: rgba(255,255,255,0.25) !important;
}
#hospitality p {
    color: rgba(255,255,255,0.9) !important;
}

.section-break {
    width: 100%;
    height: 100px;
    /* adjust 80–140 depending on feel */
    background: #ffffff;
}
.section-break.light {
    height: 80px;
    /* optional variation */
}
.section-break.large {
    height: 140px;
}
.hospitality-dark {
    background: #1a1715;
}
#hospitality-quote {
    position: relative;
    background-image: url("img/hospitality/the-rainbow-room.webp");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: fixed;
    padding: 30px 0;
    overflow: hidden;
}
#hospitality-quote .container {
    position: relative;
    z-index: 2;
    overflow: visible !important;
}
#hospitality-quote .black-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.45);
    z-index: 1;
}

.hospitalityQuoteText {
    font-family: 'Raleway', sans-serif;
    font-size: 30px;
    line-height: 1.1;
    color: rgba(255,255,255,0.92);
    margin: 0;
}
.hospitalityQuoteAttribution {
    display: block;
    margin-top: 20px;
    font-family: 'Raleway', sans-serif;
    font-size: 11px;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.75);
}
.sectionTitle-light {
    color: rgba(255,255,255,0.85) !important;
}
.verticalLine-light {
    background: rgba(255,255,255,0.25) !important;
}
.hospitalityNarrative {
    max-width: 820px;
    margin: 0 auto 85px;
    text-align: center;
}
#hospitality .hospitalityNarrative p {
    font-size: 15px !important;
    line-height: 24px !important;
    letter-spacing: normal !important;
    font-weight: 300 !important;
    color: rgba(255,255,255,0.82) !important;
    margin-bottom: 18px;
}
.hospitalityNarrative-light p {
    color: rgba(255,255,255,0.86);
}
.hospitality-visual {
    text-align: center;
}
.hospitality-headline {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 400;
    font-size: 44px;
    line-height: 1.15;
    color: rgba(255,255,255,0.9);
    margin: 0 0 14px;
    text-transform: none;
    letter-spacing: 0;
}
.hospitality-subhead {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.6;
    color: rgba(255,255,255,0.7);
    margin: 0 auto 80px;
}
.hospitality-rule {
    max-width: 1180px;
    height: 1px;
    background: rgba(255,255,255,0.22);
    margin: 38px auto 28px;
}
.hospitality-closing {
    text-align: center;
    margin-top: 0px;
}
.hospitality-closing-line {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 17px;
    /* reduced */
    line-height: 1.6;
    color: rgba(255,255,255,0.62);
    /* softer than body */
    letter-spacing: 0.3px;
    max-width: 750px;
    margin: 16px auto 0;
    text-align: center;
}
.hospitality-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 34px;
    max-width: 1180px;
    margin: 0 auto;
}
.hospitality-card {
    text-align: center;
    cursor: pointer;
    transition: opacity 0.35s ease, transform 0.35s ease;
}
.hospitality-card img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    filter: saturate(0.72) brightness(0.9) contrast(1.05);
    transition: transform 0.45s ease-out, filter 0.6s ease-out;
}
.hospitality-card:hover img {
    transform: scale(1.025);
    filter: saturate(0.9) brightness(1.15) contrast(1.05);
}
.hospitality-card h4 {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 15px;
    letter-spacing: 3.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.88);
    margin: 26px 0 10px;
    font-style: normal;
    text-align: center;
}
.hospitality-card span {
    display: block;
    width: 28px;
    height: 1px;
    background: rgba(255,255,255,0.42);
    margin: 0 auto 18px;
}
.hospitality-card p {
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    font-size: 13.5px;
    line-height: 1.8;
    color: rgba(255,255,255,0.68);
    max-width: 230px;
    margin: 0 auto;
    text-align: center;
}
/* INLINE FULL-FRAME REVEAL */
/* RESPONSIVE */
#hospitalityReveal img {
    opacity: 0;
    transition: opacity 0.4s ease;
}
#hospitalityReveal.active img {
    opacity: 1;
}
.hospitality-reveal {
    position: relative;
    max-width: 680px;
    margin: 38px auto 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.65s ease, opacity 0.45s ease;
}
.hospitality-reveal.active {
    max-height: 520px;
    opacity: 1;
}
.hospitality-reveal img {
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    opacity: 1;
    filter: saturate(0.8) brightness(0.92) contrast(1.05);
}
.hospitality-reveal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 5;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255,255,255,0.45);
    background: rgba(0,0,0,0.45);
    color: rgba(255,255,255,0.85);
    font-size: 22px;
    line-height: 28px;
    text-align: center;
    cursor: pointer;
}
/* THIN LINE */
/* EMBLEM */
.hospitality-emblem img {
    width: 50px;
    opacity: 0.5;
    padding-top: 20px;
}
@media only screen and (max-width: 767px) {
    #hospitality .hospitality-emblem {
        margin-top: -20px;
    }
}
#hospitality .hospitalityNarrative a {
    color: rgba(255,255,255,0.85) !important;
    text-decoration: none;
    font-weight: 600;
}
@media (max-width: 991px) {
    .hospitality-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 560px) {
    .hospitality-dark {
        padding: 70px 22px 70px;
    }
    .hospitalityNarrative p {
        font-size: 19px;
    }
    .hospitality-headline {
        font-size: 34px;
    }
    .hospitality-grid {
        grid-template-columns: 1fr;
        gap: 44px;
    }
    .hospitality-card img {
        height: 260px;
    }
}
.hospitality-image-wrap {
    max-width: 680px;
    /* SAME as your image container */
    margin: 0 auto;
    position: relative;
}
.hospitality-image-wrap img {
    width: 100%;
    display: block;
}
.hospitality-image-rule {
    height: 1px;
    background: rgba(255,255,255,0.25);
    margin-top: 28px;
    width: 100%;
}
@media only screen and (max-width: 767px) {
    .hospitalityNarrative {
        margin-bottom: 15px;
    }
}
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
/*<!-- Text Separator / Counter Separator -->*/
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/

/* Counter / Film Metrics Separator */
#text-separator-timers {
    position: relative;
    min-height: 300px;
    background-color: #1f1f1f;
    background-image: url("img/films/transmultimedia-monitor.webp");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: scroll;
    padding: 10px 0;
    overflow: hidden;
}

#text-separator-timers::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(26, 23, 21, 0.45);
    z-index: 1;
}

#text-separator-timers .container-fluid {
    position: relative;
    z-index: 2;
    padding-top: 50px;
    padding-bottom: 60px;
}

#text-separator-timers .row {
    position: relative;
    z-index: 3;
}

#text-separator-timers p {
    color: rgba(255,255,255,0.7);
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 12px;
}

/* Main Text Separator */
#text-separator {
    background-color: #1f1f1f;
    overflow: hidden;
}

#text-separator .container-fluid {
    padding-top: 50px;
    padding-bottom: 60px;
}

#text-separator h2 {
    color: #ffffff;
    text-transform: uppercase;
}

#text-separator h2 .serif {
    letter-spacing: -2px;
}

#text-separator .minimal,
#text-separator .minimal small {
    color: #ffffff;
}

#text-separator .minimal {
    padding-bottom: 30px;
}

#text-separator h2,
#text-separator p {
    position: relative;
    z-index: 100;
    color: #ffffff;
}

.textSepLogo {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: 1822px;
    height: 927px;
}

/* Counter Items */
.timerWrapper {
    padding: 20px;
}

.timerWrapper h1 {
    font-family: 'Lato', sans-serif;
    font-weight: 900;
    letter-spacing: 0;
    color: #ffffff;
}

.timerWrapper p {
    color: #777777;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.timerIcon i {
    font-size: 42px;
    color: rgba(255,255,255,0.85);
    margin-bottom: 15px;
}

#text-separator-timers .timerIcon {
    position: absolute;
    top: 55%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    opacity: 0.25;
}

#text-separator-timers .timerIcon i {
    font-size: 120px;
    color: rgba(255,255,255,0.5);
}


/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
/*<!--Team -->*/
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
#team {
    background:white;
}
#team .container{
    padding-bottom:0;
}

/* MOBILE — OWL SLIDER SECTION SPACING UNDER VIDEO */

.memberParagraph{
    padding-right:40px;
}
.memberDescription h2{
    letter-spacing:-0.5px;
    text-transform:uppercase;
    margin-bottom:0;
}
.memberDescription h3 span{
    letter-spacing: -2px;
}
.memberDescription .position{
    margin-top:0px;
    margin-bottom:20px;
}
.teamImageWrapper{
    position: relative;
    height: 500px;
    text-align: center;
}
.team-image{
    position: relative;
    width: 90%;
    padding-top: 50px;
}
.galleryImage{
    /*min-width:100%;
    */
    width: 100%;
    height: auto;
}
/* Overlay style */
.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: white;
    z-index:3000;
    overflow-y: scroll;
}
.overlay-section{
    position: static;
}
/* Effects */
.overlay-hugeinc {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
    transition: opacity 0.5s, visibility 0s 0.5s;
}
.overlay-hugeinc.open {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}
.overlay-close{
    cursor:pointer;
}
.overlay-close{
    position:fixed;
    z-index:10000;
    top:0;
    right:50px;
}
.overlay-close i{
    font-style:normal;
    font-size:2em;
}
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
/*<!-- Testimonials -->*/
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
#text-separator-testimonials {
    position: relative;
    overflow: hidden;
    background-color: #111;
    background-image: url("img/sergeant-york-still.webp");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    background-attachment: scroll;
}

#text-separator-testimonials .black-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: radial-gradient(
        ellipse at center,
        rgba(0,0,0,0.30) 0%,
        rgba(0,0,0,0.80) 100%
    );
}

#text-separator-testimonials .container {
    position: relative;
    z-index: 2;
    overflow: visible !important;
}

#text-separator-testimonials h1,
#text-separator-testimonials .review h4 {
    color: #fff;
}
#text-separator-testimonials h2 {
    margin-top: -30px;
}
#text-separator-testimonials h3 .serif {
    color: #d1d1d1;
}
#text-separator-testimonials p {
    color: rgba(255,255,255,0.85);
}
.review {
    text-align: center;
    padding: 20px 40px 40px;
}
.review p {
    font: 300 14px/24px 'Open Sans', sans-serif;
    color: #fff;
}
.review p.minimal {
    font: 300 14px/24px 'Open Sans', sans-serif;
    text-transform: none;
    color: #d5d5d5;
}
.review .reviewParagraph {
    font-style: italic;
}
.review p.titulation {
    color: #c8c8c8;
    font-size: 14px;
    font-style: italic;
}
.review h4 {
    letter-spacing: 0;
    margin-bottom: 0;
}
.text-separator-title h2 {
    padding-top: 100px;
}
/* MOBILE — TESTIMONIALS SECTION COMPACT */
@media only screen and (max-width: 767px) {

    #text-separator-testimonials .container {
        padding-top: 45px !important;
        padding-bottom: 27px !important;
    }

    #text-separator-testimonials .sectionIntro {
        margin-bottom: 10px !important;
    }

    #text-separator-testimonials .sectionIntro h1 {
        margin-top: 0 !important;
        margin-bottom: 6px !important;
    }

    #text-separator-testimonials .sectionIntro h5 {
        margin-top: 0 !important;
        margin-bottom: 8px !important;
    }

    #text-separator-testimonials .verticallineSeparator {
        height: 38px !important;
        margin-top: 12px !important;
        margin-bottom: 14px !important;
    }

    #text-separator-testimonials .sectionIntro p {
        margin-bottom: 8px !important;
    }

    #text-separator-testimonials .review {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        padding-left: 22px !important;
        padding-right: 22px !important;
    }

    #text-separator-testimonials .review p {
        margin-top: 0 !important;
        margin-bottom: 8px !important;
    }

    #text-separator-testimonials .review br {
        display: none !important;
    }

    #text-separator-testimonials .review h4 {
        margin-top: 18px !important;
        margin-bottom: 8px !important;
    }

    #text-separator-testimonials .owl-carousel,
    #text-separator-testimonials .owl-wrapper-outer,
    #text-separator-testimonials .owl-wrapper,
    #text-separator-testimonials .owl-item {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
/*<!--Contact -->*/
/*<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->*/
#contactIntro {
    position: relative;
    background-image: url("img/cooper-hemingway.webp");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
#contactContent{
    background: white;
}

#contactContent hr{
    margin-top:80px;
    padding-bottom:30px;
}
#contactContent i{
    font-style:normal;
}

#contactContent .container {
    padding-top: 40px;
    padding-bottom: 45px;
}

#contactContent .btn {
    margin-top: 24px;
    margin-bottom: 20px;
}

.contactInfo1{
    text-align:center;
    margin-top:30px;
    margin-bottom:30px;
}
#contactIntro .sectionIntro h1,#contactIntro .sectionIntro h5,#contactIntro .sectionIntro h5 small {
    color: #ffffff;
}
.contactInfo1 p{
    padding-top:15px;
}
.contactInfo1{
    border-right:1px solid #d5d5d5;
}
.contactInfo1:last-child{
    border:0;
}
.contactInfo1 i{
    font-size:30px;
}
#googleMap {
    width: 100%;
    height: 350px;
    overflow: hidden;
    padding:0px;
}
/* legacy template footer rules removed for custom Idylease footer */
iframe{
    border:0;
}
/*/
featured works*/
#featured-works{
    background:white;
}
@media only screen and (max-width: 767px) {
    #featured-works .container {
        padding-top: 30px !important;
        padding-bottom: 44px !important;
    }
}
.featureWrapper{
    padding:10px;
}
.featureWrapper .caption-heading{
    padding:10px;
}
.dropcap {
    float: left;
    color: inherit;
    font-size: 50px;
    line-height: 40px;
    padding-top: 4px;
    padding-right: 8px;
    padding-left: 3px;
    font-family: 'Lato', sans-serif;
    font-weight: 900;
}
/* ==================================================CUSTOM OVERRIDES - RICHARD ZAMPELLA SITEOrdered by page flow: Intro > Idylease > Manuscript > Films================================================== */
#intro {
    position: relative;
    overflow: hidden;
}
#intro .backstretch {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100% !important;
    z-index: 0;
}
#intro .container {
    position: relative;
    z-index: 2;
}
#intro .black-overlay {
    z-index: 1;
}
#text-separator.tight-section .container-fluid {
    padding-top: 30px !important;
    padding-bottom: 40px !important;
}
.idyleaseImageRow {
    margin-top: 25px;
    margin-bottom: 35px;
}
.idyleaseCompareImage {
    width: 100%;
    display: block;
}
.imageCaption {
    margin-top: 10px;
    font-size: 11px;
    letter-spacing: 2px;
    color: #777;
}
.image-16x9 {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}
.image-16x9 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
@media only screen and (min-width: 768px) {
    .mfp-container.mfp-image-holder img.mfp-img {
        max-height: 76vh !important;
        max-width: 76vw !important;
    }

    .mfp-container.mfp-image-holder .mfp-content {
        max-width: 850px !important;
    }
}
#manuscript {
    background-color: #1f1f22;
    color: #e6e6e6;
    padding: 0;
}
#manuscript .manuscriptTagline {
    font-family: Garamond, "EB Garamond", "Cormorant Garamond", Georgia, serif;
    font-weight: 400;
    font-size: 26px;
    line-height: 1.25;
    letter-spacing: 0;
    text-transform: none;
}
@media only screen and (max-width: 767px) {
    #manuscript .manuscriptTagline {
        font-size: 19px;
        line-height: 1.25;
    }
}
#manuscript .container {
    overflow: visible !important;
    padding-top: 50px;
    padding-bottom: 75px;
}
@media only screen and (max-width: 767px) {
    #manuscript .container {
        padding-bottom: 25px !important;
    }
}
#manuscript .verticallineSeparator {
    background: #d0d0d0;
}
.manuscriptHeader {
    max-width: 760px;
    margin: 0 auto 38px;
}
#manuscript h1.minimal {
    color: #ffffff;
    margin-top: 0;
}
#manuscript h5,#manuscript h5 small {
    color: #ffffff;
}
#manuscript .sectionParagraph {
    color: #d0d0d0;
}
.manuscriptText {
    max-width: 760px;
    margin: 0 auto;
}
.manuscriptText p {
    color: #d0d0d0;
    font-size: 14px;
    line-height: 1.85;
    margin-bottom: 24px;
}
.manuscriptPlate {
    float: right;
    width: 300px;
    max-width: 40%;
    height: auto;
    margin: 5px 0 28px 45px;
}
#films {
    background: white;
}

/* MOBILE — FILM AND TELEVISION SECTION SPACING */
@media only screen and (max-width: 767px) {
    #films .container {
        padding-top: 25px !important;
        padding-bottom: 28px !important;
    }
}
.filmRow {
    margin-top: 40px;
}
.filmItem {
    margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
    #films .filmItem {
        margin-bottom: 18px !important;
    }
}

.filmPoster {
    width: 100%;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    background-color: #eaeaea;
    margin-bottom: 15px;
}

/* Safe fade: images remain visible even if JavaScript fails. */
.manuscriptFade {
    opacity: 1;
}

.filmPoster.is-loaded,
.manuscriptFade.is-loaded {
    opacity: 1;
}

@media only screen and (max-width: 767px) {
    .manuscriptPlate {
        float: none;
        display: block;
        max-width: 320px;
        width: 100%;
        margin: 0 auto 35px;
    }
}
    /* ==================================================RZ PORTFOLIO SECTION — FINAL================================================== */
    #rz-portfolio {
        background: #fff;
    }
    #rz-portfolio.container {
        overflow: visible !important;
    }
    #rz-portfolio {
        padding-bottom: 40px;
    }
    #rz-portfolio .rz-portfolio-item {
        margin-bottom: 30px;
    }
    #rz-portfolio .rz-portfolio-link {
        display: block;
        text-decoration: none;
        outline: none;
    }
    #rz-portfolio .rz-portfolio-img {
        width: 100%;
        aspect-ratio: 754 / 594;
        /* matches the Cooper & Hemingway image */
        overflow: hidden;
        background: transparent;
    }
    #rz-portfolio .rz-portfolio-link:hover img,#rz-portfolio .rz-portfolio-link:focus img {
        transform: none !important;
        opacity: 1 !important;
        filter: none !important;
    }
    #rz-portfolio .rz-divider-arrow {
        margin: 20px 0 40px;
        text-align: center;
    }
    #rz-portfolio .rz-divider-arrow span {
        font-size: 28px;
        line-height: 1;
        color: #999;
        display: inline-block;
    }
    /* ==========================================RZ PORTFOLIO — HARD FIX (OVERRIDES THEME)========================================== */
    #rz-portfolio .rz-portfolio-img {
        width: 100%;
        aspect-ratio: 754 / 594;
        overflow: hidden;
        position: relative;
    }
    #rz-portfolio .rz-portfolio-img img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
    /* FORCE RZ PORTFOLIO 3-COLUMN GRID */
    #rz-portfolio .rz-portfolio-row {
        margin-left: -15px;
        margin-right: -15px;
    }
    #rz-portfolio .rz-portfolio-item {
        float: left !important;
        width: 33.333333% !important;
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 40px;
    }
    #rz-portfolio .rz-portfolio-img {
        width: 100%;
        aspect-ratio: 754 / 594;
        position: relative;
        overflow: hidden;
    }
    #rz-portfolio .rz-portfolio-img img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center;
        display: block;
    }
    #rz-portfolio .rz-portfolio-row:after {
        content: "";
        display: table;
        clear: both;
    }
    @media (max-width: 767px) {
        #rz-portfolio .rz-portfolio-item {
            width: 100% !important;
            float: none !important;
        }
    }
    #rz-portfolio .rz-portfolio-img img {
        transition: transform 6s ease;
    }
    #rz-portfolio .rz-portfolio-link:hover img {
        transform: scale(1.05);
    }
    #rz-portfolio .rz-portfolio-img {
        box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    }
    #rz-portfolio .sectionIntro {
        margin-bottom: 50px;
    }
    #rz-portfolio .rz-portfolio-item {
        margin-bottom: 25px;
    }
    #rz-portfolio .rz-portfolio-img img {
        filter: contrast(1.02) saturate(0.98);
    }
    /* DIM OVERLAY */
    #rz-portfolio .rz-portfolio-img {
        position: relative;
    }
    #rz-portfolio .rz-portfolio-overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.25);
        /* ← HERE */
        opacity: 0;
        transition: opacity 0.6s ease;
        /* ← HERE */
    }
    /* HOVER TRIGGER */
    #rz-portfolio .rz-portfolio-link:hover .rz-portfolio-overlay {
        opacity: 1;
    }
    /* ==================================================RZ VIDEO PARALLAXBackground prepared with overlay baked into image================================================== */
    #rz-video-parallax {
        position: relative;
        min-height: 520px;
        background-image: url("video/video-parallax-bg.webp");
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        background-attachment: fixed;
        overflow: hidden;
    }
    #rz-video-parallax .black-overlay {
        display: none;
    }
    #rz-video-parallax .container {
        position: relative;
        z-index: 2;
        overflow: visible !important;
        padding-top: 30px;
        padding-bottom: 15px;
    }
    #rz-video-parallax h1,#rz-video-parallax p,#rz-video-parallax .sectionParagraph {
        color: #fff !important;
    }
    #rz-video-parallax .verticallineSeparator {
        background: rgba(255,255,255,0.65) !important;
    }
    #rz-video-parallax .rz-video-title,#rz-video-parallax .rz-video-separator,#rz-video-parallax .rz-video-sub {
        opacity: 1 !important;
    }
    #rz-video-parallax .rz-video-item {
        margin-bottom: 30px;
    }
    #rz-video-parallax .rz-video-thumb {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        overflow: hidden;
        background: #000;
    }
    #rz-video-parallax .rz-video-thumb img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block;
        transition: transform 5s ease;
    }
    #rz-video-parallax .rz-video-popup:hover img {
        transform: scale(1.05);
    }
    #rz-video-parallax .rz-video-overlay {
        position: absolute;
        inset: 0;
        background: rgba(0,0,0,0.18);
        transition: background 0.5s ease;
    }
    #rz-video-parallax .rz-video-popup:hover .rz-video-overlay {
        background: rgba(0,0,0,0.34);
    }
    #rz-video-parallax .rz-play-icon {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 34px;
        color: #fff;
        line-height: 1;
    }
    @media (max-width: 767px) {
        #rz-video-parallax {
            background-attachment: scroll;
        }
    }
    /* Keep navbar readable over dark/parallax sections */
    .navbar-default,.navbar-default.affix,.navbar-default.affix-top {
        position: fixed !important;
        top: 0 !important;
        left: 0;
        right: 0;
        z-index: 99999 !important;
        -webkit-transition: none !important;
        transition: none !important;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    .navbar-default.affix {
        background-color: #fff !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
    .navbar-default.affix .navbar-brand,.navbar-default.affix .navbar-nav > li > a {
        color: #282828 !important;
    }
    /* ==========================================VIDEO MODAL — MAGNIFIC POPUPConsolidated compatibility block========================================== */
    .mfp-video-wrapper {
        width: 100%;
        background: #000;
        box-shadow: 0 20px 60px rgba(0,0,0,0.6);
    }
    .mfp-video-wrapper video {
        width: 100%;
        height: auto;
        display: block;
    }
.mfp-bg {
    z-index: 100000 !important;
    background: rgba(0,0,0,0.90) !important;
}

.mfp-wrap {
    z-index: 100001 !important;
}
    .mfp-close {
        position: absolute !important;
        top: -40px !important;
        right: 0 !important;
        font-size: 32px !important;
        color: #ffffff !important;
        opacity: 1 !important;
        z-index: 99999 !important;
        display: block !important;
    }
    .mfp-close:hover {
        opacity: 0.7;
    }

/* =========================================
   IDYLEASE FOOTER — CLEAN FINAL VERSION
========================================= */

#footer.footer-idylease {
    position: relative;
    overflow: hidden;
    background: #111;
    color: #fff;
}

#footer.footer-idylease::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url("img/idylease/footer.webp");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 0;
}

#footer.footer-idylease .footerTop,
#footer.footer-idylease .footer-baseline {
    position: relative;
    z-index: 2;
}

#footer.footer-idylease .footerTop {
    padding: 2px 0 2px;
}

#footer.footer-idylease .footerContainer,
#footer.footer-idylease .footer-baseline-inner {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 60px;
}

/* =========================================
   MAIN FOOTER GRID
========================================= */

#footer.footer-idylease .footerGrid {
    display: grid;
    grid-template-columns: minmax(0, 700px) 330px;
    column-gap: 100px;
    align-items: start;
}

#footer.footer-idylease .footerPrimary,
#footer.footer-idylease .footerSecondary {
    margin: 0;
    padding: 0;
}

#footer.footer-idylease .footerPrimary {
    padding-top: 51px;
}

#footer.footer-idylease .footerSecondary {
    padding-top: 42px;
}

#footer.footer-idylease .footerLogo {
    display: block;
    height: auto;
    margin-top: 0;
}

#footer.footer-idylease .footerTransLogo {
    width: 75px;
    margin-bottom: 44px;
}

#footer.footer-idylease .footerIdyleaseLogo {
    width: 165px;
    margin-bottom: 36px;
}

#footer.footer-idylease p,
#footer.footer-idylease h3,
#footer.footer-idylease h4 {
    margin-top: 0;
}

/* =========================================
   PRIMARY FOOTER TEXT
========================================= */

#footer.footer-idylease .footer-kicker {
    margin-bottom: 12px;
    font-family: "Raleway", sans-serif;
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.26em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.70);
}

#footer.footer-idylease .footerPrimary h3 {
    margin-bottom: 14px;
    font-family: "Cormorant Garamond", "Old Standard TT", serif;
    font-size: 38px;
    font-weight: 400;
    line-height: 1.08;
    letter-spacing: -0.01em;
    white-space: nowrap;
    color: rgba(255,255,255,0.92);
}

#footer.footer-idylease .footerText {
    max-width: 660px;
    margin-bottom: 0;
    font-family: "Raleway", sans-serif;
    font-size: 15px;
    font-weight: 300;
    line-height: 1.58;
    color: rgba(255,255,255,0.74);
}

#footer.footer-idylease .footer-signature {
    margin: 25px 0 0;
    font-family: "Raleway", sans-serif;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.34);
}

#footer.footer-idylease .footer-signature a {
    display: inline-block;
    padding: 11px 2px;
    color: rgba(255,255,255,0.62);
    text-decoration: none;
}

#footer.footer-idylease .footer-signature a:hover {
    color: rgba(255,255,255,0.86);
}

/* =========================================
   SECONDARY FOOTER TEXT
========================================= */

#footer.footer-idylease .footerSecondary h4 {
    margin-bottom: 0;
    font-family: "Raleway", sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.88);
}

#footer.footer-idylease .lineSeparator {
    width: 90px;
    height: 1px;
    margin: 16px 0 22px;
    background: rgba(255,255,255,0.35);
}

#footer.footer-idylease .footerSecondary p,
#footer.footer-idylease .footerSecondary a {
    font-family: "Raleway", sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.7;
    color: rgba(255,255,255,0.70);
    text-decoration: none;
}

#footer.footer-idylease .footerSecondary p {
    margin-bottom: 0;
}

#footer.footer-idylease .footerSecondary a:hover {
    color: rgba(255,255,255,0.92);
}

/* =========================================
   SOCIAL LINKS
========================================= */

#footer.footer-idylease .footer-social {
    margin-top: 22px;
}

#footer.footer-idylease .footer-social span {
    display: block;
    margin-bottom: 12px;
    font-family: "Raleway", sans-serif;
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.30em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.42);
}

#footer.footer-idylease .footer-social a {
    display: inline-block;
    margin-right: 16px;
    font-size: 15px;
    line-height: 1;
    color: rgba(255,255,255,0.56);
    text-decoration: none;
}

#footer.footer-idylease .footer-social a:hover {
    color: rgba(255,255,255,0.90);
}

/* =========================================
   FOOTER BASELINE
========================================= */

#footer.footer-idylease .footer-baseline {
    padding: 17px 0 20px;
}

#footer.footer-idylease .footer-baseline::before {
    content: "";
    display: block;
    height: 1px;
    margin-bottom: 13px;
    background: rgba(255,255,255,0.15);
}

#footer.footer-idylease .footer-baseline-inner {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 34px;
}

#footer.footer-idylease .footer-copyright,
#footer.footer-idylease .footer-link,
#footer.footer-idylease .footer-bottom-link {
    display: inline-flex;
    align-items: baseline;
    margin: 0;
    padding: 0;
    font-family: "Raleway", sans-serif;
    font-size: 10.5px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.45);
    text-decoration: none;
}

#footer.footer-idylease .footer-link:hover,
#footer.footer-idylease .footer-bottom-link:hover {
    color: rgba(255,255,255,0.75);
}

/* =========================================
   RESPONSIVE FOOTER
========================================= */

@media only screen and (max-width: 900px) {

    #footer.footer-idylease .footerTop {
        padding: 48px 0 34px;
    }

    #footer.footer-idylease .footerContainer,
    #footer.footer-idylease .footer-baseline-inner {
        padding: 0 34px;
    }

    #footer.footer-idylease .footerGrid {
        grid-template-columns: 1fr;
        row-gap: 42px;
    }

    #footer.footer-idylease .footerPrimary,
    #footer.footer-idylease .footerSecondary {
        padding-top: 0;
    }

    #footer.footer-idylease .footerPrimary h3 {
        white-space: normal;
        font-size: 25px;
    }

    #footer.footer-idylease .footer-baseline {
        padding: 16px 0 18px;
    }

    #footer.footer-idylease .footer-baseline-inner {
        justify-content: center;
        align-items: baseline;
        gap: 24px;
        max-width: 1220px;
    }

    #footer.footer-idylease .footer-copyright,
    #footer.footer-idylease .footer-link,
    #footer.footer-idylease .footer-bottom-link {
        font-size: 10px;
        line-height: 1;
        letter-spacing: 0.18em;
    }
}

@media only screen and (max-width: 560px) {

    #footer.footer-idylease .footerContainer,
    #footer.footer-idylease .footer-baseline-inner {
        padding: 0 26px;
    }

    #footer.footer-idylease .footer-baseline-inner {
        flex-direction: column;
        align-items: center;
        gap: 10px;
        text-align: center;
    }

    #footer.footer-idylease .footer-copyright,
    #footer.footer-idylease .footer-link,
    #footer.footer-idylease .footer-bottom-link {
        justify-content: center;
        font-size: 10px;
        line-height: 1.4;
        letter-spacing: 0.16em;
    }
}
        /* TEAM SLIDER — OWL + VIDEO THUMB CLEANUP */
        #team .teamImageWrapper {
            position: relative;
            height: 500px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        #team .teamImageWrapper .team-image {
            position: relative;
            bottom: auto;
            left: auto;
            width: 100%;
        }

        #team .rz-team-video-thumb {
            position: relative;
            width: 100%;
            max-width: 520px;
            margin: 0 auto;
            overflow: hidden;
            background: #000;
            aspect-ratio: 16 / 9;
        }

        #team .rz-team-video-thumb img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        #team .rz-team-video-thumb .rz-video-overlay {
            position: absolute;
            inset: 0;
            background: transparent;
        }

        #team .rz-team-video-thumb .rz-play-icon {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            font-size: 34px;
            color: #fff;
            z-index: 3;
        }

        #team .allIconsSocialWrapper {
            text-align: center;
        }

        #team .socialWrapper,
        #team .socialIcon {
            display: inline-block;
        }

        #team .socialWrapper {
            vertical-align: top;
        }

        #team .socialIcon i {
            padding: 15px;
            line-height: normal;
            transform: none !important;
            top: auto !important;
        }

        #team .teamMember {
            opacity: 0;
            transform: translateY(24px);
            transition: opacity 0.9s ease, transform 0.9s ease;
        }

        #team .teamMember.rz-team-visible {
            opacity: 1;
            transform: translateY(0);
        }

        #team .owl-buttons div {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: rgba(0, 0, 0, 0.55);
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background 0.3s ease, opacity 0.3s ease;
        }

        #team .owl-buttons i {
            color: #fff;
            font-size: 20px;
            line-height: 1;
        }

        #team .owl-prev {
            left: -50px;
        }

        #team .owl-next {
            right: -50px;
        }

        #team .owl-buttons div:hover {
            background: rgba(0, 0, 0, 0.75);
        }

/* MOBILE — TEAM SLIDER ARROWS */
@media only screen and (max-width: 767px) {
    #team .owl-prev {
        left: 10px;
    }

    #team .owl-next {
        right: 10px;
    }
}

    #team .rz-team-video-thumb {
        position: relative;
        overflow: hidden;
    }
    #team .rz-video-png {
        position: absolute;
        inset: 0;
        z-index: 5;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
    }
    #team .rz-play-img {
        display: block;
        width: 58px;
        height: auto;
    }
    #team #owl-team,#team #owl-team .owl-wrapper-outer,#team #owl-team .owl-wrapper,#team #owl-team .owl-item,#team .teamMember {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        min-height: 0 !important;
    }
    #team .teamImageWrapper {
        height: 440px !important;
    }
    .footer-copy-mobile {
        display: none;
    }
    @media (max-width: 767px) {
        .footer-copy-desktop {
            display: none;
        }
        .footer-copy-mobile {
            display: block;
            text-align: center;
            white-space: nowrap;
        }
    }
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    /* IDYLEASE STEWARDSHIP SUBSECTION */
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    .idyleaseStewardship {
        margin-top: 5px;
        margin-bottom: 45px;
        clear: both;
    }
    .idyleaseStewardshipIntro {
        margin-bottom: 34px;
    }
    .idyleaseStewardship .lineSeparator {
        width: 80px;
        height: 1px;
        background: #1f1f22;
        margin: 0 auto 34px;
    }
    .stewardshipTitle.editorialTitle {
        margin-top: 0;
        margin-bottom: 20px;
        font-family: Garamond, "EB Garamond", "Cormorant Garamond", Georgia, serif;
        font-size: 30px;
        line-height: 1.35;
        letter-spacing: -1px;
        text-transform: none;
        font-weight: 400;
        font-style: normal;
        opacity: 0.84;
    }
    .stewardshipIntroText {
        max-width: 860px;
        margin: 0 auto;
        font-size: 14px;
        line-height: 1.8;
        font-weight: 300;
        opacity: 0.82;
    }
    .idyleaseStewardshipGrid {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 38px;
        margin: 34px auto 0;
        width: 100%;
        max-width: 1180px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .stewardshipItem {
        flex: 0 0 calc(33.333% - 26px);
        max-width: calc(33.333% - 26px);
        text-align: center;
    }
    .stewardshipItem a {
        display: block;
        overflow: hidden;
    }
    .stewardshipImage {
        width: 100%;
        height: 225px;
        object-fit: cover;
        display: block;
        border: none;
        transition: opacity 0.35s ease, transform 0.35s ease;
    }
    .stewardshipItem a:hover .stewardshipImage {
        opacity: 0.88;
        transform: scale(1.015);
    }
    .stewardshipLabel {
        margin-top: 18px;
        margin-bottom: 0;
        font-size: 11px;
        line-height: 1.4;
        letter-spacing: 3px;
        text-transform: uppercase;
        font-weight: 500;
        opacity: 0.68;
    }
    /* TABLET */
    @media (max-width: 991px) {
        .idyleaseStewardshipGrid {
            gap: 24px;
            max-width: 920px;
        }
        .stewardshipImage {
            height: 205px;
        }
        .stewardshipTitle.editorialTitle {
            font-size: 20px;
        }
    }
    /* MOBILE */
    @media (max-width: 767px) {
        .idyleaseStewardship {
            margin-top: 50px;
            margin-bottom: 35px;
        }
        .idyleaseStewardshipIntro {
            margin-bottom: 28px;
        }
        .idyleaseStewardship .lineSeparator {
            margin-bottom: 28px;
        }
        .stewardshipTitle.editorialTitle {
            font-size: 18px;
            line-height: 1.4;
            letter-spacing: 1px;
            margin-bottom: 16px;
        }
        .stewardshipIntroText {
            font-size: 13px;
            line-height: 1.7;
            padding-left: 12px;
            padding-right: 12px;
        }
        .idyleaseStewardshipGrid {
            display: block;
            max-width: 100%;
            padding-left: 15px;
            padding-right: 15px;
            margin-top: 30px;
        }
        .stewardshipItem {
            max-width: 100%;
            margin-bottom: 34px;
        }
        .stewardshipImage {
            height: auto;
        }
        .stewardshipLabel {
            margin-top: 14px;
            margin-bottom: 0;
        }
    }
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    /* MAGNIFIC POPUP CINEMATIC FADE / ZOOM */
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    .mfp-fade-zoom .mfp-content {
        opacity: 0;
        transform: scale(0.965);
        transition: opacity 0.42s ease, transform 0.42s ease;
    }
    .mfp-fade-zoom.mfp-ready .mfp-content {
        opacity: 1;
        transform: scale(1);
    }
    .mfp-fade-zoom.mfp-removing .mfp-content {
        opacity: 0;
        transform: scale(0.985);
    }
    .mfp-fade-zoom .mfp-bg {
        opacity: 0;
        transition: opacity 0.42s ease;
    }
    .mfp-fade-zoom.mfp-ready .mfp-bg {
        opacity: 0.88;
    }
    .mfp-fade-zoom.mfp-removing .mfp-bg {
        opacity: 0;
    }
    html.mfp-no-jump {
        overflow-y: scroll !important;
    }
    .mfp-wrap {
        overflow-x: hidden !important;
    }
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    /* MAGNIFIC POPUP BACKGROUND FADE */
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    .mfp-fade-zoom.mfp-bg {
        opacity: 0;
        transition: opacity 0.42s ease;
        background: #0f0f10;
    }
    .mfp-fade-zoom.mfp-ready.mfp-bg {
        opacity: 0.88;
    }
    .mfp-fade-zoom.mfp-removing.mfp-bg {
        opacity: 0;
    }
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    /* RAINBOW ROOM EDITORIAL INSERT */
    /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    .hospitalityEditorialInsert {
        display: flex;
        align-items: center;
        gap: 58px;
        max-width: 1120px;
        margin: 70px auto 20px;
        padding: 0 15px;
    }
    .hospitalityEditorialInsertImage {
        flex: 0 0 52%;
    }
    .hospitalityEditorialInsertImage img {
        width: 100%;
        height: auto;
        display: block;
        filter: saturate(0.9) contrast(1.04);
    }
    .hospitalityEditorialCaption {
        margin-top: 14px;
        font-size: 11px !important;
        line-height: 1.6 !important;
        letter-spacing: 0.4px;
        color: rgba(255,255,255,0.58) !important;
        text-align: center;
    }
    .hospitalityEditorialInsertText {
        flex: 1;
        text-align: left;
    }
    .hospitalityEditorialNoteTitle {
        margin: 0 0 22px;
        font-family: Garamond, "EB Garamond", "Cormorant Garamond", Georgia, serif;
        font-size: 29px !important;
        line-height: 1.1;
        font-weight: 400;
        font-style: normal;
        letter-spacing: -1px;
        text-transform: none;
        color: rgba(255,255,255,0.9);
    }
    .hospitalityEditorialInsertText p {
        margin-bottom: 17px;
        font-size: 14px !important;
        line-height: 1.85 !important;
        font-weight: 300 !important;
        color: rgba(255,255,255,0.76) !important;
    }
    /* TABLET */
    @media (max-width: 991px) {
        .hospitalityEditorialInsert {
            gap: 38px;
            max-width: 900px;
        }
        .hospitalityEditorialNoteTitle {
            font-size: 24px;
        }
    }
    /* MOBILE */
    @media (max-width: 767px) {
        .hospitalityEditorialInsert {
            display: block;
            margin: 30px auto 10px !important;
            padding: 0;
        }
        
        .hospitalityEditorialInsertImage {
            margin-bottom: 34px;
        }
        
        .hospitalityEditorialCaption {
            text-align: center !important;
            padding-left: 15px;
            padding-right: 15px;
        }
        
        .hospitalityEditorialInsertText {
            text-align: center;
            padding-left: 15px;
            padding-right: 15px;
        }
        
        .hospitalityEditorialNoteTitle {
            font-size: 23px;
            margin-bottom: 20px;
        }
        
        .hospitalityEditorialInsertText p {
            font-size: 13px !important;
            line-height: 1.75 !important;
        }
    }/* TEAM THUMBNAIL LOAD FADE */
    #team .rz-team-video-thumb img,
    #team .teamImageWrapper img {
        opacity: 0;
        transition: opacity 0.55s ease;
    }
    
    #team .rz-team-video-thumb img.is-loaded,
    #team .teamImageWrapper img.is-loaded {
        opacity: 1;
    }
    
    /* TEAM OWL NAVIGATION — CORRECTED POSITION */
    #team .container {
        overflow: visible !important;
    }
    
    #team #owl-team {
        position: relative;
        overflow: visible !important;
    }
    
    #team .owl-controls {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        margin-top: 0;
        pointer-events: none;
    }
    
    #team .owl-buttons {
        display: block !important;
        width: 100%;
        height: 100%;
    }
    
    #team .owl-buttons div {
        position: absolute;
        top: 50%;
        width: 42px;
        height: 42px;
        margin: 0;
        padding: 0;
        border-radius: 50%;
        background: rgba(110, 110, 110, 0.72);
        color: #fff;
        display: flex !important;
        align-items: center;
        justify-content: center;
        opacity: 1;
        z-index: 30;
        transform: translateY(-50%);
        transition: background 0.3s ease, opacity 0.3s ease;
        pointer-events: auto;
    }
    
    #team .owl-buttons div:hover {
        background: rgba(60, 60, 60, 0.9);
    }
    
    #team .owl-buttons i {
        color: #fff;
        font-size: 22px;
        line-height: 1;
    }
    
    /* corrected placement */
    #team .owl-prev {
        left: 16px;
    }
    
    #team .owl-next {
        right: 16px;
    }
    
    @media (max-width: 991px) {
        #team .owl-prev {
            left: 12px;
        }
        
        #team .owl-next {
            right: 12px;
        }
    }
    
    @media (max-width: 767px) {
        #team .owl-buttons div {
            width: 38px;
            height: 38px;
        }
        
        #team .owl-buttons i {
            font-size: 20px;
        }
        
        #team .owl-prev {
            left: 10px;
        }
        
        #team .owl-next {
            right: 10px;
        }
    }
    /* REMOVE WHITE SEAM BETWEEN MAP AND FOOTER */
    #googleMap {
        display: block;
        margin-bottom: -2px;
    }
    
    #footer.footer-idylease {
        position: relative;
        z-index: 5;
        margin-top: -4px;
    }
    
    /* TESTIMONIAL SOURCE / EMPHASIS FIX */
    #text-separator-testimonials .review h4,
    #text-separator-testimonials .review h4 b,
    #text-separator-testimonials .review h4 strong {
        color: #ffffff !important;
        opacity: 1 !important;
    }
    
    #text-separator-testimonials .review p.titulation {
        color: rgba(255,255,255,0.82) !important;
        opacity: 1 !important;
    }
    
    /* TESTIMONIAL HEADER VISIBILITY FIX */
    #text-separator-testimonials .sectionIntro h1,
    #text-separator-testimonials .sectionIntro h1.minimal,
    #text-separator-testimonials .sectionIntro h5,
    #text-separator-testimonials .sectionIntro h5 small {
        color: #ffffff !important;
        opacity: 1 !important;
    }
    
    /* MOBILE HERO REFRAME — SIMPLE BACKSTRETCH SHIFT */
    @media only screen and (max-width: 767px) {
        #intro .backstretch img {
            left: -40px !important;
        }
    }
    /* MOBILE — FIX BOOTSTRAP ROW OVERHANG ONLY */
    @media only screen and (max-width: 767px) {
        
        #stewardship > .row,
        #contactContent .row {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }
        
    }
    
    #text-separator {
        position: relative;
        background-color: #000000;
        overflow: hidden;
    }
    
    /* MOBILE — MOVE LIFE OVER TIME DIAGONAL LINE UP */
    @media only screen and (max-width: 767px) {
        #text-separator .inclineLine {
            top: -15px !important;
        }
    }
    
    /* MOBILE — IDYLEASE FOUR CARD IMAGES FULL COLUMN WIDTH */
    @media only screen and (max-width: 767px) {
        
        #featured-works .col-md-3.col-sm-6.col-xs-12 {
            padding-left: 0 !important;
            padding-right: 0 !important;
        }
        
        #featured-works .featureWrapper {
            padding-left: 0 !important;
            padding-right: 0 !important;
        }
        
        #featured-works .caption-heading {
            padding-left: 25px !important;
            padding-right: 25px !important;
        }
        
        #featured-works .image-16x9,
        #featured-works .image-16x9 img,
        #featured-works .galleryImage {
            width: 100% !important;
            max-width: 100% !important;
            display: block !important;
        }
    }
    
    /* MOBILE — STEWARDSHIP HEADING SIZE */
    @media only screen and (max-width: 767px) {
        #stewardship .stewardshipTitle.editorialTitle {
            font-size: 32px !important;
            line-height: 1.25 !important;
            letter-spacing: -1.5px !important;
        }
    }
    /* MOBILE — HOSPITALITY QUOTE IMAGE FRAMING + HEIGHT */
    @media only screen and (max-width: 767px) {
        #hospitality-quote {
            background-attachment: scroll !important;
            background-size: 150% auto !important;
            background-position: center center !important;
            background-repeat: no-repeat !important;
            
            min-height: 280px !important;
            padding-top: 0 !important;
            padding-bottom: 0 !important;
            
            display: flex;
            align-items: center;
        }
        
        #hospitality-quote .container {
            width: 100%;
            padding-top: 0 !important;
            padding-bottom: 0 !important;
        }
    }
    /* MOBILE — OWL VIDEO SLIDER COMPACT HEIGHT */
    @media only screen and (max-width: 767px) {
        
        #team .container {
            padding-top: 0 !important;
            padding-bottom: 20px !important;
        }
        
        #team .teamMember {
            padding-top: 0 !important;
            margin-top: 0 !important;
        }
        
        #team .teamImageWrapper {
            height: auto !important;
            min-height: 0 !important;
            padding-top: 0 !important;
            padding-bottom: 0 !important;
            margin-top: 32px !important;
            margin-bottom: 8px !important;
            display: block !important;
        }
        
        #team .team-image {
            width: 100% !important;
            padding-top: 0 !important;
            margin-top: 0 !important;
        }
        
        #team .rz-team-video-thumb {
            margin-top: 0 !important;
            margin-bottom: 0 !important;
        }
        
        #team .memberDescription,
        #team .memberParagraph {
            margin-top: 0 !important;
            padding-top: 0 !important;
        }
        
        #team .owl-wrapper-outer,
        #team .owl-wrapper,
        #team .owl-item {
            padding-top: 0 !important;
            padding-bottom: 0 !important;
            margin-top: 0 !important;
            margin-bottom: 0 !important;
        }
    }
/* ==================================================
   IMAGES THAT MOVE — SELF-CONTAINED GRID VERSION
   No Bootstrap columns. No stacked tablet conflict.
================================================== */

.imagesMoveSection {
    position: relative;
    background: #f8f2ea;
    padding: 40px 0 0;
    overflow: hidden;
    z-index: 2;
}

.imagesMoveContainer {
    position: relative;
    overflow: visible !important;
}
/* ==================================================
   IMAGES THAT MOVE / CONTACT NAV LANDING
================================================== */

#images-that-move {
    position: relative;
    padding-top: 90px;
    margin-top: -90px;
}

/* ==================================================
   INTRO
================================================== */

.imagesMoveIntro {
    margin-bottom: 22px;
}

.imagesMoveIntro h1 {
    margin: 0 0 8px;
    color: rgba(0,0,0,0.86);
    font-family: Garamond, "Adobe Garamond Pro", "EB Garamond", Georgia, serif;
    font-size: 49px;
    line-height: 0.98;
    font-weight: 300;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.imagesMoveIntro h5 {
    margin: 0;
}

.imagesMoveIntro h5 small {
    color: rgba(0,0,0,0.48);
    font-family: 'Raleway', sans-serif;
    font-size: 13px;
    line-height: 1.6;
    letter-spacing: 0.22em;
    font-weight: 500;
    text-transform: uppercase;
}

.imagesMoveIntro .verticallineSeparator {
    width: 1px;
    height: 38px;
    margin-top: 18px;
    margin-bottom: 20px;
    background: rgba(146,105,56,0.62);
}

.imagesMoveHeaderText {
    max-width: 700px;
    margin: 18px auto 22px;
    font-family: 'Raleway', sans-serif;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 300;
    letter-spacing: 0.04em;
    color: rgba(0,0,0,0.58);
    text-align: center;
}

/* ==================================================
   DIVIDER
================================================== */

.imagesMoveDivider {
    position: relative;
    height: 20px;
    margin: 0 0 38px;
    text-align: center;
}

.imagesMoveDivider:before,
.imagesMoveDivider:after {
    content: "";
    position: absolute;
    top: 10px;
    width: calc(50% - 34px);
    height: 1px;
    background: rgba(146,105,56,0.36);
}

.imagesMoveDivider:before {
    left: 0;
}

.imagesMoveDivider:after {
    right: 0;
}

.imagesMoveDividerMark {
    display: inline-block;
    position: relative;
    top: -1px;
    font-family: Georgia, serif;
    font-size: 16px;
    line-height: 20px;
    color: rgba(146,105,56,0.82);
}

/* ==================================================
   TOP RAIL
================================================== */

.imagesMoveTopRail {
    margin: 0 0 30px;
    text-align: left;
    font-family: 'Raleway', sans-serif;
    font-size: 9px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(0,0,0,0.62);
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
}

.imagesMoveTopRail a {
    color: rgba(0,0,0,0.66);
    text-decoration: none;
    white-space: nowrap;
}

.imagesMoveTopRail a:hover {
    color: #111;
}

.imagesMoveTopRail span {
    display: inline-block;
    margin: 0 7px;
    color: rgba(146,105,56,0.72);
    white-space: nowrap;
}

/* ==================================================
   GRID STRUCTURE
================================================== */

.imagesMoveGrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    gap: 26px;
    align-items: start;
    position: relative;
    overflow: visible;
}

.imagesMoveLeftColumn,
.imagesMoveRightColumn {
    position: relative;
    min-width: 0;
    overflow: visible;
}

.imagesMoveRightColumn {
    border-left: 1px solid rgba(0,0,0,0.16);
    padding-left: 18px;
    z-index: 20;
}

/* ==================================================
   COLLAGE FIELD — RESPONSIVE CANVAS
================================================== */

.imagesMoveEditorialField {
    position: relative;
    width: 100%;
    aspect-ratio: 760 / 660;
    min-height: 560px;
    overflow: visible;
}

.imagesMoveVisualField {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    z-index: 2;
}

/* ==================================================
   TEXT BLOCK
================================================== */

.imagesMoveArticle {
    position: absolute;
    top: 0;
    left: 0;
    width: 43.4%;
    z-index: 10;
}

.imagesMoveTitle {
    margin: 0 0 14px;
    font-family: Garamond, "Adobe Garamond Pro", "EB Garamond", Georgia, serif;
    font-size: clamp(30px, 3vw, 43px);
    line-height: 0.98;
    font-weight: 400;
    letter-spacing: -0.035em;
    color: rgba(0,0,0,0.88);
    white-space: nowrap;
}

.imagesMoveArticle p {
    max-width: 100%;
    margin: 0;
    font-family: Garamond, "Adobe Garamond Pro", "EB Garamond", Georgia, serif;
    font-size: clamp(12px, 1.08vw, 13.8px);
    line-height: 1.44;
    font-weight: 400;
    color: rgba(0,0,0,0.65);
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

/* ==================================================
   IMAGE BASE
================================================== */

.imagesMovePhoto {
    position: absolute;
    display: block;
    margin: 0;
    overflow: hidden;
    background: #ddd3c5;
    border: 0;
    box-shadow: none;
    z-index: 3;
}

.imagesMovePhoto a,
.imagesMovePhoto img,
.imagesMovePhoto picture {
    display: block;
    width: 100%;
    height: 100%;
}

.imagesMovePhoto img {
    object-fit: cover;
    transition: filter 0.35s ease, opacity 0.35s ease;
}

.imagesMovePhoto,
.imagesMovePhoto:hover,
.imagesMovePhoto img,
.imagesMovePhoto:hover img {
    transform: none !important;
}

.imagesMovePhoto:hover img {
    filter: saturate(0.90) brightness(0.95);
    opacity: 0.98;
}

/* ==================================================
   IMAGE GEOMETRY — PERCENT-BASED
================================================== */

.imagesMovePhotoWTC,
.imagesMovePhotoTopDoc {
    top: 0;
    left: 45.4%;
    width: 54.6%;
    height: 45.5%;
}

.imagesMovePhotoPortrait {
    top: 47.7%;
    left: 0;
    width: 23.7%;
    height: 50.8%;
}

.imagesMovePhotoTea {
    top: 47.7%;
    left: 25.7%;
    width: 28.3%;
    height: 22.0%;
}

.imagesMovePhotoPlaza,
.imagesMovePhotoFoodMill {
    top: 47.7%;
    left: 55.9%;
    width: 44.1%;
    height: 22.0%;
}

.imagesMovePhotoBourbon {
    top: 72.0%;
    left: 25.7%;
    width: 19.1%;
    height: 26.5%;
}

.imagesMovePhotoOscar {
    top: 72.0%;
    left: 46.7%;
    width: 53.3%;
    height: 26.5%;
}

.imagesMovePhotoWTC img,
.imagesMovePhotoTopDoc img,
.imagesMovePhotoPortrait img {
    object-position: center top;
}

.imagesMovePhotoTea img,
.imagesMovePhotoPlaza img,
.imagesMovePhotoFoodMill img,
.imagesMovePhotoBourbon img,
.imagesMovePhotoOscar img {
    object-position: center center;
}

/* ==================================================
   CONTACT PANEL
================================================== */

.imagesMoveFormPanel {
    position: relative;
    min-height: 650px;
    padding: 0;
    border: 1px solid rgba(146,105,56,0.34);
    background: #f8f2ea;
    z-index: 30;
}

.imagesMoveFormPanel:before {
    content: "";
    position: absolute;
    top: 8px;
    right: 8px;
    bottom: 8px;
    left: 8px;
    border: 1px solid rgba(146,105,56,0.17);
    pointer-events: none;
}

.imagesMoveContactIntro {
    position: relative;
    z-index: 2;
    padding: 26px 28px 8px;
}

.imagesMoveOrnament {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 0 0 14px;
}

.imagesMoveOrnament span {
    display: block;
    width: 50px;
    height: 1px;
    background: rgba(146,105,56,0.58);
}

.imagesMoveOrnament i {
    display: block;
    font-style: normal;
    font-size: 16px;
    line-height: 1;
    color: rgba(146,105,56,0.86);
}

.imagesMoveContactIntro h3 {
    margin: 0 0 8px;
    font-family: Garamond, "Adobe Garamond Pro", "EB Garamond", Georgia, serif;
    font-size: 30px;
    line-height: 0.96;
    font-weight: 400;
    color: rgba(0,0,0,0.88);
}

.imagesMoveContactIntro p {
    margin: 0;
    font-family: Garamond, "Adobe Garamond Pro", "EB Garamond", Georgia, serif;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 400;
    color: rgba(0,0,0,0.65);
}

.imagesMoveThirdPartyForm {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
}

.imagesMoveThirdPartyForm iframe,
.imagesMoveThirdPartyForm form,
.imagesMoveThirdPartyForm > div,
.imagesMoveThirdPartyForm .leform-inline {
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* ==================================================
   LEGACY FORM FALLBACK
================================================== */

.imagesMoveContactForm {
    margin-top: 0;
    position: relative;
    z-index: 2;
}

.imagesMoveFieldset {
    border: 0;
    padding: 0;
    margin: 0;
}

.imagesMoveContactForm label {
    display: block;
    width: 100%;
    margin: 0 0 16px;
}

.imagesMoveContactForm input,
.imagesMoveContactForm select,
.imagesMoveContactForm textarea {
    width: 100%;
    margin: 0;
    padding: 13px 14px;
    border: 1px solid rgba(0,0,0,0.14);
    background: rgba(255,255,255,0.16);
    border-radius: 0;
    box-shadow: none;
    outline: none;
    font-family: Garamond, "Adobe Garamond Pro", "EB Garamond", Georgia, serif;
    font-size: 15px;
    line-height: 1.4;
    color: rgba(0,0,0,0.74);
    text-transform: none;
    letter-spacing: 0;
    box-sizing: border-box;
}

.imagesMoveContactForm input,
.imagesMoveContactForm select {
    height: 46px;
}

.imagesMoveContactForm textarea {
    height: 132px;
    resize: vertical;
}

.imagesMoveContactForm input::placeholder,
.imagesMoveContactForm textarea::placeholder {
    color: rgba(0,0,0,0.42);
}

.imagesMoveContactForm input:focus,
.imagesMoveContactForm select:focus,
.imagesMoveContactForm textarea:focus {
    border-color: rgba(146,105,56,0.55);
    background: rgba(255,255,255,0.42);
}

.imagesMoveSubmit {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 18px;
    padding: 14px 18px;
    border: 1px solid rgba(146,105,56,0.72);
    background: transparent;
    font-family: 'Raleway', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgba(146,105,56,0.88);
    cursor: pointer;
    transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
    box-sizing: border-box;
}

.imagesMoveSubmit:hover {
    background: rgba(146,105,56,0.08);
    border-color: rgba(146,105,56,0.9);
    color: rgba(0,0,0,0.82);
}

.imagesMoveSubmit i {
    display: none;
}

/* ==================================================
   BOTTOM RULE
================================================== */

.imagesMoveBottomRule {
    clear: both;
    height: 1px;
    margin: 24px 15px 0;
    background: rgba(0,0,0,0.14);
}

/* ==================================================
   MEDIUM WINDOWS
================================================== */

@media only screen and (max-width: 1100px) {

    .imagesMoveGrid {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
        gap: 22px;
    }

    .imagesMoveRightColumn {
        padding-left: 16px;
    }

    .imagesMoveEditorialField {
        min-height: 520px;
    }

    .imagesMoveFormPanel {
        min-height: 520px;
    }

    .imagesMoveContactIntro {
        padding: 22px 18px 8px;
    }

    .imagesMoveContactIntro h3 {
        font-size: 27px;
    }

    .imagesMoveContactIntro p {
        font-size: 14px;
        line-height: 1.36;
    }
}

/* ==================================================
   SMALL WINDOWS — STILL SIDE BY SIDE
================================================== */

@media only screen and (min-width: 700px) and (max-width: 899px) {

    .imagesMoveGrid {
        grid-template-columns: minmax(0, 1fr) 285px;
        gap: 18px;
    }

    .imagesMoveTopRail {
        font-size: 8px;
        letter-spacing: 0.10em;
    }

    .imagesMoveEditorialField {
        min-height: 500px;
    }

    .imagesMoveTitle {
        font-size: 28px;
    }

    .imagesMoveArticle p {
        font-size: 11.5px;
        line-height: 1.36;
    }

    .imagesMoveFormPanel {
        min-height: 500px;
    }

    .imagesMoveContactIntro {
        padding: 20px 16px 8px;
    }

    .imagesMoveContactIntro h3 {
        font-size: 25px;
    }

    .imagesMoveContactIntro p {
        font-size: 13px;
        line-height: 1.32;
    }
}

/* ==================================================
   TRUE MOBILE — STACKED
================================================== */

@media only screen and (max-width: 699px) {

    .imagesMoveSection {
        padding: 6px 0 9px;
        overflow: visible !important;
    }

    .imagesMoveIntro {
        margin-bottom: 28px;
    }

    .imagesMoveIntro h1 {
        font-size: 38px;
        letter-spacing: 0.035em;
        line-height: 1.08;
    }

    .imagesMoveHeaderText {
        font-size: 15px;
        line-height: 1.65;
        margin: 16px auto 20px;
        padding: 0 12px;
    }

    .imagesMoveTopRail {
        font-size: 10px;
        letter-spacing: 0.16em;
        line-height: 2;
        margin-bottom: 30px;
        text-align: center;
        white-space: normal;
        overflow: visible;
    }

    .imagesMoveTopRail span {
        margin: 0 7px;
    }

    .imagesMoveGrid {
        display: block;
    }

    .imagesMoveRightColumn {
        border-left: 0;
        padding-left: 15px;
    }

    .imagesMoveEditorialField {
        width: 100%;
        min-height: auto;
        aspect-ratio: auto;
        margin: 0 auto;
    }

    .imagesMoveArticle,
    .imagesMoveVisualField {
        position: relative;
        inset: auto;
        width: 100%;
        height: auto;
    }

    .imagesMoveArticle {
        margin: 0 auto 28px;
    }

    .imagesMoveTitle {
        font-size: 29px;
        text-align: center;
        line-height: 1.05;
        letter-spacing: -0.025em;
        white-space: normal;
    }

    .imagesMoveArticle p {
        max-width: 100%;
        font-size: 14px;
        line-height: 1.72;
        text-align: left;
    }

    .imagesMovePhoto {
        position: relative;
        top: auto;
        left: auto;
        width: 100%;
        height: auto;
        margin: 0 auto 18px;
        box-shadow: 0 10px 24px rgba(0,0,0,0.10);
    }

    .imagesMovePhoto a,
    .imagesMovePhoto a img,
    .imagesMovePhoto img,
    .imagesMovePhoto picture {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .imagesMoveFormPanel {
        margin-top: 30px;
        max-width: none;
        min-height: auto;
        padding: 30px 26px 34px;
    }

    .imagesMoveFormPanel h3,
    .imagesMoveFormPanel p {
        text-align: center;
    }
}

/* ==================================================
   MAGNIFIC IMAGE MODAL — GLOBAL CLEANUP
================================================== */

.mfp-title,
.mfp-counter {
    display: none !important;
}

/* ==================================================
   MOBILE PORTRAIT — EDGE-TO-EDGE WIDTH, NOT FULLSCREEN
   Magnific Popup image modal
================================================== */

@media only screen and (max-width: 767px) and (orientation: portrait) {

    .mfp-bg {
        opacity: 0.94 !important;
    }

    body .mfp-wrap {
        width: 100vw !important;
        max-width: 100vw !important;
        overflow: hidden !important;
    }

    body .mfp-wrap .mfp-container,
    body .mfp-wrap .mfp-container.mfp-image-holder {
        width: 100vw !important;
        max-width: 100vw !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }

    body .mfp-wrap .mfp-container.mfp-image-holder .mfp-content,
    body .mfp-wrap .mfp-content {
        width: 100vw !important;
        max-width: 100vw !important;
        height: auto !important;
        max-height: none !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }

    body .mfp-wrap .mfp-container.mfp-image-holder .mfp-figure,
    body .mfp-wrap .mfp-figure {
        width: 100vw !important;
        max-width: 100vw !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }

    body .mfp-wrap .mfp-figure:after {
        display: none !important;
    }

    body .mfp-wrap .mfp-container.mfp-image-holder img.mfp-img,
    body .mfp-wrap img.mfp-img,
    img.mfp-img {
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 100vw !important;
        height: auto !important;
        max-height: 88vh !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
        object-fit: contain !important;
    }

    body .mfp-wrap .mfp-bottom-bar,
    body .mfp-wrap .mfp-title,
    body .mfp-wrap .mfp-counter {
        display: none !important;
    }

    body .mfp-wrap .mfp-close {
        position: fixed !important;
        top: 12px !important;
        right: 14px !important;
        width: 44px !important;
        height: 44px !important;
        line-height: 44px !important;
        font-size: 36px !important;
        color: #fff !important;
        opacity: 0.95 !important;
        z-index: 99999 !important;
    }
}

/* ==================================================
   MOBILE LANDSCAPE — FULLSCREEN IMAGE MODAL
   Magnific Popup image modal
================================================== */

@media only screen and (max-width: 767px) and (orientation: landscape) {

    html.mfp-open,
    body.mfp-open {
        overflow: hidden !important;
        height: 100% !important;
    }

    .mfp-bg {
        opacity: 0.98 !important;
        background: #000 !important;
    }

    body .mfp-wrap {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        overflow: hidden !important;
    }

    body .mfp-wrap .mfp-container,
    body .mfp-wrap .mfp-container.mfp-image-holder {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        max-width: 100vw !important;
        max-height: 100vh !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }

    body .mfp-wrap .mfp-container.mfp-image-holder .mfp-content,
    body .mfp-wrap .mfp-content {
        width: 100vw !important;
        height: 100vh !important;
        max-width: 100vw !important;
        max-height: 100vh !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    body .mfp-wrap .mfp-container.mfp-image-holder .mfp-figure,
    body .mfp-wrap .mfp-figure {
        width: 100vw !important;
        height: 100vh !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    body .mfp-wrap .mfp-figure:after {
        display: none !important;
    }

    body .mfp-wrap .mfp-container.mfp-image-holder img.mfp-img,
    body .mfp-wrap img.mfp-img,
    img.mfp-img {
        width: auto !important;
        max-width: 100vw !important;
        height: auto !important;
        max-height: 100vh !important;
        padding: 0 !important;
        margin: 0 auto !important;
        display: block !important;
        object-fit: contain !important;
    }

    body .mfp-wrap .mfp-bottom-bar,
    body .mfp-wrap .mfp-title,
    body .mfp-wrap .mfp-counter {
        display: none !important;
    }

    body .mfp-wrap .mfp-close {
        position: fixed !important;
        top: 6px !important;
        right: 10px !important;
        width: 44px !important;
        height: 44px !important;
        line-height: 44px !important;
        font-size: 36px !important;
        color: #fff !important;
        opacity: 0.95 !important;
        z-index: 99999 !important;
    }
}
/* ==================================================
   MOBILE HERO OPENING SEQUENCE — CLEAN VERSION
   Opening four elements fade/rise in, then fade out.
   Name and button remain visible.
================================================== */

@media only screen and (max-width: 767px) {

    /* Opening four elements */
    #intro .introLogo,
    #intro .container.valign > .row:first-of-type h5,
    #intro > .container.valign > .verticallineSeparator,
    #intro .introSmallCaption h5 {
        opacity: 0 !important;
        transform: translateY(28px);
        transition:
            opacity 1100ms ease,
            transform 1100ms ease;
        will-change: opacity, transform;
    }

    /* Reveal opening four */
    body.heroOpeningIn #intro .introLogo,
    body.heroOpeningIn #intro .container.valign > .row:first-of-type h5,
    body.heroOpeningIn #intro > .container.valign > .verticallineSeparator,
    body.heroOpeningIn #intro .introSmallCaption h5 {
        opacity: 1 !important;
        transform: translateY(0);
    }

    /* Name and button stay visible */
    #intro .introSmallCaption .customH4,
    #intro .introSmallCaption .btn {
        opacity: 1 !important;
        transform: none !important;
    }
}
/* ==================================================
   MOBILE HERO — FADE OPENING TEXT UP AND OUT
================================================== */

@media only screen and (max-width: 767px) {

    body.heroOpeningOut #intro .introLogo,
    body.heroOpeningOut #intro .container.valign > .row:first-of-type h5,
    body.heroOpeningOut #intro > .container.valign > .verticallineSeparator,
    body.heroOpeningOut #intro .introSmallCaption h5 {
        opacity: 0 !important;
        transform: translateY(-28px);
    }
}
/* ==================================================
   IPAD / TABLET HERO REFRAME
   - Repositions Backstretch hero image
   - Lowers hero content group
   - Scales logo / text / separator / name / button together
================================================== */

@media only screen
and (min-width: 768px)
and (max-width: 1024px)
and (orientation: portrait) {

    /* Background hero image */
    #intro .backstretch img {
        left: -55px !important;
    }

    /* Hero content group */
    #intro .container.valign {
        top: 56% !important;
        transform: translateY(-50%) scale(1.12) !important;
        transform-origin: center center;
    }
}
/* ==================================================
   IPAD / TABLET HERO REFRAME
   - Repositions Backstretch hero image
   - Moves hero content group farther toward bottom
   - Scales logo / text / separator / name / button 40% larger
================================================== */

@media only screen
and (min-width: 768px)
and (max-width: 1024px)
and (orientation: portrait) {

    /* Background hero image */
    

    /* Hero content group */
    #intro .container.valign {
        top: 72% !important;
        transform: translateY(-50%) scale(1.4) !important;
        transform-origin: center center;
    }
}

