/* V20 verified mobile/header/menu fixes. Loaded last on purpose. */
:root{--v20-bronze:#b78a5a;--v20-bronze-light:#d7a867;--v20-header-mobile:72px;--v20-header-desktop:104px}
html,body{width:100%;min-width:0;max-width:none;margin:0;overflow-x:clip;background:#050505}
body>header,body>nav,body>main,body>footer,body>.luxury-close,body>.turnkey-closing{width:100%;max-width:none;min-width:0}
main{display:block!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;clip-path:none!important;inline-size:100%!important;max-inline-size:none!important}
main>section,.turnkey-page main>section,.turnkey-hero,.turnkey-shell,.turnkey-closing{inline-size:100%!important;max-inline-size:none!important;margin-left:0!important;margin-right:0!important;transform-style:flat}

/* One persistent header on every page. */
.site-header{position:fixed!important;inset:0 0 auto 0!important;width:100%!important;height:var(--v20-header-desktop)!important;padding:0 4vw!important;display:flex!important;align-items:center!important;justify-content:space-between!important;z-index:1000!important;opacity:1!important;visibility:visible!important;transform:none!important;background:linear-gradient(180deg,rgba(0,0,0,.76) 0%,rgba(0,0,0,.36) 58%,rgba(0,0,0,0) 100%)!important;border:0!important;box-sizing:border-box!important}
.site-header .brand{display:flex!important;align-items:center!important;gap:15px!important;min-width:0!important;margin:0!important;padding:0!important;opacity:1!important;visibility:visible!important;transform:none!important}
.site-header .brand-monogram{display:block!important;width:78px!important;height:78px!important;object-fit:contain!important;object-position:center!important;background:transparent!important;filter:drop-shadow(0 8px 17px rgba(0,0,0,.74)) drop-shadow(0 3px 11px rgba(183,138,90,.24))!important}
.site-header .brand-divider{display:block!important;width:1px!important;height:57px!important;flex:0 0 1px!important;background:linear-gradient(transparent,var(--v20-bronze),transparent)!important}
.site-header .brand-wordmark{display:flex!important;flex-direction:column!important;align-items:flex-start!important;white-space:nowrap!important;line-height:1!important}
.site-header .brand-wordmark b{font:600 32px/1 'Playfair Display',serif!important;letter-spacing:.12em!important;color:#d5a45f!important}
.site-header .brand-wordmark small{margin-top:8px!important;padding-left:2px!important;font:600 9px/1 Manrope,sans-serif!important;letter-spacing:.47em!important;color:#c79a62!important}

/* A single button owns both hamburger and close states. */
.menu-btn{position:relative!important;z-index:1020!important;flex:0 0 auto!important;width:62px!important;height:62px!important;padding:0!important;border:1px solid rgba(196,145,81,.48)!important;border-radius:50%!important;background:rgba(8,7,6,.42)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;overflow:visible!important;transform:none!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent!important}
.menu-btn::before,.menu-btn::after{content:none!important;display:none!important}
.menu-btn i{display:block!important;position:relative!important;inset:auto!important;width:27px!important;height:2px!important;margin:0!important;border:0!important;border-radius:999px!important;background:var(--v20-bronze-light)!important;opacity:1!important;transform:none!important;transform-origin:center!important;transition:transform .42s cubic-bezier(.2,.8,.2,1),opacity .22s ease,width .32s ease!important}
.menu-btn.open{transform:none!important;background:rgba(10,8,6,.68)!important}
.menu-btn.open i:nth-child(1){width:32px!important;transform:translateY(8px) rotate(36deg)!important}
.menu-btn.open i:nth-child(2){opacity:0!important;transform:scaleX(.05)!important}
.menu-btn.open i:nth-child(3){width:35px!important;transform:translateY(-8px) rotate(-51deg)!important}

/* True viewport overlay. No second logo/header is allowed inside it. */
.menu{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;min-height:100svh!important;max-width:none!important;margin:0!important;padding:var(--v20-header-desktop) 20px 38px!important;z-index:900!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate3d(0,-2%,0) scale(1.015)!important;transition:opacity .38s ease,visibility .38s ease,transform .55s cubic-bezier(.2,.8,.2,1)!important;background:#060504!important;text-align:center!important;isolation:isolate!important}
.menu.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
.menu-brand,.menu-brand-lockup,.menu>.brand,.menu .close{display:none!important}
.menu::before{content:""!important;position:absolute!important;inset:0!important;z-index:-2!important;background:linear-gradient(rgba(0,0,0,.76),rgba(0,0,0,.84)),url("https://images.unsplash.com/photo-1618221195710-dd6b41faaea6?auto=format&fit=crop&w=1200&q=76") center/cover no-repeat!important;transform:scale(1.06)!important;transition:transform 5s ease!important}
.menu.open::before{transform:scale(1.015)!important}
.menu::after{content:""!important;position:absolute!important;inset:0!important;z-index:-1!important;background:radial-gradient(circle at 50% 22%,rgba(183,138,90,.13),transparent 40%)!important;backdrop-filter:blur(2px)!important}
.menu-media{display:none!important}
.menu-links{position:relative!important;z-index:2!important;width:100%!important;max-width:720px!important;margin:0 auto!important;padding:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:clamp(23px,3.2vh,42px)!important}
.menu-links a{display:block!important;width:auto!important;margin:0!important;padding:0 12px 8px!important;font:600 clamp(31px,5vw,58px)/1.08 'Playfair Display',serif!important;letter-spacing:.015em!important;color:#f4efe7!important;opacity:0!important;transform:translateY(18px)!important;transition:opacity .35s ease,transform .46s cubic-bezier(.2,.8,.2,1),color .25s ease!important}
.menu.open .menu-links a{opacity:1!important;transform:none!important}
.menu.open .menu-links a:nth-child(1){transition-delay:.06s!important}.menu.open .menu-links a:nth-child(2){transition-delay:.11s!important}.menu.open .menu-links a:nth-child(3){transition-delay:.16s!important}.menu.open .menu-links a:nth-child(4){transition-delay:.21s!important}.menu.open .menu-links a:nth-child(5){transition-delay:.26s!important}.menu.open .menu-links a:nth-child(6){transition-delay:.31s!important}
.menu-links a::after{left:50%!important;bottom:0!important;transform:translateX(-50%)!important}
.menu-tagline{position:absolute!important;left:50%!important;right:auto!important;bottom:24px!important;width:calc(100% - 40px)!important;margin:0!important;transform:translateX(-50%)!important;text-align:center!important;color:#d7d0c6!important;font:500 14px/1.5 'Playfair Display',serif!important}
.menu-tagline em{color:#c3925f!important}
body.menu-open{overflow:hidden!important;touch-action:none!important}
body.menu-open .site-header{z-index:1000!important}

/* The floating action is unmistakably WhatsApp. */
.floating-whatsapp{position:fixed!important;right:18px!important;bottom:20px!important;z-index:850!important;width:58px!important;height:58px!important;padding:0!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:linear-gradient(145deg,#20180f,#090807)!important;border:1px solid rgba(190,140,78,.78)!important;color:var(--v20-bronze-light)!important;box-shadow:0 12px 34px rgba(0,0,0,.72),0 0 26px rgba(183,138,90,.20)!important;overflow:visible!important}
.floating-whatsapp b{display:none!important}
.floating-whatsapp span{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border:0!important;border-radius:0!important;animation:none!important;box-shadow:none!important}
.floating-whatsapp svg{display:block!important;width:32px!important;height:32px!important;overflow:visible!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.floating-whatsapp::before{content:"";position:absolute;inset:-7px;border:1px solid rgba(183,138,90,.26);border-radius:50%;animation:v20WaPulse 2.6s ease-out infinite}
@keyframes v20WaPulse{0%,35%{transform:scale(.86);opacity:.75}80%,100%{transform:scale(1.18);opacity:0}}

/* Turnkey page must never collapse to a column narrower than the viewport. */
.turnkey-page main,.turnkey-page .turnkey-hero,.turnkey-page .turnkey-shell,.turnkey-page .turnkey-closing{width:100vw!important;max-width:100vw!important;min-width:100vw!important;left:50%!important;right:auto!important;position:relative!important;transform:translateX(-50%)!important}
.turnkey-page .turnkey-hero-bg,.turnkey-page .turnkey-hero-shade{width:100%!important;max-width:none!important}

@media(max-width:800px){
 :root{--v20-header-mobile:72px}
 .site-header{height:var(--v20-header-mobile)!important;padding:0 10px 0 5px!important}
 .site-header .brand{gap:7px!important}
 .site-header .brand-monogram{width:38px!important;height:38px!important}
 .site-header .brand-divider{height:29px!important}
 .site-header .brand-wordmark b{font-size:16px!important;letter-spacing:.075em!important}
 .site-header .brand-wordmark small{font-size:5.5px!important;letter-spacing:.29em!important;margin-top:4px!important}
 .menu-btn{width:46px!important;height:46px!important;gap:5px!important}
 .menu-btn i{width:23px!important;height:1.8px!important}
 .menu-btn.open i:nth-child(1){width:28px!important;transform:translateY(6.8px) rotate(36deg)!important}
 .menu-btn.open i:nth-child(3){width:31px!important;transform:translateY(-6.8px) rotate(-51deg)!important}
 .menu{padding:var(--v20-header-mobile) 18px 56px!important}
 .menu-links{gap:clamp(23px,3.3vh,36px)!important}
 .menu-links a{font-size:clamp(30px,8vw,43px)!important;line-height:1.1!important}
 .menu-tagline{bottom:18px!important;font-size:13px!important}
 .floating-whatsapp{right:14px!important;bottom:17px!important;width:56px!important;height:56px!important}
 .floating-whatsapp svg{width:31px!important;height:31px!important}
 .turnkey-page main,.turnkey-page .turnkey-hero,.turnkey-page .turnkey-shell,.turnkey-page .turnkey-closing{width:100%!important;min-width:100%!important;max-width:100%!important;left:auto!important;transform:none!important}
}
@media(max-height:680px) and (max-width:800px){
 .menu-links{gap:16px!important}
 .menu-links a{font-size:29px!important}
 .menu-tagline{display:none!important}
}
