/* Privacy and terms share the studio's design system. This sheet only lays
   long-form legal copy out so it stays readable on a phone and on a wide Mac. */

.legal-page::before{
  background:
    radial-gradient(70% 48% at 75% 3%,var(--brass-faint),transparent 70%),
    linear-gradient(180deg,var(--ink-raise),var(--ink) 38%);
}
.legal-head{
  position:sticky; top:0; z-index:30; padding-block:18px;
  border-bottom:1px solid var(--line); background:rgba(10,11,13,.84);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
}
.legal-head-in,.legal-foot-in{ display:flex; align-items:center; justify-content:space-between; gap:24px; }
.legal-brand{ display:inline-flex; align-items:center; gap:10px; text-decoration:none; }
.legal-brand img{ display:block; border-radius:8px; }
.legal-brand .wm{ font-size:13px; }
.legal-nav{ display:flex; align-items:center; gap:clamp(14px,2.5vw,30px); }
.legal-nav a{ font-size:14px; }
.legal-nav .is-current{ color:var(--brass); }

.legal-hero{ padding-block:clamp(92px,14vh,150px) clamp(64px,9vh,92px); }
.legal-hero h1{ margin-top:24px; max-width:930px; font-size:clamp(3rem,8vw,6.7rem); line-height:.97; }
.legal-hero .lede{ margin-top:28px; max-width:720px; font-size:clamp(16px,1.5vw,20px); }
.legal-meta{ display:flex; flex-wrap:wrap; gap:28px; margin-top:36px; padding-top:22px; border-top:1px solid var(--line); }

.legal-layout{ display:grid; grid-template-columns:220px minmax(0,760px); gap:clamp(44px,8vw,120px); align-items:start; padding-bottom:var(--section); }
.legal-index{ position:sticky; top:110px; display:grid; gap:10px; padding:20px; border:1px solid var(--line); border-radius:14px; background:var(--ink-raise); }
.legal-index .lbl{ margin-bottom:5px; color:var(--brass); }
.legal-index a{ color:var(--paper-dim); font-size:13px; text-decoration:none; }
.legal-index a:hover{ color:var(--paper); }
.legal-copy{ min-width:0; }
.legal-copy section{ padding:0 0 54px; scroll-margin-top:110px; }
.legal-copy section + section{ padding-top:54px; border-top:1px solid var(--line); }
.legal-copy h2{ margin-bottom:22px; font-size:clamp(1.55rem,3.3vw,2.25rem); }
.legal-copy h3{ margin:28px 0 10px; font-size:1.05rem; }
.legal-copy p,.legal-copy li{ color:var(--paper-soft); line-height:1.78; }
.legal-copy p + p{ margin-top:16px; }
.legal-copy ul{ margin:18px 0 0; padding-left:1.2rem; display:grid; gap:10px; }
.legal-copy strong{ color:var(--paper); font-weight:500; }
.legal-copy a{ color:var(--paper); text-underline-offset:3px; }
.legal-callout{ padding:22px 24px; border:1px solid var(--brass-soft); border-radius:14px; background:var(--brass-faint); }
.legal-callout p{ color:var(--paper); }
.legal-foot{ padding-block:34px 48px; border-top:1px solid var(--line); }
.legal-foot nav{ display:flex; flex-wrap:wrap; gap:22px; }

@media(max-width:760px){
  .legal-nav a:first-child{ display:none; }
  .legal-layout{ grid-template-columns:1fr; }
  .legal-index{ position:static; grid-template-columns:1fr 1fr; }
  .legal-index .lbl{ grid-column:1/-1; }
  .legal-foot-in{ align-items:flex-start; flex-direction:column; }
}
@media(max-width:430px){
  .legal-brand .wm{ font-size:11px; }
  .legal-nav{ gap:12px; }
  .legal-nav a{ font-size:12px; }
  .legal-index{ grid-template-columns:1fr; }
  .legal-index .lbl{ grid-column:auto; }
}
