/* Shared DreamView navigation, scoped for both current and legacy page layouts. */
:root{--menu-header-height:94px}
.dv-site-header,.dv-site-header *{box-sizing:border-box}
.dv-site-header{position:fixed;inset:0 0 auto;z-index:1100;min-height:var(--menu-header-height);margin:0;padding:0;background:#022622;border:0;border-bottom:1px solid #d5b77955;color:#f9f8f2;font-family:'Montserrat',Arial,sans-serif;font-weight:400;line-height:1.6}
.dv-site-header .site-header-inner{min-height:var(--menu-header-height);width:min(1480px,calc(100% - 80px));margin:0 auto;padding:0;display:flex;align-items:center;justify-content:space-between;gap:30px}
.dv-site-header a{text-decoration:none;font-weight:400;letter-spacing:normal;text-transform:none;color:inherit}
.dv-site-header .brand{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--menu-header-height);margin:0;padding:0;white-space:nowrap}
.dv-site-header .brand>span{display:block;font:400 28px/1.3 'Cinzel',Georgia,serif;letter-spacing:2.2px;color:#d5b779}
.dv-site-header .brand>small{display:block;font:400 10px/2 'Montserrat',Arial,sans-serif;letter-spacing:2.6px;text-transform:uppercase;color:#e4e8de;margin-top:4px}
.dv-site-header .site-navigation{display:flex;align-items:center;gap:28px;margin:0;padding:0}
.dv-site-header .site-navigation>a{display:inline-block;font-size:14px;line-height:1.6;white-space:nowrap;padding:0}
.dv-site-header .site-navigation>a:hover,.dv-site-header .site-navigation>a[aria-current=page]{color:#d5b779}
.dv-site-header .site-navigation .header-book{display:inline-flex;align-items:center;gap:12px;border:1px solid #c6a364;padding:12px 19px;margin-left:6px;color:#f7eddb}
.dv-site-header .header-book svg{display:block;width:18px;height:18px;flex:none}
.dv-site-header .site-navigation .header-book:hover{background:#c6a364;color:#022622}
.dv-site-header .menu-toggle{display:none;appearance:none;-webkit-appearance:none;background:none;border:0;border-radius:0;box-shadow:none;color:inherit;font:400 14px/1.6 'Montserrat',Arial,sans-serif;letter-spacing:0;text-transform:none;cursor:pointer}
.dv-site-header a:focus-visible,.dv-site-header button:focus-visible{outline:2px solid #d5b779;outline-offset:5px}
.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;z-index:9999;background:#fff;color:#022622}
.skip-link:focus{top:12px}
.dv-legacy-page #main{display:block;padding-top:var(--menu-header-height)}
.dv-legacy-page #main>.banner-header{margin-top:0!important}
.dv-legacy-page .contact p{font-size:16px;line-height:1.75}
.dv-legacy-page .contact-details{margin:20px 0}
.dv-legacy-page .contact-details a,.dv-legacy-page .collection-contact-link{color:#022622;text-decoration:underline;text-underline-offset:4px}
.dv-legacy-page .portfolio-intro{max-width:720px;margin:0 auto 40px;text-align:center;font-size:17px;line-height:1.75}
.dv-breadcrumbs{margin:0 0 20px;color:#e9d9b7;font:400 12px/1.75 'Montserrat',Arial,sans-serif}
.dv-breadcrumbs ol{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin:0;padding:0;list-style:none}
.dv-breadcrumbs li+li:before{content:'/';margin-right:10px;opacity:.65}
.dv-breadcrumbs a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.dv-breadcrumbs [aria-current]{color:#fff}
@media(max-width:1200px){.dv-site-header .site-header-inner{width:calc(100% - 60px)}.dv-site-header .site-navigation{gap:20px}.dv-site-header .brand>span{font-size:25px}}
@media(max-width:1100px){
 :root{--menu-header-height:84px}
 .dv-site-header .site-header-inner{flex-wrap:wrap;gap:0}
 .dv-site-header .brand>span{font-size:25px}
 .dv-site-header .brand>small{font-size:10px;letter-spacing:2px}
 .dv-site-header .menu-toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:10px 0 10px 12px;margin:0}
 .dv-site-header .menu-bars{display:block;position:relative;width:22px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
 .dv-site-header .site-navigation{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:14px 0 25px;max-height:calc(100dvh - var(--menu-header-height));overflow-y:auto;overscroll-behavior:contain}
 .dv-site-header .site-navigation>a{font-size:16px;padding:13px 8px}
 .dv-site-header .site-navigation .header-book{margin:15px 0 0;align-self:flex-start;padding:13px 22px}
 .js-ready .dv-site-header .site-navigation:not(.is-open){display:none}
 .dv-site-header .menu-toggle[aria-expanded=true] .menu-bars{border:0}
 .dv-site-header .menu-toggle[aria-expanded=true] .menu-bars:before,.dv-site-header .menu-toggle[aria-expanded=true] .menu-bars:after{content:'';position:absolute;top:5px;left:0;width:22px;border-top:1px solid currentColor;transform:rotate(45deg)}
 .dv-site-header .menu-toggle[aria-expanded=true] .menu-bars:after{transform:rotate(-45deg)}
}
@media(max-width:760px){:root{--menu-header-height:80px}.dv-site-header .site-header-inner{width:calc(100% - 40px)}.dv-site-header .brand>span{font-size:23px}.dv-site-header .brand>small{font-size:10px;letter-spacing:1.6px}.dv-breadcrumbs{font-size:12px;max-width:100%}.dv-legacy-page .portfolio-intro{margin-bottom:30px;text-align:left}}

/* The same footer on every current page, including the original contact and portfolio layouts. */
.site-footer{background:#011b18;color:#e0e6dc;padding-block:72px 25px;font:400 16px/1.85 'Montserrat',Arial,sans-serif;text-align:left}
.site-footer *{box-sizing:border-box}
.site-footer .wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.site-footer .footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px;background:transparent;padding:0 0 58px}
.site-footer a{text-decoration:none;color:inherit}
.site-footer .brand{display:inline-flex;flex-direction:column;align-items:flex-start;white-space:nowrap}
.site-footer .brand>span{display:block;font:400 32px/1.3 'Cinzel',Georgia,serif;letter-spacing:2.2px;color:#d5b779}
.site-footer .brand>small{display:block;font:400 10px/2 'Montserrat',Arial,sans-serif;letter-spacing:2.6px;text-transform:uppercase;color:#e4e8de;margin-top:4px}
.site-footer .footer-top p{font:400 16px/1.9 'Montserrat',Arial,sans-serif;color:#e0e6dc;margin:24px 0}
.site-footer .resort-family{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#c8b68d}
.site-footer .footer-links{display:flex;align-items:flex-start;flex-direction:column;gap:12px}
.site-footer .footer-links h2{font:500 14px/1.7 'Montserrat',Arial,sans-serif!important;letter-spacing:0!important;text-transform:none;color:#d6bb85;margin:0 0 10px}
.site-footer .footer-links a{font-size:14px;line-height:1.85;letter-spacing:0;font-weight:400}
.site-footer .footer-links a:hover{color:#dcc18e}
.site-footer .footer-links .footer-phone{font:400 28px/1.85 'Playfair Display',Georgia,serif;margin-bottom:6px}
.site-footer .footer-links svg{vertical-align:middle;width:18px;height:18px;margin-left:5px}
.site-footer .footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #fff2;background:transparent;padding:24px 0 0;font-size:12px;color:#bcc9bf}
.site-footer a:focus-visible{outline:2px solid #d5b779;outline-offset:5px}
@media(max-width:1100px){.site-footer .footer-top{gap:40px}}
@media(max-width:760px){.site-footer{padding-top:55px}.site-footer .wrap{width:calc(100% - 40px)}.site-footer .footer-top{grid-template-columns:1fr;gap:35px;padding-bottom:40px}.site-footer .brand>span{font-size:30px}.site-footer .brand>small{font-size:10px;letter-spacing:1.6px}.site-footer .footer-links{gap:11px}.site-footer .footer-links h2{margin-bottom:5px}.site-footer .footer-bottom{display:block;font-size:12px}.site-footer .footer-bottom>a{display:block;margin-top:12px}}
