/* Home page contrast, from the navigation through the contact rail. */
:root{--home-gold:#d4af37;--home-gold-edge:#d4af37;--home-gold-light:#f7e39c;--home-gold-shadow:#9c701e;--home-gold-shine:linear-gradient(165deg,var(--home-gold-light) 0%,var(--home-gold) 48%,var(--home-gold-light) 54%,var(--home-gold-shadow) 100%)}
body.is-home{--home-rail-top:#0b1324;--home-rail-bottom:#030710;--home-ink:#102541;grid-template-rows:76px minmax(0,1fr) auto}
.is-home .preview-bar{display:none}
.is-home .header{background:#080f1e;border-bottom:1px solid var(--home-gold-edge)}
.is-home #navigation a{color:#fff}
.is-home #navigation a:is(.active,[aria-current="page"],:hover){color:var(--home-gold)}
.is-home .header .lang{color:#fff;border-color:var(--home-gold-edge)}
.is-home .header .menu span{background:var(--home-gold)}
.is-home .corporate-hero>.home-hero-video{filter:brightness(1.01) saturate(1.12) contrast(1.09)}
.is-home .corporate-hero.home-position-left::after{background:linear-gradient(90deg,#071b36cc 0%,#071b3685 32%,#071b361a 65%,transparent 82%)}
.is-home .corporate-hero h1{color:#fff;font-weight:700;letter-spacing:-1.1px;line-height:1.08;text-shadow:0 2px 4px #020914,0 5px 16px #0209149c;-webkit-font-smoothing:auto}
.is-home .corporate-hero h1 .gold-serif{color:var(--home-gold);font-weight:700;text-shadow:0 2px 4px #031022,0 0 11px #ffba373b}
.is-home .corporate-eyebrow{font-weight:700;color:#ffebad;letter-spacing:1.8px}
.is-home .corporate-home-actions strong{font-weight:650;font-size:14px;letter-spacing:.15px;color:inherit}
.is-home .corporate-home-actions>a{backdrop-filter:blur(5px);box-shadow:0 5px 16px #030a1938,inset 0 1px 0 #ffffff30;transition:background .18s,border-color .18s}
.is-home .corporate-home-actions>a:first-child{background:var(--home-gold-shine);border-color:var(--home-gold-light);color:#13213a}
.is-home .corporate-home-actions>a:first-child:hover{background:var(--home-gold-shine);filter:brightness(1.08)}
.is-home .corporate-home-actions>a:nth-child(2){background:linear-gradient(145deg,#0b1324dc,#030710d1);border-color:var(--home-gold-edge);color:#fff;text-shadow:0 1px 3px #030710}
.is-home .corporate-home-actions>a:nth-child(2):hover{background:linear-gradient(145deg,#0b1324f5,#030710f5)}
.is-home .corporate-home-actions .home-action-arrow{display:grid;place-items:center;width:25px;height:25px;border:1px solid currentColor;border-radius:50%;color:inherit}
.is-home .home-action-arrow svg{width:14px;height:14px}
.is-home #footer{background:#030710}
.is-home .corporate-strip{background:linear-gradient(180deg,var(--home-rail-top),var(--home-rail-bottom));border-block:1px solid var(--home-gold-edge);padding-block:14px;gap:24px}
.is-home .corporate-channel{position:relative;padding-right:18px;border-right:0}
.is-home .corporate-channel::after{content:'';position:absolute;right:0;top:9%;height:82%;width:1px;background:linear-gradient(transparent,#fff2b5 48%,transparent);box-shadow:0 0 8px 1px #ffcd6288;pointer-events:none}
.is-home .corporate-channel .channel-icon{width:43px;height:43px;background:#091325;color:var(--home-gold);border:1px solid var(--home-gold-edge);box-shadow:none}
.is-home .corporate-channel .channel-icon,.is-home .corporate-socials a{position:relative}
.is-home .corporate-channel .channel-icon::after,.is-home .corporate-socials a::after{content:'';position:absolute;bottom:-5px;left:20%;width:60%;height:7px;background:radial-gradient(ellipse,#fff0b7, #ffcc6277 36%, transparent 75%);pointer-events:none}
.is-home .corporate-channel .channel-icon svg{stroke-width:1.9;width:24px;height:24px}
.is-home .corporate-channel small{font-size:11px;font-weight:700;color:#fff;letter-spacing:.25px;margin-bottom:5px}
.is-home .corporate-channel strong{font-size:15px;font-weight:650;color:#fff;letter-spacing:.2px}
.is-home .corporate-social-group{padding-left:0;border:0}
.is-home .corporate-social-group>small{color:#fff;font-weight:600;font-size:9px;letter-spacing:1px}
.is-home .corporate-socials{gap:12px}
.is-home .corporate-socials a{border:1px solid var(--home-gold-edge);border-radius:50%;width:35px;height:35px;background:#091325;color:#fff;box-shadow:none}
.is-home .corporate-socials svg{width:25px;height:25px;stroke-width:1.85}
.is-home .corporate-socials a[aria-label="Facebook"] svg{fill:currentColor;stroke-width:.5}
.is-home .corporate-socials a:hover{color:#ffe16b;background:#ffffff0d}
.is-home .corporate-channel:hover .channel-icon{color:#08273f;background:#ffe79b}
.is-home .corporate-hero h1.home-classic-heading{font-family:system-ui,sans-serif;font-size:clamp(38px,4.7vw,73px);font-weight:500;letter-spacing:-.03em;line-height:1.08}
.is-home .corporate-hero h1.home-classic-heading .gold-serif{font-family:Georgia,serif;font-size:1.08em;font-weight:600;letter-spacing:-.035em}
@supports (background-clip:text){
 .is-home .corporate-hero h1.home-classic-heading .gold-serif{background:var(--home-gold-shine);background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 2px 3px #030710b0)}
}
.is-home .corporate-eyebrow{color:#fff8e5;letter-spacing:.14em;text-shadow:0 1px 4px #030710,0 0 9px #030710}
.is-home .home-title-end,.is-home .home-motion,.is-home .home-project-film{color:#fff;text-shadow:0 1px 5px #030710,0 0 12px #030710a6}
.is-home .corporate-eyebrow span{background:var(--home-gold-shine);box-shadow:0 0 9px #ffe29580}
@media(max-width:760px){
 body.is-home{grid-template-rows:64px auto auto}
 .is-home .corporate-hero h1.home-classic-heading{font-size:clamp(34px,8.2vw,52px)}
 .is-home .corporate-channel::after{display:none}
 .is-home .corporate-hero.home-position-left::after{background:linear-gradient(90deg,#071b36bf,#071b3666 56%,#071b361a),linear-gradient(0deg,#071b365c,transparent 65%)}
 .is-home .corporate-hero h1{font-weight:700;letter-spacing:-.8px}
 .is-home .corporate-home-actions strong{font-size:13px}
 .is-home .corporate-strip{padding-block:20px;gap:22px 12px}
 .is-home .corporate-channel{padding-right:0;border:0;gap:10px}
 .is-home .corporate-channel .channel-icon{height:34px;width:34px}
 .is-home .corporate-channel .channel-icon svg{height:20px;width:20px}
 .is-home .corporate-channel small{font-size:9px}
 .is-home .corporate-channel strong{font-size:11px;letter-spacing:0}
 .is-home .corporate-socials{gap:10px}
 .is-home .corporate-socials a{width:30px;height:30px}
 .is-home .corporate-socials svg{width:23px;height:23px}
}

.home-classic-heading>span{display:inline-block}
.mobile-channel-label,.mobile-contact-numbers{display:none}
@media(prefers-reduced-motion:no-preference){
 .home-intro-wait .hero-content{opacity:0}
 .home-intro-play .corporate-eyebrow,
 .home-intro-play h1:not(.home-classic-heading),
 .home-intro-play .home-classic-heading>span,
 .home-intro-play .corporate-home-actions>a{animation:home-intro-descend 760ms cubic-bezier(.32,.62,.38,1) both}
 .home-intro-play .corporate-home-actions>a{animation-duration:480ms}
 .home-intro-play .corporate-home-actions>a:first-child{animation-delay:1530ms}
 .home-intro-play .corporate-home-actions>a:nth-child(2){animation-delay:1650ms}
 .home-intro-play h1:not(.home-classic-heading),.home-intro-play .home-classic-heading>.gold-serif{animation-delay:450ms}
 .home-intro-play .home-classic-heading>.home-title-end{animation-delay:900ms}
 .home-intro-wait .hero-content:focus-within{opacity:1}
 .home-intro-play .corporate-home-actions>a:focus-visible{animation:none}
}
@keyframes home-intro-descend{
 from{opacity:0;transform:translateY(-16px)}
 to{opacity:1;transform:translateY(0)}
}
@media(max-width:760px){
 .is-home .corporate-hero .hero-content{width:92%;text-align:center}
 .is-home .corporate-hero.corporate-hero::after{background:radial-gradient(ellipse at 50% 48%,#071827d9 0%,#07182799 36%,transparent 77%),linear-gradient(0deg,#07182791,transparent 32%)}
 .is-home .corporate-hero .corporate-eyebrow{justify-content:center}
 .is-home .corporate-hero h1{margin-inline:auto}
 .is-home .corporate-home-actions{width:min(100%,300px);margin-inline:auto;align-items:stretch}
 .is-home .corporate-home-actions>a{width:100%;min-width:0}
 .is-home .corporate-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 7px;padding:12px 4% max(12px,env(safe-area-inset-bottom))}
 .is-home .corporate-strip .corporate-channel{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:5px 3px;border:1px solid var(--home-gold-edge);border-radius:99px;background:#091325;color:white}
 .is-home .corporate-strip .corporate-channel:nth-child(2){background:var(--home-gold-shine);color:#102541}
 .is-home .corporate-strip .corporate-channel :is(small,strong),.is-home .corporate-social-group>small{display:none}
 .is-home .mobile-channel-label{display:inline;font-size:clamp(11px,3.35vw,15px);font-weight:700;white-space:nowrap}
 .is-home .corporate-strip .channel-icon{width:19px;height:19px;border:0;background:none;color:var(--home-gold);box-shadow:none}
 .is-home .corporate-strip .corporate-channel:nth-child(2) .channel-icon{color:inherit}
 .is-home .corporate-strip .channel-icon::after{display:none}
 .is-home .corporate-strip .channel-icon svg{width:18px;height:18px}
 .is-home .mobile-contact-numbers{grid-column:1/-1;display:flex;justify-content:center;flex-wrap:wrap;gap:4px 16px;color:white;font-size:11px}
 .is-home .corporate-social-group{grid-column:1/-1;justify-self:center}
}

/* The approved home palette carries through the public project and sales templates. */
.project-unified.project-vitrine .project-vitrine-copy h1,
.project-catalogue-hero .project-catalogue-message strong,
.sales-brand-hero .sales-brand-inner h1 span{
 color:var(--home-gold);font-family:Georgia,serif;font-weight:600;letter-spacing:-.035em
}
@supports(background-clip:text){
 .project-unified.project-vitrine .project-vitrine-copy h1,
 .project-catalogue-hero .project-catalogue-message strong,
 .sales-brand-hero .sales-brand-inner h1 span{
  background:var(--home-gold-shine);background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 2px 3px #030710b0)
 }
}
.project-unified.project-vitrine .project-vitrine-copy h1{width:fit-content;max-width:100%}
.project-unified.project-vitrine .project-vitrine-copy p,
.project-catalogue-hero .project-catalogue-message,
.sales-brand-hero .sales-brand-inner h1,
.sales-brand-hero .sales-brand-lead{
 color:#fff;font-family:system-ui,sans-serif;text-shadow:0 2px 5px #030710
}
.project-unified.project-vitrine .project-vitrine-cta{
 background:var(--home-gold-shine);border-color:var(--home-gold-light);border-radius:999px;color:#13213a
}
.project-unified .project-circle-icon{color:var(--home-gold-light);border-color:var(--home-gold-edge)}
.project-unified .unified-nav button{color:#fff}
body.is-unit-detail .mobile-unit-screen .mu-heading h1{font-family:Georgia,serif;letter-spacing:-.025em}
.mobile-unit-screen .mu-heading{border-color:var(--home-gold-edge)}
.mobile-unit-screen .mu-desktop-description,
.mobile-unit-screen .mu-sheetbody p{color:#172b40}
@media(prefers-reduced-motion:no-preference){
 .brand-section-intro:is(.project-vitrine-copy,.project-catalogue-hero-inner,.mu-heading)>*,
 .brand-section-intro.sales-brand-inner>div>*{
  animation:home-intro-descend 760ms cubic-bezier(.32,.62,.38,1) both
 }
 .brand-section-intro:is(.project-vitrine-copy,.project-catalogue-hero-inner,.mu-heading)>:nth-child(2),
 .brand-section-intro.sales-brand-inner>div>:nth-child(2){animation-delay:450ms}
 .brand-section-intro:is(.project-vitrine-copy,.project-catalogue-hero-inner,.mu-heading)>:nth-child(3),
 .brand-section-intro.sales-brand-inner>div>:nth-child(3){animation-delay:900ms}
 .brand-section-intro .project-vitrine-actions:focus-within{animation:none}
}

/* Project photo gallery uses the same navy and metallic gold as the homepage. */
dialog.mp-panel.mp-gallery-panel {
  inset: clamp(14px, 8dvh, 76px) 0 auto;
  margin: 0 auto;
  width: min(92vw, 1100px);
  max-height: 84dvh;
  padding: clamp(18px, 3vw, 30px);
  border: 1px solid #d4af3770;
  border-radius: 18px;
  background: radial-gradient(ellipse at top left, #182945, transparent 72%), #0b1324;
  color: #fff;
  box-shadow: 0 20px 56px #030710a6;
}
dialog.mp-gallery-panel::before { display: none; }
dialog.mp-gallery-panel::backdrop { background: #030710a8; }
dialog.mp-gallery-panel h2 {
  margin: 0 42px 6px 0;
  font: 700 clamp(25px, 4vw, 38px)/1.15 Georgia, serif;
  color: var(--home-gold-light);
}
@supports (background-clip: text) {
  dialog.mp-gallery-panel h2 {
    background: var(--home-gold-shine);
    background-clip: text;
    color: transparent;
    width: fit-content;
  }
}
dialog.mp-gallery-panel .mp-gallery-hint {
  margin: 0 42px 14px 0;
  color: #d7dfed;
}
dialog.mp-gallery-panel .unified-subcategories {
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid #d4af3740;
}
dialog.mp-gallery-panel .unified-subcategories button,
dialog.mp-gallery-panel .unified-close {
  background: #0b1324;
  border: 1px solid #d4af377d;
  color: #f7e39c;
}
dialog.mp-gallery-panel .unified-subcategories button {
  border-radius: 999px;
  min-height: 36px;
  padding-inline: 14px;
}
dialog.mp-gallery-panel .unified-subcategories button[aria-pressed="true"] {
  background: var(--home-gold-shine);
  border-color: var(--home-gold-light);
  color: #101827;
}
dialog.mp-gallery-panel .unified-thumbs button {
  height: auto;
  aspect-ratio: 3 / 2;
  border: 1px solid #d4af3766;
  background: #0b1324;
}
dialog.mp-gallery-panel .unified-thumbs button.selected,
dialog.mp-gallery-panel button:hover { border-color: var(--home-gold-light); }
dialog.mp-gallery-panel button:focus-visible {
  outline: 2px solid var(--home-gold-light);
  outline-offset: 2px;
}
@media (max-width: 760px) {
  dialog.mp-gallery-panel .unified-thumbs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.project-media-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 0 0 12px;
}
dialog .project-media-actions :is(button, a),
dialog.mp-gallery-panel .project-plan-card .project-media-actions button,
#lightbox .project-media-actions :is(button, a) {
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: auto;
  height: auto;
  min-height: 38px;
  padding: 6px 11px;
  border: 1px solid #d4af3799;
  border-radius: 999px;
  background: #101b31;
  color: #ffedb3;
  font: 650 12px/1.2 system-ui, sans-serif;
  text-decoration: none;
}
.project-media-actions svg { width: 16px; height: 16px; flex: none; }
.project-media-actions [role="status"] { color: #fff; font-size: 12px; }
.project-media-actions [role="status"]:not(:empty) { flex-basis: 100%; }
dialog .project-media-actions :is(button, a):hover { border-color: #ffedb3; background: #243756; }
dialog .project-media-actions :is(button, a):focus-visible { outline: 2px solid #ffedb3; outline-offset: 2px; }
#lightbox.project-media-lightbox img { max-height: calc(100dvh - 145px); }
#lightbox.project-media-lightbox p { bottom: 70px; }
#lightbox.project-media-lightbox .project-media-actions {
  position: absolute;
  inset: auto 8px max(12px, env(safe-area-inset-bottom)) 8px;
  justify-content: center;
  margin: 0;
  text-align: center;
}
#lightbox.project-media-lightbox:has(.project-media-actions [role="status"]:not(:empty)) p { bottom: 88px; }
dialog.mp-panel.mp-gallery-panel.mp-video-full {
  background: radial-gradient(ellipse at top left, #192b48, transparent 72%), #0b1324;
  color: #fff;
}
dialog.mp-gallery-panel.mp-video-full h2 {
  background: none;
  color: #f7e39c;
}
dialog.mp-gallery-panel.mp-video-full .mp-gallery-hint {
  color: #f0f4fc;
  font-size: 14px;
  line-height: 1.5;
}
dialog.mp-gallery-panel .project-video-card {
  max-width: 1100px;
  margin: 0 auto 18px;
  padding: 12px;
  border: 1px solid #d4af374d;
  border-radius: 14px;
  background: #101b31;
}
dialog.mp-gallery-panel .project-video-card .listing-video {
  margin: 0 0 10px;
  padding: 0;
  border: 0;
  background: transparent;
}
dialog.mp-gallery-panel .project-video-card .project-media-actions { margin-bottom: 0; }
dialog.mp-gallery-panel .project-video-card .listing-video h3 { color: #fff; }
dialog.mp-gallery-panel .project-video-card .listing-video > a { color: #ffedb3; }

dialog.mp-panel.mp-gallery-panel.mp-plans-full {
  inset: 0;
  width: 100vw;
  max-width: none;
  height: 100dvh;
  max-height: 100dvh;
  border: 0;
  border-radius: 0;
}
dialog.mp-gallery-panel .project-plan-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d4af375e;
  border-radius: 12px;
  background: #101b31;
}
dialog.mp-gallery-panel .project-plan-card > button {
  width: 100%;
  border: 0;
  background: transparent;
}
dialog.mp-gallery-panel .project-plan-card > button:focus-visible { outline-offset: -3px; }
dialog.mp-gallery-panel .project-plan-card img { background: #dce3ed; }
dialog.mp-gallery-panel .project-plan-card strong { color: #fff; }
dialog.mp-gallery-panel .project-plan-card > button > span { color: var(--home-gold-light); }
dialog.mp-gallery-panel .project-plan-card .project-media-actions { margin: 0 9px 9px; }

/* Public numbered room tour. The shared editor uses its own presentation. */
dialog.plan-tour.pt-public-media {
  background: radial-gradient(ellipse at top left, #192b48, transparent 68%), #0b1324;
  color: #fff;
}
dialog.plan-tour.pt-public-media .pt-head { border-color: #d4af375c; }
dialog.plan-tour.pt-public-media .pt-head h2 {
  color: var(--home-gold-light);
  font-family: Georgia, serif;
  font-size: clamp(15px, 2.2vw, 24px);
}
.pt-public-media .pt-view-note summary { color: #d7dfed; }
.pt-viewer.pt-autofit.pt-public-media .pt-plan {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}
.pt-viewer.pt-public-media :is(.pt-plan, .pt-room) {
  background: #101b31;
  border-color: #d4af375c;
}
.pt-viewer.pt-public-media :is(.pt-plan-viewport, .pt-room-image, .pt-controls),
.pt-customer-photo.pt-public-media .pt-room-image { background: #070d1a; }
.pt-viewer.pt-public-media .pt-room h3 { color: var(--home-gold-light); }
.pt-viewer.pt-public-media :is(.pt-head, .pt-view-tools, .pt-room-menu, .pt-controls) > button {
  background: #101b31;
  border-color: #d4af378c;
  color: #ffedb3;
}
.pt-viewer.pt-public-media .pt-room-menu button[aria-pressed="true"],
.pt-viewer.pt-public-media .pt-view-tools button[aria-pressed="true"] {
  background: var(--home-gold-shine);
  color: #101827;
}
.pt-public-media .pt-pin::before { background: #10213bea; border-color: #f7e39c; }
.pt-public-media .pt-pin[aria-pressed="true"] { color: #101827; text-shadow: none; }
.pt-public-media .pt-pin[aria-pressed="true"]::before { background: var(--home-gold-shine); }
.pt-public-media button:focus-visible { outline: 2px solid #ffedb3; outline-offset: 1px; }
.pt-public-media .pt-controls { flex-wrap: wrap; }
.pt-public-media .project-media-actions { margin: 0; }
.pt-public-media .pt-plan-media { padding-bottom: 5px; }
.pt-customer-photo.pt-public-media > .project-media-actions { padding: 8px 12px; }

/* Sales catalogue and apartment details. */
body:is(.is-sales, :has(.mobile-unit-screen)) {
  --unit-ink: #0b1324;
  --unit-card: #101b31;
  --unit-text: #e2eaf7;
  --unit-gold: var(--home-gold-light);
  --unit-edge: #d4af376b;
}
body:is(.is-sales, :has(.mobile-unit-screen)) .header {
  background: #080f1e;
  border-bottom-color: var(--unit-edge);
}
body.is-sales #main,
body.is-unit-detail:has(.mobile-unit-screen) #main { background: var(--unit-ink); color: var(--unit-text); }
body.is-sales .sales-brand-hero {
  background: linear-gradient(90deg, #080f1ef5, #101b319c 62%, #101b3138), url('/assets/project-catalogue-panorama.jpg') center 54%/cover;
  border-color: var(--unit-edge);
}
body.is-sales .sales-brand-hero h1,
body.is-unit-detail .mobile-unit-screen .mu-heading h1 {
  font-family: Georgia, serif;
  font-weight: 700;
}
body.is-sales .sales-brand-eyebrow,
body.is-sales .sales-brand-hero h1 span { color: var(--unit-gold); }
body.is-sales .sales-brand-eyebrow::before { background: var(--home-gold-shine); }
body.is-sales #main :is(.sales-sticky, .sales-advanced, .unit-card) {
  background: var(--unit-card);
  border-color: var(--unit-edge);
  color: var(--unit-text);
}
body.is-sales #main :is(.sales-quick-filters label, .sales-advanced label, .sales-filter-bottom, .result-line, .sales-data-note summary, .sales-data-note p, .unit-type, .unit-key-facts span) {
  color: var(--unit-text);
}
body.is-sales #main :is(.sales-quick-filters select, .sales-advanced select, .sales-advanced input, .sales-more-filters>summary, .unit-actions a) {
  background: var(--unit-ink);
  border: 1px solid var(--unit-edge);
  color: var(--unit-text);
}
body.is-sales #main :is(.sales-reset, .unit-info .project-full, .unit-info .project-short, .unit-price .price) { color: var(--unit-gold); }
body.is-sales #main .unit-info h2 {
  font-family: Georgia, serif;
  color: #fff;
}
body.is-sales #main .unit-price { border-color: var(--unit-edge); }
body.is-sales #main .unit-actions a.wa { background: #14243b; color: #fff; border-color: var(--unit-edge); }
body.is-sales #main .unit-actions a.detail-link {
  background: var(--home-gold-shine);
  color: #101827;
  border-color: var(--unit-gold);
}
body.is-sales #main .unit-picture .status { background: var(--home-gold-light); color: #101827; }
body.is-sales #main .sales-data-note p { background: var(--unit-card); border-color: var(--unit-edge); }
body.is-sales #main :is(a, button, summary, select, input):focus-visible,
.mobile-unit-screen :is(a, button, [tabindex]):focus-visible { outline: 2px solid var(--unit-gold); outline-offset: 2px; }
@media (max-width: 599px) {
  body.is-sales #main>.sales-container { width: 94%; padding-top: 8px; }
  body.is-sales #main .sales-sticky,
  body.is-sales #main .unit-card { border: 1px solid var(--unit-edge); border-radius: 12px; padding-inline: 10px; }
  body.is-sales #main :is(.sales-quick-filters select, .sales-more-filters>summary, .unit-actions a) { min-height: 44px; }
  body.is-sales #main .unit-actions { flex-wrap: wrap; }
}
body.is-unit-detail .mobile-unit-screen {
  background: radial-gradient(ellipse at top left, #192b48, transparent 72%), var(--unit-ink);
  color: var(--unit-text);
}
body.is-unit-detail .mobile-unit-screen .mu-heading { color: var(--unit-text); }
body.is-unit-detail .mobile-unit-screen .mu-heading h1 { color: #fff; }
body.is-unit-detail .mobile-unit-screen .mu-heading > p:first-child,
body.is-unit-detail .mobile-unit-screen .mu-price-row strong { color: var(--unit-gold); }
body.is-unit-detail .mobile-unit-screen :is(.mu-heading .mu-inline-facts, .mu-price-row>span, .mu-property-summary, .mu-summary-location, .mu-summary-facts span, .mu-desktop-description) {
  color: var(--unit-text);
}
body.is-unit-detail .mobile-unit-screen :is(.mu-topline a, .mu-topline button, .mu-summary-facts>div, .mu-gallery, .mu-neighbors a, .mu-video-feature) {
  background: var(--unit-card);
  border-color: var(--unit-edge);
  color: var(--unit-text);
}
body.is-unit-detail .mobile-unit-screen .mu-property-summary {
  background: var(--unit-card);
  border-color: var(--unit-edge);
}
body.is-unit-detail .mobile-unit-screen :is(.mu-summary-facts strong,.mu-extra-facts) { color: var(--unit-text); }
body.is-unit-detail .mobile-unit-screen .mu-five-dock { background: #080f1ef5; border-color: var(--unit-edge); }
body.is-unit-detail .mobile-unit-screen .mu-five-dock > :is(a, button) { color: #fff; }
body.is-unit-detail .mobile-unit-screen .mu-five-dock > :is(a, button) svg { color: var(--unit-gold); border-color: var(--unit-edge); }
body.is-unit-detail .mobile-unit-screen .mu-five-dock > :is(a, button):hover { background: #233654; }

/* Keep apartment detail sheets consistent with the project screens. */
body.is-unit-detail .mobile-unit-screen dialog.mu-panel {
  background: radial-gradient(ellipse at top left, #192b48, transparent 72%), var(--unit-ink);
  color: var(--unit-text);
}
body.is-unit-detail .mobile-unit-screen dialog.mu-panel .mu-sheetbar {
  background: #080f1e;
  color: var(--unit-gold);
  border-color: var(--unit-edge);
}
.mobile-unit-screen .mu-sheetbar > span { color: var(--unit-gold); }
body.is-unit-detail .mobile-unit-screen .mu-sheetbar > button,
body.is-unit-detail .mobile-unit-screen .mu-plan-tools button {
  background: var(--unit-card);
  color: var(--unit-gold);
  border: 1px solid var(--unit-edge);
}
body.is-unit-detail .mobile-unit-screen .mu-sheetbody :is(h2, h3) {
  font-family: Georgia, serif;
  color: var(--unit-gold);
}
body.is-unit-detail .mobile-unit-screen .mu-sheetbody :is(p, li, .fs-title span, .fs-fact span) { color: var(--unit-text); }
.mobile-unit-screen .mu-sheetbody .fs-sheet,
.mobile-unit-screen .mu-sheetbody :is(.fs-fact strong, .fs-benefit h4) { color: #fff; }
body.is-unit-detail .mobile-unit-screen .mu-sheetbody :is(.fs-fact, .fs-benefit, .fs-detail, .project-video-card, .listing-video) {
  background: var(--unit-card);
  border-color: var(--unit-edge);
}
.mobile-unit-screen .mu-sheetbody :is(.fs-header, .fs-footer, .customer-location-map) { border-color: var(--unit-edge); }
.mobile-unit-screen .mu-sheetbody :is(.fs-fact svg, .fs-benefit svg, .fs-detail > summary, .listing-video > a) { color: var(--unit-gold); }
.mobile-unit-screen .mu-sheetbody .project-video-card {
  min-width: 0;
  padding: 12px;
  margin: 0 0 12px;
  border: 1px solid var(--unit-edge);
  border-radius: 12px;
}
body.is-unit-detail .mobile-unit-screen .project-video-card .listing-video {
  padding: 0;
  margin: 0 0 8px;
  border: 0;
}
.mobile-unit-screen .project-video-card h3 { overflow-wrap: anywhere; }
.mobile-unit-screen .project-video-card .unit-video-player { width: 100%; min-width: 0; }
.mobile-unit-screen .mu-sheetbody .project-media-actions { margin: 0; }
.mobile-unit-screen .mu-sheetbody .mu-plan-stage { background: #070d1a; }
body.is-unit-detail .mobile-unit-screen dialog.mu-panel[data-panel-key="location"] .customer-location-actions a,
body.is-unit-detail .mobile-unit-screen .mu-sheetbody .plan-tour-trigger,
body.is-unit-detail .mobile-unit-screen .mu-five-dock > a.mu-whatsapp {
  background: var(--home-gold-shine);
  color: #101827;
  border-color: var(--unit-gold);
}
body.is-unit-detail .mobile-unit-screen .mu-five-dock > a.mu-whatsapp svg { color: #101827; }
body.is-unit-detail .mobile-unit-screen .mu-five-dock > a { border-radius: 9px; }
.mobile-unit-screen .mu-five-dock > a svg { pointer-events: none; }
body.is-unit-detail .mobile-unit-screen dialog.mu-panel[data-panel-key="plan"] .mu-sheetbody:has(.project-media-actions) {
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
}

.mobile-unit-screen dialog.mu-panel[data-panel-key="features"] .fs-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px 16px;
  min-width: 0;
  padding: 10px 14px;
  background: #080f1e;
  border: 1px solid var(--unit-edge);
  border-radius: 10px;
  text-align: left;
}
.mobile-unit-screen .fs-price small {
  display: block;
  color: var(--unit-text);
  font-size: 12px;
  margin-bottom: 3px;
}
.mobile-unit-screen .fs-price strong {
  color: var(--unit-gold);
  font-size: clamp(24px, 4vw, 38px);
  line-height: 1.15;
  font-variant-numeric: tabular-nums;
  white-space: normal;
}
.mobile-unit-screen .fs-price > span { margin: 0; }
.mobile-unit-screen .fs-area-title { margin: 12px 0 6px; color: var(--unit-gold); font-size: 13px; }
.mobile-unit-screen .fs-visual::after { display: none; }
@media (max-width: 650px) {
  .mobile-unit-screen dialog.mu-panel[data-panel-key="features"] .fs-header {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  .mobile-unit-screen dialog.mu-panel[data-panel-key="features"] .fs-visual {
    min-height: 0;
    aspect-ratio: 2.1;
  }
  .mobile-unit-screen .fs-fact-grid > .fs-fact:last-child:nth-child(odd),
  .mobile-unit-screen .fs-plan-areas > .fs-fact:last-child:nth-child(odd) { grid-column: 1 / -1; }
}

/* A labeled, high-contrast exit from public detail views. */
:is(#unit-content, #project-content, #lightbox) button.site-close-control,
dialog.plan-tour.pt-public-media .pt-head button.site-close-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 6px;
  width: auto;
  min-width: 84px;
  height: auto;
  min-height: 44px;
  padding: 6px 11px;
  border: 1px solid #fff0b2;
  border-radius: 9px;
  background: #f7e39c;
  color: #101827;
  font: 750 13px/1 system-ui, sans-serif;
  white-space: nowrap;
  cursor: pointer;
}
.site-close-control .site-close-icon { font-size: 24px; line-height: 1; }
:is(#unit-content, #project-content, #lightbox) button.site-close-control:hover,
dialog.plan-tour.pt-public-media .pt-head button.site-close-control:hover { background: #fff2c7; }
:is(#unit-content, #project-content, #lightbox) button.site-close-control:focus-visible,
dialog.plan-tour.pt-public-media .pt-head button.site-close-control:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}
#project-content:has(.ps-sheet) .ps-bar { padding-right: 105px; min-height: 56px; }
#project-content.mp-location-full h2 { margin-right: 90px; }

/* Public contact page and its location tools. */
body:has(.corporate-contact-page) {
  --contact-ink: #0b1324;
  --contact-surface: #101b31;
  --contact-text: #e2eaf7;
  --contact-gold: var(--home-gold-light);
  --contact-line: #d4af376b;
}
body:has(.corporate-contact-page) :is(.header, #main, #footer) { background: var(--contact-ink); }
body:has(.corporate-contact-page) .corporate-strip { background: #080f1e; }
.corporate-contact-page.contact-map-page {
  display: block;
  width: min(100%, 1320px);
  margin-inline: auto;
  padding: clamp(14px, 3vw, 28px) clamp(12px, 4vw, 40px);
}
.contact-map-page h1 {
  margin: 4px 0;
  color: var(--contact-gold);
  font: 700 clamp(24px, 4vw, 42px)/1.15 Georgia, serif;
}
.contact-map-page header p { margin: 6px 0 0; color: var(--contact-text); font-size: 14px; }
.contact-map-page .home-locations-map {
  height: clamp(480px, 68dvh, 780px);
  margin: 12px 0 0;
  background: var(--contact-ink);
  border-color: var(--contact-line);
}
.contact-quick-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.contact-quick-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--contact-line);
  border-radius: 9px;
  background: var(--contact-surface);
  color: var(--contact-gold);
  font-weight: 700;
  font-size: 14px;
}
.contact-quick-links a:focus-visible { outline: 2px solid var(--contact-gold); outline-offset: 2px; }
.contact-quick-links svg { width: 18px; height: 18px; }
@media (max-width: 650px) {
  .contact-map-page .home-locations-map { height: clamp(520px, 76dvh, 780px); }
  .contact-quick-links a { flex: 1 1 auto; }
}

/* KUTSAN 12 Nov: Safari viewport, compact contact rail, accessible short-screen fallback. */
@media (max-width:760px) {
 body.is-home {
  height:100svh;height:100dvh;min-height:480px;
  display:grid;grid-template-rows:60px minmax(0,1fr) auto;
  overflow-x:hidden;overflow-y:auto;
 }
 .is-home .header {height:60px;min-height:0;padding-inline:16px;}
 .is-home .header .brand img {width:132px;height:48px;}
 .is-home .header-end {gap:10px;}
 .is-home .header #site-theme-toggle {min-width:40px;min-height:40px;padding:6px;}
 .is-home .header .lang {padding:7px 9px;font-size:12px;}
 .is-home .header nav {top:60px;}
 .is-home #main {min-width:0;min-height:0;overflow:hidden;}
 .is-home .corporate-hero {height:100%;min-height:0;max-height:none;align-items:center;}
 .is-home .corporate-hero .hero-content {width:90%;padding:18px 0 52px!important;}
 .is-home .corporate-hero .corporate-eyebrow {font-size:8px;letter-spacing:1.1px;margin-bottom:16px;}
 .is-home .corporate-hero h1.home-classic-heading {font-size:clamp(30px,8.2vw,44px);line-height:1.08;margin-bottom:22px;}
 .is-home .corporate-home-actions {width:min(100%,310px);gap:10px;}
 .is-home .corporate-home-actions>a {min-height:46px;padding:10px 18px;}
 .is-home .corporate-home-actions strong {font-size:13px;}
 .is-home .home-motion {min-height:30px;bottom:10px;right:4%;padding:6px 10px;font-size:10px;}
 .is-home #footer {min-width:0;}
 .is-home .corporate-strip {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px 7px;padding:10px 4% max(10px,env(safe-area-inset-bottom));
 }
 .is-home .corporate-strip .corporate-channel {min-height:44px;padding:5px 2px;gap:4px;}
 .is-home .mobile-channel-label {font-size:clamp(11px,3.2vw,14px);}
 .is-home .corporate-strip .channel-icon,.is-home .corporate-strip .channel-icon svg {width:18px;height:18px;}
 .is-home .mobile-contact-numbers {
  display:grid;grid-template-columns:1fr 1fr;gap:6px;
  font-size:11px;font-weight:500;line-height:1.3;text-align:center;
 }
 .is-home .mobile-contact-numbers a {color:inherit;text-decoration:none;font-variant-numeric:tabular-nums;}
 .is-home .corporate-social-group {margin:0;line-height:1;}
 .is-home .corporate-socials {gap:12px;}
 .is-home .corporate-socials a {width:28px;height:28px;}
 .is-home .corporate-socials svg {width:19px;height:19px;}
}
@media (max-width:760px) and (max-height:560px) {
 .is-home .corporate-hero .hero-content {padding:10px 0 36px!important;}
 .is-home .corporate-hero .corporate-eyebrow {margin-bottom:10px;}
 .is-home .corporate-hero h1.home-classic-heading {font-size:28px;margin-bottom:14px;}
 .is-home .corporate-home-actions>a {min-height:44px;padding-block:8px;}
}
@media (max-width:760px) and (prefers-reduced-motion:no-preference) {
 .is-home .corporate-home-actions>a {animation-duration:360ms;}
}
