@font-face{font-family:Oswald;font-weight:600;font-display:swap;src:url(/fonts/oswald-600.woff2)format("woff2")}@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2)format("woff2")}@font-face{font-family:Inter;font-weight:500;font-display:swap;src:url(/fonts/inter-500.woff2)format("woff2")}@font-face{font-family:Inter;font-weight:600;font-display:swap;src:url(/fonts/inter-600.woff2)format("woff2")}@font-face{font-family:Hauora Sans;font-weight:500;font-display:swap;src:url(/fonts/hauora-sans-500.woff2)format("woff2")}@font-face{font-family:Hauora Sans;font-weight:600;font-display:swap;src:url(/fonts/hauora-sans-600.woff2)format("woff2")}:root{--bg:#f6f5f1;--bg-alt:#eeede8;--ink:#161616;--muted:#5c5c58;--line:#d9d8d2;--accent:#1f7a55;--accent-soft:#2f9a6d;--display:"Oswald","Bebas Neue","Arial Narrow","Helvetica Neue",Impact,sans-serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--accentfont:"Hauora Sans","Inter",sans-serif;--wrap:1120px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}.eyebrow{font-family:var(--accentfont);font-size:14px;font-weight:500}.rule{background:var(--accent);width:56px;height:2px;margin:18px 0}header{padding:28px 0}header .wrap{justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand img{display:block}.brand span{font-family:var(--accentfont);white-space:nowrap;font-size:17px;font-weight:600}nav{justify-content:flex-end;gap:22px;display:flex}nav a{font-family:var(--accentfont);font-size:15px;font-weight:500}nav a:hover{color:var(--accent)}.hero{padding:clamp(56px,10vw,120px) 0 clamp(48px,8vw,96px)}.hero h1{font-family:var(--accentfont);letter-spacing:-.025em;max-width:13ch;font-size:clamp(44px,7.5vw,92px);font-weight:500;line-height:1.04}.hero .hl{color:var(--accent)}.lead{max-width:44ch;color:var(--muted);margin-top:28px;font-size:clamp(18px,2vw,21px)}.lead em{font-family:var(--accentfont);color:var(--accent);font-style:normal;font-weight:600}.cta-row{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.btn{border:1.5px solid var(--ink);font-family:var(--accentfont);align-items:center;gap:10px;padding:14px 22px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex}.btn.primary{background:var(--ink);color:var(--bg)}.btn.primary:hover{background:var(--accent);border-color:var(--accent)}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn.primary:hover{color:#fff}.portrait{justify-content:center;align-items:flex-end;height:440px;display:flex;position:relative}.portrait .circle{background:var(--accent);border-radius:50%;width:300px;height:300px;position:absolute;top:50px;left:50%;transform:translate(-50%)}.portrait .photo{text-align:center;color:#55534c;background:linear-gradient(#d8d6cf,#bdbab1);border-radius:135px 135px 0 0;justify-content:center;align-items:center;width:270px;height:370px;padding:30px;font-size:13px;line-height:1.5;display:flex;position:relative}.portrait .photo b{font-family:var(--accentfont);margin-bottom:8px;font-size:14px;display:block}.coffee{background:var(--bg);border:1px solid var(--line);align-items:center;gap:8px;padding:10px 14px;font-size:12px;display:flex;position:absolute;bottom:36px;right:0;box-shadow:0 6px 20px #0000000f}section{padding:88px 0}.alt{background:var(--bg-alt)}.grid-intro{grid-template-columns:1fr 3fr;gap:48px;display:grid}.section-title{font-family:var(--accentfont);font-size:24px;font-weight:600;line-height:1.25}.intro p{color:var(--muted);max-width:24ch;margin-top:16px}.cards{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.card .num{font-family:var(--display);color:var(--accent);font-size:22px}.card h3{font-family:var(--accentfont);margin-top:4px;font-size:17px;font-weight:600}.card .rule{width:32px;margin:14px 0 18px}.card .problem{font-family:var(--accentfont);margin-bottom:12px;font-size:19px;font-weight:500;line-height:1.35}.card p.desc{color:var(--muted);font-size:15px}.split{grid-template-columns:1fr 1px 1.2fr;gap:56px;display:grid}.split .divider{background:var(--line)}.steps{margin-top:28px;list-style:none}.steps li{border-top:1px solid var(--line);grid-template-columns:44px 1fr;padding:18px 0;display:grid}.steps li:last-child{border-bottom:1px solid var(--line)}.steps .n{font-family:var(--display);color:var(--accent);font-size:20px}.steps h4{font-size:15px;font-weight:600}.steps p{color:var(--muted);font-size:14.5px}.case{border:1px solid var(--line);background:var(--bg);margin-top:28px;padding:28px}.case .tag{color:var(--accent)}.case h3{font-family:var(--accentfont);margin:10px 0 14px;font-size:26px;font-weight:600;line-height:1.25}.case p{color:var(--muted);font-size:15px}.case .todo{color:#6b5600;background:#fff6d6;margin-top:14px;padding:4px 8px;font-size:12px;display:inline-block}blockquote{border:1px solid var(--line);grid-template-columns:48px 1fr;gap:6px;margin-top:28px;padding:24px;display:grid}blockquote .q{font-family:var(--accentfont);color:var(--accent);font-size:56px;font-weight:600;line-height:.8}blockquote p{font-family:var(--accentfont);font-size:19px;font-weight:500;line-height:1.4}blockquote cite{color:var(--accent);margin-top:10px;font-style:normal;display:block}.posts{grid-template-columns:repeat(2,1fr);gap:28px;display:grid}.post{border-top:2px solid var(--ink);padding-top:18px}.post .meta{color:var(--muted)}.post h3{font-family:var(--accentfont);margin:10px 0;font-size:24px;font-weight:600;line-height:1.25}.post p{color:var(--muted);font-size:15px}.post .more{color:var(--accent);font-family:var(--accentfont);margin-top:14px;font-size:15px;font-weight:600;display:inline-block}.about{grid-template-columns:1fr 1.3fr;align-items:center;gap:56px;display:grid}.about .section-title{margin-bottom:18px}.about p{max-width:58ch;font-size:18px}.about p+p{color:var(--muted);margin-top:14px;font-size:16px}.contact{grid-template-columns:1fr 1px 1.3fr 1fr;align-items:center;gap:44px;display:grid}.contact .divider{background:var(--line);align-self:stretch}.contact .intro p{max-width:28ch}.channels{gap:20px;list-style:none;display:grid}.channels li{grid-template-columns:34px 1fr;align-items:center;gap:12px;display:grid}.channels svg{width:24px;height:24px;stroke:var(--accent);fill:none;stroke-width:1.5px}.channels .eyebrow{color:var(--muted);font-size:13px}.channels a:hover{color:var(--accent)}.box{border:1.5px solid var(--accent);flex-direction:column;justify-content:space-between;min-height:170px;padding:26px;transition:all .2s;display:flex}.box:hover{background:var(--accent);color:#fff}.box .eyebrow{font-size:18px;font-weight:600;line-height:1.4}.box .arrow{color:var(--accent);align-self:flex-end;font-size:26px}.box:hover .arrow{color:#fff}footer{border-top:1px solid var(--line);color:var(--muted);padding:26px 0;font-size:13px}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}footer a{margin-left:18px}footer a:hover{color:var(--accent)}@media (width<=900px){.grid-intro,.split,.about,.contact{grid-template-columns:1fr}.split .divider,.contact .divider{display:none}.cards,.posts{grid-template-columns:1fr}.coffee{left:0;right:auto}section{padding:64px 0}.intro p{max-width:none}}@media (width<=380px){.brand span{font-size:15px}}@media (width<=520px){.wrap{padding:0 16px}nav{gap:14px}nav a:nth-child(2){display:none}}.page{padding:40px 0 96px}.page .wrap{max-width:720px}.page h1{font-family:var(--accentfont);margin:10px 0 26px;font-size:clamp(30px,5vw,44px);font-weight:600;line-height:1.15}.page .back{font-family:var(--accentfont);color:var(--accent);font-weight:500}.prose p,.prose ul,.prose ol{margin:0 0 18px;font-size:18px}.prose h2{font-family:var(--accentfont);margin:36px 0 12px;font-size:24px;font-weight:600}.prose ul,.prose ol{padding-left:22px}.prose a{color:var(--accent);text-decoration:underline}.note{color:#6b5600;background:#fff6d6;margin-bottom:26px;padding:12px 16px;font-size:15px}
