.legal-page { background:#0b0c0e; color:#f4f4f2; }
.legal-breadcrumbs { position:absolute; z-index:4; top:108px; left:max(52px,calc((100vw - 1336px)/2)); display:flex; gap:9px; color:#76797f; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.legal-breadcrumbs a { color:inherit; text-decoration:none; }
.legal-main { min-height:100vh; }
.legal-hero { min-height:610px; padding:190px max(52px,calc((100vw - 1336px)/2)) 100px; display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.45fr); gap:9vw; align-items:end; background:linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px) 0 0/12.5% 100%,#0b0c0e; border-bottom:1px solid rgba(255,255,255,.12); }
.legal-kicker { color:#c8cbd1; font-size:10px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.legal-hero h1 { max-width:960px; margin-top:0; font-size:clamp(58px,7vw,104px); font-weight:500; line-height:.91; letter-spacing:-.065em; }
.privacy-page .legal-hero h1 { font-size:clamp(54px,6vw,88px); }
.legal-hero-copy { max-width:48ch; color:#aeb0b5; font-size:16px; line-height:1.7; }
.legal-hero-copy strong { display:block; margin-bottom:15px; color:#f0f1ef; font-size:12px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.legal-content { padding:110px max(52px,calc((100vw - 1336px)/2)) 140px; background:#eeefec; color:#151618; }
.legal-layout { display:grid; grid-template-columns:240px minmax(0,780px); gap:8vw; align-items:start; }
.legal-aside { position:sticky; top:120px; }
.legal-aside p { color:#808287; font-size:9px; letter-spacing:.14em; text-transform:uppercase; }
.legal-aside nav { position:static; margin-top:25px; padding:0; display:block; border:0; border-radius:0; background:none; box-shadow:none; backdrop-filter:none; }
.legal-aside nav a { min-height:44px; display:flex; align-items:center; border-top:1px solid rgba(17,18,20,.16); color:#62646a; font-size:12px; text-decoration:none; }
.legal-aside nav a:last-child { border-bottom:1px solid rgba(17,18,20,.16); }
.legal-aside nav a:hover { color:#111214; }
.legal-article section { padding:0 0 58px; margin-bottom:58px; border-bottom:1px solid rgba(17,18,20,.16); scroll-margin-top:120px; }
.legal-article section:last-child { margin-bottom:0; }
.legal-article h2 { max-width:720px; font-size:clamp(32px,4vw,54px); font-weight:500; line-height:1.03; letter-spacing:-.05em; }
.legal-article h3 { margin-top:28px; font-size:20px; font-weight:500; letter-spacing:-.025em; }
.legal-article p,.legal-article li { color:#5e6065; font-size:15px; line-height:1.75; }
.legal-article h2+p,.legal-article h3+p,.legal-article ul,.legal-article ol { margin-top:24px; }
.legal-article ul,.legal-article ol { padding-left:20px; }
.legal-article li+li { margin-top:10px; }
.legal-article a { color:#151618; text-decoration-thickness:1px; text-underline-offset:3px; }
.company-sheet { border-top:1px solid rgba(17,18,20,.2); }
.company-sheet-row { min-height:88px; display:grid; grid-template-columns:230px 1fr; gap:34px; align-items:center; border-bottom:1px solid rgba(17,18,20,.2); }
.company-sheet-row dt { color:#77797e; font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.company-sheet-row dd { font-size:17px; font-weight:500; line-height:1.45; }
.company-sheet-row--address { min-height:120px; }
.company-actions { margin-top:46px; display:flex; flex-wrap:wrap; gap:10px; }
.company-actions a { min-height:50px; padding:0 18px; display:inline-flex; align-items:center; border:1px solid rgba(17,18,20,.28); border-radius:var(--radius-control); font-size:10px; font-weight:600; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }
.company-actions a:first-child { background:#151618; color:#fff; }
.legal-note { padding:22px 24px; border-left:3px solid #8c8f94; background:rgba(17,18,20,.045); }

@media(max-width:860px){
  .legal-breadcrumbs { top:88px; left:20px; }
  .legal-hero { min-height:auto; padding:145px 20px 76px; grid-template-columns:1fr; gap:44px; }
  .legal-hero h1 { font-size:clamp(47px,12.5vw,64px); }
  .legal-content { padding:76px 20px 100px; }
  .legal-layout { grid-template-columns:minmax(0,1fr); gap:60px; }
  .legal-aside { position:static; min-width:0; max-width:calc(100vw - 40px); }
  .legal-aside nav { display:flex; width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
  .legal-aside nav a { min-width:max-content; padding-right:28px; border-bottom:1px solid rgba(17,18,20,.16); }
  .company-sheet-row { grid-template-columns:1fr; gap:8px; padding:20px 0; }
}
@media(max-width:480px){
  .legal-hero h1 { font-size:46px; }
  .privacy-page .legal-hero h1 { font-size:36px; letter-spacing:-.055em; }
  .legal-hero-copy { font-size:15px; }
  .legal-article section { padding-bottom:44px; margin-bottom:44px; }
  .legal-article h2 { font-size:34px; }
  .company-actions { display:grid; }
  .company-actions a { justify-content:center; }
}
