:root{color-scheme:light;--paper:#f5f3ec;--cream:#ebe8dd;--ink:#172e25;--muted:#52645b;--green:#17613d;--line:#d7dbcf;--white:#fffefa}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:var(--green);text-underline-offset:4px}
a:focus-visible{outline:3px solid #59a86f;outline-offset:4px}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:9px 14px;z-index:10}
.skip:focus{left:12px;top:12px}
.site-header{border-bottom:1px solid var(--line);background:var(--white)}
.header-inner{max-width:1180px;margin:auto;padding:16px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.02em}
.brand-mark{display:grid;place-items:center;width:37px;height:37px;border:1px solid var(--green);color:var(--green);font-family:"Libre Baskerville",Georgia,serif;font-size:13px;letter-spacing:-.08em}
.header-link{font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.header-link:hover,.small-link:hover,.video-copy a:hover{text-decoration:underline}
.eyebrow,.note-label{font-size:11px;line-height:1.4;font-weight:700;letter-spacing:.17em;color:var(--green)}
.opening{background:linear-gradient(120deg,#edece2 0%,#f5f3ec 62%,#e6ecdf 100%);border-bottom:1px solid var(--line)}
.opening-inner{max-width:1180px;min-height:560px;margin:auto;padding:76px 28px 68px;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:clamp(42px,7vw,112px)}
.opening-copy{padding-bottom:12px}
.opening h1{font-family:"Libre Baskerville",Georgia,serif;font-weight:400;letter-spacing:-.065em;font-size:clamp(2.9rem,5.4vw,5.25rem);line-height:1.15;max-width:700px;margin:22px 0 25px}
.opening h1 em{color:var(--green);font-weight:400}
.opening-deck{max-width:600px;color:#40564b;font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.68;margin:0 0 32px}
.text-link{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:13px;font-weight:700;border-bottom:1px solid var(--green);padding-bottom:5px}
.text-link span{font-size:18px;line-height:1}
.founder-photo{margin:0;position:relative;padding:14px 14px 0 0}
.founder-photo:before{content:"";position:absolute;inset:0 0 24px 18px;border:1px solid #90ac94}
.founder-photo img{position:relative;display:block;width:100%;height:clamp(360px,38vw,460px);object-fit:cover;object-position:50% 29%;filter:grayscale(1)}
.founder-photo figcaption{position:relative;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#204b35;color:#fff;padding:14px 18px;font-size:11px;letter-spacing:.11em;text-transform:uppercase}
.founder-photo figcaption strong{font-weight:700}
.founder-photo figcaption span{opacity:.82}
.letter{max-width:1060px;margin:auto;padding:72px 28px 88px}
.letter-body{max-width:750px;margin:auto;font-family:"DM Sans",Arial,sans-serif;font-size:17px;line-height:1.82}
.letter-body p{margin:0 0 25px}
.letter-body strong{font-weight:700;color:#183c2b}
.salutation{font-family:"Libre Baskerville",Georgia,serif;font-size:26px;letter-spacing:-.045em}
.letter-note{margin:40px 0;padding:26px 30px 24px;border-left:3px solid var(--green);background:#e8eddf}
.letter-note p{margin:9px 0 0;font-family:"Libre Baskerville",Georgia,serif;font-size:17px;line-height:1.62}
.roster-window{max-width:980px;margin:63px auto 60px;padding:34px 38px 30px;background:#e8ebe0;border-top:1px solid #c7d2c4;border-bottom:1px solid #c7d2c4}
.roster-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.roster-heading .eyebrow{margin:0}
.roster-heading h2{font-family:"Libre Baskerville",Georgia,serif;font-size:clamp(1.35rem,2.3vw,2rem);font-weight:400;line-height:1.3;letter-spacing:-.05em;max-width:390px;margin:0}
.roster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.artist{display:block;text-decoration:none;color:var(--ink)}
.artist img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;filter:saturate(.75);transition:filter .25s ease,transform .25s ease}
.artist:hover img{filter:saturate(1);transform:translateY(-3px)}
.artist span{display:block;padding-top:9px;font-size:12px;font-weight:700;line-height:1.35}
.small-link{display:inline-flex;gap:8px;margin-top:24px;text-decoration:none;font-size:12px;font-weight:700}
.letter-after-roster{padding-top:0}
.closing{font-weight:600}
.signoff{display:flex;flex-direction:column;gap:2px;margin-top:38px;padding-top:23px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.signoff strong{font-family:"Libre Baskerville",Georgia,serif;color:var(--ink);font-size:24px;font-weight:400;margin-top:7px}
.conversations{background:#e9ece5;border-block:1px solid var(--line)}
.conversations-inner{max-width:1120px;margin:auto;padding:70px 28px 78px}
.conversations h2,.last-word h2{font-family:"Libre Baskerville",Georgia,serif;font-weight:400;letter-spacing:-.05em;line-height:1.23}
.conversations h2{font-size:clamp(1.8rem,3vw,2.7rem);max-width:650px;margin:12px 0}
.conversations-intro{max-width:720px;margin:0 0 30px;color:var(--muted)}
.video-grid{display:grid;grid-template-columns:minmax(0,1fr);max-width:650px;margin:auto}
.video-card{background:var(--white);border:1px solid #d4dbd0}
.video-frame{width:100%;aspect-ratio:16/9;background:#16291f}
.video-frame iframe{display:block;width:100%;height:100%;border:0}
.video-copy{padding:19px 22px 22px}
.video-copy>span{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;color:var(--green)}
.video-copy h3{font-family:"Libre Baskerville",Georgia,serif;font-size:20px;font-weight:400;letter-spacing:-.03em;margin:7px 0 4px}
.video-copy p{font-size:13px;color:var(--muted);margin:0 0 10px}
.video-copy a{font-size:12px;font-weight:700;text-decoration:none}
.last-word{background:#17382a;color:#fff}
.last-word-inner{max-width:780px;margin:auto;text-align:center;padding:75px 28px 82px}
.last-word .eyebrow{color:#bdd6bd}
.last-word h2{font-size:clamp(2rem,4vw,3.4rem);margin:15px 0}
.last-word p:not(.eyebrow){color:#dbe8db;max-width:580px;margin:0 auto 27px}
.last-word a{display:inline-flex;align-items:center;gap:26px;padding:14px 20px;background:#e7f0dc;color:#143928;font-size:13px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s}
.last-word a:hover{transform:translateY(-2px);background:#fff}
.site-footer{display:flex;justify-content:space-between;gap:18px;max-width:1180px;margin:auto;padding:22px 28px 35px;font-size:12px;color:var(--muted)}
.site-footer a{color:var(--muted);text-decoration:none}
@media(max-width:800px){.opening-inner{min-height:0;grid-template-columns:1fr;gap:40px;padding-top:55px}.opening h1{max-width:680px}.founder-photo{max-width:500px}.roster-heading{display:block}.roster-heading h2{margin-top:12px}}
@media(max-width:600px){body{font-size:16px}.header-inner{padding:14px 20px}.header-link{font-size:11px}.opening-inner{padding:48px 21px 48px}.opening h1{font-size:clamp(2.65rem,10.7vw,3.7rem)}.opening-deck{font-size:16px}.founder-photo img{height:350px}.letter{padding:47px 21px 64px}.letter-body{font-size:16px;line-height:1.75}.letter-note{padding:22px;margin:32px 0}.letter-note p{font-size:15px}.roster-window{margin:45px -21px 48px;padding:27px 21px 25px}.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 11px}.video-grid{grid-template-columns:1fr}.conversations-inner{padding:50px 21px 58px}.last-word-inner{padding:60px 21px 65px}.site-footer{padding:18px 21px 28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.artist img,.last-word a{transition:none}}

/* Wider featured-artist photos */
.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}
.artist img{height:auto;aspect-ratio:3/2}
.artist:nth-child(3) img{object-position:center 28%}
@media(max-width:600px){.roster-grid{grid-template-columns:1fr;gap:22px}.artist img{aspect-ratio:16/10}}
