/* Aubuchon brand tokens — shared by the SSR site. See docs/brand-tokens.md */
:root{
  --brand-paper:#FBF7EF;--brand-bone:#F2ECDE;--brand-forest:#0C2A1E;--brand-ink:#1A1A1A;--brand-stone:#5F5C55;
  --brand-green:#01683F;--brand-orange:#F58220;--brand-orange-text:#C85E10;--brand-ace-red:#EC1C24;
  --brand-hairline:rgba(26,26,26,.16);
  --font-serif:"Source Serif 4",Georgia,serif;--font-sans:"Inter Tight",system-ui,sans-serif;--font-mono:"DM Mono",ui-monospace,monospace;
  --ease:cubic-bezier(.22,1,.36,1);
  --radius-btn:4px;--radius-card:8px;
  --shadow-soft:0 1px 2px rgba(12,42,30,.06),0 8px 24px rgba(12,42,30,.08);
  --shadow-lift:0 2px 4px rgba(12,42,30,.06),0 22px 44px rgba(12,42,30,.16);
  --section-y:90px;--gutter:clamp(20px,4vw,48px);--maxw:1240px;
}
@media(min-width:900px){:root{--section-y:150px}}
html{scroll-behavior:smooth}
body{background:var(--brand-paper);color:var(--brand-ink);font-family:var(--font-sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3{font-family:var(--font-serif);font-weight:700;letter-spacing:-.02em;text-wrap:balance}
:is(a,button,input,textarea,select):focus-visible,:focus-visible{outline:2px solid var(--brand-orange);outline-offset:3px}
.skip{z-index:200}
.read{color:var(--brand-green)}
.meta,.summary,.story-body figcaption{color:var(--brand-stone)}
.btn{display:inline-flex;align-items:center;gap:.4em;padding:14px 22px;border-radius:var(--radius-btn);font:600 17px/1.2 var(--font-sans);text-decoration:none;cursor:pointer;border:2px solid transparent;transition:transform .35s var(--ease),background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn .arr{display:inline-block;transition:transform .35s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn-primary{background:var(--brand-forest);color:var(--brand-paper);border-color:var(--brand-forest)}
.btn-primary:hover{background:var(--brand-green);border-color:var(--brand-green)}
.btn-secondary{background:transparent;color:inherit;border-color:currentColor}
.btn-secondary:hover{background:color-mix(in srgb,currentColor 9%,transparent)}
.btn:disabled{opacity:.6;cursor:progress;transform:none}
.sc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important}
}
