/* Base: design tokens, reset, page textures, shared type and controls. */
:root{--sand:#ece2c9;--card:#f8f2e2;--rule:#c9b78d;--ink:#1d1710;--muted:#4f4533;--cu:#a8481f;--cu-hi:#e08a58;--si:#34404c;--si-2:#232c35;--si-txt:#d7dee4;--serif:"Iowan Old Style","Newsreader","Palatino Linotype",Palatino,Georgia,serif;--sans:"Manrope",-apple-system,"Segoe UI",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;--t-label:11px;--t-meta:12px;--t-small:14px;--t-sec:15px;--t-body:16px;--t-lede:clamp(16px,1.3vw,18px);--t-h3:clamp(22px,2.2vw,28px);--t-section:19px}
*{box-sizing:border-box;margin:0}
::selection{background:var(--cu);color:#fff}
html{background:var(--sand);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{position:relative;background-color:var(--sand); background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1100' height='1100'><filter id='m' x='0' y='0' width='100%' height='100%'><feTurbulence type='fractalNoise' baseFrequency='.0035 .009' numOctaves='4' seed='11' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .60  0 0 0 0 .45  0 0 0 0 .24  1.1 0 0 0 -.4'/></filter><rect width='100%' height='100%' filter='url(%23m)'/></svg>")}
body::before,body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:60}
body::before{mix-blend-mode:multiply;opacity:.2; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='a' x='0' y='0' width='100%' height='100%'><feTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='3' seed='7' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .30  0 0 0 0 .22  0 0 0 0 .12  3.4 0 0 0 -1.45'/></filter><rect width='100%' height='100%' filter='url(%23a)'/></svg>")}
body::after{opacity:.18; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='340' height='340'><filter id='b' x='0' y='0' width='100%' height='100%'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='23' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 .97  0 0 0 0 .88  0 3.4 0 0 -1.5'/></filter><rect width='100%' height='100%' filter='url(%23b)'/></svg>")}
#bgfx{position:fixed;inset:0;z-index:0;pointer-events:none}
h1{font-family:var(--serif);font-size:clamp(34px,4.6vw,62px);line-height:1.04;letter-spacing:-.028em;font-weight:500;max-width:17ch}
h1 em{color:var(--cu)}
.cta{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}
.btn{font:600 14px var(--sans);padding:13px 20px;border-radius:99px;text-decoration:none;border:1px solid var(--ink);color:var(--ink);font-size:var(--t-small)}
.btn.p{background:var(--ink);color:var(--card)}
.btn:hover{border-color:var(--cu);color:var(--cu)}
.btn.p:hover{background:var(--cu);color:#fff}
.eyebrow{display:flex;align-items:center;gap:12px;font:500 12px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--cu);margin-bottom:14px}
.eyebrow::before{content:"";width:44px;height:12px;flex:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='12'><path d='M0 10H6V2H16V10H26V2H32V10H44' fill='none' stroke='%23a8481f' stroke-width='1.6'/></svg>") repeat-x;animation:ebx 2.4s linear infinite}
@keyframes ebx{to{background-position-x:-44px}}
section{position:relative;z-index:2}
.wrap{max-width:1080px;margin:0 auto;padding:0 clamp(18px,4vw,48px)}
h2{font-family:var(--serif);font-size:clamp(30px,3.8vw,50px);font-weight:500;letter-spacing:-.025em;line-height:1.06;max-width:20ch}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
button:focus-visible,a:focus-visible{outline:2px solid var(--cu);outline-offset:3px;border-radius:6px}
