:root { color-scheme: light; --ink:#24332e; --muted:#61706a; --canvas:#f3e2cd; --surface:#fffaf3; --line:#dbc8b3; --orange:#d86632; --teal:#267d78; font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; } body { margin:0; background:var(--canvas); color:var(--ink); line-height:1.65; } a { color:var(--teal); text-underline-offset:.18em; } a:focus-visible { outline:3px solid var(--orange); outline-offset:4px; border-radius:4px; }
.shell { width:min(1040px,calc(100% - 40px)); margin:auto; }.header,.footer { background:rgba(255,250,243,.94); border-block:1px solid var(--line); }.nav,.footer-row { min-height:70px; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }.brand { color:var(--ink); font-weight:900; text-decoration:none; }.nav nav { display:flex; gap:20px; }.nav nav a { color:var(--muted); font-weight:700; text-decoration:none; }
.hero { padding:clamp(68px,11vw,124px) 0; background:radial-gradient(circle at 78% 25%,rgba(38,125,120,.22),transparent 30%),linear-gradient(145deg,#fff4e5,#f3e2cd 55%,#d9ece7); }.eyebrow { color:var(--orange); font-weight:850; letter-spacing:.1em; text-transform:uppercase; font-size:.8rem; } h1,h2 { line-height:1.1; letter-spacing:-.035em; } h1 { max-width:820px; font-size:clamp(2.8rem,7vw,5.8rem); margin:14px 0 20px; }.lead { max-width:760px; color:var(--muted); font-size:clamp(1.05rem,2vw,1.25rem); }.section { padding:70px 0; }.section.alt { background:var(--surface); border-block:1px solid var(--line); }.grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }.card { padding:26px; border:1px solid var(--line); border-radius:20px; background:var(--surface); }.card p,.content p,.content li { color:var(--muted); }.content { width:min(790px,calc(100% - 40px)); margin:auto; padding:58px 0 76px; }.content h1 { font-size:clamp(2.4rem,5vw,4.2rem); }.content h2 { margin-top:40px; }.footer { padding:24px 0; color:var(--muted); font-size:.92rem; }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; } } @media (max-width:720px) { .shell,.content { width:min(100% - 28px,1040px); }.nav { align-items:flex-start; flex-direction:column; padding:14px 0; gap:8px; }.grid { grid-template-columns:1fr; }.section { padding:50px 0; } }
