@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/eb-garamond-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/inter-600.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/plex-mono-400.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/plex-mono-500.woff2) format('woff2')}

/* ================= Fonts — self-hosted, SIL OFL ================= */

/* ================= Tokens (tokens.css · Brand Book 03) ================= */
:root{
  --ink:#1B1B1B; --paper:#FFFFFF; --vellum:#F7F0DC; --halftone:#6F6A5E;
  --gold:#DDB040; --shieldgold:#F0CE6B; --golddeep:#AF7C19; --sealred:#68281D;
  --hairline:rgba(27,27,27,.18); --hairline-strong:rgba(27,27,27,.32);
  --card:#FFFFFF; --eyebrow-c:#68281D; --fries-c:#1B1B1B;
  --btn-bg:#1B1B1B; --btn-fg:#FFFFFF; --btn-hover-bg:#AF7C19; --btn-hover-fg:#1B1B1B;
  --serif:'EB Garamond',Georgia,serif;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,'Courier New',monospace;
  --s1:4px; --s2:8px; --s3:16px; --s4:24px; --s5:32px; --s6:48px;
  --wrap:1200px; --headh:88px;
}

/* ================= Dark Mode ================= */
[data-theme="dark"]{
  --paper:#171511; --vellum:#211E16; --ink:#F2ECDC; --halftone:#A8A294;
  --hairline:rgba(242,236,220,.16); --hairline-strong:rgba(242,236,220,.34);
  --card:#242018; --eyebrow-c:#DDB040; --fries-c:#DDB040;
  --btn-bg:#DDB040; --btn-fg:#1B1B1B; --btn-hover-bg:#F0CE6B; --btn-hover-fg:#1B1B1B;
}
html{color-scheme:light}
[data-theme="dark"]{color-scheme:dark}

/* ================= Base ================= */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
html.menu-open{overflow:hidden}
html.menu-open .consent{display:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-text-size-adjust:100%}
img,svg{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--golddeep);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(20px,5vw,48px)}
section[id]{scroll-margin-top:calc(var(--headh) + 12px)}
.skip{position:absolute;left:-9999px;top:0;background:#1B1B1B;color:#FFFFFF;padding:10px 16px;z-index:99;font-family:var(--mono);font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.skip:focus{left:0}

/* ================= Typography ================= */
h1,h2{font-family:var(--serif);font-weight:400;line-height:1.12;margin:0;letter-spacing:.005em}
h1{font-size:clamp(2.5rem,6.2vw,4.25rem)}
h2{font-size:clamp(1.75rem,3.4vw,2.625rem);margin-bottom:var(--s4)}
h3{font-family:var(--sans);font-weight:600;font-size:1.0625rem;margin:0 0 var(--s2)}
p{margin:0 0 var(--s3);max-width:62ch}
.lead{font-size:clamp(1.125rem,2vw,1.3125rem);line-height:1.55}
.eyebrow{font-family:var(--mono);font-weight:500;font-size:.8125rem;letter-spacing:.24em;text-transform:uppercase;color:var(--eyebrow-c);margin:0 0 var(--s3)}
.caption{font-family:var(--mono);font-weight:400;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--halftone)}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}

/* ================= Header — Burger, Logo, Menue mit Controls ================= */
.site-head{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--hairline)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);min-height:var(--headh);position:relative}
.brand{display:block;flex:none}
.brand svg{height:64px;width:auto}
.brand-dark{display:none}
[data-theme="dark"] .brand-light{display:none}
[data-theme="dark"] .brand-dark{display:block}
.nav-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer;width:40px;height:40px;flex-direction:column;justify-content:center;gap:5px}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--ink);transition:transform .25s ease,opacity .2s ease}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.site-nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,36px)}
.site-nav ul{display:flex;gap:clamp(14px,2.5vw,32px);list-style:none;margin:0;padding:0}
.site-nav a{font-family:var(--mono);font-weight:500;font-size:.8125rem;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--ink);padding-block:6px;border-bottom:2px solid transparent}
.site-nav a:hover{border-bottom-color:var(--golddeep)}
.nav-controls{display:flex;align-items:center;gap:14px;padding-left:clamp(14px,2vw,24px);border-left:1px solid var(--hairline)}
.lang-switch{font-family:var(--mono);font-weight:500;font-size:.8125rem;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--ink);padding-block:6px;border-bottom:2px solid transparent}
.lang-switch:hover{border-bottom-color:var(--golddeep)}
.theme-toggle{background:none;border:1px solid var(--hairline-strong);border-radius:6px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);transition:border-color .2s ease}
.theme-toggle:hover{border-color:var(--golddeep)}
.theme-toggle svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;fill:none}
.icon-moon{display:none}
[data-theme="dark"] .icon-sun{display:none}
[data-theme="dark"] .icon-moon{display:block}

/* ================= Hero — Papier links, Schachbord mit Wappen rechts ================= */
.hero{border-bottom:1px solid var(--hairline);background:var(--paper)}
.hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);min-height:min(76vh,660px)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,8vw,96px) clamp(24px,4vw,64px) clamp(48px,8vw,96px) max(clamp(20px,5vw,48px),calc((100vw - var(--wrap))/2))}
.hero-copy .lead{margin-top:var(--s4)}
.hero-cta{margin-top:var(--s5)}
.hero{position:relative}
.chequer{position:relative;background:var(--vellum);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:clamp(32px,5vw,64px)}
.chequer::before{content:"";position:absolute;inset:-160px 0;background:conic-gradient(var(--gold) 25%,var(--shieldgold) 0 50%,var(--gold) 0 75%,var(--shieldgold) 0) 0 0/88px 88px;opacity:.55;transform:translateY(var(--py,0px));will-change:transform}
.emblem-par{width:min(320px,78%);will-change:transform}
.scroll-cue{position:absolute;bottom:22px;left:max(clamp(20px,5vw,48px),calc((100vw - var(--wrap))/2));display:flex;align-items:center;gap:12px;margin:0}
.cue-line{display:inline-block;width:36px;height:1px;background:var(--hairline-strong);position:relative;overflow:hidden}
.cue-line::after{content:"";position:absolute;inset:0;background:var(--golddeep);transform:translateX(-101%)}
@keyframes build{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes cue{0%{transform:translateX(-101%)}55%{transform:translateX(0)}100%{transform:translateX(101%)}}
.emblem-card{position:relative;background:#FFFFFF;border:1px solid rgba(27,27,27,.18);border-radius:12px;padding:clamp(28px,3.5vw,44px);width:100%}
.emblem-card svg{width:min(200px,100%);margin-inline:auto}
@keyframes emblem{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes fadeup{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes rise{from{transform:translateY(115%)}to{transform:none}}
.hl{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.hl-i{display:inline-block}

/* ================= Buttons ================= */
.btn{display:inline-block;font-family:var(--mono);font-weight:500;font-size:.8125rem;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;background:var(--btn-bg);color:var(--btn-fg);padding:15px 26px;border-radius:6px;transition:background-color .2s ease,color .2s ease}
.btn:hover{background:var(--btn-hover-bg);color:var(--btn-hover-fg)}
.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--hairline-strong);padding:14px 25px;margin-left:10px}
.btn--ghost:hover{background:transparent;border-color:var(--golddeep);color:var(--ink)}

/* Pillars — drei Prinzipien mit Haarlinie */
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5) var(--s4);margin-top:var(--s5)}
.pillar{border-top:1px solid var(--hairline-strong);padding-top:var(--s3)}
.pillar .caption{display:block;margin-bottom:var(--s2);color:var(--halftone)}
.pillar p{margin:0;font-size:.9375rem;line-height:1.6}

/* Schema — Karten und Haarlinien, ein Goldsignal */
.schema{margin:var(--s5) 0 0;max-width:760px}
.schema-node{background:var(--card);border:1px solid var(--hairline);border-radius:12px;padding:var(--s3) var(--s4);display:flex;flex-direction:column;gap:4px}
.schema-node--top{border-left:3px solid var(--gold)}
.schema-name{font-weight:500;font-size:.875rem;letter-spacing:.08em}
.schema-stem{width:1px;height:26px;background:var(--hairline-strong);margin-left:var(--s5)}
.schema-mid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}
.schema-note{display:block;margin-top:var(--s3)}
.schema-after{margin-top:var(--s6)}
.schema-after h3{margin-bottom:var(--s2)}

/* ================= Sections ================= */
.section{padding-block:clamp(64px,9vw,104px)}
.section--vellum{background:var(--vellum);border-block:1px solid var(--hairline)}
.section-head{margin-bottom:var(--s5);max-width:760px}

/* Zweispaltige Sektionslayouts */
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,88px);align-items:start}

/* Cards — Papier auf Pergament, Haarlinie, Radius 12, keine Schatten */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}
.card{background:var(--card);border:1px solid var(--hairline);border-radius:12px;padding:var(--s5) var(--s4)}
.card .caption{display:flex;align-items:center;gap:10px;color:var(--halftone);padding-bottom:var(--s3);margin-bottom:var(--s3);border-bottom:1px solid var(--hairline)}
.card .caption::before{content:"";width:8px;height:8px;background:var(--gold);flex:none}
.card p{margin:0;font-size:.9375rem;line-height:1.6}

/* Ledger — Registerzeilen mit Haarlinien */
.ledger{border-top:1px solid var(--hairline)}
.ledger-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--s4);padding-block:var(--s3);border-bottom:1px solid var(--hairline)}
.ledger-row dt{font-family:var(--mono);font-weight:500;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--halftone);padding-top:3px}
.ledger-row dd{margin:0;font-size:.9375rem;line-height:1.6}
.ledger-row dd .mono{font-size:.875rem;letter-spacing:.04em}
dl{margin:0}

/* Registerkarte (Provenance) */
.register-card{background:var(--card);border:1px solid var(--hairline);border-radius:12px;padding:var(--s5) var(--s4)}
.register-card .caption{display:block;padding-bottom:var(--s3);margin-bottom:var(--s2);border-bottom:1px solid var(--hairline)}
.register-card .ledger{border-top:0}
.register-card .ledger-row{grid-template-columns:130px minmax(0,1fr)}
.register-card .ledger-row:last-child{border-bottom:0;padding-bottom:0}

/* Contact */
.contact-card{background:var(--card);border:1px solid var(--hairline);border-radius:12px;padding:clamp(28px,4.5vw,52px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5)}
.contact-card .caption{display:block;padding-bottom:var(--s3);margin-bottom:var(--s3);border-bottom:1px solid var(--hairline)}
.addr{font-style:normal;line-height:1.7;font-size:.9375rem}
.addr .org{font-weight:600}
.contact-mail a{font-weight:500;color:var(--ink);text-decoration:underline;text-decoration-color:var(--hairline-strong);text-underline-offset:4px;text-decoration-thickness:1px}
.contact-mail a:hover{text-decoration-color:var(--golddeep);text-decoration-thickness:2px}
.contact-note{font-size:.875rem;color:var(--halftone);margin-top:var(--s3)}
.rec{font-family:var(--mono);font-size:.8125rem;line-height:2;letter-spacing:.04em;color:var(--halftone)}
.rec span{color:var(--ink)}

/* ================= Fries + Footer ================= */
.fries{height:10px;background:repeating-linear-gradient(90deg,var(--fries-c) 0 14px,transparent 14px 28px)}
.site-foot{background:#1B1B1B;color:#F7F0DC;padding-block:clamp(48px,7vw,80px) var(--s5)}
.foot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s6);align-items:start}
.foot-brand svg{width:236px;height:auto}
.foot-meta{display:flex;flex-direction:column;gap:var(--s3);align-items:flex-start}
.foot-addr{font-style:normal;font-family:var(--mono);font-size:.8125rem;line-height:1.9;letter-spacing:.04em;color:#F7F0DC}
.foot-reg{font-family:var(--mono);font-size:.8125rem;letter-spacing:.08em;color:var(--gold)}
.foot-nav ul{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s4);list-style:none;margin:0;padding:0}
.foot-nav a{color:#F7F0DC;font-size:.9375rem;text-decoration:underline;text-decoration-color:rgba(247,240,220,.35);text-underline-offset:4px}
.foot-nav a:hover{text-decoration-color:var(--gold)}
.foot-base{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid rgba(247,240,220,.22);display:flex;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}
.foot-base .caption{color:rgba(247,240,220,.75)}

/* ================= Motion — Grad 3, einmalige Inszenierung ================= */
@media (prefers-reduced-motion:no-preference){
  /* Hero-Choreografie beim Laden */
  .js .chequer::before{animation:build 1.7s steps(16,end) .15s both}
  .js .hero-copy>.eyebrow{animation:fadeup .55s ease-out .08s both}
  .js .hl-i{transform:translateY(115%);animation:rise .8s cubic-bezier(.22,.61,.36,1) both}
  .js .hl:nth-child(1) .hl-i{animation-delay:.22s}
  .js .hl:nth-child(2) .hl-i{animation-delay:.42s}
  .js .hero-copy .lead{animation:fadeup .6s ease-out .58s both}
  .js .hero-cta{animation:fadeup .6s ease-out .74s both}
  .js .emblem-card{opacity:0;animation:emblem .8s cubic-bezier(.22,.61,.36,1) 1.05s both}
  .js .scroll-cue{animation:fadeup .6s ease-out 1.5s both}
  .cue-line::after{animation:cue 2.4s ease-in-out 2s infinite}
  /* Scroll-Reveals */
  .js .rv{opacity:0;transform:translateY(38px);transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1)}
  .js .rv.in{opacity:1;transform:none}
  /* Gestaffelte Gruppen */
  .js .stagger>*{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);transition-delay:var(--d,0ms)}
  .js .stagger.in>*{opacity:1;transform:none}
  /* Eyebrows tippen sich (Monospace) */
  .js .rv .eyebrow,.js .stagger>.eyebrow{opacity:1;transform:none;transition:none;clip-path:inset(0 100% 0 0)}
  .js .rv.in .eyebrow,.js .stagger.in>.eyebrow{animation:type .8s steps(24,end) .05s both}
  /* Registerzeilen: Haarlinien zeichnen sich */
  .ledger-row{position:relative}
  .js .ledger.stagger>.ledger-row{border-bottom-color:transparent}
  .js .ledger.stagger>.ledger-row::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--hairline);transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.22,.61,.36,1);transition-delay:calc(var(--d,0ms) + 180ms)}
  .js .ledger.stagger.in>.ledger-row::after{transform:scaleX(1)}
  .register-card .ledger-row:last-child::after{display:none}
  /* Schema: Stämme wachsen, Knoten steigen */
  .js .schema.stagger>.schema-stem{transform:scaleY(0);transform-origin:top}
  .js .schema.stagger.in>.schema-stem{transform:scaleY(1)}
  /* Zinnenfries baut sich auf */
  .js .fries.rv{opacity:1;transform:none;clip-path:inset(0 100% 0 0);transition:clip-path 1.1s ease .1s}
  .js .fries.rv.in{clip-path:inset(0 0 0 0)}
  /* Hover-Zustände */
  .card,.register-card,.schema-node,.pillar{transition:border-color .25s ease,transform .25s ease}
  .card:hover,.schema-node:hover{border-color:var(--golddeep);transform:translateY(-4px)}
  .pillar:hover{border-top-color:var(--golddeep)}
}
@keyframes type{to{clip-path:inset(0 -2% 0 0)}}
@keyframes menuin{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){
  .js .chequer::before,.js .emblem-card,.js .hero-copy>.eyebrow,.js .hl-i,.js .hero-copy .lead,.js .hero-cta,.js .scroll-cue,.cue-line::after{animation:none;opacity:1;clip-path:none;transform:none}
}

/* ================= Responsive ================= */
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:clamp(44px,9vw,64px) clamp(20px,5vw,48px)}
  .chequer{padding:clamp(28px,6vw,44px)}
  .emblem-card{width:min(240px,64%)}
  .emblem-card svg{width:min(140px,100%)}
  .cards{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .pillars{grid-template-columns:1fr}
  .schema-mid{grid-template-columns:1fr;gap:var(--s3)}
  .contact-card,.foot-grid{grid-template-columns:1fr}
}
@media (max-width:860px){
  :root{--headh:72px}
  .site-head .wrap{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:0;min-height:72px}
  .js .nav-toggle{display:flex;order:1}
  .brand{order:2;justify-self:center}
  .brand svg{height:48px}
  section[id]{scroll-margin-top:84px}
  .site-nav{order:3;grid-column:1 / -1}
  /* Ohne JS: Menue statisch sichtbar; mit JS: eingeklappt, Burger oeffnet Panel */
  .site-nav{flex-direction:column;align-items:flex-start;gap:12px;padding-block:12px}
  .js .site-nav{display:none}
  .js .site-nav.open{display:flex;position:fixed;top:var(--headh);left:0;right:0;bottom:0;z-index:49;overflow:auto;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);border-top:1px solid var(--hairline-strong);padding:20px clamp(20px,6vw,48px) 44px}
  .js[data-theme="dark"] .site-nav.open{background:rgba(23,21,17,.82)}
  @supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
    .js .site-nav.open{background:var(--paper)}
  }
  .site-nav ul{flex-direction:column;gap:0;width:100%}
  .site-nav li{width:100%}
  .js .site-nav.open a:not(.lang-switch){display:block;width:100%;font-size:1rem;letter-spacing:.2em;padding:18px 0;border-bottom:1px solid var(--hairline)}
  .site-nav a{font-size:.8125rem}
  .nav-controls{border-left:0;border-top:0;padding-left:0;padding-top:22px;width:100%;justify-content:flex-start;gap:18px}
  .js .site-nav.open .lang-switch{font-size:1rem;letter-spacing:.2em}
  .js .site-nav.open .theme-toggle{width:44px;height:44px}
  @media (prefers-reduced-motion:no-preference){
    .js .site-nav.open{animation:menuin .22s ease-out}
  }
  .ledger-row{grid-template-columns:1fr;gap:4px}
  .register-card .ledger-row{grid-template-columns:1fr}
  .scroll-cue{display:none}
}

/* ================= Dokumentseiten ================= */
.doc{padding-block:clamp(48px,7vw,88px)}
.doc .wrap{max-width:840px}
.doc h1{font-size:clamp(2rem,4.5vw,2.75rem);margin-bottom:var(--s4)}
.doc h2{font-family:var(--sans);font-weight:600;font-size:1.125rem;margin:var(--s5) 0 var(--s2)}
.doc h3{font-size:1rem;margin-top:var(--s4)}
.doc p,.doc li{max-width:70ch}
.doc ul{margin:0 0 var(--s3);padding-left:1.25em}
.doc li{margin-bottom:var(--s2)}
.doc-meta{margin:0 0 var(--s5);display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4)}
.doc-status{color:var(--sealred)}
.doc-address{font-style:normal;line-height:1.7;margin-bottom:var(--s3)}
.doc .ledger{max-width:70ch;margin-bottom:var(--s3)}
.doc-back{margin-top:var(--s6)}

/* ================= Consent-Dialog ================= */
.consent{position:fixed;left:16px;bottom:16px;z-index:70;width:min(440px,calc(100vw - 32px));background:var(--paper);border:1px solid var(--hairline-strong);border-radius:12px;padding:var(--s4)}
.consent .caption{display:block;margin-bottom:var(--s2);color:var(--ink)}
.consent p{font-size:.875rem;line-height:1.55;margin-bottom:var(--s3);max-width:none}
.consent-toggle{display:flex;gap:10px;align-items:flex-start;font-size:.875rem;line-height:1.5;margin-bottom:var(--s3)}
.consent-toggle input{margin-top:3px;accent-color:var(--golddeep);width:16px;height:16px;flex:none}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn--small{padding:11px 16px;font-size:.75rem;letter-spacing:.14em}
.linklike{background:none;border:0;padding:0;font-family:var(--sans);font-size:.875rem;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.linklike:hover{text-decoration-color:var(--golddeep)}
.foot-nav .linklike{color:var(--vellum);font-size:.9375rem;text-decoration-color:rgba(247,240,220,.35);text-underline-offset:4px}
.foot-nav .linklike:hover{text-decoration-color:var(--gold)}

.foot-note{margin:8px 0 0;color:rgba(247,240,220,.75)}

/* 404 */
.notfound{padding-block:clamp(72px,12vw,140px)}
.notfound .mono{color:var(--halftone)}
