/* AURORA ESTATES — shared page chrome for the non-ring pages.
   Loads after style.css; only adds what index.html doesn't already define. */

.page{padding-top:64px}
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(16px,4vw,64px)}
.rule{width:40px;height:1px;background:var(--brand-accent);border:0;margin:0 0 20px}
.eyebrow-brass{font:var(--type-eyebrow);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--brand-accent-press);margin:0}
h1,h2,h3{font-weight:500;margin:0;text-wrap:balance}
.d1{font:var(--type-display-1);letter-spacing:var(--tracking-display)}
.d2{font:var(--type-display-2);letter-spacing:var(--tracking-display)}
.d3{font:var(--type-display-3);letter-spacing:var(--tracking-display)}
.body{font:var(--type-body-lg);color:var(--text-on-light-muted);margin:20px 0 0;max-width:62ch;text-wrap:pretty}
.figure{font:var(--type-figure);letter-spacing:var(--tracking-figure);font-variant-numeric:tabular-nums;margin:0}

/* reveal — additive only: without .reveal (or with JS off) content is visible */
.reveal{opacity:0;transform:translateY(22px);transition:opacity 720ms cubic-bezier(.16,1,.3,1),transform 720ms cubic-bezier(.16,1,.3,1)}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}}

/* page hero — full-bleed photograph with a scrim, type never in a capsule */
.page-hero{position:relative;min-height:70vh;display:flex;align-items:flex-end;isolation:isolate;background:var(--canvas-deep)}
.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.05) brightness(.94)}
.page-hero .wrap{position:relative;width:100%;padding-top:280px;padding-bottom:64px;background:linear-gradient(to top,rgba(12,12,12,.94) 0%,rgba(12,12,12,.82) 34%,rgba(12,12,12,.42) 66%,rgba(12,12,12,0) 100%)}
.page-hero h1,.page-hero .d2{color:var(--ink)}
.page-hero .body{color:#d8d8d8}
.on-dark .eyebrow{color:var(--muted-soft)}

/* light bands */
.band{padding:96px 0;background:var(--surface-soft-light)}
.band.alt{background:var(--canvas-light)}
.band.dark{background:var(--canvas);color:var(--ink)}
.band.dark .body,.band.dark .eyebrow{color:var(--body)}
.band.dark .row{border-bottom-color:var(--hairline)}
.band-head{margin-bottom:56px}

/* two-column editorial split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:start}
.split.sticky-left>div:first-child{position:sticky;top:112px}

/* specification grid — hairlines only */
.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border-on-light);border-block:1px solid var(--border-on-light)}
.spec{background:var(--surface-soft-light);padding:40px 32px}
.band.alt .spec{background:var(--canvas-light)}
.spec .cap{font:var(--type-caption-uppercase);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--text-on-light-muted);margin:14px 0 0}

/* fact rows */
.rows{display:grid;gap:0}
.row{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:20px 0;border-bottom:1px solid var(--border-on-light);font:var(--type-body-lg)}
.row span:last-child{color:var(--text-on-light-muted);font-variant-numeric:tabular-nums}

/* chapters */
.chapter{display:flex;gap:24px;align-items:baseline;font:var(--type-caption-uppercase);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--brand-accent-press)}
.chapter::before{content:"";width:40px;height:1px;background:var(--brand-accent);align-self:center}

/* gallery strip */
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.strip img{aspect-ratio:4/5;object-fit:cover;width:100%;filter:saturate(.9) contrast(1.05) brightness(.94)}
.strip img:first-child{grid-column:span 2;aspect-ratio:auto;height:100%}

/* buttons */
.btn-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}
.btn-ghost{height:48px;padding:0 28px;display:inline-flex;align-items:center;border:1px solid var(--border-on-light);font:var(--type-button);letter-spacing:var(--tracking-button);text-transform:uppercase;transition:border-color 240ms ease,background 240ms ease}
.btn-ghost:hover{border-color:var(--text-on-light);background:rgba(24,24,24,.06)}
.on-dark .btn-ghost,.page-hero .btn-ghost{border-color:rgba(255,255,255,.55);color:var(--ink)}
.on-dark .btn-ghost:hover,.page-hero .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.arrow{display:inline-block;margin-left:10px;transition:transform 420ms cubic-bezier(.16,1,.3,1)}
a:hover .arrow,button:hover .arrow{transform:translateX(5px)}

/* advisor plate — the one container on dark */
.plate{background:var(--canvas-elevated);color:var(--ink);padding:32px;display:flex;gap:28px;align-items:flex-start}
.plate img{width:120px;height:150px;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.plate .num{font:var(--type-figure-sm);color:var(--brand-accent);letter-spacing:var(--tracking-figure);margin:0 0 12px}
.plate p{color:var(--body);font:var(--type-body);margin:8px 0 0;max-width:34ch}

/* form */
.form{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
.field{display:flex;flex-direction:column;gap:10px}
.field.wide{grid-column:1/-1}
.field label{font:var(--type-caption-uppercase);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--text-on-light-muted)}
.field input,.field select,.field textarea{height:48px;padding:0 16px;border:1px solid var(--border-on-light);border-radius:4px;background:var(--canvas-light);font:var(--type-body-lg);font-family:var(--font-sans);color:var(--text-on-light)}
.field textarea{height:132px;padding:14px 16px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brand-accent)}

/* footer */
.foot{background:var(--canvas);color:var(--body);padding:96px 0 40px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px}
.foot h4{font:var(--type-caption-uppercase);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--ink);margin:0 0 20px;font-weight:600}
.foot a,.foot li{color:var(--body);font:var(--type-body-sm);display:block;padding:7px 0}
.foot a:hover{color:var(--brand-accent-hover)}
.foot ul{list-style:none;margin:0;padding:0}
.foot .mark{font:var(--type-nav);font-weight:600;text-transform:uppercase;letter-spacing:.34em;color:var(--ink)}
.foot-base{display:flex;justify-content:space-between;gap:24px;margin-top:72px;padding-top:24px;border-top:1px solid var(--hairline);font:var(--type-caption);color:var(--muted)}

@media (max-width:1100px){
  .split{gap:56px}
  .specs{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr;gap:40px}
}
@media (max-width:860px){
  .band{padding:64px 0}
  .split{grid-template-columns:1fr}
  .split.sticky-left>div:first-child{position:static}
  .strip{grid-template-columns:1fr 1fr}
  .strip img:first-child{grid-column:span 2}
  .form{grid-template-columns:1fr}
  .plate{flex-direction:column}
  .page-hero{min-height:60vh}
  .foot-base{flex-direction:column}
}
