/* Linen, olive, generous type, and motion that follows the visitor. */
:root{--white:#faf7f1;--ease:cubic-bezier(.22,1,.36,1)}
html{background:var(--paper)}
body{overflow-x:clip}
.wordmark,.sub .wordmark,.footer-top .wordmark{font-family:'Manrope',sans-serif;font-size:30px;font-weight:700;letter-spacing:-1.8px;line-height:1;gap:0;color:var(--ink)}
.wordmark svg,.wordmark .dot{display:none}
.wordmark{transition:opacity .3s}
.wordmark:hover{opacity:.65}
.footer-signature{font-family:'Manrope',sans-serif;font-weight:600;font-size:clamp(80px,19vw,270px);letter-spacing:-.075em}
.top,.sub .top{background:rgba(243,238,229,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn,.sub .btn{border-radius:2px;font-size:16px;min-height:56px;padding:17px 24px;transition:background .4s,color .4s,translate .5s var(--ease),box-shadow .5s}
.btn-primary,.sub .btn-primary{background:var(--ink);color:var(--paper);box-shadow:0 6px 14px -10px #283a3050}
.btn-primary:hover,.sub .btn-primary:hover{background:#3b4d3d;box-shadow:0 12px 24px -16px #283a3080}
.btn:active,.sub .btn:active{translate:0 0}
.navr{gap:24px}
.navr .btn{min-height:46px;padding:12px 18px}
.nav-login{font-size:16px;text-underline-offset:6px}
.nav-login:hover{text-decoration:underline}
.hero{padding-block:70px 54px}
.hero-grid{grid-template-columns:1fr 1.08fr;gap:48px}
.hero h1{font-size:clamp(48px,5.25vw,78px);line-height:1.055}
.hero .intro{font-size:21px;max-width:32ch}
.portrait-stage{gap:18px}
.portrait-main{aspect-ratio:.6;margin-top:0}
.portrait-side{gap:18px}
.hero-person,.member-photo,.editorial-portrait{border-radius:2px}
.hero-person>img,.hero-person:hover>img,.member-photo img,.member:hover .member-photo img,.editorial-photo,.editorial-portrait:hover .editorial-photo,.invite-faces img,.auth-faces img,.match-photo img{filter:none}
.hero-caption{padding:40px 20px 22px}
.hero-caption strong{font-size:17px}
.hero-caption small{font-size:14px}
.portrait-side .hero-caption strong{font-size:15px}
.hero-person:hover .hero-caption{padding-bottom:28px}
.portrait-logo{background:rgba(250,247,241,.94);backdrop-filter:none;height:46px;left:16px;top:16px}
.portrait-logo img,.member-buyer-logo,.buyer-logos img,.editorial-buyer img,.profile-exit img,.match .logo-row img{filter:none;opacity:1}
.members{background:#e4e3d8;padding-block:112px}
.member-grid{gap:36px 24px}
.member-info{padding-top:22px}
.member h3{font-size:22px;font-weight:500}
.member-company{font-size:17px;line-height:1.6}
.member-exit{font-size:14px;padding-top:18px}
.member-cta{width:42px;height:42px;opacity:1;transform:none;backdrop-filter:none;background:#f3eee5e8}
.member-more .member-photo{background:#d7d7c9;border:1px solid #bfc4b2}
.more-in b{font-size:29px}.more-in span{font-size:17px;max-width:17ch}
.perspective{background:#eee6d9;padding-block:140px}
.perspective-grid{gap:clamp(48px,7vw,110px)}
.perspective-reading>p{font-size:22px;line-height:1.7}
.editorial-caption{background:#eee6d9;padding-top:24px}
.approach{background:var(--paper)}
.arrangement,.approach-extra{font-size:19px}
.step p{font-size:14px;letter-spacing:.08em}
.questions{background:#e5e5d9}.question summary{font-size:25px}.question-content p{font-size:19px}
.invite{position:relative;background:#283a30;padding-top:120px}
.invite-inner{position:relative;z-index:1}
.invite h2{font-size:clamp(70px,10vw,144px);font-weight:500}
.invite-founders p{font-size:20px}.invite-faces img{width:46px;height:46px}
.cta-button{position:relative;overflow:hidden;min-height:84px;padding:22px 30px;gap:64px;font-size:21px;border-radius:2px;background:var(--accent);box-shadow:0 12px 35px -20px #0008}
.cta-arrow{background:transparent;color:var(--ink);width:32px;height:32px}
.cta-button:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#ffffff40 50%,transparent 75%);transform:translateX(-110%);transition:transform .9s var(--ease);pointer-events:none}
.cta-button:hover:before{transform:translateX(110%)}
.cta-button:hover{translate:0 -3px;background:#e7d1b3}
.cta-button:hover .cta-arrow svg{transform:translateX(6px)}
.footer-links{font-size:17px}.footer-bottom{font-size:14px}
/* Registration and login become two calm, spacious editorial panels. */
.auth{grid-template-columns:.9fr 1.1fr;align-items:stretch}
.auth-side{position:sticky;top:85px;height:calc(100dvh - 85px);min-height:650px;padding:clamp(40px,5vw,80px);overflow:hidden;isolation:isolate;background:#283a30}
.auth-side:before{content:'';position:absolute;inset:0;z-index:-2;background:url('assets/imagery/founders-room.jpg') center/cover;opacity:.17;filter:blur(3px);transform:scale(1.03)}
.auth-side:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#283a3020,#283a30e0)}
.auth-side h1{font-size:clamp(52px,6vw,88px);max-width:8ch;line-height:1.02;margin-top:32px}
.auth-side>div>p:not(.eyebrow){font-size:21px;line-height:1.6;max-width:27ch}
.auth-faces img{width:58px;height:58px}
.auth-faces span{font-size:16px;line-height:1.6}
.auth-list li{font-size:17px}
.auth-main{padding:clamp(44px,5vw,76px) clamp(28px,5vw,84px) 120px;max-width:820px;background:var(--paper);align-self:start}
.auth-main h2{font-size:clamp(40px,4vw,60px);line-height:1.08}
.auth-main .intro{font-size:20px;line-height:1.65;margin-top:20px}
.auth-main .progress{gap:10px;margin-bottom:36px}
.progress i{height:3px;border-radius:10px}
.fields{gap:30px;margin-top:40px}
.f{position:relative;min-width:0}
.f>label,.f>.lbl{font-size:13px;letter-spacing:.085em;transition:color .3s,translate .4s var(--ease);margin-bottom:12px}
.f:focus-within>label,.f:focus-within>.lbl{color:var(--ink);translate:3px 0}
.f input,.f textarea,.request-body textarea{border:1px solid #bdbbab;border-radius:2px;padding:18px;font-size:19px;background:#faf7f1;transition:border-color .3s,box-shadow .4s,background .4s}
.f input:hover,.f textarea:hover{border-color:#7d8570}
.f input:focus,.f textarea:focus{outline:none;border-color:var(--ink);background:#fdfbf6;box-shadow:0 0 0 4px #283a3010}
.f input::placeholder,.f textarea::placeholder{color:#77796d;transition:opacity .3s}
.f input:focus::placeholder,.f textarea:focus::placeholder{opacity:.45}
.pill{font-size:16px;padding:12px 18px;min-height:46px;transition:background .35s,color .35s,border-color .35s,transform .4s var(--ease),box-shadow .4s}
.pill:hover{background:#e4e6dc;transform:translateY(-2px)}
.pill[aria-pressed=true]{background:var(--ink);color:var(--paper);box-shadow:0 4px 10px -6px #283a3060}
.pill:active{transform:translateY(0)}
.check input{width:20px;height:20px}.check{font-size:17px}
#regBox .xnav{margin-top:44px;margin-bottom:40px}
#regBox .alt{margin-top:0;padding-top:26px;margin-bottom:24px}
.auth-main .xnav .btn{min-height:60px;padding:19px 26px}
.deal{margin-top:40px}.deal .big{font-size:clamp(64px,8vw,116px);letter-spacing:-.055em;white-space:nowrap}
.deal .cap{font-size:18px;line-height:1.5;min-height:54px}
.track{margin-block:28px 10px}.track .knob{background:var(--ink);box-shadow:0 0 0 7px var(--paper),0 5px 18px #283a3040;transition:transform .08s linear}
.track .fill{transform-origin:left;transition:transform .08s linear}.quick{gap:10px;margin-top:32px}.below{font-size:18px}
/* Rolling columns retain a single accessible textual value. */
.rolling-number{display:inline-flex;align-items:baseline;font-variant-numeric:tabular-nums;line-height:1.12}
.roll-digit{display:inline-block;position:relative;width:.64em;height:1.12em;overflow:hidden;vertical-align:bottom}
.roll-strip{display:flex;flex-direction:column}
.roll-strip span{display:block;height:1.12em;line-height:1.12;flex:none;text-align:center}
.roll-symbol{display:inline-block;white-space:pre}
/* Dashboard typography and details use the same rhythm as the public pages. */
.app-view{padding-top:64px;padding-bottom:140px}.app-head>p{font-size:19px}.app-sec{margin-top:72px}
.match{background:#e8e6dc;grid-template-columns:40% 60%}.match-body{padding:24px 20px;gap:14px}
.match h3{font-size:24px}.match .why{font-size:17px}.btn.sm{font-size:15px;min-height:46px;padding:12px 16px}
.match-photo{overflow:hidden}.match-photo img{transition:transform 1s var(--ease)}.match:hover .match-photo img{transform:scale(1.045)}
.facts small,.kpis small{font-size:13px}.facts>div{padding-block:28px}.req blockquote{font-size:22px}
.xmodal{backdrop-filter:none}.xbox{border-radius:3px;box-shadow:0 30px 80px -20px #0004}
.demo{background:#f3eee5e8;backdrop-filter:none;border-radius:3px}.toast{background:var(--ink);box-shadow:0 12px 32px #283a3030}
/* Native transitions cover links, browser history and application redirects. */
@view-transition{navigation:auto}
::view-transition-old(root){animation:page-out .3s cubic-bezier(.4,0,1,1) both}
::view-transition-new(root){animation:page-in .55s cubic-bezier(.22,1,.36,1) both}
@keyframes page-out{to{opacity:0;transform:translateY(-12px)}}
@keyframes page-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.page-curtain{position:fixed;inset:0;z-index:1000;pointer-events:none;background:var(--ink);transform:translateY(100%);transition:transform .5s cubic-bezier(.76,0,.24,1)}
.page-curtain.leaving{transform:translateY(0)}
.page-curtain.arriving{transform:translateY(-100%)}
.motion-ready [data-reveal]{transition-duration:.75s;filter:none}
.motion-ready [data-reveal].visible{filter:blur(0)}
@media(min-width:901px){.auth-main .two{grid-template-columns:1fr}.auth-side .auth-list{margin-top:36px!important}}
@media(max-width:1100px) and (min-width:901px){.matches{grid-template-columns:1fr}.match{grid-template-columns:180px 1fr}}
@media(max-width:900px){.auth{grid-template-columns:1fr}.auth-side{position:relative;top:0;min-height:0;height:auto;padding:44px 32px;gap:36px}.auth-side h1{font-size:60px;max-width:none}.auth-side .auth-faces{display:none}.auth-main{max-width:none;padding:44px 32px 100px}}
@media(max-width:600px){.wordmark,.sub .wordmark,.footer-top .wordmark{font-size:25px;letter-spacing:-1.4px}.navr{gap:14px}.nav-login{font-size:14px}.navr .btn{font-size:14px;min-height:42px;padding:11px 13px}.hero{padding:42px 0}.hero-grid{grid-template-columns:1fr;gap:40px}.hero h1{font-size:clamp(42px,11vw,65px)}.hero .intro{font-size:19px}.portrait-stage{gap:12px}.portrait-main{aspect-ratio:.69}.portrait-side{gap:12px}.portrait-side .hero-person{aspect-ratio:1.05}.hero-caption{padding:30px 14px 18px}.hero-caption strong{font-size:15px}.hero-caption small{font-size:12px}.portrait-side .hero-caption strong{font-size:14px}.portrait-logo{left:10px;top:10px;height:38px;padding:7px 10px}.members{padding-block:70px}.member-grid{gap:30px 16px}.member h3{font-size:19px}.member-company{font-size:15px}.member-exit{font-size:13px}.member-cta{width:34px;height:34px}.more-in b{font-size:23px}.more-in span{font-size:16px}.perspective{padding-block:76px}.perspective-reading>p{font-size:20px}.question summary{font-size:23px}.question-content p{font-size:18px}.step p{font-size:12px}.invite{padding-top:84px}.invite h2{font-size:clamp(64px,15vw,88px)}.invite-founders p{font-size:18px}.cta-button{min-height:76px;font-size:20px;gap:44px;padding:20px 26px}.footer-signature{font-size:21vw}.auth-side{padding:36px 24px}.auth-side h1{font-size:52px;margin-top:22px}.auth-side>div>p:not(.eyebrow){font-size:18px}.auth-main{padding:40px 24px 100px}.auth-main h2{font-size:40px}.auth-main .intro{font-size:18px}.fields{gap:26px;margin-top:32px}.f input,.f textarea{font-size:18px;padding:16px}.auth-main .xnav{gap:20px}.deal .big{font-size:clamp(60px,18vw,86px)}.deal .cap{font-size:17px}.quick .pill{font-size:15px}.app-head>p{font-size:18px}.match{grid-template-columns:34% 66%}.match-body{padding:22px 16px}.match h3{font-size:21px}.match .why{font-size:16px}.match .act .btn{width:100%;gap:8px;padding:12px}.footer-links{font-size:16px}.demo{bottom:10px}.sub .nav{height:76px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-delay:0ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.motion-ready [data-reveal]{opacity:1;transform:none;filter:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}.page-curtain{display:none}}
/* Larger portraits: three generous columns, a roomier hero, full-width on phones. */
@media(min-width:901px){.hero-grid{grid-template-columns:.9fr 1.3fr;gap:48px}.hero h1{font-size:clamp(48px,4.7vw,70px)}.portrait-stage{grid-template-columns:1.1fr 1fr}.portrait-main{aspect-ratio:.62}.portrait-side .hero-person{aspect-ratio:1.09}.member-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:48px 30px}.member-photo{aspect-ratio:4/4.8}.member h3{font-size:25px}.member-company{font-size:18px}.member-exit{font-size:15px}.member-info{padding-top:24px}}
@media(min-width:501px) and (max-width:900px){.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:36px 24px}.member-photo{aspect-ratio:4/5}.hero-grid{grid-template-columns:1fr;gap:44px}.hero-copy{max-width:600px}}
@media(max-width:500px){.member-grid{grid-template-columns:1fr!important;gap:42px}.member-photo,.member:nth-child(4) .member-photo,.member:nth-child(5) .member-photo{aspect-ratio:4/4.6!important}.member h3{font-size:25px}.member-info{padding-top:22px}.member-company{font-size:18px;min-height:0}.member-exit{flex-direction:row;align-items:center;justify-content:space-between;font-size:15px;margin-top:15px;padding-top:15px}.member-logo-slot{height:42px}.member-cta{height:44px;width:44px;right:16px;bottom:16px}.more-in b{font-size:32px}.more-in span{font-size:19px}.member-more .member-photo{aspect-ratio:1.5!important}}

/* Motion stays on opacity and transforms; static surfaces preserve the warm palette. */
.hero-person>img{will-change:auto;transform:scale(1.035);transition:transform .7s var(--ease)}
.hero-person:hover>img{transform:scale(1.07)}
.hero-caption{transition:transform .5s var(--ease)}
.hero-person:hover .hero-caption{padding-bottom:22px;transform:translateY(-3px)}
.portrait-side .hero-caption,.portrait-side .hero-person:hover .hero-caption{padding-bottom:13px}
.member-photo img,.editorial-photo{transition:transform .7s var(--ease)}
.motion-ready .member[data-reveal]{transform:translateY(20px)}
.motion-ready .member[data-reveal].visible{transform:none}
.reading-word{opacity:1;transition:opacity .6s var(--ease)}
.motion-ready [data-reading]:not(.reading-visible) .reading-word{opacity:.5}
@supports (animation-timeline:scroll()){
 .scroll-progress{transform:scaleX(0);animation:scroll-fill linear both;animation-timeline:scroll(root)}
 @keyframes scroll-fill{to{transform:scaleX(1)}}
}
@supports (interpolate-size:allow-keywords){
 .question{interpolate-size:allow-keywords}
 .question::details-content{height:0;overflow:clip;transition:height .32s var(--ease),content-visibility .32s allow-discrete}
 .question[open]::details-content{height:auto}
}
@media(max-width:900px){.top,.sub .top{background:#f3eee5f5;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(hover:none){.hero-person:hover,.btn:hover,.sub .btn:hover,.cta-button:hover{translate:none}.hero-person:hover>img{transform:scale(1.035)}}
@media(prefers-reduced-motion:reduce){.reading-word{opacity:1!important}.hero-person>img,.hero-person:hover>img{transform:none}.scroll-progress{animation:none!important}}

@media(max-width:600px){.hero-person:hover .hero-caption{padding-bottom:18px}.portrait-side .hero-person:hover .hero-caption{padding-bottom:13px}}

/* Keep the registration title together at every screen size. */
[data-page="register"] .auth-side h1{max-width:none;white-space:nowrap;font-size:clamp(38px,5.5vw,80px)}
@media(max-width:900px){[data-page="register"] .auth-side h1{font-size:clamp(36px,8vw,60px)}}
@media(max-width:400px){[data-page="register"] .auth-side h1{font-size:clamp(30px,9vw,36px)}}
