/* inner-redesign/src/in.css - inner page templates in the homepage's design language (2026-10-05).
   Loaded AFTER the homepage's own bh.<v>.css (tokens, resets and every reused section: wall, insurance card, map,
   receipt, departures, letter, seals, bios), so the two pages share one cached stylesheet. Everything here is new
   (in-*) or a scoped override under #sfa-bh.sfa-in. Breakpoints match bh.css: <=639 phone, 640-979 tablet, >=980 desktop. */
#sfa-bh.sfa-in{background:#fff;overflow-x:clip}
/* the homepage stylesheet hides the footer's About column on the HOMEPAGE only; inner pages keep it */
.site-footer .gb-grid-column-b43166c8{display:block!important}
#sfa-bh .in-wrap{max-width:1180px;margin:0 auto}
#sfa-bh .in-sec{position:relative;padding:68px 6vw}
#sfa-bh .in-tint{background:linear-gradient(180deg,#EAF1FF,#F7FAFF)}
#sfa-bh .in-soft{background:#F5F8FD}
#sfa-bh .in-h2{font-family:var(--disp);font-weight:800;font-size:clamp(32px,3.6vw,50px);line-height:1;letter-spacing:-.04em;color:var(--ink);margin:0 0 14px}
#sfa-bh .in-h2 .bh-it,#sfa-bh .in-h1 .bh-it,#sfa-bh .in-mini-t .bh-it,#sfa-bh .in-band-h .bh-it{color:var(--blue);letter-spacing:-.02em}
#sfa-bh .in-h3{font-family:var(--disp);font-weight:800;font-size:22px;line-height:1.1;letter-spacing:-.03em;color:var(--ink);margin:0 0 8px}
#sfa-bh .in-p{font-size:16.5px;line-height:1.65;color:var(--mute);max-width:660px}
#sfa-bh .in-p + .in-p{margin-top:12px}
#sfa-bh .in-p a,#sfa-bh .in-link{font-weight:800}
#sfa-bh .in-note{margin-top:14px;font-size:14px;font-weight:700;color:var(--mute2)}

/* ---------- hero (33D grammar: eyebrow, Bricolage H1 + blue italic phrase, lede, Book + Call, one-line rating) ---------- */
#sfa-bh .in-hero{position:relative;background:linear-gradient(180deg,#E8F0FF 0%,#F4F8FF 58%,#fff 100%);padding:30px 6vw 52px}
#sfa-bh .in-hero-in{position:relative;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:28px 60px;align-items:center}
#sfa-bh .in-hero-l{position:relative;min-width:0}
#sfa-bh .in-hero-r{position:relative;min-width:0}
#sfa-bh .in-crumbs{font-size:13px;font-weight:700;color:var(--mute2);margin:0 0 16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sfa-bh .in-crumbs a{color:var(--mute2)}
#sfa-bh .in-crumbs a:hover{color:var(--blue)}
#sfa-bh .in-crumbs i{font-style:normal;margin:0 6px;color:#9AA8BE}
#sfa-bh .in-h1{font-family:var(--disp);font-weight:800;font-size:clamp(40px,4.7vw,68px);line-height:.98;letter-spacing:-.045em;color:var(--ink);margin:0 0 16px;text-transform:none}
#sfa-bh .in-cred{font-size:15.5px;font-weight:800;color:#15803D;margin:-4px 0 14px}
#sfa-bh .in-lede{font-size:17px;line-height:1.6;color:var(--mute);max-width:540px;margin:0 0 24px}
#sfa-bh .in-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:-8px 0 22px;font-size:14px;font-weight:700;color:var(--mute)}
#sfa-bh .in-meta b{color:#15803D;font-weight:800}
#sfa-bh .in-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 14px}
#sfa-bh .in-book{font-size:16px;padding:16px 24px;border-radius:14px;box-shadow:0 14px 30px rgba(24,87,232,.3);transform-origin:center;animation:inThump 3.6s ease-out .3s infinite}
#sfa-bh .in-book:active{transform:scale(.98)}
#sfa-bh .in-call{display:inline-flex;align-items:center;gap:8px;padding:15px 20px;border-radius:14px;border:1.5px solid #CFDBF0;background:#fff;color:var(--ink);font-weight:800;font-size:15.5px;line-height:1.2;white-space:nowrap}
#sfa-bh .in-call:hover{border-color:var(--blue);color:var(--blue)}
#sfa-bh .in-call svg{flex:none}
#sfa-bh .in-rate{display:inline-flex;align-items:center;gap:8px;margin:18px 0 0;padding:6px 0;border:0;background:none;cursor:pointer;font:700 14px/1.2 'Manrope',sans-serif;color:var(--ink);white-space:nowrap}
#sfa-bh .in-rate b{font-family:var(--disp);font-size:17px;font-weight:800}
#sfa-bh .in-rate-st{color:#F5A524;letter-spacing:1px;font-size:15px}
#sfa-bh .in-rate:hover span:last-child{color:var(--blue);text-decoration:underline}
@keyframes inThump{0%,60%{transform:scale(1);box-shadow:0 14px 30px rgba(24,87,232,.3)}68%{transform:scale(1.05);box-shadow:0 14px 30px rgba(24,87,232,.3),0 0 0 8px rgba(24,87,232,.12)}82%{transform:scale(.99)}100%{transform:scale(1);box-shadow:0 14px 30px rgba(24,87,232,.3),0 0 0 14px rgba(24,87,232,0)}}
/* footsteps walk (hero 33D motion, ported): a trail that glows step by step once, then rests */
#sfa-bh .in-steps{position:absolute;left:-46px;top:6px;width:26px;height:330px;pointer-events:none}
#sfa-bh .in-steps span{position:absolute;width:10px;height:15px;border-radius:50% 50% 45% 45%;background:#7FA2F5;opacity:.12;animation:inFoot 3.6s ease-in-out forwards}
#sfa-bh .in-steps span:nth-child(odd){left:0}
#sfa-bh .in-steps span:nth-child(even){left:13px}
@keyframes inFoot{0%{opacity:.12}11%{opacity:.75}100%{opacity:.3}}

/* ---------- live "next openings" card (07 departures board, compact) ---------- */
#sfa-bh .in-mini{position:relative;background:#0E1116;color:#fff;border-radius:22px;padding:20px 20px 16px;border:1px solid #23272F;box-shadow:0 30px 60px rgba(11,31,58,.28)}
#sfa-bh .in-mini .bh-gate-eyebrow{margin-bottom:6px}
#sfa-bh .in-mini-t{font-family:var(--disp);font-weight:800;font-size:25px;line-height:1.05;letter-spacing:-.035em;margin:0 0 12px;color:#fff}
#sfa-bh .in-mini-t .bh-it{color:#FDE68A}
#sfa-bh .in-mini .bh-board{border-top:1px solid #23272F}
#sfa-bh .in-mini .bh-row{grid-template-columns:auto minmax(0,1fr) auto;gap:14px;padding:12px 4px}
#sfa-bh .in-mini .bh-cells{gap:3px}
#sfa-bh .in-mini .bh-cell{width:28px;height:42px;border-radius:6px}
#sfa-bh .in-mini .bh-cell.bh-colon{width:9px}
#sfa-bh .in-mini .bh-cell span{font-size:27px}
#sfa-bh .in-mini .bh-ap{font-size:16px;margin-left:4px}
#sfa-bh .in-mini .bh-r-day,#sfa-bh .in-mini .bh-r-st,#sfa-bh .in-mini .bh-r-doc{display:none}
#sfa-bh .in-mini .bh-r-dayS{display:block;line-height:1.2;min-width:0}
#sfa-bh .in-mini .bh-r-dayS b{display:block;font-weight:800;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sfa-bh .in-mini .bh-r-dayS small{display:block;font-size:13px;font-weight:700;color:#8B93A1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sfa-bh .in-mini .bh-r-book{padding:10px 14px;border-radius:10px;font-size:14px}
#sfa-bh .in-mini .bh-gate-ft{margin-top:12px;gap:8px 14px}
#sfa-bh .in-mini .bh-gate-sub{font-size:12.5px}
#sfa-bh .in-mini .bh-gate-all{font-size:14.5px}
#sfa-bh .in-skel{display:flex;flex-direction:column;border-top:1px solid #23272F}
#sfa-bh .in-skel i{display:block;height:66px;border-bottom:1px solid #23272F;background:linear-gradient(90deg,#14181F 0%,#1D222B 40%,#14181F 80%) 0 0/200% 100%;animation:inShim 1.4s linear infinite}
#sfa-bh .in-mini .bh-board:not([hidden]) ~ .in-skel,#sfa-bh .in-mini.in-done .in-skel{display:none}
@keyframes inShim{from{background-position:100% 0}to{background-position:-100% 0}}
#sfa-bh .bh-row:focus-visible{outline:3px solid #FDE68A;outline-offset:-3px}

/* ---------- polaroids (10A) ---------- */
#sfa-bh .in-pola{position:relative;width:250px;background:#fff;padding:10px 10px 40px;box-shadow:0 14px 30px rgba(11,31,58,.2);transform:rotate(-4deg);margin:0 auto}
#sfa-bh .in-pola figcaption{position:absolute;left:0;right:0;bottom:6px;text-align:center;font-family:var(--hand);font-weight:700;font-size:26px;line-height:1.2;color:var(--ink)}
#sfa-bh .in-pola .bh-ph img{width:125%;top:6%}
#sfa-bh .in-pola-b{transform:rotate(3deg)}
#sfa-bh .in-doc-r{display:grid;gap:22px;justify-items:center}
#sfa-bh .in-doc-r .in-mini{width:100%;max-width:480px}
#sfa-bh .in-duo{display:flex;justify-content:center;gap:4px;padding:18px 0}
#sfa-bh .in-duo .in-pola{width:210px;margin:0}

/* ---------- insurance hero (03 card) ---------- */
#sfa-bh .in-ins-q{margin:0 0 4px;max-width:460px}
#sfa-bh .in-hero .bh-ins-chips{margin:12px 0 22px;max-width:480px}
#sfa-bh .in-hero .bh-ins-r{height:400px}
#sfa-bh .bh-cb-t a.in-cb-book{display:inline-block;margin-top:10px;color:var(--blue);font-weight:800}

/* ---------- plan tiles ---------- */
#sfa-bh .in-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;margin:26px 0 6px}
#sfa-bh .in-plan{background:#fff;border:1px solid #E3E9F2;border-radius:16px;padding:16px 12px 14px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:10px;box-shadow:0 6px 16px rgba(11,31,58,.05);transition:transform .2s,box-shadow .2s,border-color .2s;text-align:center}
#sfa-bh .in-plan:hover{transform:translateY(-3px);box-shadow:0 16px 28px rgba(11,31,58,.10);border-color:#BFD2FF}
#sfa-bh .in-plan-logo{height:46px;width:100%;display:flex;align-items:center;justify-content:center}
#sfa-bh .in-plan-logo img{max-height:42px;max-width:84%;width:auto;height:auto;object-fit:contain}
#sfa-bh .in-plan-word{font-family:var(--disp);font-weight:800;font-size:22px;letter-spacing:-.03em;color:var(--blue)}
#sfa-bh .in-plan-n{font-size:13px;font-weight:800;line-height:1.25;color:var(--ink)}
#sfa-bh .in-plan.on{border-color:var(--blue);box-shadow:0 0 0 3px rgba(24,87,232,.18)}

/* ---------- info cards ---------- */
#sfa-bh .in-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
#sfa-bh .in-icard{position:relative;background:#fff;border:1px solid #E3E9F2;border-radius:20px;padding:24px 24px 22px;box-shadow:0 10px 24px rgba(11,31,58,.06)}
#sfa-bh .in-icard .in-ic{width:44px;height:44px;border-radius:14px;background:#EAF1FF;color:var(--blue);display:flex;align-items:center;justify-content:center;font:800 20px/1 var(--disp);margin-bottom:14px}
#sfa-bh .in-icard p{font-size:15.5px;line-height:1.6;color:var(--mute)}

/* ---------- condition cards (services hub) ---------- */
#sfa-bh .in-find{max-width:520px;margin:22px 0 0}
#sfa-bh .in-cat{margin:0 0 38px}
#sfa-bh .in-cat[hidden]{display:none!important}
#sfa-bh .in-cat-h{display:flex;align-items:center;gap:12px;font:800 12px/1.2 'Manrope',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);margin:0 0 14px}
#sfa-bh .in-cat-h::after{content:'';flex:1;height:1px;background:#DCE6F5}
#sfa-bh .in-cat-h small{font:inherit;color:var(--mute2);letter-spacing:.08em}
#sfa-bh .in-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
#sfa-bh .in-card{position:relative;display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #E3E9F2;border-radius:18px;padding:18px 44px 18px 20px;color:var(--ink);box-shadow:0 6px 16px rgba(11,31,58,.05);transition:transform .2s,box-shadow .2s,border-color .2s}
#sfa-bh .in-card:hover{transform:translateY(-3px);border-color:#BFD2FF;box-shadow:0 18px 30px rgba(11,31,58,.10);color:var(--ink)}
#sfa-bh .in-card h3{font-family:var(--disp);font-weight:800;font-size:20px;line-height:1.1;letter-spacing:-.03em;margin:0}
#sfa-bh .in-card p{font-size:14.5px;line-height:1.5;color:var(--mute)}
#sfa-bh .in-card p b{color:#B45309;font-weight:800}
#sfa-bh .in-card .in-arr{position:absolute;right:16px;top:18px;width:26px;height:26px;border-radius:50%;background:#EAF1FF;color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:800;transition:transform .2s}
#sfa-bh .in-card:hover .in-arr{transform:translateX(3px)}
#sfa-bh .in-card[hidden]{display:none!important}
#sfa-bh .in-none{padding:22px;border-radius:18px;background:#fff;border:1px dashed #BFD2FF;font-size:15.5px;color:var(--mute)}
#sfa-bh .in-alert{display:flex;gap:16px;align-items:flex-start;background:#FFF5F5;border:1px solid #FECACA;border-radius:18px;padding:20px 22px;margin-top:6px}
#sfa-bh .in-alert b{display:block;font-family:var(--disp);font-size:19px;font-weight:800;color:#991B1B;margin-bottom:4px}
#sfa-bh .in-alert p{font-size:15px;line-height:1.55;color:#7F1D1D}
#sfa-bh .in-alert .in-ic{flex:none;width:40px;height:40px;border-radius:12px;background:#FEE2E2;color:#B91C1C;display:flex;align-items:center;justify-content:center;font-weight:800}

/* ---------- letter / profile ---------- */
#sfa-bh .in-paper{position:relative;max-width:780px;margin:26px auto 0;background:#FFFEFB;border-radius:8px;padding:42px 46px;box-shadow:0 22px 44px rgba(11,31,58,.13);font-family:var(--serif);font-size:18.5px;line-height:1.62;color:#22324B}
#sfa-bh .in-paper p + p{margin-top:14px}
#sfa-bh .in-paper strong{font-weight:400;color:var(--ink);background:linear-gradient(transparent 62%,#FDE68A 62%)}
#sfa-bh .in-paper-hd{font:800 11px/1.3 'Manrope',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);border-bottom:1px solid #E3E9F2;padding-bottom:12px;margin-bottom:22px}
#sfa-bh .in-center{text-align:center}
#sfa-bh .in-center .in-p{margin-left:auto;margin-right:auto}
#sfa-bh .in-creds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1000px;margin:30px auto 0}
#sfa-bh .in-cr{background:#fff;border:1px solid #E3E9F2;border-radius:18px;padding:18px 18px 16px;box-shadow:0 6px 16px rgba(11,31,58,.05)}
#sfa-bh .in-cr small{display:block;font:800 10.5px/1.2 'Manrope',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--mute2);margin-bottom:8px}
#sfa-bh .in-cr b{display:block;font-family:var(--disp);font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
#sfa-bh .in-cr span{display:block;font-size:13px;line-height:1.45;color:var(--mute);margin-top:4px}
#sfa-bh .in-seals .bh-seals{margin-top:0}
#sfa-bh .in-one .bh-bios-grid{grid-template-columns:minmax(0,640px);justify-content:center}
#sfa-bh .in-other{display:flex;align-items:center;gap:18px;max-width:640px;margin:0 auto;background:#fff;border:1px solid #E3E9F2;border-radius:20px;padding:16px 20px;box-shadow:0 10px 24px rgba(11,31,58,.06);color:var(--ink)}
#sfa-bh .in-other:hover{border-color:#BFD2FF;color:var(--ink)}
#sfa-bh .in-other .bh-ph{width:64px;flex:none;border-radius:50%}
#sfa-bh .in-other b{display:block;font-family:var(--disp);font-size:19px;font-weight:800}
#sfa-bh .in-other small{display:block;font-size:13.5px;color:var(--mute);font-weight:700}
#sfa-bh .in-other .in-arr{margin-left:auto;color:var(--blue);font-weight:800;white-space:nowrap}

/* ---------- doctor cards (team / office) ---------- */
#sfa-bh .in-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
#sfa-bh .in-dc{display:flex;flex-direction:column;background:#fff;border:1px solid #E3E9F2;border-radius:22px;overflow:hidden;box-shadow:0 12px 28px rgba(11,31,58,.07)}
#sfa-bh .in-dc-top{display:flex;gap:18px;align-items:center;padding:20px 22px 0}
#sfa-bh .in-dc-top .bh-ph{width:92px;flex:none;border-radius:18px}
#sfa-bh .in-dc-n{font-family:var(--disp);font-size:23px;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
#sfa-bh .in-dc-c{font-size:13.5px;font-weight:800;color:#15803D;margin-top:4px}
#sfa-bh .in-dc-p{padding:14px 22px 0;font-size:15px;line-height:1.6;color:var(--mute)}
#sfa-bh .in-dc-ft{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:18px 22px 22px;margin-top:auto}
#sfa-bh .in-dc-ft .bh-btn{padding:12px 18px;font-size:15px}
#sfa-bh .in-next{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;border:1.5px solid #CFE0FF;background:#F4F8FF;color:var(--ink);font-weight:800;font-size:13.5px;cursor:pointer}
#sfa-bh .in-next:hover{border-color:var(--blue)}

/* ---------- office ---------- */
#sfa-bh .in-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:36px 56px;align-items:center}
#sfa-bh .in-stats{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
#sfa-bh .in-stat{background:#fff;border:1px solid #E3E9F2;border-radius:16px;padding:12px 16px;min-width:120px}
#sfa-bh .in-stat b{display:block;font-family:var(--disp);font-size:28px;font-weight:800;letter-spacing:-.03em;color:var(--blue);line-height:1}
#sfa-bh .in-stat span{display:block;font-size:12.5px;font-weight:800;color:var(--mute2);margin-top:4px}
#sfa-bh .in-photos{position:relative;height:430px}
#sfa-bh .in-photo{position:absolute;background:#fff;padding:10px 10px 12px;box-shadow:0 16px 34px rgba(11,31,58,.2)}
#sfa-bh .in-photo img{display:block;width:100%;height:auto}
#sfa-bh .in-photo-a{left:0;top:0;width:58%;transform:rotate(-4deg)}
#sfa-bh .in-photo-b{right:0;bottom:0;width:56%;transform:rotate(3deg)}
#sfa-bh .in-visit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
#sfa-bh .in-hours{width:100%;border-collapse:collapse;font-size:15px}
#sfa-bh .in-hours td{padding:9px 0;border-bottom:1px solid #EDF1F7;color:var(--ink);font-weight:700}
#sfa-bh .in-hours td + td{text-align:right;color:var(--mute);font-weight:700}
#sfa-bh .in-hours tr.in-off td + td{color:#9AA8BE}
#sfa-bh .in-list li{font-size:15px;line-height:1.55;color:var(--mute);padding:6px 0}
#sfa-bh .in-list b{color:var(--ink)}

/* ---------- closing band ---------- */
#sfa-bh .in-band{position:relative;overflow:hidden;max-width:1180px;margin:0 auto;border-radius:28px;padding:44px 48px;background:linear-gradient(125deg,#0C2C80 0%,#1857E8 62%,#3A74FF 100%);color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px 36px;box-shadow:0 30px 60px rgba(12,44,128,.28)}
#sfa-bh .in-band-h{font-family:var(--disp);font-weight:800;font-size:clamp(30px,3.2vw,44px);line-height:1.02;letter-spacing:-.04em;color:#fff;margin:0 0 8px}
#sfa-bh .in-band-h .bh-it{color:#FDE68A}
#sfa-bh .in-band p{font-size:16px;line-height:1.55;color:#D6E3FF;max-width:560px}
#sfa-bh .in-band .in-cta{flex:none}
#sfa-bh .in-band .bh-btn{background:#fff;color:var(--blue);box-shadow:0 14px 30px rgba(6,20,60,.3)}
#sfa-bh .in-band .bh-btn:hover{background:#EAF1FF;color:#0F3FB0}
#sfa-bh .in-band .in-call{background:transparent;border-color:rgba(255,255,255,.45);color:#fff}
#sfa-bh .in-band .in-call:hover{border-color:#fff;color:#fff}
#sfa-bh .in-band::after{content:'';position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.18),transparent);pointer-events:none}

/* ---------- reviews page: the wall of love is the hero (H1 inside, Book in the first screen on laptops) ---------- */
#sfa-bh.in-rev .bh-wall{height:calc(100vh - 150px);min-height:560px;max-height:900px}
#sfa-bh.in-rev .bh-wall-panel{align-items:flex-start;padding-top:min(7vh,64px)}
#sfa-bh .in-wall-crumbs{font-size:13px;font-weight:700;color:#BFD2FF;margin:0 0 12px}
#sfa-bh .in-wall-crumbs a{color:#BFD2FF}
#sfa-bh .in-wall-h1{font-family:var(--disp);font-weight:800;font-size:clamp(36px,3.6vw,52px);line-height:1;letter-spacing:-.04em;color:#fff;margin:0 0 6px;text-transform:none}
#sfa-bh .in-wall-h1 .bh-it{color:#FDE68A;letter-spacing:-.02em}
#sfa-bh.in-rev .bh-wall-rr{font-size:clamp(84px,15vh,170px)}
#sfa-bh.in-rev .bh-wall-cta .bh-btn{animation:inThump 3.6s ease-out .3s infinite}
@media (max-height:760px) and (min-width:640px){ #sfa-bh.in-rev .bh-wall-p,#sfa-bh.in-rev .bh-wall-hint{display:none} #sfa-bh.in-rev .bh-wall-cta{margin-top:18px} }

/* ---------- speed: below-the-fold blocks are laid out and painted only when they near the screen (content-visibility).
   The hero (first block) never is. The browser keeps each block's real size once seen (contain-intrinsic-size: auto). */
#sfa-bh.sfa-in > section ~ section,#sfa-bh.sfa-in ~ .sfp,.site-footer{content-visibility:auto;contain-intrinsic-size:auto 900px}
#sfa-bh.sfa-in > section.bh-map{contain-intrinsic-size:auto 760px}
.site-footer{contain-intrinsic-size:auto 640px}

/* ---------- reveal on scroll (only below-the-fold items are parked, by in.js at load, so nothing visible flickers) ---------- */
#sfa-bh .in-park{opacity:0;transform:translateY(14px)}
#sfa-bh .in-show{animation:inRise .55s cubic-bezier(.2,.7,.2,1) both}
@keyframes inRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* ---------- reviews drawer (copied from the homepage's own rules; the engine opens it on [data-open-reviews]) ---------- */
.rev-drawer{position:fixed;inset:0;z-index:100000;visibility:hidden;pointer-events:none}
.rev-drawer.open{visibility:visible;pointer-events:auto}
.rev-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.5);opacity:0;transition:opacity .3s}
.rev-drawer.open .rev-backdrop{opacity:1}
.rev-panel{position:absolute;top:0;left:0;height:100%;width:440px;max-width:92vw;background:#fff;box-shadow:0 0 60px rgba(0,0,0,.3);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .35s cubic-bezier(.16,1,.3,1)}
.rev-drawer.open .rev-panel{transform:translateX(0)}
.rev-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #f1f5f9;flex-shrink:0}
.rev-panel-head p{margin:0;font:800 11px/1.3 'Manrope',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#1857E8}
.rev-panel-head h3{margin:2px 0 0;font:800 22px/1.15 'Bricolage Grotesque','Manrope',sans-serif;color:#0B1F3A}
.rev-close{flex-shrink:0;height:40px;width:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:18px;line-height:1;cursor:pointer;padding:0}
.rev-close:hover,.rev-close:focus{background:#f1f5f9;color:#334155}
.rev-panel-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px}
.rev-loading{text-align:center;color:#5c6779;font-size:13px;padding:28px 0}

/* ---------- tablet ---------- */
@media (max-width:979px){
  #sfa-bh .in-hero-in{grid-template-columns:minmax(0,1fr);gap:26px}
  #sfa-bh .in-steps{display:none}
  #sfa-bh .in-hero-r{max-width:560px}
  #sfa-bh .in-split{grid-template-columns:minmax(0,1fr)}
  #sfa-bh .in-creds{grid-template-columns:repeat(2,minmax(0,1fr))}
  #sfa-bh .in-hero .bh-ins-r{height:330px}
}
@media (max-width:1099px){ #sfa-bh .in-steps{display:none} }
/* short laptops (1366x633, 1536x695, 1280x551): smaller headline + less padding, never scaled content */
@media (min-width:980px) and (max-height:760px){
  #sfa-bh .in-hero{padding-top:18px;padding-bottom:36px}
  #sfa-bh .in-crumbs{margin-bottom:10px}
  #sfa-bh .in-h1{font-size:clamp(36px,3.5vw,52px);margin-bottom:12px}
  #sfa-bh .in-lede{margin-bottom:18px;font-size:16px}
  #sfa-bh .in-rate{margin-top:12px}
  #sfa-bh .in-mini .bh-row{padding:9px 4px}
  #sfa-bh .in-mini .in-skel i{height:60px}
  #sfa-bh .in-pola{width:200px}
  #sfa-bh .in-hero .bh-ins-chips{display:none}
  #sfa-bh .in-ins-q{margin-bottom:18px}
}

/* ---------- phones ---------- */
@media (max-width:639px){
  #sfa-bh .in-sec{padding:46px 20px}
  #sfa-bh .in-hero{padding:18px 20px 34px}
  #sfa-bh .in-crumbs{margin-bottom:12px}
  #sfa-bh .in-h1{font-size:clamp(33px,9.6vw,40px);margin-bottom:12px}
  #sfa-bh .in-lede{font-size:16px;margin-bottom:18px}
  #sfa-bh .in-meta{font-size:13px;margin:-6px 0 16px}
  #sfa-bh .in-cta{gap:10px}
  #sfa-bh .in-book{flex:1 1 100%;min-height:54px;font-size:16.5px}
  #sfa-bh .in-call{flex:1 1 100%;justify-content:center;padding:13px 16px}
  #sfa-bh .in-rate{margin-top:12px}
  #sfa-bh .in-mini{padding:16px 14px 12px;border-radius:18px}
  #sfa-bh .in-mini-t{font-size:21px}
  #sfa-bh .in-mini .bh-cell{width:22px;height:36px}
  #sfa-bh .in-mini .bh-cell span{font-size:22px}
  #sfa-bh .in-mini .bh-row{gap:10px;padding:10px 2px}
  #sfa-bh .in-mini .bh-r-book{padding:9px 12px;font-size:13.5px}
  #sfa-bh .in-skel i{height:57px}
  #sfa-bh .in-cards,#sfa-bh .in-docs,#sfa-bh .in-visit{grid-template-columns:minmax(0,1fr)}
  #sfa-bh .in-plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #sfa-bh .in-plan-logo{height:38px}
  #sfa-bh .in-grid{grid-template-columns:minmax(0,1fr);gap:10px}
  #sfa-bh .in-paper{padding:28px 22px;font-size:17px}
  #sfa-bh .in-creds{gap:10px}
  #sfa-bh .in-cr{padding:14px}
  #sfa-bh .in-cr b{font-size:17px}
  #sfa-bh .in-band{padding:30px 22px;border-radius:22px}
  #sfa-bh .in-band .in-cta{flex:1 1 100%}
  #sfa-bh .in-photos{height:300px}
  #sfa-bh .in-hero .bh-ins-r{height:260px}
  #sfa-bh .in-pola{width:180px}
  #sfa-bh .in-duo .in-pola{width:150px}
  #sfa-bh .in-doc-r{gap:16px}
  #sfa-bh .in-doc-hero .in-hero-r .in-pola{display:none}
  #sfa-bh .in-doc-ph{float:right;width:92px;margin:0 0 6px 12px;transform:rotate(3deg);background:#fff;padding:5px 5px 18px;box-shadow:0 8px 18px rgba(11,31,58,.18);position:relative}
  #sfa-bh .in-doc-ph figcaption{position:absolute;left:0;right:0;bottom:1px;text-align:center;font-family:var(--hand);font-weight:700;font-size:14px;color:var(--ink)}
  /* reviews hero */
  #sfa-bh.in-rev .bh-wall{height:780px;min-height:0;max-height:none}
  #sfa-bh.in-rev .bh-wall-panel{padding:26px 22px 0}
  #sfa-bh.in-rev .bh-wall-stage{top:470px}
  #sfa-bh.in-rev .bh-wall-shade{bottom:calc(100% - 472px)}
  #sfa-bh.in-rev .bh-wall-rr{font-size:104px}
  #sfa-bh .in-wall-h1{font-size:34px}
  #sfa-bh.in-rev .bh-wall-cta{margin-top:18px}
}
@media (min-width:640px){ #sfa-bh .in-doc-ph{display:none} }
@media (max-width:359px){
  #sfa-bh .in-h1{font-size:30px}
  #sfa-bh .in-wall-h1{font-size:28px}
  #sfa-bh.in-rev .bh-wall-rr{font-size:80px}
  #sfa-bh.in-rev .bh-wall-from{font-size:19px}
  #sfa-bh.in-rev .bh-wall-panel{padding-top:18px}
  #sfa-bh.in-rev .bh-wall-logo{width:34px;height:34px}
  #sfa-bh .in-mini .bh-cell{width:19px;height:32px}
  #sfa-bh .in-mini .bh-cell span{font-size:19px}
  #sfa-bh .in-plans{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  #sfa-bh .in-book,#sfa-bh.in-rev .bh-wall-cta .bh-btn,#sfa-bh .in-steps span,#sfa-bh .in-skel i{animation:none}
  #sfa-bh .in-park{opacity:1;transform:none}
  #sfa-bh .in-show{animation:none}
  #sfa-bh .in-card,#sfa-bh .in-plan{transition:none}
}
