/* Shared visual tokens and page foundation. */

:root{
  --page-ink:#141210;
  --panel-ink:#191613;
  --metal:#C6A15B;
  --metal-light:#DDBB77;
  --metal-muted:rgba(198,161,91,.5);
  --rule:rgba(198,161,91,.22);
  --rule-faint:rgba(198,161,91,.11);
  --paper:#EDE6D8;
  --paper-muted:rgba(237,230,216,.82);
  --display-face:'Cormorant Garamond',Georgia,serif;
  --body-face:'Source Sans 3','Helvetica Neue',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
body{
  font-family:var(--body-face);
  background:var(--page-ink);
  color:var(--paper);
  font-size:16.5px;line-height:1.85;font-weight:300;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--metal);color:#141210}

[data-ui~="film-grain"]{position:fixed;inset:-50%;z-index:2000;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E")}

[data-ui~="page-width"]{max-width:720px;margin-inline:auto;padding-inline:24px}
a{color:inherit}
h1,h2,h3{font-family:var(--display-face);font-weight:600;overflow-wrap:anywhere;min-width:0}
img{max-width:100%;display:block}

/* ── nav ── */
[data-ui~="masthead"]{position:sticky;top:0;z-index:100;background:rgba(20,18,16,.9);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--rule-faint)}
[data-ui~="masthead__row"]{display:flex;align-items:center;justify-content:space-between;padding-block:14px}
[data-ui~="masthead__cta"]{padding:11px 22px;display:inline-flex;align-items:center;gap:9px}
[data-ui~="wordmark"]{font-family:var(--display-face);font-size:1.1rem;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}
[data-ui~="wordmark"] b{color:var(--metal);font-weight:600}
[data-ui~="button-link"]{
  display:inline-block;font-family:var(--body-face);font-weight:400;font-size:.82rem;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--metal-light);text-decoration:none;
  padding:14px 30px;border:1px solid var(--metal-muted);border-radius:1px;
  transition:background-color .25s,color .25s,border-color .25s,transform .25s;
}
[data-ui~="button-link"]:hover{background:var(--metal);color:#141210;border-color:var(--metal)}
[data-ui~="button-link"]:focus-visible{outline:1px solid var(--paper);outline-offset:4px}
[data-ui~="button-link--filled"]{background:var(--metal);color:#141210;border-color:var(--metal)}
[data-ui~="button-link--filled"]:hover{background:var(--metal-light);border-color:var(--metal-light)}
[data-ui~="button-link--chat"]{display:inline-flex;align-items:center;gap:10px}
[data-ui~="button-link--chat"] img{width:20px;height:20px;flex:none;border-radius:22%}
@media (max-width:559px){
  [data-ui~="wordmark"]{font-size:.92rem;letter-spacing:.12em}
  [data-ui~="masthead"] [data-ui~="button-link"]{padding:9px 14px 8px!important;font-size:.66rem;letter-spacing:.12em}
}

/* ── hero (full-bleed lower manhattan dusk) ── */
[data-ui~="intro-panel"]{position:relative;min-height:94vh;min-height:94svh;display:flex;align-items:center;
  text-align:center;overflow:clip;padding-block:clamp(48px,10vw,80px)}
[data-ui~="intro-panel__photo"]{position:absolute;inset:0;z-index:0}
[data-ui~="intro-panel__photo"] img{width:100%;height:100%;object-fit:cover;object-position:center 30%;
  filter:grayscale(.22) sepia(.2) brightness(.72) contrast(1.04)}
[data-ui~="intro-panel__scrim"]{position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(15,13,11,.66),rgba(15,13,11,.22) 32%,rgba(15,13,11,.34) 58%,rgba(15,13,11,.92) 94%),
    radial-gradient(115% 75% at 50% 18%,rgba(15,13,11,.1),rgba(15,13,11,.5))}
[data-ui~="intro-panel"] [data-ui~="page-width"]{position:relative;z-index:3}
[data-ui~="intro-kicker"]{
  font-size:.7rem;font-weight:600;letter-spacing:.42em;text-transform:uppercase;color:var(--metal);
  display:inline-flex;align-items:center;gap:16px;
}
[data-ui~="intro-kicker"]::before,[data-ui~="intro-kicker"]::after{content:"";width:44px;height:1px;background:var(--metal-muted)}
h1{
  margin-top:26px;
  font-size:clamp(2.3rem,8.4vw,4rem);line-height:1.15;letter-spacing:-.01em;
  text-shadow:0 2px 34px rgba(8,7,6,.6);
}
h1 [data-ui~="highlight"]{color:var(--metal-light);font-style:italic;font-weight:500}
[data-ui~="intro-summary"]{margin:22px auto 0;max-width:32em;color:rgba(237,230,216,.78);font-size:1.02rem}
[data-ui~="intro-cta"]{margin-top:32px}
[data-ui~="delivery-promise"]{margin-top:18px;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(237,230,216,.66)}
[data-ui~="delivery-promise"] i{font-style:normal;color:var(--metal-muted);margin-inline:10px}

/* ornament divider */
[data-ui~="diamond-rule"]{display:flex;align-items:center;gap:18px;margin-top:clamp(34px,7vw,52px)}
[data-ui~="diamond-rule"]::before,[data-ui~="diamond-rule"]::after{content:"";flex:1;height:1px;background:var(--rule-faint)}
[data-ui~="diamond-rule"] span{width:7px;height:7px;background:var(--metal);transform:rotate(45deg)}

[data-ui~="feature-card"][id],[data-ui~="guide-invitation"][id],[data-ui~="story-section"][id]{scroll-margin-top:76px}

