:root{--c-primary:#C9501C;--c-primary-dark:#9A3D14;--c-primary-soft:#F4DBC8;--c-accent:#E8A361;--c-earth:#7A5A3F;--c-sand:#F5EBDB;--c-paper:#FBF7F1;--c-ink:#1E1A17;--c-muted:#6B6157;--c-line:#E2D6C2;--c-success:#4A7C59;--c-error:#B53A2B;--font-sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-serif:"Source Serif Pro",Georgia,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,monospace;--fs-xs:.875rem;--fs-sm:.9375rem;--fs-md:1.0625rem;--fs-lg:1.25rem;--fs-xl:1.5rem;--fs-2xl:2rem;--fs-3xl:2.5rem;--fs-4xl:3.25rem;--lh-tight:1.15;--lh-normal:1.55;--lh-loose:1.75;--sp-1:.375rem;--sp-2:.75rem;--sp-3:1.125rem;--sp-4:1.5rem;--sp-5:2.25rem;--sp-6:3rem;--sp-7:4.5rem;--sp-8:6rem;--rad-sm:6px;--rad-md:10px;--rad-lg:16px;--rad-pill:999px;--shadow-sm:0 1px 2px rgba(30,26,23,.06),0 1px 1px rgba(30,26,23,.04);--shadow-md:0 4px 12px rgba(30,26,23,.08),0 1px 3px rgba(30,26,23,.04);--shadow-lg:0 12px 32px rgba(30,26,23,.1),0 4px 8px rgba(30,26,23,.05);--container:1200px;--container-narrow:760px;--t-fast:150ms ease;--t-base:220ms ease}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--c-ink);background:var(--c-paper);margin:0}
h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:700;line-height:var(--lh-tight);color:var(--c-ink);margin:0 0 var(--sp-3)}
h1{font-size:var(--fs-3xl);letter-spacing:-.02em}
h2{font-size:var(--fs-2xl);letter-spacing:-.015em}
h3{font-size:var(--fs-xl)}
h4{font-size:var(--fs-lg)}
p{margin:0 0 var(--sp-3)}
a{color:var(--c-primary-dark);text-decoration-color:var(--c-primary-soft);text-decoration-thickness:2px;text-underline-offset:3px;transition:color var(--t-fast),text-decoration-color var(--t-fast)}
a:hover{color:var(--c-primary);text-decoration-color:var(--c-primary)}
img,svg{max-width:100%;height:auto;display:block}
::selection{background:var(--c-primary-soft);color:var(--c-ink)}
.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--sp-3)}
.container-narrow{max-width:var(--container-narrow);margin-inline:auto;padding-inline:var(--sp-3)}
@media(min-width:768px){.container,.container-narrow{padding-inline:var(--sp-4)}h1{font-size:var(--fs-4xl)}h2{font-size:var(--fs-3xl)}}
.page-single{padding:var(--sp-5) 0}
.page-single__title{margin-bottom:var(--sp-4)}
