@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Spectral:ital,wght@0,300;0,400;1,300;1,400&display=swap');
:root{color-scheme:light;
--display:'Cormorant Garamond',Georgia,serif;
--body:'Spectral',Georgia,serif;
--mono:ui-monospace,'SF Mono',Menlo,monospace;
--bg:#e9e2d4;--bg-soft:#f2ece0;--bg-deep:#1e2229;
--ink:#2c2a23;--head:#232a33;--muted:#5d5749;--faint:#8b8371;
--line:rgba(48,40,22,.14);--line-hi:rgba(48,40,22,.28);
--gold:oklch(0.55 0.09 72);--gold-deep:oklch(0.47 0.082 68);
--green:oklch(0.45 0.055 158);
--light:#f3eee3}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-weight:300;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--gold-deep);text-decoration:none}
a:hover{color:var(--head)}
img{display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 40px}
.narrow{max-width:760px}
.mid{max-width:900px}
/* nav */
header.nav{position:sticky;top:0;z-index:40;backdrop-filter:blur(14px);background:linear-gradient(180deg,rgba(233,226,212,.96),rgba(233,226,212,.72));border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;gap:34px;height:78px}
.brand{display:flex;align-items:center;gap:13px;color:inherit}
.brand img{width:42px;height:42px;object-fit:contain;flex:none}
.brand>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.brand .n{display:block;font-family:var(--display);font-size:22px;font-weight:500;color:var(--head);line-height:1}
.brand .t{display:block;font-family:var(--mono);font-size:8px;letter-spacing:.22em;color:var(--faint);text-transform:uppercase;white-space:nowrap;line-height:1}
nav.links{display:flex;gap:26px;margin-left:auto;align-items:center}
nav.links a{color:var(--muted);font-size:15px;letter-spacing:.01em}
nav.links a:hover,nav.links a[aria-current]{color:var(--head)}
/* buttons */
.btn{font-family:var(--body);font-size:15.5px;cursor:pointer;border-radius:0;padding:14px 26px;display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line-hi);color:var(--ink);transition:background .25s,border-color .25s,color .25s;white-space:nowrap}
.btn .arw{transition:transform .25s}
.btn:hover .arw{transform:translateX(5px)}
.btn-primary{background:var(--head);border-color:var(--head);color:#f4efe4}
.btn-primary:hover{background:#161c25;color:#fff}
.btn-quiet:hover{border-color:var(--head);color:var(--head)}
.btn-light{border-color:rgba(244,239,228,.42);color:#f4efe4}
.btn-light:hover{border-color:#f4efe4;background:rgba(244,239,228,.1);color:#fff}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}
/* type */
h1,h2,h3{margin:0;font-weight:400;font-family:var(--display);color:var(--head);letter-spacing:-.012em}
.h1{font-size:clamp(46px,6.4vw,92px);line-height:1.02;max-width:19ch;text-wrap:balance}
.h2{font-size:clamp(34px,4.4vw,58px);line-height:1.06;max-width:22ch;text-wrap:balance}
.h3{font-size:clamp(24px,2.4vw,32px);line-height:1.14}
.eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep)}
.eyebrow.q{color:var(--faint)}
.lead{font-size:clamp(19px,1.9vw,23px);line-height:1.62;color:var(--muted);max-width:56ch;margin:26px 0 0;text-wrap:pretty}
p{font-size:17.5px;line-height:1.74;color:var(--muted);max-width:62ch;text-wrap:pretty;margin:20px 0 0}
p b,strong{color:var(--head);font-weight:500}
.big{font-family:var(--display);font-size:clamp(26px,3vw,38px);line-height:1.28;color:var(--head);max-width:30ch;margin:0}
/* sections */
section{padding:132px 0}
section.tight{padding:88px 0}
.rule{border-top:1px solid var(--line)}
.dark{background:var(--bg-deep);color:#d9d3c6}
.dark h1,.dark h2,.dark h3,.dark p b,.dark strong,.dark .big{color:#f4efe4}
.dark p,.dark .lead{color:rgba(217,211,198,.82)}
.dark .eyebrow{color:oklch(0.72 0.07 76)}
.dark .rule,.dark .row{border-color:rgba(244,239,228,.16)}
.dark a{color:oklch(0.78 0.06 76)}
.sec-head{max-width:800px}
.sec-head .h2{margin-top:18px}
/* media */
.bleed{width:100%;overflow:hidden;background:#ddd5c4}
.bleed img{width:100%;height:clamp(340px,52vh,600px);object-fit:cover}
.figure{margin:64px 0 0}
.figure img{width:100%;height:clamp(280px,40vh,460px);object-fit:cover}
.cap{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:14px 0 0}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:64px}
.duo img{width:100%;height:clamp(240px,34vh,400px);object-fit:cover}
.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.split img{width:100%;height:clamp(300px,46vh,520px);object-fit:cover}
.split.flip .media{order:-1}
/* editorial rows (replaces cards) */
.rows{margin:56px 0 0;border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:start;padding:38px 0;border-bottom:1px solid var(--line)}
.row .idx{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--faint);padding-top:12px;min-width:3ch}
.row .term{font-family:var(--display);font-size:clamp(26px,2.6vw,34px);line-height:1.1;color:var(--head)}
.row .meta{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);margin-top:12px}
.row p{margin-top:12px;font-size:17px}
.row.link:hover .term{color:var(--gold-deep)}
/* path / sequence */
.path{margin:64px 0 0;display:grid;gap:0}
.step{display:grid;grid-template-columns:auto 1fr;gap:40px;padding:34px 0;border-bottom:1px solid var(--line)}
.step:first-child{border-top:1px solid var(--line)}
.step .no{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--faint);padding-top:9px}
.step .st{font-family:var(--display);font-size:clamp(24px,2.4vw,31px);line-height:1.12;color:var(--head)}
.step p{margin-top:10px;font-size:16.5px;max-width:58ch}
/* stage chain */
.chain{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:60px;background:var(--line)}
.chain>div{background:var(--bg);padding:40px 34px}
.dark .chain{background:rgba(244,239,228,.18)}
.dark .chain>div{background:var(--bg-deep)}
.chain .ph{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}
.chain .nm{font-family:var(--display);font-size:clamp(23px,2.2vw,29px);line-height:1.12;margin-top:14px;color:var(--head)}
.dark .chain .nm{color:#f4efe4}
.chain p{font-size:16px;margin-top:12px}
/* word list */
.words{display:flex;flex-wrap:wrap;gap:10px 12px;margin:40px 0 0;padding:0;list-style:none}
.words li{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:10px 16px}
.dark .words li{color:rgba(217,211,198,.85);border-color:rgba(244,239,228,.2)}
/* not-list */
.nots{list-style:none;padding:0;margin:34px 0 0;display:grid;gap:14px;max-width:60ch}
.nots li{display:flex;gap:14px;font-size:17.5px;line-height:1.5;color:var(--muted)}
.nots .x{font-family:var(--mono);color:var(--gold-deep);flex:none}
/* faq */
.faq{margin:56px 0 0;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:30px 0;font-family:var(--display);font-size:clamp(21px,2.1vw,26px);color:var(--head);display:flex;justify-content:space-between;gap:24px;align-items:baseline}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-family:var(--mono);font-size:18px;color:var(--faint)}
.faq details[open] summary::after{content:'–'}
.faq details p{margin:0 0 30px;max-width:64ch}
/* quote */
.quote{margin:0;padding:0}
.quote p{font-family:var(--display);font-size:clamp(28px,3.4vw,44px);line-height:1.24;color:var(--head);max-width:26ch;margin:0}
.dark .quote p{color:#f4efe4}
/* footer */
footer.site{background:var(--bg-deep);color:rgba(217,211,198,.8);padding:80px 0 48px;font-size:15px}
footer.site .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px}
footer.site .h{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(217,211,198,.5);margin-bottom:18px}
footer.site a{color:rgba(217,211,198,.8);display:block;padding:5px 0}
footer.site a:hover{color:#f4efe4}
footer.site .fin{margin-top:56px;padding-top:24px;border-top:1px solid rgba(244,239,228,.14);font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(217,211,198,.45);display:flex;gap:22px;flex-wrap:wrap}
footer.site .wm{font-family:var(--display);font-size:26px;color:#f4efe4;margin-bottom:10px}
@media(max-width:1150px){
.nav-in{gap:22px}
nav.links{gap:18px}
nav.links a{font-size:14px}
.nav-in .btn{padding:12px 18px;font-size:14.5px}}
@media(max-width:1000px){
nav.links{display:none}
.nav-in .btn{margin-left:auto}}
@media(max-width:900px){
.wrap{padding:0 24px}
section{padding:88px 0}
.split,.duo,.chain{grid-template-columns:1fr;gap:32px}
.chain{background:none;gap:1px}
.chain>div{padding:32px 0;border-top:1px solid var(--line)}
.split.flip .media{order:0}
.row,.step{grid-template-columns:1fr;gap:0}
.row .idx,.step .no{padding-top:0;margin-bottom:10px}
footer.site .cols{grid-template-columns:1fr;gap:34px}}
