/* September 2026 refinement: photographic opening, company facts, project guide. */
.site-footer>.legal{margin-bottom:0}
.footer-signature{display:flex;justify-content:center;border-top:1px solid var(--line);margin-top:26px;padding-top:14px}
.footer-arenal{display:flex;align-items:center;justify-content:center;width:180px;max-width:100%;min-height:44px}
.footer-arenal img{display:block;width:100%;height:auto}
.footer-arenal:hover img{opacity:.7}
.home-showcase{position:relative;isolation:isolate;min-height:610px;height:min(720px,calc(100svh - 106px));background:#22352b;overflow:hidden;color:#fff}
.showcase-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-2}
.showcase-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,25,19,.8) 0%,rgba(11,25,19,.49) 37%,rgba(11,25,19,.05) 77%),linear-gradient(0deg,rgba(11,25,19,.55),transparent 40%)}
.showcase-copy{height:100%;min-height:610px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-block:60px 74px}
.showcase-copy .eyebrow{color:#e1dbc9;letter-spacing:.13em;font-size:12px;margin-bottom:25px}
.showcase-copy h1{font-size:clamp(3.4rem,5.8vw,5.8rem);letter-spacing:-.025em;line-height:1.03;max-width:840px;text-shadow:0 2px 22px #0d1e1933}
.showcase-copy h1 em{color:#f1e6cc}
.showcase-description{max-width:445px;margin-block:28px 30px;font-size:16px;line-height:1.75;color:#f5f3ec}
.showcase-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:28px}
.showcase-link{display:inline-flex;align-items:center;gap:25px;font-size:14px;padding-block:12px;border-bottom:1px solid #c9c7b6;color:#fff}
.showcase-link:hover{color:#e4d7b9}
.showcase-disclosure{position:absolute;right:30px;bottom:19px;font-size:11px;color:#fff;letter-spacing:.025em;margin:0}
.featured-strip{background:var(--green);color:var(--paper)}
.featured-strip>.wrap{display:grid;grid-template-columns:1.1fr 1.15fr .8fr .8fr;align-items:center;gap:30px;padding-block:25px}
.featured-strip a{display:block}.featured-strip a:hover{color:#dccaa4}.featured-strip .eyebrow{font-size:10px;color:#d1c5a7;display:block;margin-bottom:5px}
.featured-name{display:flex;gap:25px;align-items:center;font:30px/1.2 var(--serif)}
.featured-strip p{font-size:12px;line-height:1.6;color:#d7ddd2;margin:0}.featured-strip p:last-child{text-align:right}.featured-strip strong{font-weight:500;color:#fff}
.intro-section{padding-block:78px}.intro-grid h2{font-size:clamp(2.8rem,3.9vw,4.1rem)}.intro-grid strong,.prose strong{font-weight:600;color:var(--ink)}
.paths-section{padding-bottom:80px}.custom-card .eyebrow{font-size:12px}.custom-card p:not(.eyebrow){max-width:370px}
.company-facts{display:grid;grid-template-columns:1fr 1.15fr;gap:85px;border-top:1px solid var(--line);padding-block:68px 85px}
.company-facts dl{margin:0}.company-facts dl>div{display:grid;grid-template-columns:1fr 1.4fr;gap:25px;border-bottom:1px solid var(--line);padding:17px 0;font-size:14px}
.company-facts dl>div:first-child{padding-top:0}.company-facts dt{color:var(--muted)}.company-facts dd{margin:0}.company-facts dd a{border-bottom:1px solid var(--line)}
.planning-link{display:table;margin-top:13px}.build-hero h1{font-size:clamp(3.3rem,5.3vw,5.4rem)}.build-hero{padding-block:45px 70px}
.planning-section{padding-block:65px 80px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start}
.planning-heading{position:sticky;top:146px}.planning-heading h2{margin-bottom:28px}.planning-heading>p:last-child{max-width:405px;color:var(--muted);font-size:15px}
.planning-steps{list-style:none;margin:0;padding:0}.planning-steps>li{display:grid;grid-template-columns:34px 1fr;gap:22px;padding:29px 0;border-bottom:1px solid var(--line)}.planning-steps>li:first-child{padding-top:0}
.step-number{font-family:var(--serif);font-size:26px;line-height:1.2;color:var(--gold)}.planning-steps h3{font-size:2.1rem;margin-bottom:16px}.planning-steps p{font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:13px}
.planning-steps .step-question{border-left:2px solid #c4bba4;padding-left:14px;font-size:13px;color:#4f594e;margin:0}
.faq-section{border-top:1px solid var(--line);padding-top:65px}.faq-list summary{font-size:15px}
.design-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.design-notes article{border-top:1px solid var(--line);padding-top:25px}.design-notes .index{margin-bottom:18px}.design-notes h3{font-size:1.95rem;line-height:1.12;margin-bottom:18px}.design-notes p{font-size:14px;color:var(--muted)}
.project-actions{display:flex;gap:28px;flex-wrap:wrap;align-items:center}.project-updates{display:grid;grid-template-columns:1.7fr .7fr;gap:55px;align-items:end}.project-updates>.caption{margin:0}
.contact-section{gap:70px}.contact-credentials{display:grid;gap:10px;margin-top:30px;font-size:12px;color:var(--gold)}.contact-credentials span{padding-left:14px;border-left:1px solid var(--gold)}
.field-hint{font-size:12px;color:var(--muted);margin-top:9px;line-height:1.6;min-height:2.9em}.form-panel{padding:36px}
#custom-project-fields{border:0;padding:20px 0 0;margin:0 0 5px;border-top:1px solid #d1cdc0}#custom-project-fields[hidden]{display:none}#custom-project-fields legend{font-size:13px;padding:0 10px 0 0}#custom-project-fields legend span{color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-row select{font-size:14px}.form-row input{font-size:14px;min-height:49px}.field label{font-size:14px}.form-privacy{font-size:12px}.caption{font-size:13px}
@media(max-width:1050px){.home-showcase{min-height:570px}.showcase-copy{min-height:570px}.showcase-copy h1{font-size:4.2rem}.showcase-description{max-width:385px;font-size:15px}.company-facts,.planning-section{gap:45px}.planning-steps h3{font-size:1.95rem}.form-panel{padding:27px}.form-row{grid-template-columns:1fr;gap:0}.project-updates{grid-template-columns:1fr}.project-updates>.caption{max-width:none}.contact-section{gap:40px}.featured-strip>.wrap{gap:20px}.featured-strip p{font-size:11px}}
@media(max-width:760px){.home-showcase{height:auto;min-height:610px}.showcase-image{object-position:56% center}.showcase-copy{min-height:610px;padding-block:65px 82px;justify-content:end}.showcase-shade{background:linear-gradient(0deg,rgba(11,25,19,.94),rgba(11,25,19,.6) 47%,rgba(11,25,19,.05) 100%)}.showcase-copy .eyebrow{font-size:10px;letter-spacing:.09em;margin-bottom:20px}.showcase-copy h1{font-size:clamp(2.65rem,8.6vw,4rem);line-height:1.08;max-width:580px}.showcase-description{font-size:14px;max-width:400px;margin-block:23px}.showcase-actions{gap:16px 22px}.showcase-link{font-size:13px;gap:18px}.showcase-disclosure{right:20px;bottom:16px;font-size:10px}.featured-strip>.wrap{grid-template-columns:1fr 1fr;padding-block:22px;gap:18px 25px}.featured-strip a{grid-column:1/-1}.featured-strip p:nth-child(2){grid-column:1/-1}.featured-strip p:last-child{text-align:right}.featured-strip p{font-size:12px}.featured-name{font-size:30px}.intro-section{padding-block:52px}.intro-grid h2{font-size:2.65rem}.paths-section{padding-bottom:55px}.company-facts{grid-template-columns:1fr;gap:30px;padding-block:45px 60px}.company-facts dl>div{font-size:13px;grid-template-columns:1fr 1.4fr;gap:16px}.planning-section{grid-template-columns:1fr;gap:35px;padding-block:45px 55px}.planning-heading{position:static}.planning-heading h2{font-size:2.65rem;margin-bottom:24px}.planning-heading>p:last-child{max-width:none;font-size:14px}.planning-steps>li{grid-template-columns:26px 1fr;gap:16px;padding-block:25px}.planning-steps h3{font-size:1.9rem}.planning-steps p{font-size:14px}.planning-steps .step-question{font-size:12px}.build-hero{padding-block:38px 50px}.build-hero h1{font-size:3.3rem}.build-hero figure img{height:330px}.faq-section{padding-block:44px 60px}.design-notes{grid-template-columns:1fr;gap:26px;margin-top:32px}.design-notes h3{font-size:2rem;margin-bottom:12px}.design-notes .index{margin-bottom:13px}.project-updates{gap:25px}.project-actions{gap:16px 22px}.form-panel{padding:28px 22px}.contact-section{gap:32px}.field-hint{min-height:0}.form-row{grid-template-columns:1fr}.contact-credentials{margin-top:24px}.caption{font-size:12px}}
@media(max-width:390px){.showcase-copy h1{font-size:2.6rem}.showcase-actions{gap:12px}.showcase-link{font-size:12px}.showcase-description{font-size:13px}.home-showcase,.showcase-copy{min-height:620px}.company-facts dl>div{grid-template-columns:1fr;gap:5px}.project-actions{align-items:flex-start;flex-direction:column}}

/* Match the full-height address numerals on parishcustomhomes.com. */
h1,h2,h3,.featured-name{font-variant-numeric:lining-nums proportional-nums;font-feature-settings:"lnum" 1,"onum" 0,"tnum" 0}

/* Consistent residence-name numerals in headings, links, captions, and forms. */
.residence-name,#inquiry,#inquiry option,#inquiry-hint{font-variant-numeric:lining-nums proportional-nums;font-feature-settings:"lnum" 1,"onum" 0,"tnum" 0;font-style:normal}
.residence-name{white-space:nowrap}
.faq-list p a{text-decoration:underline;text-underline-offset:.2em}
@media(max-width:760px){
  .form-row input,.form-row select{font-size:16px}
  #site-nav{max-height:calc(100vh - 87px);max-height:calc(100dvh - 87px);overflow-y:auto}
  .residence-hero h1{font-size:clamp(2rem,8.5vw,3.6rem)}
}

/* Plan-based residence details, using the existing typography and palette. */
.specs-note{padding-top:18px;max-width:1320px}
.residence-sections{display:flex;flex-wrap:wrap;gap:12px 30px;border-bottom:1px solid var(--line);padding-block:26px;font-size:13px}
.residence-sections a{padding-block:7px;border-bottom:1px solid transparent}
.residence-sections a:hover{border-color:var(--gold);color:var(--gold)}
.residence-layout,.residence-wellness,.residence-details{border-top:1px solid var(--line);padding-block:65px 80px}
.residence-layout .section-heading>p:last-child,.residence-wellness .section-heading>p:last-child{max-width:760px;margin-top:25px;color:var(--muted)}
.residence-layout-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.residence-layout-grid article{border-top:1px solid var(--line);padding-top:28px;min-width:0}
.residence-layout-grid h3{font-size:2.2rem;margin-bottom:20px}
.residence-layout-grid p,.residence-layout-grid li{font-size:15px;color:var(--muted)}
.residence-layout-grid ul{padding-left:19px;margin:24px 0 0}
.residence-layout-grid li{padding-left:5px;margin-bottom:12px}
.residence-layout-grid li::marker{color:var(--gold)}
.residence-wellness .design-notes{margin-top:35px}
.residence-wellness .room-dimension{color:var(--gold);font-size:15px;font-weight:500}
.residence-wellness>.caption{margin-top:30px;max-width:930px}
.residence-details{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}
.residence-details .section-heading{margin-bottom:0}
.residence-detail-body{padding-top:20px}
.residence-details .faq-list details p{margin-top:14px}
.property-measurements{margin:0 0 18px}
.property-measurements>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.property-measurements dt{color:var(--muted)}
.property-measurements dd{margin:0;text-align:right;font-variant-numeric:lining-nums proportional-nums}
@media(max-width:1050px){.residence-layout-grid{gap:40px}.residence-details{gap:40px;grid-template-columns:.8fr 1.3fr}}
@media(max-width:760px){.specs-note{font-size:12px}.residence-sections{gap:5px 22px;font-size:12px;padding-block:20px}.residence-layout,.residence-wellness,.residence-details{padding-block:45px 55px}.residence-layout-grid,.residence-details{grid-template-columns:1fr;gap:32px}.residence-layout-grid h3{font-size:2rem}.residence-layout-grid p,.residence-layout-grid li{font-size:14px}.residence-layout .section-heading>p:last-child,.residence-wellness .section-heading>p:last-child{font-size:14px}.property-measurements>div{font-size:13px;gap:16px}}

/* Image-led residence features. Preserve the supplied renders' proportions. */
.residence-hero{padding-block:54px 42px;align-items:end}
.residence-hero .hero-aside{max-width:335px}
.residence-hero .hero-aside>p:first-child{margin-bottom:12px}
.residence-hero .status{color:var(--gold);margin-bottom:20px}
.property-figure>img{height:auto;max-height:none;aspect-ratio:1808/870}
.specs{margin-top:28px}
.residence-sections{position:sticky;top:106px;z-index:10;background:var(--paper);padding-block:12px;gap:8px 30px}
.residence-sections a{min-height:44px;display:inline-flex;align-items:center}
#upstairs,#design,#interiors,#layout,#features{scroll-margin-top:76px}
.residence-wellness{border-top:0;padding-block:72px}
.residence-wellness .section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:14px 70px;align-items:end;margin-bottom:48px}
.residence-wellness .section-heading .eyebrow{grid-column:1/-1;margin-bottom:0}
.residence-wellness .section-heading>p:last-child{margin:0;max-width:410px;font-size:16px}
.room-feature{display:grid;grid-template-columns:1.75fr .85fr;gap:58px;align-items:center;margin-top:48px}
.room-feature-reverse{grid-template-columns:.85fr 1.75fr}
.room-feature-reverse .feature-image{grid-column:2;grid-row:1}
.room-feature-reverse .room-feature-copy{grid-column:1;grid-row:1}
.feature-image{display:block;position:relative;padding:0;border:0;background:var(--panel);overflow:hidden;width:100%;text-align:left}
.feature-image img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;transition:transform .65s ease}
.feature-image:hover img{transform:scale(1.012)}
.feature-image-label{position:absolute;bottom:15px;left:15px;right:15px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:10px;letter-spacing:.12em;pointer-events:none;text-shadow:0 1px 8px #182a22}
.feature-image-label>span{display:grid;place-items:center;background:var(--green);color:var(--paper);width:44px;height:44px;border-radius:50%;font-size:22px;text-shadow:none}
.room-feature-copy{min-width:0}
.room-feature-copy .eyebrow{font-size:10px;margin-bottom:20px}
.room-feature-copy h3{font-size:clamp(2.6rem,3.5vw,3.8rem);margin-bottom:24px}
.room-feature-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted)}
.room-feature-copy .room-dimension{font-size:14px;color:var(--gold);margin-block:22px 10px;font-weight:500}
.feature-disclosure .disclosure-body>p:last-child{font-size:13px;color:var(--muted);line-height:1.8}
.mobile-disclosure{margin-top:18px}
.mobile-disclosure>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding-block:12px;min-height:44px;border-bottom:1px solid var(--line);font-size:13px;font-weight:500}
.mobile-disclosure>summary::-webkit-details-marker,.planning-disclosure>summary::-webkit-details-marker{display:none}
.mobile-disclosure>summary>span{font-size:22px;line-height:1;color:var(--gold);font-weight:400}
.mobile-disclosure[open]>summary>span{transform:rotate(45deg)}
.laundry-note{margin-top:44px;padding:28px 32px;background:var(--panel);display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:center}
.laundry-note .eyebrow{font-size:10px;margin:0}
.laundry-note h3{font-size:2rem;margin-bottom:10px}
.laundry-note p:not(.eyebrow){font-size:14px;line-height:1.7;color:var(--muted)}
.residence-wellness>.caption{margin-top:20px;font-size:11px}
.residence-design{padding-block:70px 80px;display:grid;grid-template-columns:1.15fr 1fr;gap:75px;align-items:center;border-top:1px solid var(--line)}
.residence-design-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.residence-design-image .caption{display:block;margin-top:10px}
.residence-design .detail-copy h2{font-size:clamp(2.6rem,3.3vw,3.6rem);margin-bottom:24px}
.residence-design .detail-copy p:not(.eyebrow){font-size:15px}
.design-outdoor{padding-top:20px;border-top:1px solid var(--line)}
.design-outdoor strong{font-weight:500;color:var(--ink)}
.gallery-count-label{font-size:10px;letter-spacing:.1em;color:var(--gold);white-space:nowrap;margin-bottom:5px}
.gallery-tile{min-width:0}
.gallery-image>img{aspect-ratio:4/3;height:auto}
.gallery-tile:nth-child(3n+2){transition-delay:60ms}
.gallery-tile:nth-child(3n){transition-delay:120ms}
.residence-layout .section-heading>p:last-child{max-width:650px}
.residence-layout-grid article>p{max-width:480px;margin-bottom:0}
.floor-disclosure .disclosure-body ul{margin-top:20px}
.details-intro{font-size:15px;line-height:1.8;max-width:300px;color:var(--muted);margin-top:24px}
.residence-details .faq-list details:first-child{padding-top:20px}
.property-measurements>div{grid-template-columns:minmax(0,1fr) minmax(100px,auto)}
.company-residence-link{margin-left:24px}
.contact-section{grid-template-rows:auto 1fr;align-items:start;row-gap:28px}
.contact-intro{grid-column:1;grid-row:1}
.contact-section .form-panel{grid-column:2;grid-row:1/3}
.contact-section>.contact-credentials{grid-column:1;grid-row:2;margin:0}
.planning-disclosure{min-width:0}
.planning-disclosure>summary{list-style:none;cursor:pointer}
.planning-disclosure summary h3{display:flex;justify-content:space-between;align-items:center;gap:20px}
.planning-disclosure summary h3>span{display:none}
.mobile-reading-hint{display:none}

/* Reveal is an enhancement: source HTML and unsupported browsers stay visible. */
[data-reveal]{transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.3,1)}
[data-reveal].is-reveal-pending{opacity:0;transform:translate3d(0,18px,0)}
[data-reveal].is-revealed,[data-reveal].is-reveal-pending:focus-within{opacity:1;transform:none}

@media(min-width:761px){
  .mobile-disclosure[open]>summary{display:none}
  .planning-disclosure>summary{cursor:default}
}
@media(max-width:1050px){
  .room-feature{gap:36px;grid-template-columns:1.6fr 1fr}
  .room-feature-reverse{grid-template-columns:1fr 1.6fr}
  .room-feature-copy h3{font-size:2.8rem}
  .residence-wellness .section-heading{gap:14px 40px}
  .residence-design{gap:40px;grid-template-columns:1fr 1fr}
  .company-residence-link{display:table;margin-left:0;margin-top:12px}
}
@media(max-width:760px){
  body{line-height:1.65}
  .eyebrow{margin-bottom:16px}
  .showcase-copy{padding-block:48px 65px;min-height:560px}
  .home-showcase{min-height:560px}
  .showcase-description{font-size:16px;line-height:1.6;margin-block:20px 24px}
  .showcase-copy h1{font-size:clamp(2.65rem,8.6vw,4rem)}
  .showcase-actions{gap:12px 22px}
  .showcase-disclosure{font-size:9px}
  .intro-grid{gap:24px}
  .intro-grid p,.prose p:not(.eyebrow),.detail-copy p:not(.eyebrow),.card-copy p:not(.eyebrow),.custom-card p:not(.eyebrow),.build-hero p:not(.eyebrow){font-size:16px;line-height:1.7}
  .card-image img{height:auto;aspect-ratio:4/3}
  .card-copy{padding:24px}
  .custom-card{min-height:310px;padding:28px}
  .custom-card h3{font-size:3rem;margin-bottom:20px}
  .detail-image img{height:auto;aspect-ratio:4/3}
  .page-hero{padding-block:38px 32px}
  .page-hero .hero-lede{font-size:16px;line-height:1.65;margin-top:22px}
  .about-split{gap:28px;padding-bottom:44px}
  .portrait-image img{height:auto;aspect-ratio:5/4}
  .prose h2{margin-bottom:22px}
  .company-residence-link{display:table;margin-left:0;margin-top:12px}
  .company-facts{padding-block:36px 48px;gap:24px}
  .company-facts dl>div{font-size:14px}
  .company-facts h2{font-size:2.5rem}
  .build-hero{gap:28px;padding-bottom:42px}
  .build-hero figure img{height:auto;aspect-ratio:4/3}
  .planning-section{gap:20px;padding-block:36px 44px}
  .planning-heading h2{margin-bottom:20px}
  .planning-heading>p:last-of-type{font-size:16px;line-height:1.7;margin-bottom:12px}
  .mobile-reading-hint{display:block;font-size:12px;color:var(--gold)}
  .planning-steps>li{padding-block:0;gap:14px;align-items:start}
  .planning-steps>li:first-child{border-top:1px solid var(--line)}
  .step-number{font-size:24px;padding-top:20px}
  .planning-disclosure summary{padding-block:18px;min-height:60px}
  .planning-disclosure summary h3{font-size:1.7rem;line-height:1.2;margin:0}
  .planning-disclosure summary h3>span{display:block;flex-shrink:0;font:24px/1 var(--sans);color:var(--gold)}
  .planning-disclosure[open] summary h3>span{transform:rotate(45deg)}
  .planning-disclosure .disclosure-body{padding-bottom:22px}
  .planning-steps p{font-size:16px;line-height:1.7}
  .planning-steps .step-question{font-size:14px;line-height:1.7}
  .faq-list summary{min-height:44px;align-items:center;font-size:15px;line-height:1.55}
  .faq-list details{padding-block:12px}
  .faq-list details p{font-size:16px;line-height:1.7}
  .residence-hero{gap:20px;padding-block:34px 28px}
  .residence-hero h1{font-size:clamp(2rem,8.5vw,3.6rem)}
  .residence-hero .eyebrow{font-size:9px;letter-spacing:.09em}
  .residence-hero .hero-aside{margin:0;max-width:none}
  .residence-hero .hero-aside>p:first-child{font-size:16px;line-height:1.6;margin-bottom:12px}
  .residence-hero .status{font-size:12px;margin-bottom:16px}
  .serif-lede{font-size:25px;margin-top:16px}
  .property-figure>img{height:auto;aspect-ratio:1808/870}
  .property-figure figcaption{font-size:10px;padding-top:8px}
  .specs{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px;padding-block:20px;gap:18px 24px}
  .specs>div:first-child{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:16px}
  .specs>div:first-child strong{margin:0;font-size:40px}
  .specs strong{font-size:32px;margin-top:4px}
  .specs span{font-size:11px}
  .specs-note{font-size:11px;line-height:1.7;padding-top:12px}
  .residence-sections{top:87px;flex-wrap:nowrap;gap:8px 20px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-block:8px;margin-top:18px;font-size:12px}
  .residence-sections a{flex-shrink:0;padding-block:8px}
  #upstairs,#design,#interiors,#layout,#features{scroll-margin-top:74px}
  .residence-wellness{padding-block:42px 44px}
  .residence-wellness .section-heading{display:block;margin-bottom:28px}
  .residence-wellness .section-heading .eyebrow{margin-bottom:16px}
  .residence-wellness .section-heading>p:last-child{font-size:16px;line-height:1.7;margin-top:20px;max-width:none}
  .room-feature,.room-feature-reverse{grid-template-columns:1fr;gap:23px;margin-top:36px}
  .room-feature:first-of-type{margin-top:0}
  .room-feature-reverse .feature-image,.room-feature-reverse .room-feature-copy{grid-column:auto;grid-row:auto}
  .feature-image-label{bottom:10px;left:12px;right:10px;font-size:9px}
  .feature-image img{height:auto;aspect-ratio:1672/941}
  .room-feature-copy .eyebrow{margin-bottom:12px}
  .room-feature-copy h3{font-size:2.8rem;margin-bottom:18px}
  .room-feature-copy>p:not(.eyebrow){font-size:16px;line-height:1.7;margin-bottom:0}
  .mobile-disclosure{margin-top:12px}
  .mobile-disclosure>.disclosure-body{padding-block:16px 3px}
  .mobile-disclosure .disclosure-body>p{font-size:16px;line-height:1.7}
  .room-feature-copy .room-dimension{margin-block:0 12px;font-size:14px}
  .laundry-note{display:block;margin-top:32px;padding:24px}
  .laundry-note .eyebrow{margin-bottom:14px}
  .laundry-note h3{font-size:1.9rem}
  .laundry-note p:not(.eyebrow){font-size:16px;line-height:1.7}
  .residence-wellness>.caption{font-size:11px;line-height:1.7;margin-top:18px}
  .residence-design{grid-template-columns:1fr;gap:27px;padding-block:42px 44px}
  .residence-design .detail-copy p:not(.eyebrow){font-size:16px;line-height:1.7}
  .residence-design .detail-copy h2{font-size:2.65rem}
  .gallery-section{padding-bottom:40px}
  .gallery-count-label{display:block;margin-top:18px;margin-bottom:0}
  .gallery-grid{gap:22px 14px}
  .gallery-image>img{height:auto;aspect-ratio:4/3}
  .gallery-tile{font-size:13px;line-height:1.5}
  .expand{width:44px;height:44px;right:8px;bottom:8px}
  .gallery-tile:nth-child(even){transition-delay:50ms}
  .gallery-tile:nth-child(odd){transition-delay:0ms}
  .residence-layout,.residence-details{padding-block:38px 44px}
  .residence-layout .section-heading>p:last-child{font-size:16px;line-height:1.7;margin-top:20px}
  .residence-layout-grid{gap:28px}
  .residence-layout-grid article{padding-top:22px}
  .residence-layout-grid article>p,.residence-layout-grid li{font-size:16px;line-height:1.7}
  .residence-layout-grid h3{font-size:2rem;margin-bottom:16px}
  .floor-disclosure .disclosure-body ul{margin-top:0}
  .floor-disclosure li{margin-bottom:12px}
  .details-intro{margin-top:20px;font-size:16px;max-width:none}
  .residence-details{gap:26px}
  .residence-details .faq-list details:first-child{padding-top:12px}
  .property-measurements>div{font-size:13px;gap:12px;line-height:1.65}
  .property-measurements dd{white-space:nowrap}
  .neighborhood{padding-block:38px 42px}
  .neighborhood .section-heading p:last-child{font-size:16px;margin-top:20px}
  .neighborhood iframe{height:260px}
  .place-list>a{min-height:52px}
  .place-list .caption{font-size:11px}
  .project-updates{padding-block:38px 44px}
  .project-updates p:not(.eyebrow):not(.caption){font-size:16px;line-height:1.7}
  .project-actions{gap:14px 22px}
  .contact-section{grid-template-rows:auto;gap:24px;padding-block:34px 44px}
  .contact-intro,.contact-section .form-panel,.contact-section>.contact-credentials{grid-column:auto;grid-row:auto}
  .contact-intro h1{margin-bottom:22px}
  .contact-intro>p:not(.eyebrow){font-size:16px;line-height:1.7;margin-bottom:0}
  .contact-note{margin-top:18px;padding-top:18px}
  .contact-note .eyebrow{margin-bottom:8px;font-size:10px}
  .contact-note p{font-size:14px;line-height:1.65}
  .contact-section>.contact-credentials{margin-top:0;font-size:12px}
  .form-panel{padding:25px 20px}
  .field{margin-bottom:20px}
  .form-panel h2{margin-bottom:24px}
  .field-hint{font-size:12px;line-height:1.6}
  .form-privacy{font-size:11px;line-height:1.7}
  .cta-band h2{font-size:2.5rem;margin-bottom:16px}
  .cta-band p:not(.eyebrow){font-size:16px;line-height:1.7}
  .footer-top{gap:26px}
  .footer-top nav a{display:flex;align-items:center;min-height:44px}
  .text-link,.showcase-link,.button{min-height:44px}
  dialog{max-height:calc(100dvh - 24px);padding:16px;width:calc(100% - 24px)}
  .dialog-top{gap:12px;padding-bottom:12px}
  .dialog-top>span{font-size:10px}
  .dialog-top button{min-height:44px;padding-inline:8px}
  dialog img{max-height:58dvh}
  .dialog-bottom{flex-direction:column;gap:18px;padding-top:18px}
  .dialog-bottom>p{font-size:24px;line-height:1.2}
  .dialog-bottom>div{width:100%;justify-content:space-between;gap:14px}
  .dialog-bottom button{width:48px;height:48px}
  .dialog-bottom #gallery-count{font-size:12px}
  dialog>.caption{font-size:10px}
  [data-reveal]{transition-duration:.45s}
  [data-reveal].is-reveal-pending{transform:translate3d(0,12px,0)}
  [data-reveal].is-revealed,[data-reveal].is-reveal-pending:focus-within{transform:none}
}
@media(max-width:390px){
  .home-showcase,.showcase-copy{min-height:560px}
  .company-facts dl>div{grid-template-columns:1fr 1.4fr;gap:12px}
  .room-feature-copy h3{font-size:2.6rem}
  .project-actions{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  [data-reveal],[data-reveal].is-reveal-pending,[data-reveal].is-revealed{opacity:1;transform:none;transition:none}
}

/* Present the whole residence before its signature recreation spaces. */
.residence-design{border-top:0;padding-block:68px 72px}
.residence-wellness{border-top:1px solid var(--line);padding-block:64px 72px}
.amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.amenity-grid .room-feature{display:block;margin:0;min-width:0}
.amenity-card .room-feature-copy{padding-top:24px}
.amenity-card .room-feature-copy h3{font-size:2.65rem;margin-bottom:18px}
.amenity-card .room-feature-copy>p{max-width:530px;margin-bottom:0}
.amenity-card .feature-disclosure{margin-top:0}
.amenity-card .feature-disclosure .room-dimension{margin-top:18px}
.amenity-card .disclosure-body>p:last-child{max-width:510px}
.gallery-afterword{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:25px}
.gallery-afterword .caption{margin:0;max-width:580px}
.gallery-afterword .text-link{flex-shrink:0}
@media(max-width:1050px){
  .amenity-grid{gap:28px}
  .amenity-card .room-feature-copy h3{font-size:2.4rem}
  .gallery-afterword{gap:28px;align-items:start}
  .gallery-afterword .caption{max-width:440px}
}
@media(max-width:760px){
  .residence-design{padding-block:40px 44px}
  .residence-wellness{padding-block:38px 44px}
  .amenity-grid{grid-template-columns:1fr;gap:34px}
  .amenity-card .room-feature-copy{padding-top:22px}
  .amenity-card .room-feature-copy h3{font-size:2.35rem;margin-bottom:16px}
  .amenity-card .feature-disclosure{margin-top:12px}
  .amenity-card .feature-disclosure .room-dimension{margin-top:0}
  .gallery-afterword{display:block;margin-top:22px}
  .gallery-afterword .caption{max-width:none;font-size:11px;line-height:1.7}
  .gallery-afterword .text-link{margin-top:12px;gap:22px}
}

/* Short mobile copy and full details on request. */
.mobile-copy{display:none}
.neighborhood-disclosure{margin-top:0;min-width:0}
@media(max-width:760px){
  .desktop-copy,.desktop-only{display:none!important}
  .mobile-copy{display:inline}
  /* A wide exterior cannot fill a portrait frame without losing the house. */
  .home-showcase{height:auto;min-height:0;background:var(--green)}
  .showcase-image{position:relative;inset:auto;z-index:0;display:block;width:100%;height:auto;aspect-ratio:1808/870;object-fit:contain;object-position:center}
  .showcase-shade{display:none}
  .showcase-copy{position:relative;height:auto;min-height:0;justify-content:start;padding-block:30px 36px}
  .showcase-copy .eyebrow{margin-bottom:18px}
  .showcase-copy h1{font-size:clamp(2.65rem,8.6vw,4rem)}
  .showcase-description{margin-block:18px 22px}
  .showcase-disclosure{top:calc(48.12vw - 28px);bottom:auto;right:12px;padding:4px 8px;max-width:calc(100% - 24px);background:rgba(14,31,23,.76);font-size:9px}
  .featured-strip p:nth-child(2){display:none}
  .company-facts,.contact-note{display:none}
  .company-approach{margin-bottom:20px}
  .company-approach>.disclosure-body p{margin:0}
  .cta-band>div>p:not(.eyebrow){display:none}
  .cta-band h2{margin-bottom:0}
  .residence-layout .section-heading>.eyebrow,.residence-details .section-heading>.eyebrow{display:none}
  .residence-layout-grid{gap:0}
  .residence-layout-grid article{border-top:0;padding-top:0}
  .residence-layout-grid article>.index,.residence-layout-grid article>h3,.residence-layout-grid article>p{display:none}
  .floor-disclosure{margin-top:0}
  .floor-disclosure>summary{font-size:17px;padding-block:18px;min-height:58px}
  .neighborhood .section-heading{margin-bottom:24px}
  .neighborhood-disclosure>.disclosure-body{padding-block:16px 0}
  .neighborhood-disclosure .place-label{font-size:9px}
  .project-updates>.caption{display:none}
}

/* One cinematic opening, followed by the residence facts and still gallery. */
.legend-opening{position:relative;isolation:isolate;overflow:hidden;background:var(--green);color:var(--paper);height:clamp(600px,calc(100svh - 106px),840px)}
.legend-opening-media{position:absolute;inset:0}
.legend-opening-poster,.legend-opening-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;pointer-events:none}
.legend-opening-video{opacity:0;transition:opacity .8s ease}
.legend-opening.is-film-playing .legend-opening-video{opacity:1}
.legend-opening-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,25,19,.68),rgba(11,25,19,.2) 60%,rgba(11,25,19,.03)),linear-gradient(0deg,rgba(11,25,19,.78),rgba(11,25,19,.12) 65%)}
.legend-opening-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:end;height:100%;padding-block:70px 100px}
.legend-opening-copy .eyebrow{font-size:11px;letter-spacing:.15em;color:#e9dfc7;margin-bottom:22px}
.legend-opening-copy h1{font-size:clamp(3.6rem,7vw,7rem);line-height:1.03;letter-spacing:-.025em;margin:0;color:#fff}
.legend-opening-copy .serif-lede{font-size:clamp(1.75rem,2.4vw,2.4rem);line-height:1.3;margin:18px 0 0;color:#f3ede0}
.legend-opening-copy .serif-lede em{color:#e9dfc7}
.legend-opening-copy .status{font-size:12px;letter-spacing:.025em;margin:24px 0 0;color:#e6e7de}
.legend-opening-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 30px;margin-top:26px}
.legend-opening-actions .showcase-link{border-color:#d7d6c3}
.legend-opening-controls{position:absolute;inset:auto 0 20px;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:44px}
.legend-opening-controls p{margin:0;font-size:10px;line-height:1.5;letter-spacing:.035em;color:#fff;text-shadow:0 1px 5px #12231b}
.film-toggle{flex-shrink:0;min-height:44px;min-width:108px;padding:10px 15px;background:rgba(18,35,27,.46);border:1px solid #ffffff85;color:#fff;font-size:11px;line-height:1.3;transition:background .2s}
.film-toggle:hover{background:rgba(18,35,27,.76)}
.film-toggle:focus-visible{outline:2px solid #fff;outline-offset:4px}
.film-toggle[hidden]{display:none}
@media(min-width:761px) and (max-width:1050px){
  .legend-opening{height:clamp(520px,60vw,660px)}
  .legend-opening-copy{padding-bottom:90px}
}
@media(max-width:760px){
  .legend-opening{height:auto;min-height:0}
  .legend-opening-media{position:relative;inset:auto;width:100%;aspect-ratio:16/9}
  .legend-opening-poster,.legend-opening-video{object-fit:contain;object-position:center}
  .legend-opening-shade{background:linear-gradient(0deg,rgba(11,25,19,.5),transparent 45%)}
  .legend-opening-copy{height:auto;padding-block:28px 32px}
  .legend-opening-copy .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:16px}
  .legend-opening-copy h1{font-size:clamp(2.45rem,10vw,3.6rem);line-height:1.08}
  .legend-opening-copy .serif-lede{font-size:24px;line-height:1.3;margin-top:14px}
  .legend-opening-copy .status{font-size:11px;margin-top:16px}
  .legend-opening-actions{margin-top:20px;gap:10px 22px}
  .legend-opening-actions .showcase-link{font-size:13px}
  .legend-opening-controls{bottom:8px;gap:12px}
  .legend-opening-controls p{font-size:9px;max-width:18em}
  .film-toggle{font-size:10px;min-width:100px;padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){
  .legend-opening-video{display:none;transition:none}
}
