/* Homepage below the hero: visual pass (Oct 2026).
   Four-stops strip with example UI cards, services path, difference band, specialty icons. */

/* ---------- Four stops strip ---------- */
.stops-strip{position:relative;z-index:5;padding:100px 6vw 70px;background:linear-gradient(180deg,#f5f6fa,#fff)}
.strip-head{max-width:760px}
.strip-head .kicker,.vs-head .kicker{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--vs-purple)}
.strip-head h2,.vs-head h2{font-size:clamp(30px,3.4vw,50px);line-height:1.08;letter-spacing:-.045em;font-weight:700;margin-top:14px;text-wrap:balance}
.strip-head p{font-size:18px;line-height:1.65;color:var(--muted);margin-top:16px}
.strip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:48px}
.stop-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s}
.stop-card:hover{transform:translateY(-6px);box-shadow:0 26px 50px #13284d1c}
.reveal-enabled .stop-card[data-reveal]:nth-child(2){transition-delay:.08s}
.reveal-enabled .stop-card[data-reveal]:nth-child(3){transition-delay:.16s}
.reveal-enabled .stop-card[data-reveal]:nth-child(4){transition-delay:.24s}
.mock{height:250px;position:relative;display:flex;align-items:center;justify-content:center;padding:22px;overflow:hidden}
.sc-google .mock{background:#FFF1E8}.sc-website .mock{background:#FDEBF3}.sc-call .mock{background:#F2EAFB}.sc-reviews .mock{background:#ECEBFD}
.stop-cap{padding:22px 22px 24px;border-top:1px solid var(--line);flex:1}
.stop-no{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:13px;font-weight:700;color:#fff}
.sc-google .stop-no{background:#E5571F}.sc-website .stop-no{background:#D30F70}.sc-call .stop-no{background:#7418C4}.sc-reviews .stop-no{background:#4A3AD8}
.stop-cap h3{font-size:19px;font-weight:700;letter-spacing:-.02em;margin-top:12px}
.stop-cap p{font-size:15px;line-height:1.6;color:var(--muted);margin-top:6px}
.strip-note{font-size:12px;color:var(--muted);margin-top:16px}

/* Google listing card */
.mock-google>*{flex:none}
.mock-google{flex-direction:column;gap:0;padding:20px}
.mg-map{width:100%;height:84px;border-radius:12px 12px 0 0;position:relative;background:#e8ecef;background-image:linear-gradient(#ffffff80 1px,transparent 1px),linear-gradient(90deg,#ffffff80 1px,transparent 1px);background-size:22px 22px}
.mg-road{position:absolute;background:#fff;border-radius:4px}
.mg-road.r1{left:-10%;right:-10%;top:46%;height:8px;transform:rotate(-8deg)}
.mg-road.r2{top:-10%;bottom:-10%;left:62%;width:8px;transform:rotate(12deg)}
.mg-pin{position:absolute;left:44%;top:12px;width:30px;height:30px;color:#E5571F;z-index:1;animation:pin-drop 1.6s cubic-bezier(.22,1,.36,1) both}
.mg-pin svg{width:100%;height:100%;filter:drop-shadow(0 4px 6px #0003)}
.mg-body{width:100%;background:#fff;border-radius:0 0 12px 12px;padding:12px 14px;display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:#3A4558;box-shadow:0 10px 24px #13284d14}
.mg-body b{font-size:13.5px;color:var(--ink)}
.mg-stars i{font-style:normal;color:#F5A623;letter-spacing:1px}
.mg-open{color:#188038;font-weight:600}
.mg-btns{display:flex;gap:6px;margin-top:6px}
.mg-btns span{flex:1;text-align:center;border:1px solid #d6dbe4;border-radius:999px;padding:4px 0;font-size:10.5px;font-weight:600;color:#1a56c4}
@keyframes pin-drop{0%{transform:translateY(-26px);opacity:0}60%{transform:translateY(3px);opacity:1}100%{transform:none}}

/* Phone website */
.ph-frame{width:150px;height:226px;margin-top:40px;background:#fff;border:6px solid var(--ink);border-radius:26px;padding:18px 12px;display:flex;flex-direction:column;gap:7px;box-shadow:0 18px 34px #13284d24;position:relative;transform:translateY(8px);transition:transform .5s cubic-bezier(.22,1,.36,1)}
.stop-card:hover .ph-frame{transform:translateY(-4px)}
.ph-notch{position:absolute;top:5px;left:50%;width:36px;height:5px;margin-left:-18px;border-radius:4px;background:var(--ink)}
.ph-logo{width:46px;height:6px;border-radius:4px;background:#c9cfda}
.ph-h{font-size:11.5px;line-height:1.25;color:var(--ink)}
.ph-sub{font-size:8.5px;color:#6b7486}
.ph-btn{display:flex;align-items:center;justify-content:center;gap:5px;background:#EE117E;color:#fff;border-radius:8px;padding:7px 0;font-size:10.5px;font-weight:700;animation:pulse 2.4s ease-in-out infinite}
.ph-btn svg{width:11px;height:11px;color:#fff}
.ph-btn2{text-align:center;border:1.5px solid var(--ink);border-radius:8px;padding:5px 0;font-size:9.5px;font-weight:700;color:var(--ink)}
.ph-tiles{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:2px}
.ph-tiles i{height:30px;border-radius:6px;background:#FDEBF3}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 #ee117e55}50%{box-shadow:0 0 0 7px #ee117e00}}

/* Call scorecard */
.mock-call{flex-direction:column;align-items:stretch;justify-content:center;gap:0}
.mock-call>*{background:#fff}
.mc-head{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:12px 12px 0 0;border-bottom:1px solid #eee}
.mc-ring{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#7418C4;color:#fff;animation:ring 2.6s ease-in-out infinite}
.mc-ring svg{width:15px;height:15px}
.mc-head b{display:block;font-size:12.5px;color:var(--ink)}
.mc-head span{font-size:10.5px;color:#6b7486}
.mock-call ul{list-style:none;margin:0;padding:6px 14px;font-size:11px;color:#3A4558}
.mock-call li{display:flex;align-items:center;gap:7px;padding:3px 0}
.mock-call li:before{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;font-size:9px;font-weight:700;color:#fff;flex:none}
.mock-call li.y:before{content:"✓";background:#1f9d55}
.mock-call li.n:before{content:"✕";background:#F02963}
.mc-score{display:flex;justify-content:space-between;align-items:baseline;padding:8px 14px 11px;border-radius:0 0 12px 12px;border-top:1px solid #eee;font-size:11px;color:#6b7486}
.mc-score b{font-size:17px;color:#7418C4}
.mock-call{box-shadow:none}
.mock-call>div:first-child,.mock-call>ul,.mock-call>.mc-score{box-shadow:0 10px 24px #13284d10}
@keyframes ring{0%,70%,100%{transform:rotate(0)}74%{transform:rotate(-14deg)}78%{transform:rotate(12deg)}82%{transform:rotate(-10deg)}86%{transform:rotate(8deg)}}

/* Review reply */
.mock-review{flex-direction:column;align-items:stretch;gap:10px}
.mr-review,.mr-reply{background:#fff;border-radius:12px;padding:11px 13px;box-shadow:0 10px 24px #13284d10}
.mr-stars{color:#F5A623;font-size:12px;letter-spacing:1px}
.mr-review p,.mr-reply p{font-size:11px;line-height:1.5;color:#3A4558;margin-top:4px}
.mr-reply{margin-left:18px;border:1.5px solid #4A3AD8}
.mr-tag{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4A3AD8}

/* ---------- Results: numbers that count up ---------- */
.metric .count{font-weight:inherit;color:inherit;font-variant-numeric:tabular-nums}

/* ---------- Services: path that follows the open item ---------- */
.svc-path{list-style:none;margin:36px 0 0;padding:0;position:relative;display:grid;gap:4px;max-width:360px}
.svc-path:before{content:"";position:absolute;left:21px;top:22px;bottom:22px;width:2px;background:linear-gradient(180deg,#FF7131,#F02963 50%,#7418C4);opacity:.35}
.svc-path li{display:flex;align-items:center;gap:14px;padding:6px 0;cursor:pointer;position:relative}
.sp-dot{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid var(--line);color:#9aa3b5;transition:all .3s;flex:none}
.sp-dot svg{width:20px;height:20px}
.sp-label{font-size:15px;font-weight:500;color:var(--muted);transition:color .3s}
.svc-path li.on .sp-dot{border-color:transparent;color:#fff;transform:scale(1.08);box-shadow:0 10px 20px #7418c433}
.svc-path li.on .sp-google{background:#FF7131}.svc-path li.on .sp-website{background:#EE117E}.svc-path li.on .sp-call{background:#7418C4}
.svc-path li.on .sp-reviews{background:#4A3AD8}.svc-path li.on .sp-track{background:#0A1628}.svc-path li.on .sp-ads{background:linear-gradient(135deg,#FF7131,#7418C4)}
.svc-path li.on .sp-label{color:var(--ink);font-weight:700}
.svc-path li:hover .sp-dot{border-color:var(--ink)}

/* ---------- Difference band ---------- */
.vs-band{position:relative;z-index:5;padding:96px 6vw;color:#fff;background:var(--dark-bg);overflow:hidden}
.vs-head .kicker{color:var(--vs-amber)}
.vs-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
.vs-col{border-radius:20px;padding:30px 32px}
.vs-them{background:#ffffff0d;border:1px solid #ffffff1f}
.vs-us{background:linear-gradient(140deg,#7418C4,#4F0F92 60%,#3a0b6e);box-shadow:0 24px 60px #7418c440}
.vs-col h3{font-size:14px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.vs-them h3{color:#9aa9bf}
.vs-col ul{list-style:none;margin:18px 0 0;padding:0}
.vs-col li{display:flex;gap:12px;align-items:baseline;padding:13px 0;border-top:1px solid #ffffff1f;font-size:18px;line-height:1.4}
.vs-them li{color:#c3cbd9}
.vs-them s{text-decoration-color:#F02963;text-decoration-thickness:2px;color:#FF8AB0}
.vs-them li:before{content:"✕";color:#F02963;font-weight:700}
.vs-us li{font-weight:600}
.vs-us li:before{content:"✓";color:#FD9820;font-weight:700}

/* ---------- Specialty icons ---------- */
.spec-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;margin-bottom:18px;transition:transform .3s}
.spec-ico svg{width:24px;height:24px}
.spec-card:hover .spec-ico{transform:rotate(-6deg) scale(1.06)}
.si-concierge-medicine{background:#F2EAFB;color:#7418C4}.si-wound-care{background:#FFF1E8;color:#E5571F}.si-colorectal-surgery{background:#FDEBF3;color:#D30F70}
.si-dental{background:#ECEBFD;color:#4A3AD8}.si-plastic-surgery{background:#FDEBF3;color:#EE117E}.si-other{background:#e7ebf2;color:#55607a}

@media(max-width:1150px){.strip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .stops-strip,.vs-band{padding:60px 23px}
 .strip-grid{grid-template-columns:1fr;gap:16px;margin-top:30px}
 .mock{height:230px}
 .vs-grid{grid-template-columns:1fr}
 .vs-col{padding:24px 22px}
 .vs-col li{font-size:16px}
 .svc-path{margin-top:26px}
}
@media(prefers-reduced-motion:reduce){.mg-pin,.ph-btn,.mc-ring{animation:none}.stop-card,.ph-frame,.sp-dot,.spec-ico{transition:none}}

/* ---------- How it works: three steps ---------- */
.steps3{position:relative;z-index:5;padding:100px 6vw;background:#fff}
.s3{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;position:relative}
.s3:before{content:"";position:absolute;left:12%;right:12%;top:34px;height:2px;background:#dde1ea}
.s3 li{position:relative;text-align:center;padding:0 10px}
.s3-n{display:inline-grid;place-items:center;width:70px;height:70px;border-radius:50%;font-size:26px;font-weight:700;color:#EE117E;background:#fff;border:2px solid #EE117E;position:relative}
.s3 h3{font-size:22px;font-weight:700;letter-spacing:-.02em;margin-top:20px}
.s3 p{font-size:16.5px;line-height:1.6;color:var(--muted);margin:10px auto 0;max-width:320px}
.s3-note{text-align:center;font-size:16px;color:var(--muted);margin-top:40px}
.s3-note .ink-link{margin-left:6px}

/* ---------- Closing: free check + short FAQ + form ---------- */
.close-check{position:relative;z-index:5;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:6vw;align-items:start;padding:100px 6vw;background:linear-gradient(180deg,#f5f6fa,#fff)}
.close-copy .kicker{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--vs-purple)}
.close-copy h2{font-size:clamp(30px,3.4vw,50px);line-height:1.08;letter-spacing:-.045em;font-weight:700;margin-top:14px;text-wrap:balance}
.close-lede{font-size:19px;line-height:1.6;color:var(--muted);margin-top:16px;max-width:560px}
.close-faq{margin-top:32px;max-width:600px}
.close-alt{font-size:15px;color:var(--muted);margin-top:26px}
.close-check .hero-form{box-shadow:0 24px 60px #13284d1f;border:1px solid var(--line)}

@media(max-width:1050px){.close-check{grid-template-columns:1fr;gap:40px}.close-check .hero-form{max-width:560px}}
@media(max-width:760px){
 .steps3,.close-check{padding:60px 23px}
 .s3{grid-template-columns:1fr;gap:34px}
 .s3:before{left:35px;right:auto;top:20px;bottom:20px;width:3px;height:auto;width:2px;background:#dde1ea}
 .s3 li{text-align:left;display:grid;grid-template-columns:70px 1fr;column-gap:18px;padding:0}
 .s3-n{grid-row:1/3}
 .s3 h3{margin-top:8px}
 .s3 p{margin:6px 0 0}
 .s3-note{text-align:left}
}

/* ---------- Featured result: concierge, right under the hero ---------- */
.showcase{position:relative;z-index:5;padding:72px 6vw 24px;background:#fff}
.sc-pod{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head nums" "fine fine";gap:20px 56px;align-items:center;padding:40px 48px;border:1px solid #e4dcf3;border-radius:24px;background:#F7F3FC}
.sc-head{grid-area:head}
.sc-head .kicker{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--vs-purple)}
.sc-head h2{font-size:clamp(26px,2.6vw,38px);line-height:1.12;letter-spacing:-.035em;font-weight:700;margin-top:12px;max-width:560px;text-wrap:balance}
.sc-head p{font-size:17px;line-height:1.55;color:var(--muted);margin-top:12px;max-width:520px}
.sc-nums{grid-area:nums;display:flex;align-items:center;gap:26px;padding-left:48px;border-left:1px solid #e4dcf3}
.sc-num{display:flex;flex-direction:column;gap:8px}
.sc-num b{font-size:clamp(40px,4vw,60px);line-height:1;letter-spacing:-.04em;font-weight:700;color:var(--ink);white-space:nowrap}
.sc-num .approx{font-size:.38em;font-weight:500;letter-spacing:0;color:var(--muted);vertical-align:middle}
.sc-num>span{font-size:14.5px;line-height:1.4;color:var(--muted)}
.sc-big b{color:#7418C4}
.sc-arrow{font-size:30px;color:#EE117E;line-height:1}
.sc-fine{grid-area:fine;font-size:12.5px;color:var(--muted);padding-top:18px;border-top:1px solid #e4dcf3}
@media(max-width:1100px){.sc-pod{grid-template-columns:1fr;grid-template-areas:"head" "nums" "fine"}.sc-nums{padding-left:0;border-left:0;padding-top:24px;border-top:1px solid #e4dcf3}}
@media(max-width:760px){
 .showcase{padding:44px 16px 8px}
 .sc-pod{padding:26px 22px;border-radius:18px;gap:16px}
 .sc-nums{flex-direction:column;align-items:flex-start;gap:14px}
 .sc-arrow{transform:rotate(90deg);font-size:24px;margin-left:8px}
 .sc-num b{font-size:44px}
}

/* ---------- Results: two cards now that concierge is featured above ---------- */
.case-grid.three.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.case-grid.three.two{grid-template-columns:1fr}}

/* ---------- Specialties carousel ---------- */
.spec-sec{overflow:hidden}
.spec-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.spec-top .sec-head{margin-bottom:0}
.spec-ctrl{display:flex;align-items:center;gap:10px;flex:none}
.spec-count{font-size:14px;font-weight:600;color:var(--muted);margin-right:8px}
.spec-btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font:600 20px/1 Inter,system-ui,sans-serif;cursor:pointer;transition:background .2s,border-color .2s,opacity .2s}
.spec-btn:hover:not(:disabled){border-color:var(--ink);background:#f5f6fa}
.spec-btn:disabled{opacity:.35;cursor:default}
.spec-btn:focus-visible,.spec-rail:focus-visible{outline:3px solid #7418C4;outline-offset:3px}
.spec-wrap{position:relative;margin:36px -6vw 0}
.spec-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;width:9vw;pointer-events:none;background:linear-gradient(90deg,#fff0,#fff);transition:opacity .3s}
.spec-wrap.at-end:after{opacity:0}
.spec-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:6vw;padding:6px 6vw 18px;scrollbar-width:none;overscroll-behavior-x:contain}
.spec-rail::-webkit-scrollbar{display:none}
.spec-rail .spec-card{flex:0 0 clamp(230px,21vw,290px);scroll-snap-align:start;min-height:280px;padding:26px}
.spec-rail .spec-card h3{font-size:21px;margin-top:16px}
.spec-rail .spec-card:hover{transform:translateY(-3px)}
.spec-other{background:#f5f6fa}
.spec-foot{display:flex;align-items:center;gap:18px;margin-top:10px}
.spec-progress{flex:1;max-width:260px;height:3px;border-radius:3px;background:#e7eaf0;overflow:hidden}
.spec-progress span{display:block;height:100%;width:30%;border-radius:3px;background:var(--ink);transform-origin:left;transition:margin-left .15s linear}
.spec-hint{display:none;font-size:13.5px;font-weight:600;color:var(--muted)}
.spec-hint span{display:inline-block;animation:hintnudge 1.6s ease-in-out infinite}
@keyframes hintnudge{0%,100%{transform:none}50%{transform:translateX(5px)}}
@media(max-width:760px){
 .spec-top{display:block}
 .spec-ctrl{display:none}
 .spec-wrap{margin:24px -23px 0}
 .spec-wrap:after{width:40px}
 .spec-rail{gap:12px;padding:4px 23px 14px;scroll-padding-left:23px}
 .spec-rail .spec-card{flex-basis:calc((100vw - 23px) / 2.3 - 12px);min-height:220px;padding:18px 16px;border-radius:16px}
 .spec-rail .spec-card .tag{display:none}
 .spec-rail .spec-ico{width:38px;height:38px;border-radius:11px;margin-bottom:12px}
 .spec-rail .spec-ico svg{width:20px;height:20px}
 .spec-rail .spec-card h3{font-size:16px;line-height:1.25;margin-top:0}
 .spec-rail .spec-card p{font-size:13.5px;line-height:1.45;margin-top:8px}
 .spec-rail .spec-card .go{font-size:13px;padding-top:12px}
 .spec-hint{display:inline}
}
@media(prefers-reduced-motion:reduce){.spec-hint span{animation:none}.spec-rail{scroll-behavior:auto}}

/* Bridge from the featured result into the four steps (Tony, 2026-10-21) */
.sc-next{grid-area:next;justify-self:start;font-size:15px;font-weight:600;color:#7418C4;border-bottom:1px solid #7418c455;padding-bottom:2px}
.sc-next:hover{border-color:#7418C4}
.sc-pod{grid-template-areas:"head nums" "next next" "fine fine"}
@media(max-width:1100px){.sc-pod{grid-template-areas:"head" "nums" "next" "fine"}}
.stops-strip{padding-top:72px}
.stops-strip .strip-head p{max-width:640px}

/* ---------- The four steps as a story you scroll through (Tony, 2026-10-21) ----------
   Replaces the pinned hero story. Each step: a photo with an example screen on top, and plain text.
   Rows alternate sides; photos settle and the example screens drift slightly as you scroll. */
.story .story-rows{display:grid;gap:110px;margin-top:70px}
.story-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:7vw;align-items:center}
.story-row:nth-child(even) .sr-visual{order:2}
.sr-visual{position:relative;padding:0 0 40px}
.sr-photo{height:clamp(320px,32vw,460px);border-radius:24px;overflow:hidden;background:#e7eaf0}
.sr-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.6s cubic-bezier(.22,1,.36,1)}
.story-row.is-visible .sr-photo img,.story-row:not([data-reveal]) .sr-photo img{transform:none}
body:not(.reveal-enabled) .sr-photo img{transform:none}
.sr-google .sr-photo img{object-position:66% 45%}.sr-website .sr-photo img{object-position:64% 40%}.sr-call .sr-photo img{object-position:70% 40%}
.sr-mock{position:absolute;bottom:0;right:-28px;width:300px;border-radius:20px;overflow:hidden;border:1px solid #ffffffb3;box-shadow:0 28px 60px #0a162833;will-change:transform}
.story-row:nth-child(even) .sr-mock{right:auto;left:-28px}
.sr-mock .mock{height:240px}
.sr-solo{padding:0}
.sr-solo .sr-mock{position:relative;right:auto;bottom:auto;width:100%;height:clamp(320px,32vw,460px);border:0;box-shadow:none;border-radius:24px;background:#ECEBFD;display:flex;align-items:center;justify-content:center}
.story-row:nth-child(even) .sr-solo .sr-mock{left:auto}
.sr-solo .mock{height:auto;width:min(380px,86%);padding:0;transform:scale(1.15)}
.sr-step{display:flex;align-items:center;gap:12px}
.sr-kicker{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--muted)}
.sr-text h3{font-size:clamp(28px,2.8vw,42px);line-height:1.1;letter-spacing:-.04em;font-weight:700;margin-top:18px;text-wrap:balance}
.sr-text p{font-size:18px;line-height:1.65;color:var(--muted);margin-top:16px;max-width:480px}
.story .strip-note{margin-top:60px}
@media(max-width:1050px){.story-row{gap:48px}.sr-mock{width:260px;right:-12px}.story-row:nth-child(even) .sr-mock{left:-12px}}
@media(max-width:760px){
 .story .story-rows{gap:64px;margin-top:40px}
 .story-row{grid-template-columns:1fr;gap:26px}
 .story-row:nth-child(even) .sr-visual{order:0}
 .sr-visual{padding:0}
 .sr-photo{height:250px;border-radius:18px}
 .sr-mock,.story-row:nth-child(even) .sr-mock{position:relative;right:auto;left:auto;bottom:auto;width:84%;margin:-80px 0 0 auto}
 .sr-mock .mock{height:220px}
 .sr-solo .sr-mock{width:100%;margin:0;height:300px}
 .sr-solo .mock{transform:none}
 .sr-text h3{font-size:28px;margin-top:14px}
 .sr-text p{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.sr-photo img{transition:none;transform:none}}
.sr-google .stop-no{background:#E5571F}.sr-website .stop-no{background:#D30F70}.sr-call .stop-no{background:#7418C4}.sr-reviews .stop-no{background:#4A3AD8}
@media(max-width:760px){.story-row:nth-child(n) .sr-solo .sr-mock{width:100%;margin:0;height:300px}}
/* Phones: headline first, then the photo, so each photo clearly belongs to the step above it (Tony, 2026-10-21) */
@media(max-width:760px){
 .story-row .sr-text{order:-1}
 .story-row{gap:22px}
 .sr-text h3{margin-top:12px}
 .story .story-rows{gap:72px}
}

/* ---------- Concierge pod: animated month calendar (Tony, 2026-10-21) ----------
   Days tick by; lead days pop green and the counter and bar climb to 10. Loops while on screen. */
.sc-pod{grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"head cal" "nums cal" "next cal" "fine fine";gap:18px 64px;align-items:start}
.sc-nums{padding:22px 0 0;border-left:0;border-top:1px solid #e4dcf3;margin-top:4px}
.sc-cal{grid-area:cal;align-self:center;background:#fff;border:1px solid #e4dcf3;border-radius:20px;padding:20px 20px 16px;box-shadow:0 20px 44px #4f0f9214}
.cal-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.cal-title{font-size:13px;font-weight:700;color:var(--ink)}
.cal-count{font-size:13px;color:var(--muted)}
.cal-count b{font-size:20px;color:#16A34A;font-variant-numeric:tabular-nums}
.cal-dow,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.cal-dow{margin-top:14px;font-size:10.5px;font-weight:700;color:#9aa3b5;letter-spacing:.06em}
.cal-grid{margin-top:8px}
.cal-grid .d{display:grid;place-items:center;aspect-ratio:1;border-radius:9px;font-size:12px;font-weight:600;color:#3A4558;background:#f5f6fa;transition:background .25s,color .25s,box-shadow .25s}
.cal-grid .d.past{color:#9aa3b5}
.cal-grid .d.now{box-shadow:inset 0 0 0 2px #8B2FE6;color:var(--ink)}
.cal-grid .d.lead{background:#16A34A;color:#fff;animation:cal-pop .45s cubic-bezier(.34,1.56,.64,1)}
@keyframes cal-pop{0%{transform:scale(.6)}100%{transform:none}}
.cal-bar{height:6px;border-radius:6px;background:#eef0f4;margin-top:14px;overflow:hidden}
.cal-bar span{display:block;height:100%;width:100%;border-radius:6px;background:#16A34A;transition:width .35s ease}
.cal-note{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--muted);margin-top:10px}
.cal-note i{width:10px;height:10px;border-radius:3px;background:#16A34A;flex:none}
@media(max-width:1100px){.sc-pod{grid-template-columns:1fr;grid-template-areas:"head" "cal" "nums" "next" "fine"}.sc-cal{max-width:380px;width:100%;justify-self:start}.sc-nums{border-top:1px solid #e4dcf3}}
@media(max-width:760px){.sc-cal{max-width:none;padding:16px 14px 14px}.cal-dow,.cal-grid{gap:5px}}
@media(prefers-reduced-motion:reduce){.cal-grid .d.lead{animation:none}}

/* ---------- Closing section: dark band, bold header, form card with its own header ---------- */
.close-check{grid-template-areas:"head head" "copy form";row-gap:44px;color:#fff;background:radial-gradient(ellipse 60% 70% at 100% 0%,rgba(116,24,196,.55),transparent 70%),radial-gradient(ellipse 55% 55% at 0% 100%,rgba(238,17,126,.22),transparent 70%),linear-gradient(160deg,#0F1D38,#0A1628 60%,#0B1226);overflow:hidden}
.close-head{grid-area:head;max-width:900px}
.close-head h2{font-size:clamp(36px,4.4vw,64px);line-height:1.04;letter-spacing:-.05em;font-weight:700;color:#fff;margin-top:18px;text-wrap:balance}
.close-head .close-lede{font-size:19px;color:#c3cbd9;margin-top:18px;max-width:640px}
.close-gets{list-style:none;margin:30px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.close-gets li{display:flex;flex-direction:column;gap:2px;padding:14px 18px;border:1px solid #ffffff26;border-radius:14px;background:#ffffff0d;font-size:13px;color:#c3cbd9;min-width:150px}
.close-gets b{font-size:17px;color:#fff}
.close-check .close-copy{grid-area:copy}
.close-check .hero-form{grid-area:form}
.close-check .close-faq{margin-top:0;border-top-color:#ffffff40}
.close-check .faq details{border-bottom-color:#ffffff1f}
.close-check .faq summary{color:#fff}
.close-check .faq summary:after{color:#c3cbd9}
.close-check .faq details p{color:#c3cbd9}
.close-check .close-alt{color:#c3cbd9}
.close-check .close-alt .ink-link{color:#fff;border-color:#ffffff66}
.close-check .hero-form{padding:0;overflow:hidden;border:0;box-shadow:0 30px 80px #0008}
.close-check .hero-form>form,.close-check .hero-form>#review-confirmation,.close-check .hero-form>noscript{display:block;padding:0 30px 26px}
.close-check .hero-form>#review-confirmation[hidden]{display:none}
.form-head{padding:26px 30px 22px;margin-bottom:20px;background:#F2EAFB;border-bottom:1px solid #e4dcf3}
.form-head .hero-form-title{font-size:24px;margin:0}
.form-head p{font-size:14.5px;color:#4b5568;margin-top:6px}
@media(max-width:1050px){.close-check{grid-template-areas:"head" "form" "copy"}}
@media(max-width:760px){
 .close-head h2{font-size:34px}
 .close-head .close-lede{font-size:16.5px}
 .close-gets{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .close-gets li{min-width:0;padding:12px 14px}
 .close-check .hero-form>form,.close-check .hero-form>#review-confirmation{padding:0 20px 22px}
 .form-head{padding:22px 20px 18px}
}

/* ---------- Results cards: small animated charts (Tony, 2026-10-21) ----------
   Lyons: bars grow from 140 to 240. Bennett: empty slots on the old website, then up to 7 answered
   inquiries pop in. Final state is the default; motion only plays when the card scrolls into view. */
.case-viz{display:grid;gap:12px;margin:24px 0 6px;padding:18px 0;border-top:1px solid #ffffff1a;border-bottom:1px solid #ffffff1a}
.cv-row{display:grid;grid-template-columns:104px minmax(0,1fr) 64px;align-items:center;gap:14px}
.cv-lab{font-size:12.5px;color:#9aa9bf}
.cv-now .cv-lab{color:#fff;font-weight:600}
.cv-num{text-align:right;font-size:15px;font-weight:700;color:#c3cbd9;white-space:nowrap}
.cv-now .cv-num{color:#fff}
.cv-track{display:block;height:12px;border-radius:6px;background:#ffffff12;overflow:hidden}
.cv-track i{display:block;height:100%;width:var(--w);border-radius:6px;background:#ffffff40;transform-origin:left;transition:transform 1.4s cubic-bezier(.22,1,.36,1)}
.cv-lyons .cv-now .cv-track i{background:#FF8A4C;transition-delay:.35s}
.cv-slots{display:flex;gap:7px;flex-wrap:nowrap}
.cv-slots i{display:grid;place-items:center;width:22px;height:22px;flex:none;border-radius:50%;border:1.5px dashed #ffffff33;font-style:normal;font-size:11px;font-weight:800;color:#0A1628}
.cv-now .cv-slots i{border:0;background:#F472B6;transition:transform .45s cubic-bezier(.34,1.56,.64,1),opacity .3s}
.cv-now .cv-slots i:nth-child(2){transition-delay:.15s}.cv-now .cv-slots i:nth-child(3){transition-delay:.3s}.cv-now .cv-slots i:nth-child(4){transition-delay:.45s}.cv-now .cv-slots i:nth-child(5){transition-delay:.6s}.cv-now .cv-slots i:nth-child(6){transition-delay:.75s}.cv-now .cv-slots i:nth-child(7){transition-delay:.9s}
.cv-key{display:flex;align-items:center;gap:8px;font-size:12px;color:#9aa9bf}
.cv-key i{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#F472B6;color:#0A1628;font-style:normal;font-size:9px;font-weight:800}
/* starting state, only when motion is on and the script is running */
.viz-ready .case-viz:not(.play) .cv-track i{transform:scaleX(0);transition-duration:0s;transition-delay:0s}
.viz-ready .case-viz:not(.play) .cv-now .cv-slots i{transform:scale(0);opacity:0;transition-duration:0s;transition-delay:0s}
@media(max-width:760px){.cv-row{grid-template-columns:86px minmax(0,1fr) 52px;gap:10px}.cv-slots{gap:4px}.cv-slots i{width:18px;height:18px;font-size:9.5px}.cv-num{font-size:13.5px}}
@media(max-width:760px){.cv-row{grid-template-columns:78px minmax(0,1fr) 58px;gap:8px}.cv-slots{gap:3px}.cv-slots i{width:16px;height:16px;font-size:8.5px}}
/* Concierge pod: headline does the leading, no eyebrow (Tony, 2026-10-21) */
.sc-head h2{margin-top:0;font-size:clamp(28px,2.9vw,42px);max-width:620px}
.sc-hl{color:#7418C4}
/* weekends a shade lighter; leads land on weekdays (Tony, 2026-10-21) */
.cal-grid .d.we{background:#fafbfc;color:#b4bccb}
/* Reduced motion: results charts fade in instead of growing or popping */
@media(prefers-reduced-motion:reduce){
 .cv-track i,.cv-now .cv-slots i{transition-property:opacity!important}
 .viz-ready .case-viz:not(.play) .cv-track i,.viz-ready .case-viz:not(.play) .cv-now .cv-slots i{transform:none;opacity:0}
}
/* Concierge numbers: each stat on one line (Tony, 2026-10-21) */
.sc-nums{display:grid;gap:10px;align-items:start}
.sc-stat{display:flex;align-items:baseline;flex-wrap:nowrap;gap:10px;white-space:nowrap;font-size:17px;color:var(--muted);margin:0}
.sc-stat b{font-size:clamp(38px,3.6vw,54px);line-height:1;letter-spacing:-.04em;font-weight:700;color:var(--ink)}
.sc-big b{color:#7418C4}
.sc-eq{font-size:24px;color:#EE117E;align-self:center}
@media(max-width:760px){.sc-stat{white-space:normal;flex-wrap:wrap;gap:4px 8px;font-size:15px}.sc-stat b{font-size:34px}.sc-eq{font-size:20px}}

/* Results charts, slower and number-led (Tony, 2026-10-21): the bar grows over 1.8s after a short pause;
   Bennett's dots are switched on one at a time by the script. */
.cv-lyons .cv-now .cv-track i{transition-duration:1.8s;transition-delay:.4s}
.cv-lyons .cv-row:first-child .cv-track i{transition-duration:1s}
.viz-ready .cv-bennett .cv-now .cv-slots i{transition-delay:0s!important}
.viz-ready .cv-bennett .cv-now .cv-slots i:not(.on){transform:scale(0);opacity:0}
.viz-ready .cv-bennett .cv-now .cv-slots i.on{transform:none;opacity:1}
@media(prefers-reduced-motion:reduce){.viz-ready .cv-bennett .cv-now .cv-slots i:not(.on){transform:none}}

/* Dr. Bennett: answered calls (pink phone) and online forms (violet form), Tony 2026-10-21 */
.cv-bennett .cv-now .cv-slots i{color:#0A1628;position:relative}
.cv-bennett .cv-slots i svg{width:12px;height:12px}
.cv-bennett .cv-now .cv-slots i.fm{background:#C08BFF}
.cv-bennett .cv-now .cv-slots i.ph.on:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid #F472B6;opacity:0;animation:cv-ring 1.4s ease-out 2}
@keyframes cv-ring{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.cv-key{gap:16px;flex-wrap:wrap}
.cv-key span{display:inline-flex;align-items:center;gap:7px}
.cv-key i{width:18px;height:18px;color:#0A1628}
.cv-key i.ph{background:#F472B6}.cv-key i.fm{background:#C08BFF}
.cv-key i svg{width:10px;height:10px}
@media(max-width:760px){.cv-bennett .cv-slots i svg{width:9px;height:9px}}
@media(prefers-reduced-motion:reduce){.cv-bennett .cv-now .cv-slots i.ph.on:after{animation:none}}
/* Step 4 now has a photo like the others */
.sr-reviews .sr-photo img{object-position:78% 40%;transform-origin:70% 40%}
.sr-reviews .sr-mock .mock{height:240px}
/* Step 4 photo: crop in on the doctor and patient, less blue wall (Tony, 2026-10-21) */
.sr-reviews .sr-photo img{object-position:100% 40%;transform-origin:92% 42%;transform:scale(1.34)}
.story-row.sr-reviews.is-visible .sr-photo img,body:not(.reveal-enabled) .sr-reviews .sr-photo img{transform:scale(1.24)}
@media(prefers-reduced-motion:reduce){.sr-reviews .sr-photo img,.story-row.sr-reviews.is-visible .sr-photo img{transform:scale(1.24)}}
