:root { --ink:#122b3d; --steel:#2e75b6; --deep:#173f62; --line:#dce5eb; --muted:#5c7080; --paper:#f4f7f9; }
* { box-sizing:border-box; }
body { margin:0; background:linear-gradient(180deg,#eaf2f7 0,#f7f9fa 280px); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; }
.legal-header { padding:30px 20px 64px; background:linear-gradient(120deg,#102d43,#1b527b); color:#fff; text-align:center; }
.legal-header img { width:min(260px,75vw); height:auto; filter:drop-shadow(0 8px 20px rgba(0,0,0,.2)); }
.legal-header p { margin:10px 0 0; color:#c5ddeb; font-size:.72rem; font-weight:850; letter-spacing:.16em; }
.legal-card { width:min(850px,calc(100% - 28px)); margin:-36px auto 55px; border:1px solid var(--line); border-radius:22px; padding:clamp(24px,5vw,52px); background:#fff; box-shadow:0 20px 55px rgba(16,43,61,.12); }
h1,h2 { font-family:ui-serif,Georgia,serif; color:var(--deep); }
h1 { margin:0 0 8px; font-size:clamp(2rem,5vw,3rem); }
h2 { margin:30px 0 8px; font-size:1.3rem; }
p,li { color:var(--muted); line-height:1.7; }
.effective { margin-top:0; font-size:.9rem; }
a { color:var(--steel); font-weight:700; }
.legal-footer { margin-top:36px; border-top:1px solid var(--line); padding-top:20px; }
.legal-footer nav { display:flex; flex-wrap:wrap; gap:14px 22px; }
.consent-header { position:relative; overflow:hidden; padding-bottom:78px; background:linear-gradient(120deg,rgba(16,45,67,.96),rgba(27,82,123,.92)),url('/assets/background.jpg') center 34%/cover no-repeat; }
.consent-header::after { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 78% 12%,rgba(141,193,233,.24),transparent 34%); }
.consent-header img,.consent-header p { position:relative; z-index:1; }
.consent-card { max-width:900px; }
.consent-kicker,.consent-step { margin:0 0 8px; color:var(--steel); font-size:.74rem; font-weight:850; letter-spacing:.14em; }
.consent-intro { margin:12px 0 28px; font-size:1.06rem; }
.consent-panel { margin:24px 0; border:1px solid #b9d1e2; border-radius:18px; padding:clamp(22px,4vw,34px); background:linear-gradient(145deg,#f4f9fc,#fff); box-shadow:0 12px 32px rgba(23,63,98,.08); }
.consent-panel h2 { margin-top:0; font-size:clamp(1.45rem,4vw,2rem); }
.consent-panel-secondary { border-color:var(--line); background:#f9fbfc; }
.consent-number { margin:4px 0 18px; font:700 clamp(1.55rem,6vw,2.3rem)/1.2 ui-serif,Georgia,serif; }
.consent-number a { color:var(--deep); text-decoration:none; }
.consent-button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; border-radius:999px; padding:12px 24px; background:var(--steel); color:#fff; font-weight:800; text-decoration:none; box-shadow:0 10px 24px rgba(46,117,182,.22); }
.consent-button:hover { background:var(--deep); }
.consent-disclosure { margin:22px 0 0; border-top:1px solid var(--line); padding-top:20px; font-size:.94rem; }
blockquote { margin:18px 0; border-left:4px solid var(--steel); padding:4px 0 4px 18px; color:#314f63; font:italic 1rem/1.75 ui-serif,Georgia,serif; }
.consent-list { padding-left:22px; }
.consent-list li + li { margin-top:8px; }
.consent-contact { margin-top:30px; border-radius:12px; padding:16px 18px; background:#edf4f8; }
@media(max-width:520px){ .legal-header{padding-bottom:52px}.legal-card{margin-top:-28px}.legal-footer nav{flex-direction:column} }
