@font-face{font-family:"Bricolage Grotesque";src:url("assets/fonts/bricolage-grotesque.woff2") format("woff2");font-style:normal;font-weight:400 800;font-stretch:75% 100%;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url("assets/fonts/nunito-sans.woff2") format("woff2");font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:"Caveat";src:url("assets/fonts/caveat.woff2") format("woff2");font-style:normal;font-weight:500 600;font-display:swap}

:root{--paper:#fffdf7;--ink:#17384c;--sea:#2f78b7;--water:#70bdb0;--green:#68a62b;--sun:#f2cb24;--coral:#ee4438;--line:rgba(23,56,76,.16);--body:"Nunito Sans",sans-serif;--display:"Bricolage Grotesque",sans-serif;--hand:"Caveat",cursive}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.72}
a{color:inherit}
.legal-nav{position:sticky;z-index:10;top:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:82px;padding:10px max(5vw,calc((100vw - 1120px)/2));background:rgba(255,253,247,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.legal-nav img{display:block;width:180px;max-height:60px;object-fit:contain}
.legal-actions{display:flex;align-items:center;gap:.75rem}
.legal-back{font-weight:800;text-decoration:none}
.legal-languages{display:flex;border:1px solid var(--line)}
.legal-languages button{border:0;padding:.65rem .75rem;background:transparent;color:var(--ink);font-weight:900;cursor:pointer}
.legal-languages button.active{background:var(--green);color:#fff}
.legal-hero{position:relative;overflow:hidden;padding:clamp(5rem,10vw,9rem) max(5vw,calc((100vw - 1120px)/2)) clamp(4rem,8vw,7rem);background:var(--ink);color:#fff}
.legal-hero::before{content:"";position:absolute;width:320px;height:320px;right:-70px;top:-120px;border-radius:50%;background:var(--coral);opacity:.8}
.legal-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:linear-gradient(90deg,var(--sea) 0 20%,var(--water) 20% 40%,var(--green) 40% 60%,var(--sun) 60% 80%,var(--coral) 80%)}
.legal-kicker{position:relative;margin:0 0 1rem;color:var(--sun);font-size:.72rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.legal-hero h1{position:relative;max-width:900px;margin:0;font-family:var(--display);font-size:clamp(3.4rem,8vw,7.8rem);font-stretch:75%;line-height:.86;letter-spacing:-.065em}
.legal-hero h1 em{display:block;color:var(--water);font-family:var(--hand);font-style:normal;font-weight:600;letter-spacing:0}
.legal-hero p:last-child{position:relative;max-width:700px;margin:2rem 0 0;color:#c7d9e1}
.legal-main{width:min(1120px,90vw);margin:0 auto;padding:clamp(3.5rem,7vw,7rem) 0}
.legal-language[hidden]{display:none}
.legal-intro{max-width:760px;margin-bottom:3rem;font-size:1.2rem;font-weight:700}
.legal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.36fr);gap:clamp(3rem,8vw,7rem);align-items:start}
.legal-copy section{padding:0 0 2.2rem;margin:0 0 2.2rem;border-bottom:1px solid var(--line)}
.legal-copy h2{margin:0 0 .9rem;font-family:var(--display);font-size:clamp(1.6rem,3vw,2.35rem);font-stretch:80%;line-height:1.05;letter-spacing:-.035em}
.legal-copy h3{margin:1.5rem 0 .5rem;font-size:1rem}
.legal-copy p,.legal-copy li{color:#496776}
.legal-copy ul{padding-left:1.2rem}
.legal-copy strong{color:var(--ink)}
.legal-aside{position:sticky;top:112px;padding:1.7rem;background:#e5f4f0;border-top:8px solid var(--water)}
.legal-aside h2{margin:0 0 .7rem;font-family:var(--display);font-size:1.55rem}
.legal-aside p{margin:.4rem 0;font-size:.9rem}
.legal-aside a{font-weight:800}
.legal-note{padding:1.2rem 1.35rem;background:#fff2b8;border-left:6px solid var(--sun)}
.legal-footer{display:flex;justify-content:space-between;gap:2rem;align-items:center;padding:2.5rem max(5vw,calc((100vw - 1120px)/2));background:#102e3e;color:#c7d9e1;font-size:.82rem}
.legal-footer div{display:flex;gap:1.2rem;flex-wrap:wrap}
.legal-footer a{font-weight:800}
@media(max-width:760px){body{font-size:16px}.legal-nav{min-height:72px;padding:8px 16px}.legal-nav img{width:145px}.legal-back{display:none}.legal-hero{padding-left:20px;padding-right:20px}.legal-main{width:auto;padding-left:20px;padding-right:20px}.legal-grid{grid-template-columns:1fr}.legal-aside{position:static}.legal-footer{display:block;padding:2.5rem 20px}.legal-footer div{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
