@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700&family=Hanken+Grotesk:wght@400;500;600;700&display=swap');
:root{--navy:#14233a;--blue:#2e7fb8;--mist:#e7ecf2;--ink:#172235;--muted:#5f6c7d;--white:#fff;--focus:#f5b82e}
*{box-sizing:border-box}html{color-scheme:light;scroll-behavior:smooth}body{margin:0;background:#f7f9fc;color:var(--ink);font-family:'Hanken Grotesk',Arial,sans-serif;line-height:1.68}
a{color:#145f92;text-underline-offset:.18em}a:hover{color:#0b436a}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--white);color:var(--navy);padding:.75rem 1rem;border:3px solid var(--focus);border-radius:.5rem}.skip-link:focus{top:1rem}
.legal-header{min-height:78px;padding:1rem clamp(1rem,4vw,3.5rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--white);border-bottom:1px solid #dbe3ec}.brand{font-family:'Cinzel',serif;font-size:1.25rem;font-weight:700;color:var(--navy);text-decoration:none}.brand span{display:block;margin-top:.12rem;font:600 .64rem/1.3 'Hanken Grotesk',sans-serif;letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}.language-link{display:inline-flex;min-height:44px;align-items:center;padding:.5rem .9rem;border:1px solid #c8d4e0;border-radius:999px;font-weight:700;text-decoration:none}
.review-banner{padding:.62rem 1rem;text-align:center;background:#fff4d6;color:#694700;border-bottom:1px solid #e6c970;font-size:.82rem;font-weight:700;letter-spacing:.02em}.legal-layout{width:min(1180px,calc(100% - 2rem));margin:clamp(1.5rem,4vw,4rem) auto;display:grid;grid-template-columns:minmax(220px,280px) minmax(0,760px);gap:clamp(1.5rem,5vw,5rem);justify-content:center}.policy-index{position:sticky;top:1rem;align-self:start;background:var(--white);border:1px solid #dce5ee;border-radius:16px;padding:1.25rem;box-shadow:0 15px 38px rgba(20,35,58,.06)}.policy-index h2{margin:0 0 .75rem;font:700 .78rem/1.2 'Hanken Grotesk',sans-serif;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.policy-index ul{margin:0;padding:0;list-style:none}.policy-index li+li{border-top:1px solid #edf1f5}.policy-index a{display:block;padding:.58rem .2rem;font-size:.88rem;text-decoration:none}
main{min-width:0;background:var(--white);border:1px solid #dce5ee;border-radius:20px;padding:clamp(1.35rem,5vw,4rem);box-shadow:0 22px 65px rgba(20,35,58,.08)}main:focus{outline:3px solid var(--focus);outline-offset:4px}.eyebrow{margin:0 0 .75rem;color:var(--blue);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}h1{margin:0;color:var(--navy);font:700 clamp(2rem,5vw,3.4rem)/1.06 'Cinzel',serif;letter-spacing:-.025em}h2{color:var(--navy);font:700 clamp(1.25rem,2.4vw,1.65rem)/1.2 'Cinzel',serif}.policy-meta{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin:1.5rem 0 2.4rem;padding:1rem 0;border-block:1px solid #e2e9f0}.policy-meta div{display:grid;gap:.1rem}.policy-meta dt{color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.policy-meta dd{margin:0;font-size:.9rem;font-weight:600}.policy-section+ .policy-section{margin-top:2.25rem;padding-top:1.1rem;border-top:1px solid #e5ebf1}.policy-section p{max-width:70ch;color:#354255}.legal-footer{padding:2rem 1rem;text-align:center;background:var(--navy);color:#dbe5ef}.legal-footer p{margin:.3rem}.legal-footer a{color:#fff}
@media(max-width:820px){.legal-layout{grid-template-columns:1fr}.policy-index{position:static}.policy-index ul{columns:2;column-gap:1.5rem}.policy-index li{break-inside:avoid}.legal-header{align-items:flex-start}.brand span{max-width:220px}}
@media(max-width:520px){.legal-layout{width:min(100% - 1rem,1180px);margin:1rem auto}.policy-index ul{columns:1}main{border-radius:14px;padding:1.2rem}.legal-header{padding:.85rem}.brand{font-size:1rem}.language-link{font-size:.85rem}.review-banner{font-size:.73rem}}
@media print{.skip-link,.language-link,.review-banner,.policy-index,.legal-footer,script{display:none!important}.legal-header{border:0;padding:0 0 1rem}.legal-layout{display:block;width:100%;margin:0}main{border:0;box-shadow:none;padding:0}a{color:inherit;text-decoration:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* 2026-07-21 owner request: effective-date banner moved to page bottom */
body{display:flex;flex-direction:column;min-height:100vh}
.review-banner{order:1;border-bottom:0;border-top:1px solid #e6c970}
.legal-footer{order:2}
