/* Full-width, dense landing-page layout. No persistent right-side form. */
.page-shell{margin-right:0!important;width:100%!important;max-width:none!important}
.site-header,.scroll-progress,.preview-banner{right:0!important}
.lead-rail{display:none!important}

/* Keep the page visually full: remove large empty vertical bands between sections. */
.section{padding-top:clamp(22px,2.2vw,36px)!important;padding-bottom:clamp(22px,2.2vw,36px)!important}
.section-top{padding-top:10px!important;margin-bottom:clamp(13px,1.4vw,20px)!important}
.intro-grid{margin-bottom:clamp(18px,1.8vw,26px)!important;gap:clamp(20px,2.7vw,36px)!important}
.overview-grid{gap:clamp(22px,3vw,40px)!important}
.overview-story h3{margin:12px 0 14px!important}
.story-features{margin:16px 0!important;gap:10px!important}
.section-heading{margin-bottom:16px!important}
.section-heading p{margin-top:8px!important}
.residence-tabs{margin-bottom:12px!important}
.residence-tabs button{padding-top:11px!important;padding-bottom:11px!important}
.residence-info{padding:clamp(24px,2.8vw,42px)!important}
.residence-info h3{margin:12px 0!important}
.residence-meta{margin:14px 0!important}
.lifestyle-heading{margin-bottom:18px!important}
.club-number{margin-top:10px!important}
.lifestyle-grid{gap:clamp(20px,3vw,38px)!important}
.lifestyle-copy h3{margin:12px 0!important}
.amenity{padding:13px 0!important}
.gallery-grid{margin-top:0!important;gap:12px!important}
.fine-print{margin-top:9px!important}
.location-layout{gap:clamp(22px,3vw,40px)!important}
.location-copy>p{margin:12px 0!important}
.faq{gap:clamp(22px,3vw,38px)!important}
.faq-heading h2{margin-top:12px!important}
.faq-heading>p{margin-top:8px!important}
.faq summary{padding:14px 0!important}
.editorial-strip{padding:9px 0!important}
.metrics{padding-top:16px!important;padding-bottom:16px!important}
.final-cta{min-height:330px!important;padding-top:42px!important;padding-bottom:42px!important}
.final-cta h2{margin:16px 0 20px!important}
.footer{padding-top:28px!important;padding-bottom:32px!important}
.footer-main{gap:24px!important}
.footer-links{margin-top:18px!important;padding:15px 0!important}

/* Numbers use the same clean body/text family instead of a separate display face. */
.metrics strong,.metrics strong sup,.metric-unit,.club-number strong,.plan-number,.residence-meta strong,.footer-contact>a{
  font-family:var(--sans)!important;
  font-style:normal!important;
  letter-spacing:-.025em!important;
  font-variant-numeric:lining-nums tabular-nums;
}

/* Direct image floor plans. No PDF, no form gate. */
.direct-plan{padding:20px!important;display:flex!important;flex-direction:column;min-height:0!important;overflow:hidden}
.direct-plan-top{position:relative;z-index:2;display:block;margin-bottom:10px}
.direct-plan-top h4{margin-top:3px;font-size:clamp(26px,2.4vw,36px)}
.inline-plan-stage{position:relative;z-index:2;min-height:0!important;background:#fff;border:1px solid #d8d9cf;overflow:hidden;display:flex;align-items:center;justify-content:center}
.inline-plan-stage img{width:100%;height:auto!important;max-height:640px;min-height:0!important;border:0;display:block;object-fit:contain;background:#fff}
.inline-plan-empty{width:100%;min-height:300px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;color:#65736a}
.inline-plan-empty p{font-family:var(--sans)!important;font-size:20px;line-height:1.25;color:var(--green);margin-top:7px;font-weight:600}
.inline-plan-empty small{max-width:460px;margin-top:8px;font-size:10px;line-height:1.6;color:var(--muted)}
.direct-plan .plan-number{opacity:.025}
.direct-plan .plan-footnote{position:static!important;margin-top:7px!important;display:block!important}

@media(min-width:1024px){.mobile-action-bar{display:none!important}}
@media(max-width:767px){
  .section{padding-top:18px!important;padding-bottom:18px!important}
  .section-top{padding-top:8px!important;margin-bottom:12px!important}
  .intro-grid{margin-bottom:16px!important;gap:16px!important}
  .overview-grid,.lifestyle-grid,.location-layout,.faq{gap:18px!important}
  .section-heading{margin-bottom:13px!important}
  .residence-tabs{margin-bottom:10px!important}
  .residence-info{padding:22px 20px!important}
  .lifestyle-heading{margin-bottom:14px!important}
  .editorial-strip{padding:7px 0!important}
  .metrics{padding-top:13px!important;padding-bottom:13px!important;row-gap:15px!important}
  .direct-plan{padding:14px!important}
  .direct-plan-top{margin-bottom:9px}
  .inline-plan-stage img{max-height:none}
  .inline-plan-empty{min-height:230px!important;padding:20px!important}
  .inline-plan-empty p{font-size:18px}
  .final-cta{min-height:300px!important;padding-top:36px!important;padding-bottom:36px!important}
  .footer{padding-top:24px!important;padding-bottom:88px!important}
}


/* FINAL RESPONSIVE + READABILITY PASS */
:root{
  --content-pad:clamp(18px,4vw,64px);
}
body{
  font-size:16px!important;
  line-height:1.65!important;
  overflow-x:hidden;
}

/* Compact section spacing and cleaner horizontal padding. */
.section{
  padding:clamp(20px,2.4vw,38px) var(--content-pad)!important;
}
.section-top{
  padding-top:0!important;
  margin-bottom:clamp(12px,1.3vw,18px)!important;
}
.section-heading{margin-bottom:clamp(14px,1.5vw,22px)!important}
.section-heading p{margin-top:8px!important}
.intro-grid,.overview-grid,.lifestyle-grid,.location-layout,.faq{
  gap:clamp(18px,2.5vw,36px)!important;
}
.residence-panel{margin-top:0!important}
.residence-tabs{margin-bottom:10px!important}
.residence-info{padding:clamp(22px,2.4vw,34px)!important}
.direct-plan{padding:clamp(12px,1.4vw,20px)!important}

/* Make all supporting copy comfortably readable. */
.eyebrow,.tiny-label,.preview-banner,.metric-label,
.residence-meta>span,.club-number span,.architecture-figure figcaption,
.clubhouse-figure figcaption,.gallery-item figcaption,.location-tabs button,
.plan-footnote,.hero-config,.hero-bottom,.form-note,.form-label{
  font-size:12px!important;
  line-height:1.45!important;
}
.section-note,.hero-subtitle,.intro-text,.overview-story p,.section-heading p,
.residence-info>p,.lifestyle-copy p,.location-copy>p,.faq details p,
.story-features>div,.residence-meta small,.fine-print,.viewer-bottom p,
.modal-description,.dialog-content>p{
  font-size:15px!important;
  line-height:1.65!important;
}
.desktop-nav a,.header-brochure,.mobile-menu a,.mobile-menu button,
.residence-tabs button,.amenity,.text-link,.btn,.faq summary{
  font-size:14px!important;
}
.residence-tabs button{
  min-width:126px!important;
  padding:13px 16px!important;
}
.direct-plan-top h4{font-size:clamp(24px,2.1vw,34px)!important}
.inline-plan-stage{min-height:0!important}
.inline-plan-stage img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
}
.inline-plan-empty small{font-size:13px!important;line-height:1.55!important}

/* Header padding tuned down without making controls cramped. */
.site-header{padding-left:var(--content-pad)!important;padding-right:var(--content-pad)!important}
.hero-content{padding-left:var(--content-pad)!important;padding-right:var(--content-pad)!important}

/* Footer intentionally removed from markup. Hide defensively if cached markup appears. */
.footer{display:none!important}

@media(max-width:900px){
  :root{--content-pad:clamp(16px,4.5vw,28px)}
  .section{padding-top:18px!important;padding-bottom:18px!important}
  .section-note{font-size:13px!important}
  .section-heading p,.intro-text,.overview-story p,.residence-info>p,
  .lifestyle-copy p,.location-copy>p,.faq details p,.story-features>div,
  .residence-meta small{font-size:14px!important}
  .residence-tabs{
    display:flex!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin;
    gap:8px!important;
    padding:0 0 6px!important;
    scroll-snap-type:x proximity;
  }
  .residence-tabs button{
    flex:0 0 auto!important;
    min-width:118px!important;
    font-size:13px!important;
    padding:12px 14px!important;
    scroll-snap-align:start;
  }
  .residence-panel{grid-template-columns:1fr!important}
  .residence-info{padding:20px!important}
  .direct-plan{padding:12px!important}
  .inline-plan-stage img{max-width:100%!important}
}

@media(max-width:640px){
  body{font-size:15px!important}
  .section{padding:16px var(--content-pad)!important}
  .section-top{margin-bottom:10px!important}
  .eyebrow,.tiny-label,.metric-label,.residence-meta>span,.club-number span,
  .architecture-figure figcaption,.clubhouse-figure figcaption,.gallery-item figcaption,
  .plan-footnote,.hero-config,.form-note,.form-label{font-size:11px!important}
  .section-note{font-size:12px!important}
  .section-heading p,.intro-text,.overview-story p,.residence-info>p,
  .lifestyle-copy p,.location-copy>p,.faq details p,.story-features>div,
  .residence-meta small{font-size:14px!important;line-height:1.6!important}
  .desktop-nav{display:none!important}
  .residence-tabs button{min-width:110px!important;font-size:13px!important;padding:11px 12px!important}
  .residence-info{padding:18px 16px!important}
  .direct-plan{padding:10px!important}
  .direct-plan-top{margin-bottom:8px!important}
  .direct-plan-top h4{font-size:24px!important}
  .plan-footnote{padding:0!important}
  .final-cta{padding-left:var(--content-pad)!important;padding-right:var(--content-pad)!important}
}

@media(max-width:380px){
  :root{--content-pad:14px}
  .residence-tabs button{min-width:102px!important;font-size:12px!important}
  .section-heading p,.intro-text,.overview-story p,.residence-info>p,
  .lifestyle-copy p,.location-copy>p,.faq details p{font-size:13px!important}
}
