/* Shared legal-page layout. Core colours, buttons, header, footer, cards and animation utilities come from style.css. */
.legal-hero{position:relative;padding:calc(var(--header) + 5.5rem) 0 6rem;overflow:hidden;background:radial-gradient(circle at 80% 18%,rgba(11,61,145,.24),transparent 34%),radial-gradient(circle at 22% 45%,rgba(200,16,46,.18),transparent 32%),linear-gradient(145deg,#0a1931,#0b1e3a 54%,#0c1c34);isolation:isolate}
.legal-hero__layout{display:grid;align-items:center;grid-template-columns:minmax(0,1.12fr) minmax(20rem,.72fr);gap:clamp(3rem,8vw,7rem)}
.legal-breadcrumb{margin-bottom:2.2rem}.legal-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;color:rgba(255,255,255,.52);font-size:var(--xs)}.legal-breadcrumb li+li::before{margin-right:.65rem;color:rgba(255,255,255,.25);content:"/"}.legal-breadcrumb a{transition:color .2s}.legal-breadcrumb a:hover{color:#fff}
.legal-hero h1{max-width:52rem;margin-top:1.2rem;color:#fff;font-size:clamp(3.5rem,7.5vw,6.8rem);letter-spacing:-.07em;line-height:.94}.legal-hero__copy>p{max-width:46rem;margin-top:1.6rem;color:rgba(255,255,255,.62);font-size:var(--lg)}
.legal-hero__meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.legal-hero__meta span{display:grid;min-width:10rem;padding:.8rem 1rem;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);background:rgba(255,255,255,.055);color:#fff;font-size:var(--sm);backdrop-filter:blur(1rem)}.legal-hero__meta b{margin-bottom:.15rem;color:rgba(255,255,255,.42);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase}
.legal-hero__panel{position:relative;padding:clamp(1.7rem,4vw,2.5rem);overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:var(--r-xl);background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.045));box-shadow:0 2.5rem 6rem rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12);backdrop-filter:blur(1.5rem)}.legal-hero__panel::before{position:absolute;right:-4rem;bottom:-5rem;width:14rem;height:14rem;border-radius:50%;background:radial-gradient(circle,rgba(200,16,46,.32),transparent 68%);content:""}.legal-hero__symbol{display:grid;width:5.25rem;height:5.25rem;place-items:center;margin-bottom:2rem;border:1px solid rgba(255,255,255,.16);border-radius:1.65rem;background:var(--gradient);box-shadow:0 1.4rem 3rem rgba(11,61,145,.25);color:#fff;font-size:2.35rem;font-weight:800}.legal-hero__panel small{color:#8dbaff;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.legal-hero__panel h2{margin-top:.75rem;color:#fff;font-size:clamp(1.8rem,3vw,2.65rem)}.legal-hero__panel p{margin-top:1rem;color:rgba(255,255,255,.56);font-size:var(--sm)}.legal-hero__panel .text-link{position:relative;margin-top:1.5rem}
.legal-document{background:linear-gradient(180deg,#fff,#fbfcff 48%,#fff)}.legal-layout{display:grid;grid-template-columns:minmax(15rem,.3fr) minmax(0,1fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}.legal-sidebar{position:sticky;top:calc(var(--header) + 2rem)}.legal-toc{padding:1.5rem;border:1px solid var(--border);border-radius:var(--r-lg);background:rgba(255,255,255,.88);box-shadow:var(--shadow-sm);backdrop-filter:blur(1rem)}.legal-toc ol{display:grid;gap:.15rem;margin:1rem 0 0;padding:0;list-style:none}.legal-toc li{margin:0;padding:0}.legal-breadcrumb ol{margin:0;padding:0;list-style:none}.legal-toc a{display:flex;align-items:flex-start;gap:.7rem;padding:.62rem .65rem;border-radius:.7rem;color:var(--soft);font-size:.79rem;font-weight:650;line-height:1.35;transition:background .2s,color .2s,transform .2s}.legal-toc a span{display:grid;width:1.55rem;height:1.55rem;flex:0 0 auto;place-items:center;border-radius:.45rem;background:rgba(11,61,145,.08);color:var(--primary);font-size:.58rem;font-weight:850}.legal-toc a:hover{background:var(--surface);color:var(--text);transform:translateX(.15rem)}
.legal-help{display:flex;margin-top:1rem;padding:1.25rem;gap:.85rem;border:1px solid rgba(11,61,145,.14);border-radius:var(--r-lg);background:linear-gradient(145deg,rgba(11,61,145,.08),rgba(200,16,46,.05))}.legal-help>span{display:grid;width:2rem;height:2rem;flex:0 0 auto;place-items:center;border-radius:.65rem;background:var(--gradient);color:#fff;font-weight:850}.legal-help strong{font-size:var(--sm)}.legal-help p{margin-top:.25rem;font-size:.75rem}.legal-help a{display:inline-block;margin-top:.5rem;color:var(--primary);font-size:.75rem;font-weight:750}
.legal-content{min-width:0}.legal-overview{display:grid;padding:clamp(1.7rem,4vw,2.5rem);align-items:center;grid-template-columns:minmax(13rem,.72fr) 1fr;gap:2rem;border:1px solid rgba(11,61,145,.14);border-radius:var(--r-xl);background:radial-gradient(circle at 100% 0,rgba(200,16,46,.1),transparent 35%),linear-gradient(145deg,#f6f9ff,#fff);box-shadow:var(--shadow-sm)}.legal-overview span{color:var(--primary);font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.legal-overview h2{margin-top:.5rem;font-size:clamp(1.65rem,3vw,2.45rem)}.legal-overview p{font-size:var(--base)}
.legal-card{scroll-margin-top:calc(var(--header) + 1.5rem);margin-top:1.25rem;padding:clamp(1.65rem,4vw,2.5rem);border:1px solid var(--border);border-radius:var(--r-xl);background:rgba(255,255,255,.94);box-shadow:0 8px 35px rgba(17,24,39,.045);transition:border-color .3s,box-shadow .3s,transform .35s var(--spring)}.legal-card:hover{border-color:rgba(11,61,145,.18);box-shadow:var(--shadow-md);transform:translateY(-3px)}.legal-card__heading{display:flex;align-items:center;gap:1rem}.legal-section__icon{display:grid;width:3rem;height:3rem;flex:0 0 auto;place-items:center;border-radius:.95rem;background:linear-gradient(145deg,rgba(11,61,145,.12),rgba(200,16,46,.08));color:var(--primary);font-size:.72rem;font-weight:850}.legal-card h2{font-size:clamp(1.55rem,2.8vw,2.2rem)}.legal-card__body{margin-top:1.45rem}.legal-card__body>p+p{margin-top:1rem}.legal-card__body a{color:var(--primary);font-weight:700;text-decoration:underline;text-decoration-color:rgba(11,61,145,.25);text-underline-offset:.2em}.legal-card__body a:hover{text-decoration-color:currentColor}.legal-card__body code{padding:.12rem .35rem;border:1px solid var(--border);border-radius:.35rem;background:var(--surface);color:#344054;font-size:.88em}
.legal-list{display:grid;gap:.72rem;margin:1.15rem 0}.legal-list li{position:relative;padding-left:1.65rem;color:var(--soft)}.legal-list li::before{position:absolute;top:.58em;left:.2rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--gradient);box-shadow:0 0 0 .25rem rgba(11,61,145,.08);content:""}.legal-list strong{color:var(--text)}
.legal-steps{display:grid;gap:.75rem;margin:1.15rem 0;counter-reset:legal-step}.legal-steps li{display:grid;padding:1rem 1rem 1rem 4rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);counter-increment:legal-step;position:relative}.legal-steps li::before{position:absolute;top:1rem;left:1rem;display:grid;width:2.15rem;height:2.15rem;place-items:center;border-radius:.65rem;background:var(--gradient);color:#fff;content:counter(legal-step,decimal-leading-zero);font-size:.67rem;font-weight:850}.legal-steps strong{color:var(--text)}.legal-steps span{margin-top:.25rem;color:var(--soft);font-size:var(--sm)}
.legal-note{margin-top:1.35rem;padding:1.2rem 1.25rem;border:1px solid rgba(11,61,145,.18);border-left:4px solid var(--primary);border-radius:var(--r-md);background:rgba(11,61,145,.055)}.legal-note strong{color:var(--text)}.legal-note p{margin-top:.35rem;font-size:var(--sm)}.legal-note--soft{border-color:rgba(200,16,46,.17);border-left-color:var(--violet);background:rgba(200,16,46,.05)}.legal-note--important{border-color:rgba(22,166,106,.2);border-left-color:var(--success);background:rgba(22,166,106,.055)}
.legal-contact{display:grid;width:min(100%,33rem);margin:1.25rem 0;padding:1.25rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.legal-contact strong{font-size:var(--lg)}.legal-contact a{margin-top:.35rem}.legal-contact span{margin-top:.25rem;color:var(--soft);font-size:var(--sm)}
.cookie-table{margin-top:1.25rem;overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-md)}.cookie-table table{width:100%;min-width:34rem;border-collapse:collapse}.cookie-table th,.cookie-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border)}.cookie-table th{background:var(--surface);color:var(--text);font-size:var(--xs);letter-spacing:.06em;text-transform:uppercase}.cookie-table tr:last-child td{border-bottom:0}
.legal-related{display:flex;margin-top:1.25rem;padding:clamp(1.7rem,4vw,2.5rem);align-items:center;justify-content:space-between;gap:2rem;border-radius:var(--r-xl);background:#0a1931;box-shadow:var(--shadow-lg)}.legal-related h2{margin-top:.55rem;color:#fff;font-size:clamp(1.7rem,3vw,2.5rem)}.legal-related>div:last-child{display:grid;min-width:15rem;gap:.35rem}.legal-related a{display:flex;padding:.65rem .8rem;align-items:center;justify-content:space-between;border-radius:.65rem;color:rgba(255,255,255,.64);font-size:var(--sm);font-weight:700;transition:background .2s,color .2s}.legal-related a:hover{background:rgba(255,255,255,.08);color:#fff}
.legal-page .cta-banner{min-height:24rem}
@media(max-width:1024px){.legal-hero__layout{grid-template-columns:minmax(0,1fr) minmax(18rem,.62fr);gap:2.5rem}.legal-layout{grid-template-columns:14rem minmax(0,1fr);gap:2.5rem}}
@media(max-width:820px){.legal-hero{padding-top:calc(var(--header) + 4rem)}.legal-hero__layout,.legal-layout{grid-template-columns:1fr}.legal-hero__copy{max-width:48rem}.legal-hero__panel{max-width:38rem}.legal-sidebar{position:static}.legal-toc nav{max-height:21rem;overflow:auto}.legal-overview{grid-template-columns:1fr}.legal-related{align-items:flex-start;flex-direction:column}.legal-related>div:last-child{width:100%;min-width:0}}
@media(max-width:560px){.legal-page .section{padding-block:4.5rem}.legal-hero{padding-bottom:4.5rem}.legal-hero h1{font-size:clamp(3rem,15vw,4.7rem)}.legal-hero__meta{display:grid;grid-template-columns:1fr 1fr}.legal-hero__meta span{min-width:0}.legal-hero__panel{border-radius:var(--r-lg)}.legal-card,.legal-overview{border-radius:var(--r-lg)}.legal-card__heading{align-items:flex-start}.legal-card__heading h2{padding-top:.3rem}.legal-related{border-radius:var(--r-lg)}.cookie-table{margin-inline:-.4rem}}
@media(max-width:390px){.legal-hero__meta{grid-template-columns:1fr}.legal-card{padding:1.35rem}.legal-steps li{padding-left:3.6rem}.legal-section__icon{width:2.7rem;height:2.7rem}}
