:root{--ink:#1d302e;--muted:#61716c;--paper:#f4f2eb;--white:#fffefa;--green:#246c5e;--line:#d7d9cf;--orange:#d87557;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:"Avenir Next",Avenir,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}
a{color:inherit;text-underline-offset:.22em}
a:hover{color:var(--green)}
a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
img{display:block;max-width:100%;height:auto;object-fit:cover}
.wrap{width:min(1160px,calc(100% - 64px));margin-inline:auto}
.skip{position:absolute;left:1rem;top:-5rem;z-index:20;padding:.8rem 1rem;background:var(--white)}
.skip:focus{top:1rem}
.site-header{min-height:86px;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:14px max(32px,calc((100% - 1280px)/2));border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:1.3rem;font-weight:800;letter-spacing:-.08em;line-height:1}
.brand small{display:block;margin-top:6px;color:var(--green);font:500 .55rem/1 var(--mono);letter-spacing:.09em}
.brand-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:50% 50% 43% 43%;background:var(--green);color:var(--white);font-size:1.5rem;font-weight:500;letter-spacing:-.11em;transform:rotate(-7deg)}
.brand-mark span{color:#efb35d;font-size:.7em}
.site-header nav{display:flex;align-items:center;gap:clamp(18px,3vw,40px);font-size:.88rem;font-weight:700}
.site-header nav a{text-decoration:none}
.eyebrow,.category{margin:0 0 18px;color:var(--green);font:500 .7rem/1.4 var(--mono);letter-spacing:.11em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{text-wrap:balance}
.hero{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(25px,5vw,72px);padding-top:75px;padding-bottom:78px}
.hero-copy{position:relative;z-index:1}
.hero h1{max-width:680px;margin-bottom:24px;font-size:clamp(3.2rem,6.4vw,5.8rem);font-weight:800;letter-spacing:-.075em;line-height:.99}
.hero h1 em{color:var(--green);font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.085em}
.hero-intro{max-width:515px;margin-bottom:27px;color:#53615c;font-size:1.03rem;line-height:1.8}
.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:48px;padding:0 19px;border-radius:4px;font-size:.84rem;font-weight:800;text-decoration:none}
.button-dark{background:var(--ink);color:var(--white)}
.button-dark:hover{background:var(--green);color:var(--white)}
.button-dark span{color:#f0b362;font-size:1.15rem}
.hero-art{position:relative;margin:0}
.hero-art:before{position:absolute;z-index:-1;top:9%;right:-4%;width:75%;height:80%;border-radius:49% 51% 53% 47%;background:#dce5d8;content:"";transform:rotate(7deg)}
.hero-art img{width:100%;aspect-ratio:6/5;border-radius:48% 49% 4px 4px}
.hero-art figcaption{position:absolute;right:0;bottom:14px;padding:9px 13px;background:var(--white);color:#56625c;font:.62rem var(--mono);box-shadow:3px 4px 0 #d9d8ce;transform:rotate(-2deg)}
.hero-bottom{position:absolute;right:0;bottom:22px;left:0;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;color:#56625c;font:.59rem var(--mono);letter-spacing:.13em}
.principle-band{display:flex;justify-content:center;align-items:center;gap:24px;min-height:100px;padding:20px 30px;background:#dce7dc;text-align:center}
.principle-band p{margin:0;font-size:clamp(1rem,2vw,1.35rem);font-weight:700;letter-spacing:-.04em}
.principle-band p span{color:var(--green);font-family:Georgia,serif;font-style:italic;font-weight:500}
.band-cat{color:var(--orange);font:1.2rem var(--mono);transform:rotate(-7deg)}
.articles-section{padding-top:95px;padding-bottom:92px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.section-heading .eyebrow{margin-bottom:10px}
.section-heading h2{margin:0;font-size:clamp(2.2rem,4.4vw,3.8rem);letter-spacing:-.07em;line-height:1.05}
.section-heading h2 span{color:var(--green);font-family:Georgia,serif;font-style:italic;font-weight:500}
.section-heading>p{margin:0 0 4px;color:var(--muted);font-size:.8rem}
.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.article-card{min-width:0;background:var(--white);border:1px solid #e5e3da;transition:transform .18s ease,box-shadow .18s ease}
.article-card:hover{transform:translateY(-4px);box-shadow:0 9px 0 #deddd3}
.card-link{display:grid;grid-template-columns:.9fr 1.1fr;min-height:235px;color:inherit;text-decoration:none}
.card-feature{grid-column:auto}
.card-feature .card-link{grid-template-columns:.9fr 1.1fr;min-height:235px}
.card-image{position:relative;min-height:235px;overflow:hidden;background:#dce7dc}
.card-feature .card-image{min-height:302px}
.card-image img{width:100%;height:100%;position:absolute;inset:0}
.card-copy{align-self:center;padding:25px clamp(20px,3vw,37px)}
.category{margin-bottom:13px;font-size:.61rem}
.category span{padding:0 3px;color:var(--orange)}
.card-copy h3{margin-bottom:10px;font-size:clamp(1.18rem,2vw,1.55rem);font-weight:800;letter-spacing:-.052em;line-height:1.25}
.card-copy>p:not(.category){margin-bottom:13px;color:var(--muted);font-size:.8rem;line-height:1.65}
.read-link{color:var(--green);font:500 .67rem var(--mono)}
.read-link b{padding-left:4px;color:var(--orange)}
.site-footer{display:block;padding:40px max(32px,calc((100% - 1280px)/2));border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,58px)}
.footer-section{min-width:0}
.footer-section h2{margin:0 0 13px;font:500 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase}
.footer-section p,.footer-section li{color:var(--muted);font-size:.72rem;line-height:1.75}
.footer-links ol{display:grid;grid-template-columns:1fr;gap:5px;margin:0;padding-left:1.4rem}
.footer-links li{padding-left:2px}
.footer-links a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}
.footer-links a:hover{color:var(--orange)}
.footer-section .brand{display:inline-flex;margin-bottom:13px;font-size:1rem}
.footer-brand .brand-mark{width:33px;height:33px;font-size:1.2rem}
.footer-brand small{font-size:.47rem}
.copyright{margin:28px 0 0;padding-top:13px;border-top:1px solid var(--line);color:#56625c;font-size:.65rem}
.reading{max-width:920px;padding-top:55px;padding-bottom:80px}
.back-link{display:inline-block;margin-bottom:27px;color:var(--green);font:500 .7rem var(--mono);text-decoration:none}
.article-header{max-width:780px;margin-bottom:30px}
.article-header .eyebrow{margin-bottom:14px}
.article-header h1{margin-bottom:19px;font-size:clamp(2.8rem,6vw,5rem);font-weight:800;letter-spacing:-.075em;line-height:1.02}
.article-deck{max-width:700px;margin-bottom:14px;color:#576861;font-size:1.15rem;line-height:1.7}
time{color:#56625c;font:500 .67rem var(--mono)}
.cover{width:100%;max-height:600px;aspect-ratio:3/2;margin:0 0 35px}
.lead,.reading section,.next-step,.article-footer{max-width:700px;margin-inline:auto}
.lead{margin-top:0;margin-bottom:30px;font-size:1.24rem;line-height:1.75}
.reading section{margin-top:34px;margin-bottom:36px;font-size:1rem;line-height:1.9}
.reading section h2,.next-step h2{font-size:1.7rem;letter-spacing:-.05em;line-height:1.2}
.reading section p{margin-bottom:20px}
.reading section p:first-of-type{margin-top:12px}
.next-step{margin-top:40px;margin-bottom:40px;padding:24px 27px;background:#dce7dc}
.next-step .eyebrow{margin-bottom:8px}
.next-step h2{margin-bottom:9px}
.next-step p:last-child{margin:0}
.article-footer{margin-top:45px;padding-top:22px;border-top:1px solid var(--line)}
.not-found{min-height:55vh;padding-top:100px;padding-bottom:100px}
.not-found h1{max-width:800px;font-size:clamp(3rem,7vw,5rem);letter-spacing:-.07em;line-height:1.02}
.not-found>p:not(.eyebrow){color:var(--muted)}
@media(max-width:850px){.site-header{padding-inline:22px}.hero{grid-template-columns:1fr .8fr;gap:20px;padding-top:55px}.hero-bottom{bottom:10px}.card-link,.card-feature .card-link{grid-template-columns:1fr}.card-image,.card-feature .card-image{min-height:210px}.card-copy{padding:23px}.site-footer{padding-inline:24px}.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.footer-links ol{grid-template-columns:1fr}}
@media(max-width:600px){.wrap{width:min(100% - 38px,440px)}.site-header{min-height:72px;padding:12px 19px}.brand{font-size:1.1rem}.brand-mark{width:34px;height:34px;font-size:1.3rem}.site-header nav{gap:16px;font-size:.72rem}.hero{display:flex;flex-direction:column;align-items:stretch;gap:23px;padding-top:47px;padding-bottom:76px;overflow:hidden}.hero h1{font-size:clamp(3.15rem,15vw,4.2rem)}.hero-intro{font-size:.96rem}.hero-art{max-width:420px;align-self:center}.hero-art figcaption{right:0;bottom:7px;font-size:.55rem}.hero-bottom{gap:8px;font-size:.49rem}.principle-band{min-height:84px;gap:12px;padding-inline:19px}.band-cat{font-size:.95rem;white-space:nowrap}.articles-section{padding-top:61px;padding-bottom:60px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:2.4rem}.section-heading>p{margin-top:12px}.article-grid{grid-template-columns:1fr;gap:15px}.card-link,.card-feature .card-link{grid-template-columns:.78fr 1.22fr;min-height:215px}.card-image,.card-feature .card-image{min-height:215px}.card-copy{padding:16px 14px}.category{font-size:.52rem}.card-copy h3{font-size:1.08rem}.card-copy>p:not(.category){font-size:.72rem}.read-link{font-size:.58rem}.site-footer{padding:30px 19px 22px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-links{grid-column:auto}.footer-links ol{grid-template-columns:1fr;gap:8px}.copyright{margin-top:25px;font-size:.62rem}.reading{padding-top:34px}.article-header h1{font-size:3rem}.article-deck{font-size:1rem}.cover{aspect-ratio:4/3}.reading section{font-size:.98rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}
