/* CoCaCam legal pages: quiet, readable documents within the Silequity visual system. */
.legal-page{min-height:100vh;background:var(--page);color:var(--ink)}
.legal-page:before{background:radial-gradient(circle at 78% 12%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 28%),linear-gradient(180deg,transparent,rgba(8,10,11,.95))}
.legal-header{position:relative;height:78px;background:rgba(8,10,11,.9);border-bottom:1px solid var(--line)}
.legal-header .brand{flex:0 0 auto}
.legal-nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,34px);margin-left:auto;margin-right:clamp(18px,3vw,46px)}
.legal-nav a{position:relative;color:var(--muted);font-size:13px;font-weight:700;text-decoration:none}
.legal-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--accent);transition:right .18s}
.legal-nav a:hover:after,.legal-nav a:focus-visible:after,.legal-nav a[aria-current=page]:after{right:0}
.legal-nav a[aria-current=page]{color:var(--ink)}
.legal-back{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.legal-back span{color:var(--accent);font-size:16px}
.legal-main{max-width:1320px;margin:0 auto;padding:clamp(64px,9vw,130px) clamp(20px,6vw,90px) 100px}
.legal-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.48fr);gap:48px;align-items:end;padding-bottom:58px;border-bottom:1px solid var(--line)}
.legal-hero .eyebrow{margin-bottom:22px}
.legal-hero h1{margin:0;font-size:clamp(48px,8vw,112px);line-height:.9;letter-spacing:-.075em}
.legal-hero h1 em{color:transparent;font-style:normal;-webkit-text-stroke:1px rgba(242,240,233,.76)}
.legal-lead{max-width:650px;margin:28px 0 0;color:rgba(255,255,255,.72);font-size:clamp(16px,1.5vw,20px);line-height:1.7}
.legal-meta{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;align-self:end;padding:18px 0 2px;border-top:1px solid var(--line);font-size:13px}
.legal-meta span{color:var(--muted)}
.legal-meta strong{font-weight:700;text-align:right}
.legal-body{display:grid;grid-template-columns:190px minmax(0,790px);gap:clamp(42px,8vw,120px);justify-content:center;padding-top:64px}
.legal-toc{position:sticky;top:28px;align-self:start}
.legal-toc p{margin:0 0 16px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.legal-toc a{display:block;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.52);font-size:13px;text-decoration:none;transition:color .18s,padding .18s}
.legal-toc a:hover,.legal-toc a:focus-visible{padding-left:8px;color:var(--accent)}
.legal-content{min-width:0}
.legal-section{padding:0 0 48px;margin:0 0 48px;border-bottom:1px solid var(--line);scroll-margin-top:32px}
.legal-section:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}
.legal-section .section-kicker{margin:0 0 12px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.16em}
.legal-section h2{margin:0 0 18px;font-size:clamp(27px,3vw,42px);line-height:1.05;letter-spacing:-.055em}
.legal-section h3{margin:28px 0 8px;color:var(--ink);font-size:18px;line-height:1.3}
.legal-section p{margin:0 0 16px;color:rgba(255,255,255,.78);font-size:16px;line-height:1.9}
.legal-section p:last-child{margin-bottom:0}
.legal-section ul,.legal-section ol{margin:12px 0 0;padding-left:22px;color:rgba(255,255,255,.78);font-size:16px;line-height:1.9}
.legal-section li{padding-left:4px;margin:4px 0}
.legal-note{display:grid;grid-template-columns:auto 1fr;gap:16px;margin:26px 0;padding:20px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent)}
.legal-note strong{color:var(--accent);font-size:13px;white-space:nowrap}
.legal-note span{color:rgba(255,255,255,.8);font-size:15px;line-height:1.7}
.legal-table{width:100%;border-collapse:collapse;margin:20px 0 0;font-size:15px;line-height:1.65}
.legal-table th,.legal-table td{padding:14px 12px;border:1px solid var(--line);vertical-align:top;text-align:left}
.legal-table th{color:var(--accent);font-size:12px;letter-spacing:.08em;font-weight:800;background:rgba(255,255,255,.035)}
.legal-table td{color:rgba(255,255,255,.78)}
.legal-table td strong{color:var(--ink)}
.legal-email{display:inline-block;color:var(--ink);font-weight:800;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px}
.support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:24px 0 30px;border:1px solid var(--line);background:var(--line)}
.support-card{min-height:150px;padding:20px;background:#0b0e10}
.support-card span{display:block;margin-bottom:34px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.14em}
.support-card strong{display:block;font-size:21px;line-height:1.2}
.support-card p{margin:8px 0 0!important;font-size:14px!important;line-height:1.6!important}
.legal-footer{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px clamp(20px,6vw,90px) 34px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.legal-footer nav{display:flex;gap:18px;flex-wrap:wrap}
.legal-footer a{text-decoration:none}
.legal-footer a:hover,.legal-footer a:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){
  .legal-header{height:auto;min-height:72px;padding:14px 18px;flex-wrap:wrap;gap:16px}
  .legal-nav{order:3;flex:1 0 100%;overflow:auto;margin:0;gap:24px;padding:2px 0 4px}
  .legal-nav a{white-space:nowrap}
  .legal-back{margin-left:auto}
  .legal-main{padding-top:64px}
  .legal-hero{grid-template-columns:1fr;gap:36px;padding-bottom:42px}
  .legal-meta{max-width:420px}
  .legal-body{display:block;padding-top:44px}
  .legal-toc{position:static;margin-bottom:42px}
  .legal-toc nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
  .legal-section{padding-bottom:38px;margin-bottom:38px}
  .legal-table{display:block;overflow-x:auto;white-space:normal}
  .legal-table th,.legal-table td{min-width:150px}
  .legal-footer{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .legal-hero h1{font-size:clamp(44px,14vw,66px)}
  .legal-note{grid-template-columns:1fr;gap:8px}
  .support-grid{grid-template-columns:1fr}
  .legal-toc nav{grid-template-columns:1fr}
}
