:root{--ink:#203528;--muted:#68766b;--green:#386246;--green-dark:#294b35;--sage:#edf4e9;--line:#d6e1d1;--paper:#fff;--warm:#fbf5e8}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(180deg,#f1f5ee 0,#f8faf6 320px,#f5f7f3 100%);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.consent-shell{width:min(890px,calc(100% - 32px));margin:0 auto;padding:14px 0}
.consent-home{display:inline-flex;color:var(--green-dark);font-size:18px;font-weight:850;letter-spacing:-.03em;text-decoration:none}
.consent-hero{padding:24px 0 30px;text-align:center}
.consent-kicker{margin:0 0 10px;color:#66806a;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.consent-hero h1{max-width:720px;margin:0 auto;color:#1f3627;font:700 clamp(36px,6vw,58px)/1.04 Georgia,serif;letter-spacing:-.04em}
.consent-hero>p:last-child{max-width:680px;margin:20px auto 0;color:var(--muted);font-size:16px;line-height:1.65}
.consent-draft-note{margin:0 0 18px;padding:13px 16px;border:1px solid #eadbb9;border-radius:14px;background:var(--warm);color:#765e31;font-size:13px;line-height:1.5}
.consent-form{display:grid;gap:16px}
.consent-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:20px;padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:0 12px 34px rgba(42,68,47,.06)}
.section-number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--sage);color:var(--green);font-weight:850}
.section-content{min-width:0}
.section-content h2,.consent-success h2{margin:3px 0 8px;color:#243e2d;font:700 28px/1.1 Georgia,serif}
.section-intro{margin:0 0 22px;color:var(--muted);font-size:14px;line-height:1.55}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field-wide{grid-column:1/-1}
.field{display:grid;gap:8px;margin:0;color:#3e5543;font-size:12px;font-weight:750;line-height:1.4}
.field b,.document-copy b{color:#a04d43}
.field input,.field select{width:100%;min-height:48px;padding:12px 13px;border:1px solid #cbd8c6;border-radius:11px;background:#fff;color:#24372a;font:500 14px/1.4 inherit;outline:none}
.field input:focus,.field select:focus{border-color:#719275;box-shadow:0 0 0 3px rgba(113,146,117,.14)}
.document-list{display:grid}
.document-option{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:12px;align-items:start;margin:0;padding:17px 0;border-top:1px solid #e3e9df;color:#455849;font-size:14px;font-weight:500;line-height:1.55;cursor:pointer}
.document-option:first-child{border-top:0;padding-top:3px}
.document-option input{position:absolute;opacity:0;pointer-events:none}
.checkmark{position:relative;width:22px;height:22px;margin-top:1px;border:1.5px solid #aebfac;border-radius:6px;background:#fff}
.document-option input:checked+.checkmark{border-color:var(--green);background:var(--green)}
.document-option input:checked+.checkmark:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.document-option input:focus-visible+.checkmark{outline:3px solid rgba(94,135,97,.25);outline-offset:3px}
.document-copy a{color:#315d3b;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.optional-label{align-self:center;padding:5px 8px;border-radius:999px;background:#f4f0e7;color:#80673b;font-size:10px;font-weight:800;white-space:nowrap}
.consent-submit-card{padding:28px;border:1px solid #cbdac6;border-radius:22px;background:#eaf2e6;text-align:center}
.consent-submit-card p{max-width:670px;margin:0 auto 19px;color:#617064;font-size:13px;line-height:1.55}
.consent-submit{min-width:min(100%,330px);min-height:54px;padding:14px 24px;border:0;border-radius:13px;background:var(--green);color:#fff;font:800 15px/1 inherit;cursor:pointer;box-shadow:0 10px 24px rgba(50,91,61,.18)}
.consent-submit:hover{background:var(--green-dark)}
.consent-submit:disabled{cursor:wait;opacity:.65}
.consent-message{min-height:20px;margin-top:12px;color:#985046;font-size:13px;font-weight:650}
.consent-success{padding:46px 30px;border:1px solid #c8d9c2;border-radius:24px;background:#fff;text-align:center;box-shadow:0 18px 48px rgba(42,68,47,.08)}
.consent-success[hidden]{display:none}
.success-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 18px;border-radius:50%;background:#dfeeda;color:#386246;font-size:27px;font-weight:850}
.consent-success>p:not(.consent-kicker){color:var(--muted)}
.confirmation-number{display:inline-block;margin-top:13px;padding:10px 13px;border-radius:10px;background:#f0f5ed;color:#4c614f;font-size:12px}
.confirmation-number strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.consent-footer{display:flex;justify-content:space-between;gap:16px;margin-top:16px;padding:10px 4px 0;border-top:1px solid #dfe6dc;color:#7a857b;font-size:12px}
.consent-footer a{color:#536b57}
.consent-page .cookie-settings-launcher{position:static;display:block;width:max-content;min-width:126px;margin:6px auto 12px;padding:12px 20px;border-color:#b9cbb6;background:#fff;color:#3b5e42;opacity:1;font-size:13px;box-shadow:0 7px 18px rgba(39,67,46,.08)}
@media(max-width:650px){.consent-shell{width:min(100% - 20px,890px);padding-top:10px}.consent-hero{padding:20px 12px 24px}.consent-hero h1{font-size:38px}.consent-hero>p:last-child{font-size:14px}.consent-card{grid-template-columns:1fr;gap:13px;padding:21px 18px;border-radius:18px}.section-number{width:34px;height:34px}.section-content h2{font-size:25px}.field-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.document-option{grid-template-columns:25px minmax(0,1fr);gap:10px;padding:16px 0}.optional-label{grid-column:2;justify-self:start;margin-top:-6px}.consent-submit-card{padding:23px 17px}.consent-submit{width:100%;min-width:0}.consent-footer{padding-inline:4px}.consent-page .cookie-settings-launcher{min-width:126px;margin:5px auto 11px;padding:12px 19px;font-size:13px}}
