/* The approved editorial site, with clear, light enquiry surfaces. */
.header-home{display:flex;align-items:center;gap:24px;flex-shrink:0}
.brand{position:relative;z-index:2;min-width:44px;min-height:44px;touch-action:manipulation}
.page-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 0;color:#fff;font-size:14px;text-decoration:none;white-space:nowrap;touch-action:manipulation}
.page-back:hover{color:#9ad8ff}
.home-explore-links{display:flex;flex-wrap:wrap;gap:24px;padding:28px clamp(24px,7vw,120px);background:#edeae4;color:#10468f;font-size:15px}
.home-explore-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px}
.restored-service-link{display:inline-flex;align-items:center;gap:25px;color:#91d3ff;font-size:16px;min-height:48px;margin-top:28px}
.service-pillars .service-pillar b{color:#10468f}
.interior-comparison{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:center;background:#edeae4;color:#15191c}
.interior-comparison h2{font-size:clamp(42px,5vw,72px)}
.interior-comparison p{font-size:17px;line-height:1.7;color:#535c62;max-width:450px}
.interior-comparison figure{margin:0;min-width:0}
.interior-comparison .room-reveal{height:clamp(380px,42vw,650px);min-height:0;margin:0}
.interior-comparison figcaption{font-size:14px;line-height:1.6;color:#505961;padding-top:16px}
.magazine-news-archive{background:#edeae4;color:#171c20;border-top:1px solid #c9c4bb}
.magazine-news-archive>summary{cursor:pointer;padding:30px clamp(24px,7vw,120px);font:400 clamp(24px,3vw,34px)/1.3 var(--serif);display:flex;justify-content:space-between;gap:20px;list-style:none}
.magazine-news-archive>summary::-webkit-details-marker{display:none}
.magazine-news-archive[open]>summary span{transform:rotate(45deg)}
.magazine-news-archive .market-news-desk{border:0}
.magazine-hero-copy>a,.lead-article-copy>a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5}

/* Forms are working surfaces: paper, visible fields, calm spacing and blue action. */
.buyer-brief-panel,.consultation-dialog,.concierge-dialog,.investor-intake{background:#f8f6f1;color:#17232c;color-scheme:light}
.buyer-brief-panel{padding:48px clamp(24px,4vw,62px);opacity:1;transform:none;transition:none;border-inline-start:1px solid #d6d1c6}
.buyer-brief-panel>header{border-top:0;padding-top:0;display:block;margin-bottom:16px}
.buyer-brief-panel header small{display:block;color:#6c562b;font-size:12px;letter-spacing:.1em;margin-bottom:12px}
.buyer-brief-panel header strong{display:block;font-size:clamp(28px,3vw,38px);line-height:1.2;color:#17232c}
.enquiry-intro{color:#56616a;font-size:15px;line-height:1.65;margin:0 0 28px}
.consultation-dialog{max-height:calc(100dvh - 32px);overflow-y:auto;padding:26px 36px 32px;border:1px solid #d4cec3}
.consultation-dialog h2{font-size:clamp(28px,4vw,42px);line-height:1.15;margin-bottom:24px}
.form-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0 0 14px;padding:8px 0;background:transparent;color:#10468f;border:0;font:600 14px var(--sans);cursor:pointer}
.dialog-close{min-height:44px;min-width:44px;top:18px;right:18px}
.buyer-brief-panel label>span,.consultation-dialog label>span,.concierge-dialog label>span{color:#35424c;font-size:14px;text-transform:none;letter-spacing:0;line-height:1.5}
.buyer-brief-panel :is(input,select,textarea):not([type=checkbox]):not([type=hidden]),.consultation-dialog :is(input,select,textarea):not([type=checkbox]):not([type=hidden]){width:100%;min-width:0;border:1px solid #aeb5b9;border-radius:5px;background:#fff;color:#14212b;font:400 16px/1.5 var(--sans);padding:12px 14px;min-height:50px;box-shadow:none;color-scheme:light}
.buyer-brief-panel option,.consultation-dialog option{background:#fff;color:#14212b}
.buyer-brief-panel :is(input,textarea)::placeholder,.consultation-dialog :is(input,textarea)::placeholder{color:#68737b;opacity:1}
.buyer-brief-panel :is(input,select,textarea):focus-visible,.consultation-dialog :is(input,select,textarea):focus-visible{outline:2px solid #1559bc;outline-offset:2px;background:#fff;border-color:#1559bc}
.buyer-brief-panel .buyer-extra summary{color:#10468f}
.buyer-brief-privacy{border-color:#d3d7d9}
.buyer-brief-privacy>span{color:#10468f!important}
.buyer-brief-privacy p,.consultation-dialog>small,.consultation-dialog .form-handoff-note,.concierge-privacy p{color:#56616a;font-size:14px;line-height:1.6}
.buyer-brief-submit{background:#1559bc;color:#fff;border-color:#1559bc;min-height:54px;text-transform:none;font-size:16px;letter-spacing:0;border-radius:5px}
.buyer-brief-submit:hover{background:#10468f;transform:none}
.consultation-dialog .button-primary{border-radius:5px;min-height:52px;white-space:normal;font-size:15px}
.buyer-brief-panel .intake-consent,.consultation-dialog .intake-consent{flex-direction:row;align-items:flex-start}
.intake-consent input[type=checkbox]{min-height:20px;padding:0;margin-top:2px}
.intake-consent span{font-size:14px!important;line-height:1.6;color:#35424c!important;letter-spacing:0!important;text-transform:none!important}
.buyer-brief-panel [hidden],.consultation-dialog [hidden]{display:none!important}
[dir=rtl] .page-back>span:first-child,[dir=rtl] .form-back>span:first-child{transform:scaleX(-1)}
@media(min-width:1280px){.site-header .desktop-nav>a{white-space:normal}}
@media(max-width:1000px){.interior-comparison{grid-template-columns:1fr;gap:28px}.interior-comparison .room-reveal{height:clamp(330px,64vw,560px)}}
@media(max-width:680px){
  .header-home{gap:14px}.page-back{font-size:13px;gap:5px}.header-actions{gap:12px}.site-header{padding-inline:16px}
  .buyer-brief-panel{padding:28px 20px 40px;border-inline-start:0;border-top:1px solid #d6d1c6}.buyer-brief-panel header strong{font-size:29px}
  .buyer-brief-panel form{gap:20px}.buyer-brief-panel .intake-consent{gap:10px}
  .consultation-dialog{width:calc(100% - 24px);padding:20px;max-height:calc(100dvh - 24px)}
  .home-explore-links{display:grid;gap:8px}.interior-comparison{padding:48px 20px}.interior-comparison h2{font-size:40px}
}

/* Keep the opened navigation anchored to the viewport, outside header blur containment. */
body.menu-open .site-header{position:fixed;inset:0 0 auto;height:76px;background:#070809;z-index:1000;backdrop-filter:none;-webkit-backdrop-filter:none;filter:none;transform:none;animation:none;isolation:auto}
body.menu-open .site-header .desktop-nav{position:fixed;inset:76px 0 0;height:calc(100dvh - 76px);max-height:none;background:#070809;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain;padding:32px 24px max(40px,env(safe-area-inset-bottom));gap:20px;transform:none;visibility:visible;z-index:1001}
body.menu-open .site-header .desktop-nav>a{flex-shrink:0;min-height:48px;font-size:clamp(24px,4vw,34px);line-height:1.3;text-align:center}
body.menu-open .menu-toggle{position:relative;z-index:1002;min-width:44px;min-height:44px}
body.menu-open .menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
body.menu-open .menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
