/* v4 lab: editorial, sharp, one accent. Roles: ink = emphasis, blush = behind imagery only, pink = action only */
:root{--paper:#FBF7F4;--ink:#151413;--pink:#EC3D78;--blush:#F7DCDD;--line:rgba(21,20,19,.16);--cream:#FBF7F4;--serif:"DM Serif Display",Georgia,serif;--sans:"Inter",system-ui,sans-serif;--gut:clamp(20px,5vw,72px);--sec:clamp(5rem,11vw,9.5rem)}
body{background:var(--paper);color:var(--ink);font-size:1rem;line-height:1.6}
.v4 .wrap{max-width:84rem;padding:0 var(--gut)}
.v4 img{border-radius:0}
.eyebrow{font:600 .7rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.6rem;display:flex;gap:.75rem;align-items:center}
.eyebrow::before{content:"";width:2rem;height:1px;background:currentColor}
.btn{border-radius:0;font-weight:600;letter-spacing:.01em;padding:1.15rem 2rem}
.btn:hover{background:var(--ink);color:var(--paper)}
.ink .btn:hover,.hero4 .btn:hover{background:var(--paper);color:var(--ink)}

/* header sits on the ink hero */
.hdr{position:absolute;inset:0 0 auto;z-index:5;padding:1.4rem 0;color:var(--paper)}
.hdr .wrap{display:flex;justify-content:space-between;align-items:center}
.hdr nav{display:flex;gap:1.75rem;align-items:center;font-size:.85rem}
.hdr nav a{text-decoration:none}.hdr nav a:hover{color:var(--pink)}
.hdr .btn{padding:.7rem 1.1rem;font-size:.85rem;color:var(--ink)}
@media(max-width:44rem){.hdr nav a:not(.btn){display:none}}

/* hero: split */
.hero4{display:grid;grid-template-columns:1fr;background:var(--ink);color:var(--paper);overflow:hidden}
@media(min-width:62rem){.hero4{grid-template-columns:1fr 1fr;min-height:46rem}}
.hero4 .l{padding:9rem var(--gut) 5rem;display:flex;flex-direction:column;justify-content:center;max-width:46rem;margin-left:auto;width:100%}
@media(min-width:62rem){.hero4 .l{padding-left:max(var(--gut),calc((100vw - 84rem)/2 + var(--gut)))}}
.hero4 h1{font-size:clamp(2.9rem,6.2vw,5.6rem);line-height:1;letter-spacing:-.02em;text-wrap:balance}
.hero4 h1 em{color:var(--pink)}
.hero4 .sub{font-size:1.15rem;max-width:28rem;margin:1.75rem 0 0;color:rgba(251,247,244,.82)}
.hero4 form{margin:2.2rem 0 0}
.hero4 .meta{margin-top:1.25rem;font-size:.8rem;color:rgba(251,247,244,.7);display:flex;flex-wrap:wrap;gap:.3rem 1.25rem}
.hero4 .r{background:var(--blush);position:relative;min-height:30rem;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero4 .r img{width:112%;max-width:none;margin:0 -6%;object-fit:cover;box-shadow:none}
@media(min-width:62rem){.hero4 .r img{width:auto;height:112%;margin:0;transform:translateX(4%)}}

/* ticker */
.tick{background:var(--pink);color:var(--ink);overflow:hidden;white-space:nowrap;border-block:1px solid var(--ink)}
.tick div{display:inline-flex;gap:2.5rem;padding:1rem 0;animation:tk 28s linear infinite;font:400 1.6rem/1 var(--serif)}
.tick span::after{content:"\2022";margin-left:2.5rem}
@keyframes tk{to{transform:translateX(-50%)}}

/* nervous: sticky left */
.nerv{padding:var(--sec) 0}
.nerv .wrap{display:grid;gap:3rem}
@media(min-width:60rem){.nerv .wrap{grid-template-columns:5fr 7fr;gap:6rem}.nerv .st{position:sticky;top:4rem;align-self:start}}
.nerv h2{font-size:clamp(2.2rem,4.4vw,3.8rem);line-height:1.05;text-wrap:balance}
.nerv ol{list-style:none;margin:0;padding:0;counter-reset:q}
.nerv li{counter-increment:q;border-top:1px solid var(--line);padding:1.6rem 0;font:400 clamp(1.5rem,2.8vw,2.3rem)/1.15 var(--serif);display:flex;gap:1.5rem;align-items:baseline}
.nerv li:last-child{border-bottom:1px solid var(--line)}
.nerv li::before{content:counter(q,decimal-leading-zero);font:600 .7rem/1 var(--sans);letter-spacing:.14em;color:var(--pink)}
.nerv .cl{margin-top:2rem;max-width:26rem}

/* rail */
.rail{padding:var(--sec) 0;background:var(--blush)}
.rail h2{font-size:clamp(2.4rem,5vw,4.4rem);line-height:1;max-width:14ch;text-wrap:balance}
.rail .top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:3rem}
.rail .hint{font-size:.85rem}
.track{display:flex;gap:1.75rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gut) 2rem;scrollbar-width:thin}
.item{flex:0 0 min(78vw,21rem);scroll-snap-align:start}
.item .pg{aspect-ratio:720/1018;background:#fff;overflow:hidden;box-shadow:0 24px 50px rgba(90,30,40,.18);transition:transform .3s}
.item:hover .pg{transform:translateY(-8px)}
.item .pg img{width:100%;height:100%;object-fit:cover;object-position:top}
.item .tag{font:600 .68rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:1.2rem 0 .4rem;color:var(--pink)}
.item h3{font:400 1.45rem/1.15 var(--serif)}
.item p{font-size:.9rem;margin:.4rem 0 0}

/* managers index */
.mgr4{padding:var(--sec) 0}
.mgr4 h2{font-size:clamp(2.2rem,4.6vw,4rem);line-height:1.02;max-width:16ch;margin-bottom:3rem;text-wrap:balance}
.row{display:grid;grid-template-columns:5rem 1fr;gap:1rem 2rem;align-items:center;border-top:1px solid var(--line);padding:1.5rem 0;transition:background .2s,padding .2s}
@media(min-width:48rem){.row{grid-template-columns:8rem 16rem 1fr}}
.row:last-of-type{border-bottom:1px solid var(--line)}
.row:hover{background:var(--blush);padding-inline:1rem}
.row .L{font:400 clamp(3.5rem,7vw,6rem)/.9 var(--serif)}.row .L i{color:var(--pink);font-style:normal}
.row h3{font:400 1.6rem/1.1 var(--serif)}
.row p{margin:0;grid-column:2/-1}
@media(min-width:48rem){.row p{grid-column:auto}}
.mgr4 .q{margin-top:2rem}

/* founder */
.fnd{padding:var(--sec) 0;background:var(--ink);color:var(--paper)}
.fnd .wrap{display:grid;gap:3rem;align-items:center}
@media(min-width:56rem){.fnd .wrap{grid-template-columns:5fr 6fr;gap:6rem}}
.fnd .ph4{aspect-ratio:4/5;overflow:hidden;position:relative}
.fnd .ph4 img{width:100%;height:100%;object-fit:cover}
.fnd .ph4::after{content:"";position:absolute;inset:auto 0 0 0;height:30%;background:linear-gradient(transparent,rgba(21,20,19,.5))}
.fnd blockquote{margin:0 0 1.5rem;font:italic 400 clamp(1.8rem,3.6vw,3rem)/1.15 var(--serif)}
.fnd .sign{font:400 2rem/1 var(--serif);margin-top:1.5rem}
.ph{background:rgba(236,61,120,.55);color:inherit;padding:0 .15em}

.proof4{padding:var(--sec) 0 calc(var(--sec)*.6)}
.proof4 .cols{display:grid;gap:0}
@media(min-width:56rem){.proof4 .cols{grid-template-columns:repeat(3,1fr)}.proof4 figure+figure{border-left:1px solid var(--line)}}
.proof4 figure{margin:0;padding:2rem 2rem 2rem 0;border-top:1px solid var(--line)}
@media(min-width:56rem){.proof4 figure{padding:2rem}.proof4 figure:first-child{padding-left:0}}
.proof4 blockquote{margin:0 0 1.2rem;font:400 1.5rem/1.25 var(--serif)}
.proof4 figcaption{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}

/* price */
.buy4{padding:calc(var(--sec)*.7) 0 var(--sec)}
.panel{display:grid;gap:2.5rem;background:var(--ink);color:var(--paper);padding:clamp(2rem,6vw,5rem)}
@media(min-width:56rem){.panel{grid-template-columns:1.1fr .9fr;align-items:center}}
.panel h2{font-size:clamp(2.2rem,4.4vw,3.8rem);line-height:1.04;text-wrap:balance}
.panel ul{list-style:none;padding:0;margin:1.5rem 0 0;display:grid;gap:.6rem}
.panel li{padding-left:1.5rem;position:relative}
.panel li::before{content:"";position:absolute;left:0;top:.7em;width:.6rem;height:1px;background:var(--pink);box-shadow:0 0 0 1px var(--pink)}
.panel .price{font:400 clamp(5rem,11vw,9rem)/.9 var(--serif);letter-spacing:-.03em}
.panel .price small{font:600 .75rem/1 var(--sans);letter-spacing:.16em;margin-left:.6rem}
.panel .btn{width:100%;text-align:center;margin-top:1.75rem}
.panel .fine{font-size:.8rem;opacity:.75;margin:1rem 0 0}

.faq4{padding:0 0 var(--sec)}
.faq4 h2{font-size:clamp(2.2rem,4vw,3.4rem);margin-bottom:2rem}
.faq4 details{border-top:1px solid var(--line);padding:1.3rem 0;max-width:52rem}
.faq4 details:last-child{border-bottom:1px solid var(--line)}
.faq4 summary{font:400 1.5rem/1.2 var(--serif);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq4 summary::-webkit-details-marker{display:none}
.faq4 summary::after{content:"+";color:var(--pink);font:300 1.8rem/1 var(--sans)}
.faq4 details[open] summary::after{content:"\2212"}
.faq4 details p{margin:.9rem 0 0;max-width:40rem}

.foot4{background:var(--ink);color:var(--paper);padding:3rem 0 4rem;font-size:.85rem}
.foot4 .wrap{display:flex;flex-wrap:wrap;gap:1.5rem 3rem;justify-content:space-between}
.foot4 a{margin-right:1.25rem}
.foot4 .ph{color:var(--ink)}

.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.tick div{animation:none}.js .rv{opacity:1;transform:none}}
.sticky{border-radius:0}
.hero4 h1{font-size:clamp(2.8rem,5.2vw,4.9rem)}
.hero4 .r{background:#F7E1DB}
.hero4 .r img{width:100%!important;height:auto!important;max-width:100%;margin:0!important;transform:none!important}
@media(min-width:62rem){.hdr nav a:not(.btn){color:var(--ink)}}
