@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@500&family=DM+Sans:wght@400;500;600;700&family=Fraunces:ital,opsz,wght@0,9..144,300..700;1,9..144,300..700&display=swap');
:root{--cream:#F7F2E8;--paper:#FFFCF6;--ink:#30251F;--body:#4A3B32;--muted:#6B5A4E;--sage:#465D4C;--sage-d:#384C3E;--gold:#B59355;--rust:#8C3B26}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:400 17px/1.7 'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.05;background-image:radial-gradient(var(--ink) .6px,transparent .6px);background-size:4px 4px;z-index:0}
a{color:var(--sage)}a:focus-visible,button:focus-visible{outline:2px solid var(--sage);outline-offset:3px}
.skip{position:absolute;left:-999px;top:12px;background:var(--ink);color:var(--cream);padding:.7rem 1.2rem;border-radius:99px;z-index:9;font-weight:600}.skip:focus{left:12px}
.construction-notice{background:var(--sage);color:var(--cream);text-align:center;font:600 16px/1.625 'DM Sans',sans-serif;padding:1rem 1.25rem}
.construction-notice p{max-width:64rem;margin:0 auto;color:inherit}
.wrap{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:0 1.25rem}
.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.1rem;background:rgba(255,252,246,.92);border:1px solid rgba(48,37,31,.15);border-radius:99px;padding:.55rem .7rem .55rem 1rem;box-shadow:0 8px 30px rgba(48,37,31,.12)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink)}.brand img{width:46px;height:46px}
.brand b{display:block;font:700 1.6rem/1 'Fraunces',serif;letter-spacing:-.02em}.brand small{display:block;font:500 9px 'DM Mono',monospace;letter-spacing:.14em;color:var(--sage);text-transform:uppercase;margin-top:.3rem}
.top nav{display:flex;gap:.25rem;align-items:center;flex-wrap:wrap}.top nav a{font-size:.88rem;font-weight:500;text-decoration:none;color:#5B4636;padding:.55rem .9rem;border-radius:99px}.top nav a:hover{background:rgba(70,93,76,.08)}
.btn{display:inline-flex;align-items:center;gap:.6rem;background:var(--sage);color:var(--cream)!important;font-weight:600;font-size:.92rem;text-decoration:none;padding:.95rem 1.6rem;border-radius:2px;box-shadow:5px 5px 0 var(--gold);transition:transform .2s,box-shadow .2s}
.btn:hover{background:var(--sage-d);transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--gold)}
.top nav .btn{padding:.6rem 1.1rem;box-shadow:3px 3px 0 var(--gold)}
.crumbs{font-size:.8rem;color:var(--muted);margin:2rem 0 0}.crumbs ol{list-style:none;padding:0;margin:0;display:flex;gap:.5rem;flex-wrap:wrap}.crumbs li+li::before{content:"/";margin-right:.5rem;color:var(--gold)}
.hero{display:grid;gap:2.5rem;padding:2.5rem 0 3.5rem;align-items:center}
.eyebrow{font:500 11px 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);display:flex;align-items:center;gap:.8rem;margin:0}.eyebrow::before{content:"";width:40px;height:1px;background:currentColor}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(2.4rem,6vw,4.4rem);line-height:1;font-weight:400;margin:1.1rem 0}h1 em,h2 em{color:var(--sage);font-style:italic}
.lede{font-size:1.15rem;color:var(--body);max-width:36rem}
.card-mark{background:var(--paper);border:1px solid rgba(181,147,85,.45);padding:2rem;box-shadow:14px 14px 0 var(--sage);transform:rotate(1deg)}
.card-mark img{width:84px;height:84px}.card-mark p{font:italic 400 1.5rem/1.3 'Fraunces',serif;margin:1rem 0 .5rem}.card-mark small{font-size:.78rem;color:var(--muted)}
section{padding:3rem 0;border-top:1px solid rgba(48,37,31,.1)}
h2{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.05;font-weight:400;margin:.6rem 0 1.2rem}
.cols{display:grid;gap:1.25rem}.idea{background:var(--paper);border:1px solid rgba(48,37,31,.12);border-radius:1.75rem;padding:1.5rem}
.idea h3{font-size:1.3rem;font-weight:500;margin:.3rem 0 .4rem}.idea p{margin:0;color:var(--body);font-size:.95rem}.idea .n{font:500 10px 'DM Mono',monospace;color:var(--muted);letter-spacing:.1em}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:1rem}.steps li{counter-increment:s;padding-left:3.2rem;position:relative;color:var(--body)}
.steps li::before{content:"0" counter(s);position:absolute;left:0;top:-.15rem;font:500 1.6rem 'Fraunces',serif;color:var(--sage)}.steps strong{color:var(--ink)}
details{background:var(--paper);border:1px solid rgba(48,37,31,.12);padding:1.1rem 1.3rem;margin-bottom:.75rem}summary{cursor:pointer;font-weight:600;color:var(--ink)}details p{margin:.7rem 0 0;color:var(--body)}
.cta{background:var(--sage);color:var(--cream);border-radius:2.5rem;padding:2.5rem 1.75rem;margin:1rem 0 3rem}.cta h2{color:var(--cream)}.cta h2 em{color:#EADFC8}.cta p{color:#D6CCB8;max-width:34rem}
.cta .btn{background:var(--cream);color:var(--sage)!important}.cta .btn:hover{background:var(--paper)}
.more{display:grid;gap:1rem}.more a{display:block;background:var(--paper);border:1px solid rgba(48,37,31,.15);border-radius:1.5rem;padding:1.3rem 1.5rem;text-decoration:none;color:var(--ink);font:400 1.35rem 'Fraunces',serif;transition:transform .25s}.more a:hover{transform:translateY(-3px)}.more a span{display:block;font:400 .88rem 'DM Sans',sans-serif;color:var(--muted);margin-top:.2rem}
footer{position:relative;z-index:1;background:var(--sage);color:#D6CCB8;padding:2.5rem 0;font-size:.9rem}footer a{color:#EADFC8}footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.2rem}
@media(min-width:800px){.hero{grid-template-columns:1.4fr .8fr}.cols{grid-template-columns:repeat(2,1fr)}.more{grid-template-columns:repeat(3,1fr)}.cta{padding:3.5rem}}
@media(max-width:640px){.top{border-radius:1.5rem;flex-direction:column;align-items:stretch}.top nav{justify-content:space-between}.brand b{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
