
@font-face { font-family:"Schibsted Grotesk"; src:url(/assets/fonts/schibsted-grotesk.woff2) format("woff2"); font-weight:400 600; font-style:normal; font-display:swap; }
@font-face { font-family:"DM Mono"; src:url(/assets/fonts/dm-mono.woff2) format("woff2"); font-weight:400 500; font-style:normal; font-display:swap; }

:root {
  color-scheme:light;
  --sans:"Schibsted Grotesk",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"DM Mono",ui-monospace,SFMono-Regular,Consolas,monospace;
  --canvas:#f4f2ed; --surface:#fff; --inset:#faf9f6; --ink:#1b1a17;
  --ink-2:#5d5950; --ink-3:#6e695e; --line:#e7e4dc; --line-2:#d3cfc4;
  --control:#8a857a; --accent:#1a5c51; --accent-soft:#e4efeb; --accent-line:#c6dcd4;
  --warn-ink:#8a5a12; --warn-soft:#faf0de; --warn-line:#e3d0a8;
  --err-ink:#a3261b; --err-soft:#fbedeb; --err-line:#e8c4be;
  --focus:#171614; --enter:cubic-bezier(.2,.7,.3,1);
}
* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body { margin:0; overflow-x:hidden; background:var(--canvas); color:var(--ink); font-family:var(--sans); font-size:17.5px; line-height:1.6; -webkit-font-smoothing:antialiased; }
a { color:var(--ink); text-decoration-thickness:.07em; text-underline-offset:.22em; }
a:hover { text-decoration-color:var(--accent); }
p { margin:0; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
.hidden { display:none!important; }
.skip-link { position:fixed; z-index:50; top:-6rem; left:16px; min-width:148px; min-height:44px; padding:.55rem .9rem; display:inline-flex; align-items:center; justify-content:center; border:2px solid var(--ink); border-radius:6px; background:var(--ink); color:var(--surface); font-weight:600; text-decoration:none; }
.skip-link:focus { top:12px; }
.shell { width:min(calc(100% - 3rem),80rem); margin-inline:auto; }
.page-shell { width:min(calc(100% - 3rem),67.75rem); margin-inline:auto; }
.utility-shell { width:min(calc(100% - 3rem),45rem); margin-inline:auto; }
.utility-shell.narrow { max-width:40rem; }

.site-header { border-bottom:1px solid var(--line); }
.site-header .shell { min-height:67px; display:flex; align-items:center; gap:20px; }
.brand { display:inline-flex; align-items:center; min-height:44px; flex:none; color:var(--ink); text-decoration:none; }
.brand-lockup { display:block; width:176px; height:28px; }
.area-chip { display:inline-flex; align-items:center; justify-content:center; gap:8px; height:32px; padding-inline:12px; border:1px solid var(--line-2); border-radius:8px; background:var(--surface); color:var(--ink); font-size:15px; font-weight:500; line-height:1.4; white-space:nowrap; }
.area-chip::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--accent); flex:none; }
.site-nav { margin-left:auto; display:flex; align-items:center; gap:24px; }
.site-nav a { position:relative; display:inline-flex; align-items:center; justify-content:center; min-height:44px; color:var(--ink-2); font-size:15px; font-weight:500; line-height:1.4; text-decoration:none; white-space:nowrap; }
.site-nav a[aria-current="page"] { color:var(--ink); font-weight:600; }
.site-nav a[aria-current="page"]::after { content:""; position:absolute; bottom:4px; left:50%; width:32px; height:2px; transform:translateX(-50%); background:var(--accent); }
:where(a,button,input,textarea,[tabindex]):focus-visible { outline:2px solid var(--focus); outline-offset:3px; }

.landing-hero { padding-top:72px; padding-bottom:92px; }
.page-eyebrow,.section-eyebrow { color:var(--accent); font-size:11.5px; line-height:1.4; letter-spacing:1.265px; text-transform:uppercase; }
.page-title { max-width:560px; margin:14px 0 16px; font-size:52px; line-height:1.05; letter-spacing:-1.664px; font-weight:600; text-wrap:balance; }
.page-lede { max-width:620px; color:var(--ink-2); font-size:19px; line-height:1.6; }
.console { width:min(100%,840px); margin-top:34px; padding:40px; display:flex; flex-direction:column; gap:24px; border:1px solid var(--line-2); border-radius:12px; background:var(--surface); }
.form-fields { display:flex; flex-direction:column; gap:24px; }
.field { display:flex; flex-direction:column; gap:8px; margin:0; }
label,.field-label { color:var(--ink); font-size:15px; line-height:1.4; font-weight:500; }
.helper { display:block; color:var(--ink-2); font-size:13.5px; line-height:1.5; }
textarea,input[type="email"] { width:100%; min-height:52px; padding:14px 16px; border:1.5px solid var(--control); border-radius:6px; background:var(--surface); color:var(--ink); font:inherit; font-size:17.5px; line-height:1.35; }
textarea { height:120px; min-height:120px; resize:vertical; }
textarea:disabled,input[type="email"]:disabled,input[type="email"][readonly] { border-color:var(--line-2); background:var(--inset); color:var(--ink-3); cursor:not-allowed; }
textarea:focus-visible,input[type="email"]:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
[aria-invalid="true"] { border-color:var(--err-ink)!important; }
.field-error { display:none; gap:7px; align-items:flex-start; color:var(--err-ink); font-size:15px; line-height:1.5; font-weight:500; }
.field-error.is-shown { display:flex; }
.field-error.is-shown::before { content:"!"; flex:none; width:18px; height:18px; margin-top:2px; display:grid; place-content:center; border:1.5px solid currentColor; border-radius:50%; font:12px/1 var(--mono); }
.examples { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.examples-label { width:61px; color:var(--ink-3); font-size:13.5px; line-height:1.5; }
.chips { display:contents; list-style:none; margin:0; padding:0; }
.chips li { display:flex; }
.chip { min-width:0; min-height:44px; padding:0 16px; border:1px solid var(--control); border-radius:999px; background:var(--surface); color:var(--ink); font:500 15px/1.4 var(--sans); cursor:pointer; }
.chip:hover:not(:disabled) { background:var(--inset); }
.area-note { padding:16px; display:flex; flex-direction:column; gap:8px; border-radius:8px; background:var(--inset); }
.area-note-lead { color:var(--ink); font-size:15px; line-height:1.6; }
.area-note .helper { line-height:1.5; }
fieldset { border:0; padding:0; margin:0; }
.affirmation { min-height:44px; padding:11px 0; display:grid; grid-template-columns:22px 1fr; gap:12px; align-items:start; color:var(--ink); font-size:17.5px; font-weight:400; cursor:pointer; }
.affirmation input[type="checkbox"] { appearance:none; width:22px; height:22px; margin:2px 0 0; display:grid; place-content:center; border:1.5px solid var(--control); border-radius:4px; background:var(--surface); cursor:pointer; }
.affirmation input[type="checkbox"]::after { content:""; width:12px; height:12px; transform:scale(0); background:var(--surface); clip-path:polygon(14% 46%,0 61%,38% 100%,100% 18%,86% 4%,38% 72%); }
.affirmation input[type="checkbox"]:checked { background:var(--ink); border-color:var(--ink); }
.affirmation input[type="checkbox"]:checked::after { transform:scale(1); }
.jit { color:var(--ink-2); font-size:15px; line-height:1.6; }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
button { appearance:none; min-height:48px; padding:14px 24px; display:inline-flex; align-items:center; justify-content:center; gap:9px; border:1.5px solid #171614; border-radius:6px; background:#171614; color:#faf9f6; font:500 15.5px/1.3 var(--sans); cursor:pointer; }
button:hover:not(:disabled) { background:#2e2b26; border-color:#2e2b26; }
button:disabled,.submit-button.is-inactive { border-color:#f0ede6; background:#f0ede6; color:var(--control); }
button.danger { background:var(--err-ink); border-color:var(--err-ink); }
.privacy-link { min-height:44px; display:inline-flex; align-items:center; font-size:17.5px; }
.spinner { display:none; flex:none; width:16px; height:16px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; }
[aria-busy="true"] .spinner { display:block; animation:spin .7s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
.cf-turnstile { width:100%; min-width:0; min-height:0; }
.form-status { min-height:0; font-weight:500; }
.form-status strong { display:block; margin-bottom:6px; font-size:24px; line-height:1.2; }
.form-status span { display:block; font-size:15px; line-height:1.6; }
.form-status:not(:empty),.state-banner { padding:16px; border:1px solid var(--accent-line); border-left:3px solid var(--accent); border-radius:8px; background:var(--accent-soft); color:var(--ink); }
.form-status.is-error:not(:empty),.state-banner.is-error { border-color:var(--err-line); border-left-color:var(--err-ink); background:var(--err-soft); color:var(--err-ink); }
.state-banner.is-warning { border-color:var(--warn-line); border-left-color:var(--warn-ink); background:var(--warn-soft); color:var(--warn-ink); }
.state-banner h2 { margin:0 0 6px; font-size:24px; line-height:1.2; }
.state-banner p { font-size:15px; line-height:1.6; }
.form-complete .form-fields,.form-complete .cf-turnstile,.form-complete .actions,.form-complete .jit { display:none; }
.inline-state { display:flex; align-items:flex-start; gap:9px; color:var(--err-ink); font-size:15px; line-height:1.5; font-weight:500; }
.inline-state::before { content:"!"; flex:none; width:18px; height:18px; margin-top:2px; display:grid; place-content:center; border:1.5px solid currentColor; border-radius:50%; font:12px/1 var(--mono); }
.confirmation-state { display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
.confirmation-state h2 { margin:0; font-size:24px; line-height:1.2; }
.confirmation-state p { color:var(--ink-2); font-size:15px; line-height:1.6; }
.confirmation-state .request-received { display:flex; align-items:center; gap:9px; color:var(--accent); font-weight:500; }
.confirmation-state .request-received::before { content:"\2713"; width:18px; height:18px; display:grid; place-content:center; border:1.5px solid currentColor; border-radius:50%; font:600 12px/1 var(--sans); }
.confirmation-state .privacy-link { margin-top:2px; }
.inline-success { display:flex; align-items:center; gap:9px; color:var(--accent); font-size:15px; line-height:1.5; font-weight:500; }
.inline-success::before { content:"\2713"; width:18px; height:18px; display:grid; place-content:center; border:1.5px solid currentColor; border-radius:50%; font:600 12px/1 var(--sans); }
.unavailable-state { padding:28px; display:flex; flex-direction:column; align-items:flex-start; gap:20px; border:1px solid var(--line-2); border-radius:8px; background:var(--surface); }
.unavailable-state .state-symbol { width:48px; height:48px; display:grid; place-content:center; border:1px solid var(--err-line); border-radius:50%; background:var(--err-soft); color:var(--err-ink); font-size:22px; line-height:1; }
.unavailable-state h2 { max-width:470px; margin:0; font-size:35px; line-height:1.08; letter-spacing:-.7px; }
.unavailable-state p { max-width:470px; color:var(--ink-2); font-size:17.5px; line-height:1.6; }
.primary-link { min-height:48px; padding:12px 24px; display:inline-flex; align-items:center; justify-content:center; border:1.5px solid var(--ink); border-radius:6px; background:var(--ink); color:#faf9f6; font-size:15.5px; font-weight:500; text-decoration:none; }
.primary-link:hover { background:#2e2b26; border-color:#2e2b26; }
.form-complete .form-status.confirmation-state:not(:empty),.form-unavailable .form-status.unavailable-state:not(:empty) { padding:0; border:0; border-radius:0; background:transparent; color:var(--ink); }
.form-status.inline-state:not(:empty),.form-status.inline-success:not(:empty) { padding:0; border:0; border-radius:0; background:transparent; }
.form-unavailable .form-fields { display:none; }

.content-section { border-top:1px solid var(--line); padding:92px 0; }
.content-section.context-section { padding-block:80px; }
.section-heading { max-width:640px; margin:14px 0 12px; font-size:35px; line-height:1.12; letter-spacing:-.98px; font-weight:600; }
.section-lede { max-width:704px; color:var(--ink-2); font-size:17.5px; line-height:1.6; }
.steps { margin-top:46px; display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.step-number { margin-bottom:10px; color:var(--accent); font:12.5px/1.5 var(--mono); letter-spacing:.375px; }
.steps h3 { margin:0 0 8px; font-size:17.5px; line-height:1.3; letter-spacing:-.14px; }
.steps p { color:var(--ink-2); font-size:15px; line-height:1.6; }
.cross-link { min-height:88px; margin-top:46px; padding:16px 20px; display:flex; align-items:center; gap:12px; border:1px solid var(--line); border-radius:8px; background:var(--surface); color:var(--ink); font-size:17.5px; font-weight:500; text-decoration:none; }
.cross-link .brand-dot { width:22px; height:22px; color:var(--ink); }
.cross-link .arrow { margin-left:auto; flex:none; }
.disclosure { width:min(100%,640px); margin-top:16px; border:1px solid var(--line-2); border-radius:12px; background:var(--surface); }
.disclosure-trigger { width:100%; min-height:64px; padding:10px 14px 10px 24px; justify-content:flex-start; border:0; background:transparent; color:var(--ink); font-size:17.5px; font-weight:600; text-align:left; }
.disclosure-trigger:hover { background:var(--inset); }
.disclosure:focus-within { outline:2px solid var(--focus); outline-offset:3px; }
.disclosure-trigger:focus-visible { outline:none; }
.disclosure-trigger .arrow { width:44px; height:44px; margin-left:auto; padding:10px; transform:rotate(90deg); transition:transform .2s var(--enter); }
.disclosure-trigger[aria-expanded="true"] .arrow { transform:rotate(-90deg); }
.disclosure-panel { padding:0 24px 24px; color:var(--ink-2); font-size:15px; line-height:1.6; }

.site-footer { border-top:1px solid var(--line); padding:32px 0 40px; }
.footer-top { display:flex; align-items:center; gap:12px; }
.footer-top .brand-dot { width:24px; height:24px; color:var(--ink); }
.footer-name { font-weight:500; }
.footer-top .privacy-link { margin-left:auto; }
.footer-disclaimer { margin-top:8px; color:var(--ink-2); font-size:17.5px; }
.footer-note { margin-top:8px; color:var(--ink-3); font-size:15px; }

.utility-main { min-height:648px; padding:56px 0; display:flex; align-items:center; }
.manage-card,.action-card,.notice-card { width:100%; padding:40px; border:1px solid var(--line-2); border-radius:12px; background:var(--surface); }
.manage-card { max-width:640px; margin-inline:auto; }
.manage-card h1,.action-card h1 { margin:0 0 12px; font-size:24px; line-height:1.2; letter-spacing:-.384px; }
.manage-card .lede,.action-card .lede { margin-bottom:24px; color:var(--ink-2); font-size:17.5px; line-height:1.6; }
.manage-card form { display:flex; flex-direction:column; gap:24px; }
.anti-enumeration { color:var(--ink-3); font-size:13.5px; line-height:1.5; }
.action-page { padding:96px 0 120px; }
.action-card { border-color:var(--line); }
.action-page #action-card { padding:0; border:0; border-radius:0; background:transparent; }
.action-page #action-card > h1 { margin-top:14px; font-size:35px; line-height:1.12; letter-spacing:-.98px; }
.action-card .form-status { margin-bottom:24px; }
.action-card form { display:flex; flex-direction:column; gap:24px; }
.entry-preview { padding:24px; border:1px solid var(--line); border-radius:8px; background:var(--surface); }
.entry-preview h2 { margin:0 0 12px; font-size:17.5px; line-height:1.3; }
.entry-preview dl { margin:0; }
.entry-preview dl > div { padding:14px 0; border-top:1px solid var(--line); }
.entry-preview dt { font-size:13.5px; color:var(--ink-3); }
.entry-preview dd { margin:4px 0 0; overflow-wrap:anywhere; }
#correction-editor { display:flex; flex-direction:column; gap:24px; }
.correction-review { padding:24px; border:1px solid var(--line); border-radius:8px; background:var(--inset); }
.correction-review h2 { margin:0 0 16px; font-size:24px; line-height:1.2; }
.correction-review dl { margin:0; display:flex; flex-direction:column; }
.correction-review dl > div { padding:14px 0; border-top:1px solid var(--line); }
.correction-review dt { font-size:13.5px; color:var(--ink-3); }
.correction-review dd { margin:4px 0 0; overflow-wrap:anywhere; }
button.text-button { margin-top:16px; border-color:var(--line-2); background:var(--surface); color:var(--ink); }
button.text-button:hover:not(:disabled) { border-color:var(--ink); background:var(--surface); }
.privacy-main { padding:96px 0 120px; }
.privacy-content { display:flex; flex-direction:column; gap:32px; }
.privacy-content h1 { margin:0; font-size:52px; line-height:1.05; letter-spacing:-1.664px; }
.privacy-content > .lede { color:var(--ink-2); font-size:19px; }
.privacy-section { padding-top:24px; border-top:1px solid var(--line); }
.privacy-section h2 { margin:0 0 10px; font-size:24px; line-height:1.2; letter-spacing:-.384px; }
.privacy-section p { color:var(--ink-2); }
.privacy-effective { color:var(--ink-3); font:12.5px/1.5 var(--mono); letter-spacing:.375px; }
.recovery-card { max-width:640px; margin-inline:auto; padding:32px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
.recovery-card .page-eyebrow { color:var(--ink-3); }
.recovery-card h1 { margin:14px 0 12px; font-size:35px; line-height:1.12; letter-spacing:-.98px; }
.recovery-card .lede { color:var(--ink-2); }
.recovery-card .actions { margin-top:24px; }
.compact-action { min-height:48px; padding:12px 24px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--ink); border-radius:6px; background:var(--ink); color:var(--surface); font-weight:500; text-decoration:none; }
.compact-action:hover { background:#34322d; }
.compact-action:focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
.secondary-recovery-link { display:block; width:max-content; min-height:44px; margin:12px auto 0; padding:11px 8px; color:var(--ink); }
.action-secondary { min-height:44px; padding:10px 4px; display:inline-flex; align-items:center; color:var(--ink); }
.link-recovery-card h1:focus { outline:none; }

@media (min-width:701px) and (max-width:900px) {
  .site-header .shell { flex-wrap:wrap; row-gap:0; padding-top:6px; }
  .site-nav { width:100%; margin-left:0; justify-content:space-between; }
}
@media (max-width:700px) {
  body { font-size:16px; }
  .shell { width:min(calc(100% - 1.75rem),80rem); }
  .page-shell,.utility-shell { width:min(calc(100% - 2.5rem),80rem); }
  .site-header .shell { min-height:0; padding-top:6px; display:grid; grid-template-columns:auto 1fr; gap:0 10px; }
  .brand-lockup { width:150px; height:24px; }
  .area-chip { justify-self:end; height:30px; padding-inline:8px; font-size:11.5px; }
  .site-nav { grid-column:1/-1; width:100%; margin:0; display:grid; grid-template-columns:repeat(4,max-content); justify-content:space-between; gap:0; }
  .site-nav a { min-height:44px; font-size:13.5px; }
  .site-nav a[aria-current="page"]::after { bottom:2px; }
  .landing-hero { padding:40px 0 64px; }
  .page-title { font-size:38px; }
  .page-lede { font-size:17.5px; }
  .console { width:calc(100% - 8px); margin:28px 4px 0; padding:24px; }
  .examples { align-items:stretch; }
  .examples-label { width:100%; }
  .chips { display:grid; grid-template-columns:1fr; width:100%; gap:8px; }
  .chip { width:100%; justify-content:flex-start; text-align:left; }
  .steps { grid-template-columns:1fr; gap:32px; }
  .content-section { padding:64px 0; }
  .content-section.context-section { padding-block:64px; }
  .cross-link { min-height:72px; margin-top:36px; }
  .privacy-main,.action-page { padding:56px 0 72px; }
  .utility-shell.narrow { width:min(calc(100% - 2.5rem),20.5rem); }
  .privacy-content h1 { font-size:40px; }
  .manage-card,.action-card,.notice-card,.recovery-card { padding:24px; }
  .utility-main { min-height:560px; }
  .footer-disclaimer { font-size:15px; }
}
@media (max-width:370px) {
  .shell { width:min(calc(100% - 1.75rem),80rem); }
  .page-shell,.utility-shell { width:min(calc(100% - 2.5rem),80rem); }
  .site-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .site-nav a { font-size:15px; }
  .site-nav a:nth-child(even) { justify-content:flex-end; }
  .site-nav a:nth-child(odd) { justify-content:flex-start; }
  .page-title { font-size:36px; }
  .console { width:100%; margin-inline:0; padding:20px; }
  .actions > button { width:100%; }
}
@media (prefers-reduced-motion:no-preference) {
  .reveal { animation:enter .18s var(--enter) backwards; }
  @keyframes enter { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { transition-duration:.01ms!important; scroll-behavior:auto!important; }
  .reveal { animation:reduced-enter .12s ease-out backwards; }
  @keyframes reduced-enter { from { opacity:0; } to { opacity:1; } }
  [aria-busy="true"] .spinner { animation:none; border-right-color:currentColor; opacity:.6; }
}
@media (forced-colors:active) {
  .console,.manage-card,.action-card,.notice-card,.recovery-card,.cross-link,.disclosure,button { border:1px solid ButtonText; }
}
