/* v4 — visible empty placeholders for Harvey slots not yet filled */
.phslot{ border:1px dashed rgba(216,183,119,.55); background:rgba(216,183,119,.05); padding:30px 24px; text-align:center; margin:6px 0; }
.phslot span{ font-family:var(--mono); font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--amber); }
.phinline{ display:inline-block; border:1px dashed rgba(216,183,119,.55); background:rgba(216,183,119,.05); padding:10px 14px; margin-top:10px; font-family:var(--mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--amber); }
.tcar{ position:relative; max-width:900px; margin:34px auto 0; overflow:hidden; }
.tcar-track{ display:flex; transition:transform .7s cubic-bezier(.4,.0,.2,1); }
.tslide{ flex:0 0 100%; padding:8px 50px; text-align:center; }
.tquote{ font-family:var(--serif); font-size:clamp(21px,2.7vw,31px); line-height:1.36; color:var(--ink); letter-spacing:-.01em; }
.tquote .mk{ color:var(--green); }
.tattr{ font-family:var(--mono); font-size:12px; letter-spacing:.07em; text-transform:uppercase; color:var(--ink-3); margin-top:22px; }
.tarrow{ position:absolute; top:34%; transform:translateY(-50%); width:34px; height:34px; border:1px solid var(--line); background:rgba(242,241,236,.04); color:var(--ink-2); font-size:18px; line-height:1; cursor:pointer; }
.tarrow:hover{ color:var(--ink); border-color:var(--ink-3); }
.tarrow.prev{ left:0; } .tarrow.next{ right:0; }
.tdots{ display:flex; gap:9px; justify-content:center; margin-top:28px; }
.tdots button{ width:8px; height:8px; border-radius:50%; border:0; background:var(--line); cursor:pointer; padding:0; transition:background .2s; }
.tdots button.on{ background:var(--green); }
#voices .vh{ max-width:900px; }
@media(max-width:640px){ .tslide{ padding:8px 30px; } .tarrow{ display:none; } }
.cwr-gear.flip{ grid-template-columns:1fr 340px; }
.cwr-gear.flip .sb{ order:1; }
.cwr-gear.flip .cwr-copy{ order:2; }
@media(max-width:940px){ .cwr-gear.flip{ grid-template-columns:1fr; } .cwr-gear.flip .sb{ order:0; } .cwr-gear.flip .cwr-copy{ order:0; } }
/* pin the bottom status caption to a constant 2-line height so it never reflows the mock */
#cwr .sb-bar.dark{ align-items:flex-start; }
#cwr .sb-bar.dark .sb-caption{ height:38px; min-height:38px; line-height:1.35; display:flex; align-items:center; overflow:hidden; }
#cwr .sb-bar.dark .sb-live{ margin-top:15px; }
#cwr .sb-bar.dark .sb-tag{ margin-top:10px; }
#cwr .sb-bar.dark .sb-dots{ margin-top:16px; }
html{ scroll-behavior:smooth; }
#top,#cwr,#voices,#how-it-works,#security,#why-us,#contact{ scroll-margin-top:84px; }
.cred-in .cl-bam{ height:19px; }
.backers{ border-bottom:1px solid var(--line-2); background:var(--paper-2); padding:16px 0; }
.backers-in{ display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; justify-content:center; }
.backers-in .lbl{ font-family:var(--mono); font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); }
.backers-in .bk-lead{ font-family:var(--serif); font-size:17px; color:var(--ink-2); letter-spacing:.01em; }
.backers-in .bk-and, .backers-in .bk-amp{ font-size:12.5px; color:var(--ink-3); letter-spacing:.02em; }
.backers-in img.cl{ height:18px; width:auto; }
.backers-in .cl-accel{ height:18px; }
.backers-in .cl-a16z{ height:14px; }
/* ===== Harvey-style section tones: black / charcoal / white ===== */
body.sch section.on-light, body.sch section.sec-char, body.sch section.sec-black, body.sch .cta-band.sec-black{ border-top:0; }
body.sch .cred, body.sch .backers{ background:#0A0B0D; border-color:rgba(242,241,236,.06); }
body.sch section.sec-char{ background:#16181C; }
body.sch section.sec-black{ background:#0A0B0D; }
.hero-backers-wrap{ position:absolute; left:0; right:0; bottom:22px; z-index:2; }
.hero-backers-wrap .wrap{ padding-left:0; padding-right:0; }
.hero-backers{ display:flex; flex-direction:row; align-items:center; flex-wrap:wrap; text-align:left; gap:16px; }
.hero-backers .bk-lbl{ font-family:var(--mono); font-size:10.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-3); }
.hero-backers img.cl{ width:auto; display:block; }
.hero-backers .bk-goat{ display:flex; flex-direction:column; align-items:center; gap:5px; }
.hero-backers .cl-goat{ height:21px; }
.hero-backers .bk-goatname{ font-family:var(--serif); font-size:12.5px; color:var(--ink-2); letter-spacing:.01em; }
.hero-backers .bk-angels{ display:flex; align-items:center; gap:11px; }
.hero-backers .bk-and{ font-family:var(--mono); font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); }
.hero-backers .cl-accel{ height:19px; }
.hero-backers .cl-a16z{ height:23px; }
body.sch section.on-light{ background:#F3F2EC; }
body.sch .cta-band.sec-black{ background:#0A0B0D; }
body.sch .sec-char .tile{ background:#1E2125; border-color:rgba(242,241,236,.10); }
body.sch .sec-char .tcard{ background:rgba(242,241,236,.05); }
body.sch .on-light .eyebrow{ color:#5C6064; }
body.sch .on-light .sec-head .eyebrow::before{ background:#2E6B53; opacity:.9; }
body.sch .on-light h1, body.sch .on-light h2, body.sch .on-light h3, body.sch .on-light h4{ color:#101310; }
body.sch .on-light .lead, body.sch .on-light .cwr-copy p, body.sch .on-light p{ color:rgba(16,19,16,.66); }
body.sch .on-light .cwr-copy .fno{ color:#2E6B53; }
body.sch .on-light .cwr-copy p .nm{ color:#101310; }
body.sch .on-light .cwr-loop{ color:#3C4A41; border-color:rgba(16,19,16,.20); }
body.sch .on-light .cwr-gear, body.sch .on-light .cwr-gear:first-of-type{ border-top-color:rgba(16,19,16,.12); }
body.sch .on-light a, body.sch .on-light .tlink{ color:#2E6B53; }
body.sch .on-light .phslot{ border-color:rgba(16,19,16,.28); background:rgba(16,19,16,.02); }
body.sch .on-light .phslot span{ color:#7A6320; }
body.sch .on-light img[src*="/logos/"]{ filter:brightness(0); opacity:.6; }
.foot-cta-top{ display:flex; align-items:center; justify-content:space-between; gap:28px 48px; flex-wrap:wrap; padding-bottom:52px; margin-bottom:52px; border-bottom:1px solid var(--line); }
.foot-cta-top h2{ font-family:var(--serif); font-size:clamp(30px,3.6vw,46px); line-height:1.1; letter-spacing:-.015em; color:var(--ink); margin:0; max-width:640px; }
.foot-cta-top .btn{ flex:none; }
.sec-tile .sec-ic{ display:inline-flex; color:var(--green); margin-bottom:14px; }
.sec-tile .sec-ic svg{ width:28px; height:28px; display:block; }
.sec-trust{ display:flex; flex-wrap:wrap; gap:10px 26px; margin-top:40px; padding-top:24px; border-top:1px solid var(--line); }
.sec-trust span{ font-family:var(--mono); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-3); }
.sec-trust b{ color:var(--ink-2); font-weight:600; }
/* run-gear route line: reserve space so it never grows the mock */
#cwr .cwr-task .route{ display:block; visibility:hidden; }
#cwr .cwr-task.sb-warm .route{ visibility:visible; }
/* point72 logo a touch larger */
.cred-in .cl-parcha{ height:19px; }
.cred-in .cl-p72{ height:31px; }
/* how-it-works timeline */
.tl{ position:relative; display:flex; margin-top:48px; }
.tl-step{ flex:1; position:relative; padding-right:30px; }
.tl-step::after{ content:""; position:absolute; top:6px; left:13px; right:0; height:1px; background:var(--line); }
.tl-step:last-child{ padding-right:0; }
.tl-step:last-child::after{ display:none; }
.tl-dot{ display:block; width:13px; height:13px; border-radius:50%; background:var(--green); position:relative; z-index:1; margin-bottom:22px; }
.tl-when{ display:block; font-family:var(--mono); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--green); margin-bottom:9px; }
.tl-step h4{ font-size:16.5px; line-height:1.25; margin:0 0 7px; color:var(--ink); font-weight:600; }
.tl-step p{ font-size:13.5px; line-height:1.55; color:var(--ink-2); margin:0; }
@media(max-width:760px){ .tl{ flex-direction:column; gap:26px; } .tl-step{ padding:0 0 0 28px; } .tl-step::after{ top:14px; left:6px; right:auto; width:1px; height:100%; } .tl-dot{ position:absolute; left:0; top:1px; margin:0; } }
/* security: no cards, centered, larger icons, one row */
.sec-row{ display:flex; gap:30px 44px; justify-content:center; flex-wrap:wrap; margin-top:8px; }
.sec-item{ flex:1 1 0; min-width:190px; max-width:300px; text-align:center; }
.sec-item .sec-ic{ display:inline-flex; color:var(--green); margin-bottom:18px; }
.sec-item .sec-ic svg{ width:42px; height:42px; display:block; }
.sec-item h3{ margin-bottom:9px; }
.sec-item p{ margin:0 auto; }
.sec-item .sec-link{ display:inline-flex; align-items:center; gap:6px; margin-top:13px; font-size:13px; font-weight:500; color:var(--green); text-decoration:none; }
.sec-item .sec-link:hover{ color:var(--green-bright); }
/* Harvey-style generous vertical rhythm */
body.sch section:not(.hero-cine){ padding:clamp(108px,10.5vw,178px) 0; }
body.sch .sec-head{ margin-bottom:clamp(56px,5.5vw,80px); }
#cwr .cwr-gear{ padding:clamp(64px,6.5vw,98px) 0; }
@media(max-width:940px){ #cwr .cwr-gear{ padding:52px 0; } }
.g3{ gap:26px; } .g4{ gap:22px; }
.sec-row{ margin-top:14px; }
.sec-row + .sec-row{ margin-top:48px; }
.why-ops{ display:flex; flex-wrap:wrap; gap:16px 40px; align-items:center; justify-content:center; }
.why-ops + .sec-row{ margin-top:66px; }
#why-us .sec-head{ margin-bottom:40px; }
body.sch .sec-head{ max-width:980px; }
#why-us .sec-item{ text-align:left; max-width:340px; }
#why-us .sec-item p{ margin:0; }
.why-ops .lbl{ width:100%; text-align:center; font-family:var(--mono); font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); margin-bottom:4px; }
.why-ops img.cl{ height:22px; width:auto; }
.why-ops .cl-parcha{ height:19px; } .why-ops .cl-rh{ height:20px; } .why-ops .cl-pf{ height:21px; } .why-ops .cl-p72{ height:46px; } .why-ops .cl-mit{ height:25px; } .why-ops .cl-su{ height:20px; } .why-ops .cl-bam{ height:19px; }
.tl{ margin-top:52px; }
