:root { --legal-paper:#f5eee3; --legal-ink:#172229; --legal-muted:#5b686c; --legal-koi:#df6637; --legal-line:rgba(23,34,41,.14); }
.legal-page { background:#071017; }
.legal-page main { background:var(--legal-paper); color:var(--legal-ink); }
.legal-shell { width:min(1180px, calc(100% - 48px)); margin-inline:auto; }
.legal-hero { position:relative; min-height:540px; display:flex; align-items:flex-end; overflow:hidden; isolation:isolate; color:#fff8ed; background:#071017; }
.legal-hero__art { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(3,11,16,.96),rgba(3,11,16,.73) 50%,rgba(3,11,16,.28)),url('../assets/footer-neo-tattoo-full-v9.webp') center/cover no-repeat; opacity:.94; }
.legal-hero::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,#071017 0,transparent 42%),radial-gradient(circle at 78% 22%,rgba(240,120,60,.18),transparent 32%); }
.legal-hero__content { padding:150px 0 76px; }
.legal-breadcrumb { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:38px; color:#aebbbd; font:600 .72rem/1.4 'JetBrains Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.legal-breadcrumb a:hover { color:#ff9a62; }
.legal-eyebrow,.legal-updated { color:#f08a55; font:700 .72rem/1.4 'JetBrains Mono',monospace; letter-spacing:.14em; text-transform:uppercase; }
.legal-hero h1 { max-width:900px; margin:14px 0 22px; font:650 clamp(3.2rem,8vw,7.4rem)/.92 'Sora',sans-serif; letter-spacing:-.07em; }
.legal-hero__content>p:not(.legal-eyebrow) { max-width:720px; margin:0 0 25px; color:#c7d0d1; font-size:clamp(1.05rem,1.6vw,1.28rem); line-height:1.7; }
.legal-updated { display:block; color:#9eacae; font-size:.64rem; }
.legal-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:clamp(50px,8vw,118px); padding-block:90px 120px; align-items:start; }
.legal-index { position:sticky; top:120px; display:grid; gap:13px; padding:24px 0; border-block:1px solid var(--legal-line); }
.legal-index strong { margin-bottom:5px; color:#7a8588; font:700 .68rem 'JetBrains Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.legal-index a { width:fit-content; color:#344349; font-size:.91rem; transition:color .2s ease,transform .2s ease; }
.legal-index a:hover { color:var(--legal-koi); transform:translateX(4px); }
.legal-content { min-width:0; }
.legal-content section { position:relative; padding:0 0 56px 68px; margin-bottom:56px; border-bottom:1px solid var(--legal-line); scroll-margin-top:120px; }
.legal-content section:last-child { margin-bottom:0; border-bottom:0; }
.legal-number { position:absolute; top:6px; left:0; color:var(--legal-koi); font:700 .72rem 'JetBrains Mono',monospace; letter-spacing:.1em; }
.legal-content h2 { margin:0 0 22px; color:var(--legal-ink); font:650 clamp(1.8rem,3vw,2.8rem)/1.08 'Sora',sans-serif; letter-spacing:-.045em; }
.legal-content p,.legal-content li { color:var(--legal-muted); font-size:1rem; line-height:1.78; }
.legal-content p+p { margin-top:16px; }
.legal-content ul { display:grid; gap:10px; padding-left:20px; }
.legal-content a { color:#a83f2d; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.legal-content code { padding:.15em .38em; border-radius:5px; color:#8f3828; background:rgba(223,102,55,.1); font-family:'JetBrains Mono',monospace; font-size:.86em; }
.legal-data { display:grid; gap:0; margin:0 0 24px; border-top:1px solid var(--legal-line); }
.legal-data>div { display:grid; grid-template-columns:150px minmax(0,1fr); gap:24px; padding:15px 0; border-bottom:1px solid var(--legal-line); }
.legal-data dt { color:#788487; font:700 .68rem 'JetBrains Mono',monospace; letter-spacing:.09em; text-transform:uppercase; }
.legal-data dd { margin:0; overflow-wrap:anywhere; }
.legal-missing { color:#9c321f; }
.legal-table-wrap { margin:8px 0 23px; overflow-x:auto; border:1px solid var(--legal-line); border-radius:16px; background:rgba(255,255,255,.42); }
.legal-content table { width:100%; min-width:700px; border-collapse:collapse; }
.legal-content th,.legal-content td { padding:17px 19px; text-align:left; vertical-align:top; border-bottom:1px solid var(--legal-line); }
.legal-content tr:last-child td { border-bottom:0; }
.legal-content th { color:#6d797c; background:rgba(23,34,41,.035); font:700 .66rem 'JetBrains Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.legal-content td { color:#4e5b60; line-height:1.55; }
.legal-consent-button { min-height:48px; margin:24px 0; padding:12px 20px; border:1px solid #c5522f; border-radius:999px; color:#fff; background:linear-gradient(135deg,#c74d31,#e17a3c); font-weight:750; cursor:pointer; box-shadow:0 12px 28px rgba(166,59,34,.18); }
.legal-consent-button:hover { transform:translateY(-2px); box-shadow:0 16px 35px rgba(166,59,34,.25); }
@media(max-width:820px){.legal-layout{grid-template-columns:1fr;gap:35px;padding-block:60px 90px}.legal-index{position:relative;top:auto;grid-template-columns:repeat(2,minmax(0,1fr));}.legal-index strong{grid-column:1/-1}.legal-content section{padding-left:45px}.legal-data>div{grid-template-columns:1fr;gap:6px}.legal-hero{min-height:500px}.legal-hero__content{padding-top:125px}}
@media(max-width:520px){.legal-shell{width:min(100% - 30px,1180px)}.legal-hero{min-height:470px}.legal-hero h1{font-size:clamp(2.75rem,16vw,4.3rem)}.legal-index{grid-template-columns:1fr}.legal-content section{padding-left:35px;margin-bottom:42px;padding-bottom:42px}.legal-content p,.legal-content li{font-size:.94rem}.legal-table-wrap{margin-inline:-5px}}
@media(prefers-reduced-motion:reduce){.legal-index a,.legal-consent-button{transition:none}}
