@font-face{font-family:"Fraunces";src:url(fonts/fraunces-var-latin.woff2) format("woff2");font-weight:300 600;font-display:swap}
@font-face{font-family:"Noto Sans";src:url(fonts/notosans-var-latin.woff2) format("woff2");font-weight:400 700;font-display:swap}
:root{--ink:#0E1420;--ink2:#141B2B;--ivory:#F6F2EA;
--green:#2E7D5B;--green-h:#27694C;--green-a:#225C43;--green-ink:#4FB386;
--gold-ink:#F4B740;--gold-txt-iv:#7A5A00;--gold-line:#8E7029;--focus-ring:#8E7029;--slate:#5F6B7A;
--ease-enter:cubic-bezier(0.2,0,0,1);--ease-exit:cubic-bezier(0.4,0,1,1);
--dur-press:100ms;--dur-hover:160ms;--dur-reveal:700ms;--dur-reveal-lg:900ms;--dur-draw:1200ms;--dur-sweep:2400ms;--dur-reduced:180ms;--stagger:75ms;
--serif:"Fraunces",Georgia,serif;--sans:"Noto Sans",system-ui,sans-serif;
--iv-bg:var(--ivory);--iv-fg:#0E1420;--iv-mu:#4A5563;--iv-gold:var(--gold-txt-iv);--iv-line:var(--gold-line);--iv-card:#FFFFFF80}
@media (prefers-color-scheme:dark){:root{--iv-bg:#1A2131;--iv-fg:#F6F2EA;--iv-mu:#9AA5B1;--iv-gold:var(--gold-ink);--iv-line:#8E7029;--iv-card:#FFFFFF08}}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:#F6F2EA;font:400 1.0625rem/1.65 var(--sans)}
img,svg{max-width:100%}
.skip,.skipclimb{position:absolute;left:-9999px;background:var(--ivory);color:var(--ink);padding:12px 16px;z-index:9;min-height:44px;border-radius:2px}.skip:focus,.skipclimb:focus{left:16px;top:8px}
.climb{position:relative}.skipclimb:focus{top:16px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
a{color:inherit}
.ul{text-decoration:none;position:relative;display:inline-block;padding:10px 0;min-height:44px;min-width:44px;text-align:center}
.ul::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1px;background:currentColor;transform-origin:left;transform:scaleX(1)}
.anim .ul::after{transform:scaleX(0);transition:transform var(--dur-hover) var(--ease-exit)}
.anim .ul:hover::after,.anim .ul:focus-visible::after{transform:scaleX(1);transition-timing-function:var(--ease-enter)}
.ul:active{opacity:.8}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:6px clamp(16px,5vw,64px);background:#0E1420F2;border-bottom:1px solid var(--gold-line)}
.logo{display:block;height:32px;width:auto}.logo-link{display:inline-flex;align-items:center;min-height:44px}
.top nav{margin-left:auto}.top ul{display:flex;flex-wrap:wrap;gap:0 22px;list-style:none;margin:0;padding:0;font-size:.95rem}
section,.journal-article{padding:clamp(80px,11vw,152px) clamp(20px,6vw,96px)}
.ink{background:var(--ink);color:#F6F2EA}.ink:nth-of-type(4n){background:var(--ink2)}
.ivory{background:var(--iv-bg);color:var(--iv-fg)}
.display{font:400 clamp(2.2rem,5vw,4.2rem)/1.05 var(--serif);letter-spacing:-.015em;margin:0 0 .5em;max-width:18ch}
h3{font:500 1.4rem/1.2 var(--serif);margin:.2em 0 .45em}
.eyebrow{font:600 .78rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink);margin:0 0 20px;display:flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:40px;height:1px;background:currentColor}
.eyebrow.dk{color:var(--iv-gold)}
.tag{display:inline-block;font:700 .72rem/1.4 var(--sans);background:#F3E2B0;color:#3A2A00;padding:2px 8px;border-radius:2px;margin:0 6px 4px 0}
.hero{position:relative;padding:0;overflow:hidden;max-width:1536px;margin-inline:auto}
.hero-media{position:relative;overflow:hidden;aspect-ratio:16/7}
.hero-pic,.hero-pic img{display:block;width:100%;height:auto}
.hero-text{padding:40px clamp(20px,6vw,96px) 72px}
.hero h1{font-size:clamp(2.6rem,6vw,5.2rem);max-width:11ch}
.scrim{position:absolute;inset:0;pointer-events:none}
@media (min-width:1100px){.hero-text{position:absolute;inset:0 auto 0 0;width:min(620px,52%);display:flex;flex-direction:column;justify-content:center;padding:48px 0 48px clamp(40px,5vw,80px)}
.hero .scrim{background:linear-gradient(90deg,#0E1420F5 0,#0E1420EB 34%,#0E142099 52%,#0E142000 70%)}
.hero h1{font-size:clamp(3rem,4.6vw,4.6rem)}}
@media (max-width:640px){.hero-media{aspect-ratio:4/5}}
.w{display:inline-block}.em{color:var(--gold-ink)}
.lead{font-size:1.15rem;color:#C9CFD8;max-width:36rem;margin:0 0 .6em}
.actions{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:44px;padding:0 26px;border-radius:2px;background:var(--green);color:#FFFFFF;font:600 1rem var(--sans);text-decoration:none;border:1px solid var(--green);cursor:pointer}
.btn:hover{background:var(--green-h)}.btn:active{background:var(--green-a);transform:translateY(1px)}
.btn.sec{background:transparent;color:inherit;border-color:currentColor}
.ink .btn.sec:hover{background:#F6F2EA0F;border-color:var(--gold-ink)}.ivory .btn.sec:hover{background:#0E14200F;border-color:var(--iv-gold)}
.note{font-size:.9rem;color:#C9CFD8;border:1px solid #9AA5B166;border-radius:2px;padding:10px 14px;display:inline-block;background:#0E1420}
.sweep{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#FFF1D02E 50%,transparent 65%);transform:translateX(-100%);opacity:0;pointer-events:none}
.anim .w{clip-path:inset(0 100% 0 0);transform:translateY(12px);transition:clip-path var(--dur-reveal-lg) var(--ease-enter),transform var(--dur-reveal-lg) var(--ease-enter)}
.anim .fx,.anim .fx2{opacity:0;transform:translateY(12px);transition:opacity var(--dur-reveal) var(--ease-enter),transform var(--dur-reveal) var(--ease-enter)}
.anim.ready .w{clip-path:inset(0 0 0 0);transform:none}
.anim.ready .w:nth-child(2){transition-delay:75ms}.anim.ready .w:nth-child(3){transition-delay:150ms}.anim.ready .w:nth-child(4){transition-delay:225ms}
.anim.ready .fx{opacity:1;transform:none;transition-delay:300ms}.anim.ready .fx2{opacity:1;transform:none;transition-delay:400ms}
.anim.ready .sweep{animation:sweep var(--dur-sweep) var(--ease-enter) 200ms 1 both}
@keyframes sweep{0%{opacity:0;transform:translateX(-100%)}20%{opacity:1}100%{opacity:0;transform:translateX(100%)}}
.par{will-change:transform}
.manifesto{text-align:center}
.divider{display:block;width:min(600px,100%);height:auto;margin:0 auto 48px}
.motif{display:block;width:min(360px,80%);height:auto;margin:0 auto 32px}
.mf-lines p{font:300 clamp(1.5rem,3.2vw,2.5rem)/1.25 var(--serif);margin:0 auto;max-width:28ch;letter-spacing:-.01em}
.sig{font:500 1rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--iv-gold);margin-top:40px}
.cl-body{display:grid;grid-template-columns:1fr;gap:32px}
.cl-stick{height:220px;max-width:420px}
.cl-stick svg{width:100%;height:100%;fill:none}
.cl-cont path{stroke:#8E702966}.cl-guide{stroke:#8E702940;stroke-width:1}
.cl-draw{stroke:var(--gold-ink);stroke-width:2}.cl-re{stroke:#9AA5B1;stroke-width:1.2;stroke-dasharray:4 5}
.cl-top{fill:var(--gold-ink)}.cl-glow{fill:#F4B740;opacity:.15}
.cl-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cl-step{border-left:1px solid var(--gold-line);padding:20px 0 20px 28px}
.cl-step .n{font:500 .8rem var(--sans);color:var(--gold-ink);letter-spacing:.14em;text-transform:uppercase}
.cl-step h3{font-size:clamp(1.7rem,3vw,2.4rem)}.cl-step p{color:#9AA5B1;max-width:30rem;margin:0}
@media (min-width:768px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
.anim .cl-body{grid-template-columns:1fr 1fr;gap:56px}
.anim .cl-stick{position:sticky;top:18vh;align-self:start;height:min(60vh,460px);max-width:none}
.anim .cl-step{min-height:60vh;display:flex;flex-direction:column;justify-content:center;--k:clamp(0,calc((var(--o,.3) - .3) / .7),1)}
.anim .cl-step h3{color:color-mix(in srgb,#F6F2EA calc(var(--k) * 100%),#8C97A5)}.anim .cl-step p{color:color-mix(in srgb,#9AA5B1 calc(var(--k) * 100%),#7D8896)}.anim .cl-step .n{color:color-mix(in srgb,#F4B740 calc(var(--k) * 100%),#B08A3E)}
.anim .cl-draw{stroke-dasharray:1;stroke-dashoffset:var(--p,1)}
.anim .cl-re{opacity:var(--re,0)}.anim .cl-top{opacity:var(--top,0)}.anim .cl-glow{opacity:var(--glow,0)}
.anim .cl-cont{transform:translateY(var(--cy,0px))}}
.cards{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.jcards{grid-template-columns:repeat(3,1fr)}
.card{position:relative;padding:28px;border:1px solid #8E702966;border-radius:2px;background:transparent}
.ivory .card{background:var(--iv-card)}
.card::before{content:"";position:absolute;inset:0;box-shadow:0 22px 40px -24px #0008;opacity:0;pointer-events:none}
.card p{margin:0;color:var(--iv-mu)}.ink .card p{color:#9AA5B1}
.card svg{width:44px;height:44px;fill:none;stroke:var(--iv-line);stroke-width:1.4;margin-bottom:16px}
.ink .card svg{stroke:var(--gold-ink)}
.clip{overflow:hidden;border-bottom:1px solid #8E702966;margin-bottom:18px}
.card .mo,.card .mo img{display:block;width:100%;height:auto;margin:0}.card picture.mo img{aspect-ratio:3/2;object-fit:cover}.jcards picture.mo img{aspect-ratio:12/5}
@media (max-width:640px){.moments picture.mo img{aspect-ratio:4/5}}
.card{overflow:hidden}.card .clip{margin:-28px -28px 18px}
.ill{position:absolute;top:12px;right:12px;font:600 .7rem var(--sans);letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:#F6F2EA;border:1px solid var(--gold-line);padding:2px 8px;border-radius:2px;z-index:1}
.rt{font-size:.82rem!important;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px!important}
.cardlink::before{content:"";position:absolute;inset:0}
.anim .card{transition:transform 200ms var(--ease-enter),border-color 200ms var(--ease-enter)}.anim .card::before{transition:opacity 200ms var(--ease-enter)}
.anim .card:hover,.anim .card:focus-within{transform:translateY(-4px);border-color:var(--gold-line)}.anim .card:hover::before,.anim .card:focus-within::before{opacity:1}
.anim .moments .card .mo{transform:scale(1.04);transition:transform 800ms var(--ease-enter)}.anim .moments .card.in .mo{transform:none}
.disc{color:#9AA5B1;font-size:.95rem;margin-top:24px}
.count{margin-top:56px;font-size:1.1rem}.num{font:400 3.2rem/1 var(--serif);color:var(--iv-gold);margin-right:12px;vertical-align:middle}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}.chips li{border:1px solid var(--iv-line);border-radius:2px;padding:8px 14px;font-size:.92rem}
.quotes{text-align:center}.quotes .eyebrow{justify-content:center}
.qlist{list-style:none;padding:0;margin:0 auto;max-width:46rem}
.q blockquote{margin:0}.q blockquote p{font:300 clamp(1.5rem,3.2vw,2.4rem)/1.25 var(--serif);margin:0 0 14px}
.q .src{color:var(--iv-mu);font-size:.92rem;margin:0 0 40px}
.js .q{display:none}.js .q.cur{display:block}
.anim .q.cur{animation:qin 400ms var(--ease-enter) 1 both}@keyframes qin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.qnav{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.privacy p{max-width:40rem;color:#9AA5B1}
.faq details{border-bottom:1px solid var(--gold-line);max-width:48rem}
.faq summary{min-height:56px;display:flex;align-items:center;cursor:pointer;font:500 1.25rem var(--serif)}
.faq details p{color:#9AA5B1}
.rm-h{margin-top:56px}.sub{color:#9AA5B1}.rm-tag{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--slate);padding:3px 10px;border-radius:2px;margin-right:8px}
.st-row{display:flex;gap:28px;align-items:center;max-width:52rem}
.mono{flex:none;width:88px;height:88px;border:1px solid var(--iv-line);border-radius:2px;display:grid;place-items:center;font:400 1.6rem var(--serif);color:var(--iv-gold)}
.st-text{font:300 clamp(1.3rem,2.4vw,1.75rem)/1.45 var(--serif)}
.close{text-align:center}.close .display,.close .lead{margin-inline:auto}
footer{padding:40px clamp(20px,6vw,96px);border-top:1px solid var(--gold-line);color:#9AA5B1;font-size:.92rem;display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:center}
footer p{margin:0}footer nav{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.jhead{padding-bottom:40px}.jlist{padding-top:64px}
.journal-article{max-width:none;padding-top:0}.journal-article>*{max-width:40rem;margin-inline:auto}
.journal-article h1{font:400 clamp(2.4rem,5vw,4rem)/1.05 var(--serif);letter-spacing:-.015em;margin:0 0 .4em}
.journal-article h2{font:500 1.7rem/1.2 var(--serif);margin:2em auto .5em}
.journal-article p,.journal-article li{color:var(--iv-fg)}
.dek{font:300 1.4rem/1.4 var(--serif)}.reading-time{color:var(--iv-mu);letter-spacing:.12em;text-transform:uppercase;font-size:.82rem}
.ahead{max-width:1536px!important;margin:0 auto;position:relative}
.aimg{position:relative;margin:0 0 28px;background:var(--ink)}.apic,.apic img{display:block;width:100%;height:auto}
.atext{max-width:40rem;margin-inline:auto}
@media (min-width:900px){.ahead .atext{position:absolute;inset:0 auto 0 0;width:min(560px,46%);display:flex;flex-direction:column;justify-content:center;padding:32px 0 32px clamp(32px,4vw,64px);color:#F6F2EA;margin:0}
.ahead .scrim{background:linear-gradient(90deg,#0E1420F5 0,#0E1420E6 40%,#0E142080 58%,#0E142000 74%)}
.ahead .atext .dek,.ahead .atext h1{color:#F6F2EA}.ahead .atext .reading-time{color:#C9CFD8}.ahead .atext .eyebrow{color:var(--gold-ink)}
.ahead .atext h1{font-size:clamp(2rem,3.4vw,3.2rem)}.ahead .atext .dek{font-size:1.15rem}}
.closing-line{font:400 1.3rem/1.4 var(--serif);border-top:1px solid var(--iv-line);padding-top:24px;margin-top:40px}
.sources{font-size:.9rem;padding-left:1.2em}.sources li{color:var(--iv-mu)!important}
.anim .aimg{opacity:0;transition:opacity var(--dur-reveal) var(--ease-enter)}.anim.ready .aimg{opacity:1}
.anim .card .icon *{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 900ms var(--ease-enter) 150ms}
.anim .card.in .icon *{stroke-dashoffset:0}
.faq summary{justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}.faq summary{list-style:none}
.faq summary::after{content:"";flex:none;width:10px;height:10px;border-right:1.5px solid var(--gold-ink);border-bottom:1.5px solid var(--gold-ink);transform:rotate(45deg)}
.faq details[open] summary::after{transform:rotate(225deg)}
.anim .faq summary::after{transition:transform 200ms var(--ease-enter)}
.anim .faq details[open]>p{animation:fadein 200ms var(--ease-enter) 1 both}@keyframes fadein{from{opacity:0}to{opacity:1}}
.founder{margin:0;flex-shrink:0}.founder-photo{display:block;width:140px;height:140px;border-radius:50%;background:none;padding:0;border:0;box-shadow:0 0 0 1px #8E7029;flex-shrink:0;max-width:none}
@media (min-width:700px){.founder-photo{width:200px;height:200px}}
.founder figcaption{font-size:.85rem;color:var(--iv-mu);margin-top:10px;letter-spacing:.04em}
.page{padding:clamp(64px,9vw,120px) clamp(20px,6vw,96px);min-height:60vh}
.page>*{max-width:44rem}.page h2{font:500 1.6rem/1.2 var(--serif);margin:2em 0 .6em}
.page .card{margin:24px 0;max-width:44rem}.page .card p{color:var(--iv-fg)}
.page details{border-bottom:1px solid var(--iv-line);max-width:44rem}.page summary{min-height:56px;display:flex;align-items:center;cursor:pointer;font:500 1.15rem var(--serif)}
.page details p{color:var(--iv-mu)}.page address{font-style:normal}
.nf .lead{color:#9AA5B1}
.story-body>*{max-width:40rem;margin-inline:auto}.story-body p{font-size:1.15rem}.story-body .story-tag{font:500 1rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--iv-gold)}
.story-body .founder{margin:32px auto}
[data-media-slot]{position:relative}
.anim .reveal{opacity:0;transform:translateY(18px);transition:opacity var(--dur-reveal) var(--ease-enter),transform var(--dur-reveal) var(--ease-enter);transition-delay:calc(var(--i,0) * var(--stagger))}
.anim .reveal.in{opacity:1;transform:none}
.anim .mag{transition:transform var(--dur-hover) var(--ease-enter),background-color var(--dur-hover)}
@media (max-width:900px){.cards,.jcards{grid-template-columns:1fr 1fr}.top nav{order:3;width:100%;margin:0}.top ul{gap:0 16px}}
@media (max-width:560px){.cards,.jcards{grid-template-columns:1fr}.st-row{flex-direction:column;align-items:flex-start}.top ul{font-size:.88rem;gap:0 12px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;clip-path:none!important}
.par,.w,.reveal,.mag,.card,.fx,.fx2,.cl-cont,.mo{transform:none!important}
.reveal{transition:opacity var(--dur-reduced) linear!important}}
.journal-article footer{display:block;padding:0;border:0;color:inherit;font-size:1rem}
.journal-article footer h2{color:var(--iv-fg)}
.jcards h2{font:500 1.4rem/1.2 var(--serif);margin:.2em 0 .45em}
