/* ============================================================
   SPORT-FIT PHYSIO CARE - core.css
   Single reusable stylesheet. White background. Brand colours only.
   Fonts / heading sizes preserved from the original design.
   ============================================================ */

/* ---- Fonts (system-first for instant FCP; brand display via swap) ---- */
:root{
  /* Brand palette - blue / teal / white ONLY */
  --clr-primary:#1a4d8f;         /* SPORT-FIT blue */
  --clr-primary-dk:#0e2f5a;
  --clr-accent:#00b4d8;          /* teal / cyan */
  --clr-accent-dk:#0096c7;
  --clr-accent-lt:#90e0ef;
  --clr-teal:#0fa3b8;
  --clr-ink:#071c36;
  --clr-text:#233246;
  --clr-text-muted:#5a7a96;;
  --clr-white:#ffffff;
  --clr-bg:#f5f9fd;              /* very light blue tint, used sparingly */
  --clr-border:#d9e4ef;
  --clr-danger:#e84c4c;
  --clr-ok:#1cbf7a;

  /* Fonts - display serif for headings (as original), sans for body */
  --ff-head: 'Fraunces',Georgia,serif;
  --ff-body: 'Inter',system-ui,sans-serif;

  --header-h:76px;
  --container:1200px;
  --radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;
  --shadow-sm:0 4px 20px rgba(26,77,143,.07);
  --shadow-md:0 16px 40px rgba(26,77,143,.13);
  --shadow-lg:0 24px 70px rgba(5,42,97,.16);
  --tr:.28s cubic-bezier(.4,0,.2,1);
  /* Original palette vars (for faithful section styling) */
  --ice:#f5f9fd;--navy:#0d2b45;--ink:#071c36;--teal:#62dcc8;--mint:#d6f5ed;
  --line:#d9e4ef;--blue:#0a64e8;--blue-deep:#052a61;--muted:#5c6c80;--green:#10B981;
  --sky:#eaf4ff;--shadow:0 24px 70px rgba(5,42,97,.12);
  --ff-display:"Bebas Neue",sans-serif;
  --transition:.35s cubic-bezier(.4,0,.2,1);--transition-fast:.18s cubic-bezier(.4,0,.2,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{
  font-family:var(--ff-body);
  color:var(--clr-text);
  background:var(--clr-white);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--clr-accent-dk);text-decoration:none}
button{font-family:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--clr-accent);outline-offset:3px;border-radius:4px}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}

.shell{width:min(var(--container),100% - 2.5rem);margin-inline:auto}
.section{padding:clamp(3rem,7vw,5.5rem) 0}
.text-center{text-align:center}


.section-eyebrow{display:inline-block;font-family:var(--ff-body);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent-dk);background:rgba(0,180,216,.08);border:1px solid rgba(0,180,216,.28);border-radius:var(--radius-pill);padding:.3rem 1rem;margin-bottom:.9rem}
.badge{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.04em;padding:.4rem .9rem;border-radius:var(--radius-pill)}

/* ---- Buttons ---- */
.button{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.85rem 1.5rem;border-radius:var(--radius-pill);border:none;
  background:var(--clr-primary);
  color:#fff;font-weight:700;font-size:.95rem;text-decoration:none;
  box-shadow:0 6px 20px rgba(26,77,143,.3);transition:transform var(--tr),box-shadow var(--tr),background var(--tr)}
.button:hover{background:var(--clr-accent-dk);transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,150,199,.4);color:#fff}
.button-white{background:#fff;color:var(--clr-primary);box-shadow:var(--shadow-sm)}
.button-white:hover{color:var(--clr-primary)}
.text-button{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--clr-primary)}

/* ============================================================
   HEADER
   ============================================================ */
.site-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--clr-border)}
.container-header{width:min(1280px,100% - 2rem);margin-inline:auto}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:var(--header-h);gap:.5rem}
.nav-logo{flex-shrink:0;display:flex;align-items:center}
.nav-logo img{width:110px;height:auto;display:block}
.nav-menu{display:flex;align-items:center;gap:.1rem;list-style:none;flex-wrap:nowrap}
.nav-menu>li{display:flex;align-items:center}
.nav-link{display:inline-flex;align-items:center;gap:3px;padding:.45rem .5rem;font-size:.82rem;font-weight:600;color:var(--clr-text);border-radius:8px;transition:color var(--tr),background var(--tr);font-family:var(--ff-body);white-space:nowrap;line-height:1.2}
.nav-link:hover,.nav-link.active{color:var(--clr-primary);background:rgba(26,77,143,.06)}
.nav-item-dropdown{position:relative}
.nav-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:240px;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:.5rem;opacity:0;visibility:hidden;transform:translateY(8px);transition:all var(--tr)}
.nav-item-dropdown:hover .nav-dropdown,.nav-item-dropdown:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.nav-dropdown-link{display:block;padding:.5rem .8rem;font-size:.86rem;font-weight:500;color:var(--clr-text);border-radius:8px}
.nav-dropdown-link:hover{background:var(--clr-bg);color:var(--clr-primary)}
.nav-cta{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .85rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;font-weight:700;font-size:.8rem;white-space:nowrap}
.btn-call-1{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem .45rem .5rem;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff!important;box-shadow:0 6px 20px rgba(0,180,216,.4);white-space:nowrap}
.btn-call-ring-1{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.22);border-radius:50%;font-size:.72rem;flex-shrink:0}
.btn-call-text-1 strong{font-size:.8rem;letter-spacing:.2px;white-space:nowrap}
.nav-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:8px}
.nav-burger span{width:26px;height:2.5px;background:var(--clr-primary);border-radius:2px;transition:var(--tr)}

/* Mobile nav */
body{overflow-x:visible}
.mobile-nav-overlay{position:fixed;inset:0;background:rgba(7,28,54,.5);z-index:940;opacity:0;visibility:hidden;transition:var(--tr)}
.mobile-nav-overlay.open{opacity:1;visibility:visible}
.mobile-nav{position:fixed;top:0;right:0;width:min(340px,86vw);height:100dvh;background:#fff;z-index:950;transform:translateX(100%);transition:transform var(--tr);overflow-y:auto;box-shadow:-10px 0 40px rgba(5,42,97,.15)}
.mobile-nav.open{transform:translateX(0)}
.mobile-nav-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid var(--clr-border)}
.mobile-nav-logo img{width:110px}
.mobile-nav-close{background:var(--clr-bg);border:none;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--clr-primary)}
.mobile-nav-list{list-style:none;padding:.5rem}
.mobile-nav-row{display:flex;align-items:center;justify-content:space-between}
.mobile-nav-link{display:block;padding:.8rem 1rem;font-weight:600;color:var(--clr-text);font-family:var(--ff-body);flex:1}
.mobile-nav-link.active{color:var(--clr-primary)}
.mobile-sub-toggle{background:none;border:none;padding:.8rem;color:var(--clr-text-muted);transition:transform var(--tr)}
.mobile-sub-toggle[aria-expanded="true"]{transform:rotate(180deg)}
.mobile-sub-list{list-style:none;max-height:0;overflow:hidden;transition:max-height var(--tr);padding-left:.8rem}
.mobile-sub-list.open{max-height:640px}
.mobile-sub-link{display:block;padding:.55rem 1rem;font-size:.86rem;color:var(--clr-text-muted);font-family:var(--ff-body)}

@media(max-width:1500px){
  .nav-menu{display:none}
  .nav-burger{display:flex}
}

/* ============================================================
   HERO  (matched to original index.php proportions)
   ============================================================ */
.heroo{position:relative;padding:calc(var(--header-h) + clamp(1.5rem,4vw,3rem)) 0 clamp(2.5rem,5vw,5.5rem);background:linear-gradient(#fff 0%,#fafdff 100%);overflow:hidden;min-height:calc(100svh - var(--header-h));box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
.heroo>.shell{width:min(1240px,100% - 2.5rem)}
.hero-orb{position:absolute;top:-410px;right:-280px;width:760px;height:760px;border-radius:50%;background:radial-gradient(circle,rgba(68,156,255,.2),rgba(68,156,255,0) 67%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:64px;align-items:center;position:relative;z-index:1}
.hero-copy{position:relative;z-index:4;min-width:0}
.hero-copy .hero-badge{background:var(--clr-primary);color:#fff;margin-bottom:1.1rem}
.hero-copy h1{margin-bottom:1.1rem;letter-spacing:-1px;color:#071c36}
.hero-lead{color:var(--clr-text-muted);max-width:750px;margin-bottom:1.05rem;font-size:1rem;line-height:1.65}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;margin:1.6rem 0 0}
.hero-check-link{display:inline-flex;align-items:center;gap:7px;font-weight:700;color:var(--clr-primary-dk);margin-top:1.2rem;font-size:1rem}
.hero-check-link span{color:var(--clr-text-muted);font-weight:560}
.hero-note{margin-top:1.25rem;font-size:1rem;color:#718093;letter-spacing:.025em}

/* Large dark visual card - the key match */
.hero-care-visual{position:relative;background:#082f5c;border-radius:42px;min-height:620px;overflow:hidden;box-shadow:0 34px 74px rgba(5,42,97,.23)}
.hero-care-visual::after{content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(rgba(2,27,54,.16) 8%,transparent 43%,rgba(2,24,48,.92) 100%)}
.hero-care-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% center}
.hero-image-top{position:absolute;z-index:3;top:27px;left:27px;right:27px;display:flex;align-items:center;justify-content:space-between;color:#042948;letter-spacing:.15em;font-size:12px;font-weight:780}
.hero-image-top b{display:none;color:var(--clr-accent-lt);background:rgba(3,30,60,.72);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:9px 10px;font-size:10px}
.hero-image-caption{position:absolute;z-index:3;bottom:26px;left:26px;right:26px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;background:rgba(3,27,55,.84);border:1px solid rgba(255,255,255,.15);border-radius:19px;padding:24px}
.hero-image-caption .hero-badge-img,.hero-badge-img{color:var(--clr-accent-lt);letter-spacing:.15em;margin-bottom:9px;font-size:12px;display:block;background:none;padding:0;border:none}
.hero-image-caption h6{max-width:440px;line-height:1.24;display:block;color:#fff;margin:0}
.hero-image-caption>div{display:flex;align-items:center;gap:12px;margin-top:18px;color:#d2e3f2;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}
.hero-image-caption>div i{background:rgba(255,255,255,.28);width:20px;height:1px;display:inline-block}

@media(max-width:960px){
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:38px}
  .hero-care-visual{min-height:520px;border-radius:28px}
  .hero-image-top{top:18px;left:18px;right:18px}
  .hero-image-caption{padding:18px;bottom:17px;left:17px;right:17px}
  .hero-image-caption>div{gap:7px}
  .hero-image-caption>div i{width:11px}
}

/* ---- Trust ribbon (dark, matched to original) ---- */
.trust-ribbon{background:var(--clr-ink);color:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid div{border-right:1px solid rgba(255,255,255,.1);padding:27px 28px;text-align:center}
.trust-grid div:last-child{border-right:0}
.trust-grid h5{display:block;font-family:var(--ff-head);font-size:24px;font-weight:700;color:#fff}
.trust-grid span{color:#9fb8d0;letter-spacing:.08em;text-transform:uppercase;font-size:12px}
@media(max-width:640px){.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-grid div:nth-child(2){border-right:0}.trust-grid div{padding:22px 10px}}

/* ============================================================
   PAIN & MOVEMENT CHECK
   ============================================================ */
.pain-check-section{background:#063461}
.pain-check-shell{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pain-check-intro .editorial-title{margin:.6rem 0 1rem;color: white;}
.text-l-justify{text-align:justify;color:var(--clr-text-muted);line-height:1.7;margin-bottom:1rem}
.pain-check-trust{display:flex;flex-wrap:wrap;gap:.5rem .9rem;margin:1rem 0}
.pain-check-trust span{font-size:12px;font-weight:600;}
.pain-check-explainer{background:var(--clr-primary-dk);color:#fff;border-radius:var(--radius-lg);padding:1.1rem 1.3rem;margin:1rem 0}
.pain-check-explainer b{color:var(--clr-accent-lt)}
.pain-check-explainer .text-white{color:rgba(255,255,255,.9);margin-top:.4rem;margin-bottom:0}
.text-white{color:rgba(255,255,255,.9)}

/* The interactive card */
.pain-check-card{background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:clamp(1.2rem,2.4vw,1.8rem)}
.pain-check-progress{display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem}
.pain-check-progress span{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--clr-primary);white-space:nowrap}
.pain-check-progress i{flex:1;height:6px;background:var(--clr-bg);border-radius:6px;overflow:hidden;display:block}
.pain-check-progress b{display:block;height:100%;width:12.5%;background:linear-gradient(90deg,var(--clr-accent),var(--clr-primary));border-radius:6px;transition:width .45s cubic-bezier(.4,0,.2,1)}
.pain-check-step[hidden]{display:none}
.pain-step-label{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.13em;color:var(--clr-accent-dk);margin-bottom:.4rem}
.pain-check-step h4{margin-bottom:.5rem}
.pain-step-help{font-size:.86rem;color:var(--clr-text-muted);margin-bottom:1rem}
.anatomy-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.anatomy-view-toggle{display:inline-flex;background:var(--clr-bg);border:1px solid var(--clr-border);border-radius:var(--radius-pill);padding:3px}
.anatomy-view-toggle button{border:none;background:none;padding:.35rem .9rem;font-size:14px;font-weight:700;color:var(--clr-text-muted);border-radius:var(--radius-pill);transition:var(--tr)}
.anatomy-view-toggle button[aria-pressed="true"]{background:#fff;color:var(--clr-primary);box-shadow:var(--shadow-sm)}

/* ---- ANATOMY STAGE (FIXED point alignment) ----
   Points are positioned as PERCENTAGES OF THE FIGURE image,
   inside .anatomy-figure-wrap which is set to the figure's exact
   aspect ratio. This makes every point track the body precisely
   at any width - fixing the misaligned head/feet points. */
.anatomy-stage{
  position:relative;
  background:radial-gradient(circle at 50% 42%,#0c477f 0%,#063664 40%,#052c58 72%,#031f40 100%);
  border-radius:var(--radius-lg);
  padding:16px;
  overflow:hidden;
}
.anatomy-aura{position:absolute;inset:0;pointer-events:none}
.anatomy-aura i{position:absolute;left:50%;top:45%;width:60%;padding-bottom:60%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(114,232,210,.12)}
.anatomy-aura i:nth-child(2){width:44%;padding-bottom:44%}
.anatomy-aura i:nth-child(3){width:28%;padding-bottom:28%}

.anatomy-figure-wrap{
  position:relative;
  width:min(300px,100%);
  margin-inline:auto;
  aspect-ratio:900/1350;      /* matches the anatomy image exactly */
}
.anatomy-figure{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:contain;
  -webkit-mask-image:linear-gradient(90deg,#0000 0,#000 8% 92%,#0000 100%);
          mask-image:linear-gradient(90deg,#0000 0,#000 8% 92%,#0000 100%);
}
.anatomy-figure-back,
.anatomy-stage[data-anatomy-view="back"] .anatomy-figure-front{display:none}
.anatomy-stage[data-anatomy-view="back"] .anatomy-figure-back{display:block}
/* hide back-only points when in front view */
.anatomy-stage[data-anatomy-view="front"] [data-view-only="back"]{display:none}

/* Clickable points - absolutely positioned WITHIN the figure wrap */
.anatomy-point{
  position:absolute;
  transform:translate(-50%,-50%);
  width:20px;height:20px;border-radius:50%;
  background:#72e8d2;border:none;padding:0;
  box-shadow:0 0 0 4px rgba(114,232,210,.16),0 4px 11px rgba(0,25,54,.28);
  cursor:pointer;z-index:3;transition:transform var(--tr),background var(--tr),box-shadow var(--tr);
}
.anatomy-point::before{content:"";position:absolute;top:7px;left:7px;width:6px;height:6px;border-radius:50%;background:white;}
.anatomy-point span{
  position:absolute;left:50%;top:calc(100% + 6px);transform:translateX(-50%);
  white-space:nowrap;font-size:.62rem;font-weight:700;color:#fff;
  background:rgba(5,44,88,.9);padding:2px 7px;border-radius:6px;
  opacity:0;pointer-events:none;transition:opacity var(--tr)}
.anatomy-point:hover,.anatomy-point:focus-visible{transform:translate(-50%,-50%) scale(1.15)}
.anatomy-point:hover span,.anatomy-point:focus-visible span,
.anatomy-point[aria-pressed="true"] span{opacity:1}
.anatomy-point[aria-pressed="true"]{
  background:#ffbd72;
  box-shadow:0 0 0 5px rgba(255,189,114,.22),0 5px 13px rgba(0,25,54,.3)}
.anatomy-point[aria-pressed="true"]::before{background:#7a4a12}

/* ----- CORRECT anatomical coordinates (% of figure) ----- */
.point-head-jaw{left:50%;top:7.5%}
.point-neck{left:50%;top:13.5%}
.point-shoulder-left{left:39%;top:20%}
.point-shoulder-right{left:61%;top:20%}
.point-upper-back{left:50%;top:26%}
.point-lower-back{left:50%;top:44%}
.point-elbow-left{left:33%;top:34%}
.point-elbow-right{left:67%;top:34%}
.point-wrist-left{left:21%;top:44%}
.point-wrist-right{left:78%;top:44%}
.point-hip-left{left:43%;top:50%}
.point-hip-right{left:57%;top:50%}
.point-knee-left{left:40.5%;top:66%}
.point-knee-right{left:58.5%;top:66%}
.point-ankle-left{left:38.5%;top:90%}
.point-ankle-right{left:60.5%;top:90%}

/* Region insight panel */
.anatomy-insight{background:#f3f8fd;border:1px solid #d7e7f4;border-radius:var(--radius-md);padding:.9rem 1rem;margin-top:.9rem}
.anatomy-insight[hidden]{display:none}
.anatomy-insight>span{display:block;letter-spacing:.12em;color:var(--clr-primary);font-size:.6rem;font-weight:800;margin-bottom:.3rem}
.anatomy-insight>strong{font-family:var(--ff-head);font-size:1rem;color:var(--clr-primary-dk)}
.anatomy-insight>p{color:var(--clr-text-muted);font-size:.82rem;margin:.3rem 0}
.anatomy-insight>small{color:#8291a0;font-size:.72rem;line-height:1.45;display:block}

.anatomy-selection{margin-top:1rem;text-align:center}
.anatomy-selection>p{font-size:16px;color:var(--clr-text-muted);margin-bottom:.3rem}
.anatomy-selection>p:first-child{font-weight:700;color:var(--clr-primary)}
[data-region-continue],
.pain-options button{font-family:var(--ff-body)}
[data-region-continue]{
  margin-top:.8rem;display:inline-flex;align-items:center;gap:.5rem;
  padding:.75rem 1.4rem;border:none;border-radius:var(--radius-pill);
  background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;font-weight:700;
  box-shadow:0 8px 24px rgba(0,180,216,.28);transition:var(--tr)}
[data-region-continue]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}

/* Option lists */
.pain-options{display:grid;gap:.55rem}
.pain-options-compact{grid-template-columns:1fr 1fr}
.pain-options-two{grid-template-columns:1fr 1fr}
.pain-options button{
  display:flex;align-items:center;justify-content:space-between;gap:.6rem;
  text-align:left;padding:.85rem 1.1rem;border:1.5px solid var(--clr-border);
  border-radius:var(--radius-md);background:#fff;color:var(--clr-text);
  font-size:.9rem;font-weight:600;transition:var(--tr)}
.pain-options button span{color:var(--clr-accent-dk);font-weight:800;transition:transform var(--tr)}
.pain-options button:hover{border-color:var(--clr-accent);transform:translateX(3px);box-shadow:0 4px 16px rgba(0,180,216,.12)}
.pain-options button:hover span{transform:translateX(3px)}
.pain-option-alert{border-color:rgba(232,76,76,.4)!important;color:var(--clr-danger)!important}
.pain-option-alert span{color:var(--clr-danger)!important}
@media(max-width:520px){.pain-options-compact{grid-template-columns:1fr}}

/* Gate form */
.pain-check-gate h4{margin-bottom:.5rem}
.pain-gate-intro{color:var(--clr-text-muted);font-size:.9rem;margin-bottom:1rem}
.lead-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem}
.pain-lead-form label{display:flex;flex-direction:column;gap:.35rem}
.pain-lead-form label>span{font-size:.82rem;font-weight:700;color:var(--clr-text)}
.pain-lead-form input,.pain-lead-form select{
  padding:.7rem .9rem;border:1.5px solid var(--clr-border);border-radius:10px;
  background:var(--clr-bg);font-family:var(--ff-body);font-size:.9rem;color:var(--clr-text);transition:var(--tr)}
.pain-lead-form input:focus,.pain-lead-form select:focus{outline:none;border-color:var(--clr-primary);background:#fff;box-shadow:0 0 0 3px rgba(26,77,143,.1)}
.lead-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lead-consent{flex-direction:row!important;align-items:flex-start;gap:.6rem!important;margin-top:.6rem;font-size:.8rem;color:var(--clr-text-muted)}
.lead-consent input{margin-top:3px}
.pain-result-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}
.pain-result-actions [data-check-reset],[data-lead-form] [data-check-reset]{background:none;border:1.5px solid var(--clr-border);border-radius:var(--radius-pill);padding:.75rem 1.2rem;font-weight:700;color:var(--clr-text-muted)}
.lead-form-status{margin-top:.7rem;font-size:.85rem;font-weight:600;min-height:1.2em}
.lead-form-status.is-error{color:var(--clr-danger)}
.lead-form-status.is-ok{color:var(--clr-ok)}

/* Result */
.pain-check-result[hidden]{display:none}
.pain-check-result h4{margin-bottom:1rem}
.pain-summary-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;padding-bottom:1rem;border-bottom:1px solid var(--clr-border);margin-bottom:1rem}
.pain-summary-meta span{display:block;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--clr-accent-dk);font-weight:700}
.pain-summary-meta strong{font-family:var(--ff-head);font-size:.98rem;color:var(--clr-primary-dk)}
.pain-report{display:grid;gap:.7rem;margin-bottom:1rem}
.pain-report>div{display:flex;flex-direction:column;gap:.15rem;padding:.7rem .9rem;background:var(--clr-bg);border:1px solid var(--clr-border);border-radius:var(--radius-md)}
.pain-report span{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--clr-accent-dk);font-weight:700}
.pain-report strong{font-family:var(--ff-head);font-size:1rem;color:var(--clr-primary-dk)}
.pain-result-note{background:#effaf7;border-left:4px solid var(--clr-ok);border-radius:10px;padding:.9rem 1rem;font-size:.86rem;color:var(--clr-text-muted);margin-bottom:1rem}
.summary-actions{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.summary-actions>*{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.85rem 1rem;border:1.5px solid var(--clr-border);border-radius:var(--radius-md);background:#fff;color:var(--clr-text);text-align:left;transition:var(--tr)}
.summary-actions>*:hover{border-color:var(--clr-accent);box-shadow:0 4px 16px rgba(0,180,216,.12)}
.summary-actions b{color:var(--clr-primary-dk)}
.summary-actions small{color:var(--clr-text-muted);font-size:.72rem}
.summary-consent-note{margin-top:.9rem;font-size:.78rem;color:var(--clr-text-muted)}
.pain-check-alert h4{color:var(--clr-danger)}
@media(max-width:520px){.pain-summary-meta,.summary-actions{grid-template-columns:1fr}}

@media(max-width:900px){.pain-check-shell{grid-template-columns:1fr}}

/* ============================================================
   BOOKING / CONTACT
   ============================================================ */
.booking-section{background:linear-gradient(135deg,var(--clr-primary-dk) 0,var(--clr-primary) 60%,var(--clr-accent-dk) 100%);color:#fff}
.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.booking-copy h2{color:#fff;margin-bottom:.8rem}
.booking-copy p{color:rgba(255,255,255,.85);margin-bottom:1.2rem}
.booking-points{list-style:none;display:grid;gap:.6rem;margin-bottom:1.4rem}
.booking-points li{display:flex;align-items:center;gap:.6rem;color:rgba(255,255,255,.92)}
.booking-points li::before{content:"✓";width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:rgba(0,180,216,.35);border-radius:50%;color:var(--clr-accent-lt);font-weight:800;font-size:.75rem}
.booking-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.booking-card{background:#fff;border-radius:var(--radius-xl);padding:clamp(1.4rem,3vw,2rem);color:var(--clr-text);box-shadow:var(--shadow-lg)}
.booking-card h3{margin-bottom:1rem}
.booking-card .lead-form-grid{gap:.8rem}
.booking-card label{display:flex;flex-direction:column;gap:.35rem}
.booking-card label>span{font-size:.8rem;font-weight:700}
.booking-card input,.booking-card select,.booking-card textarea{padding:.7rem .9rem;border:1.5px solid var(--clr-border);border-radius:10px;background:var(--clr-bg);font-family:var(--ff-body);font-size:.9rem;color:var(--clr-text)}
.booking-card input:focus,.booking-card select:focus,.booking-card textarea:focus{outline:none;border-color:var(--clr-primary);background:#fff;box-shadow:0 0 0 3px rgba(26,77,143,.1)}
.booking-card textarea{resize:vertical;min-height:80px}
.booking-card .button{width:100%;justify-content:center;margin-top:.4rem}
@media(max-width:860px){.booking-grid{grid-template-columns:1fr}}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer{background:var(--clr-primary-dk);color:rgba(255,255,255,.82)}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2rem;padding:clamp(2.5rem,5vw,4rem) 0}
.footer-col h4{color:#fff;margin-bottom:1rem}
.footer-col p,.footer-col a{font-size:.88rem;color:rgba(255,255,255,.72);line-height:1.7}
.footer-col a{display:block;transition:color var(--tr)}
.footer-col a:hover{color:var(--clr-accent-lt)}
.footer-brand-name{font-family:var(--ff-head);font-size:1.3rem;color:#fff;font-weight:800}
.footer-logo{display:inline-block}
.footer-logo img{max-width:150px;height:auto;display:block}
.footer-social{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.1rem}
.footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.85);transition:background var(--tr),border-color var(--tr),color var(--tr),transform var(--tr)}
.footer-social a:hover{background:var(--clr-accent);border-color:var(--clr-accent);color:#fff;transform:translateY(-2px)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:1.2rem 0;text-align:center;font-size:.8rem;color:rgba(255,255,255,.6)}
@media(max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr}}

/* Floating WhatsApp */
/* ---- Floating action stack (WhatsApp / Call / Book) ---- */
.fab-stack{position:fixed;right:18px;bottom:18px;z-index:800;display:flex;flex-direction:column;gap:10px}
.fab-btn{position:relative;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-md);transition:transform var(--tr)}
.fab-btn:hover{transform:scale(1.1)}
.fab-whatsapp{background:#25d366;box-shadow:0 8px 24px rgba(37,211,102,.45)}
.fab-call{background:var(--clr-accent);box-shadow:0 8px 24px rgba(0,180,216,.4)}
.fab-book{background:var(--clr-primary-dk);box-shadow:0 8px 24px rgba(14,47,90,.4)}

.fab-pain{width:42px;height:42px;isolation:isolate;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));box-shadow:0 10px 26px rgba(0,180,216,.6);animation:fabPainBeat 1.6s ease-in-out infinite}
.fab-pain:before,.fab-pain:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--clr-accent-lt);animation:fabPainPulse 1.6s ease-out infinite;pointer-events:none;z-index:0}
.fab-pain:after{animation-delay:.8s}
@keyframes fabPainPulse{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.9);opacity:0}}
@keyframes fabPainBeat{0%,100%{transform:scale(1);box-shadow:0 10px 26px rgba(0,180,216,.6)}50%{transform:scale(1.1);box-shadow:0 10px 30px rgba(0,180,216,.9)}}
.fab-pain-ring{position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 0deg,var(--clr-accent-lt),var(--clr-accent),var(--clr-primary),var(--clr-accent),var(--clr-accent-lt));animation:fabPainSpin 3s linear infinite;z-index:-1;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 3px))}
@keyframes fabPainSpin{to{transform:rotate(360deg)}}
.fab-pain-icon{position:relative;z-index:1}
.fab-pain:hover{transform:scale(1.18)}
@media(prefers-reduced-motion:reduce){.fab-pain,.fab-pain:before,.fab-pain:after,.fab-pain-ring{animation:none!important}}

/* ---- Mobile sticky quick bar: Call / WhatsApp / Book Visit (hidden on tablet/desktop) ---- */
.mobile-quickbar{display:none}
@media(max-width:760px){
  .mobile-quickbar{
    display:flex;align-items:stretch;gap:.4rem;
    position:fixed;left:0;right:0;bottom:0;z-index:970;
    background:rgba(255,255,255,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    border-top:1px solid var(--clr-border);
    box-shadow:0 -10px 30px rgba(26,77,143,.14);
    padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom,0px));
  }
  .mqb-item{
    flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;
    padding:.3rem .2rem;border-radius:var(--radius-md);
    background:var(--clr-bg);border:1px solid var(--clr-border);
    color:var(--clr-primary-dk);font-family:var(--ff-body);font-size:.66rem;font-weight:700;
    letter-spacing:.01em;transition:background var(--tr),transform var(--tr);
  }
  .mqb-item:active{transform:scale(.96);background:#e8f3fa}
  .mqb-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:var(--clr-primary);flex-shrink:0}
  .mqb-primary{flex:1.3;border:none;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;box-shadow:0 10px 24px rgba(0,180,216,.4)}
  .mqb-primary .mqb-icon{background:rgba(255,255,255,.22);color:#fff}
  .mqb-primary:active{transform:scale(.96)}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))}
}

/* ---- Quick shortcut cards (Pain check / Google reviews) ---- */
.quick-float{position:fixed;right:18px;top:52%;transform:translateY(-50%);z-index:790;display:flex;flex-direction:column;gap:10px}
.quick-float-card{display:flex;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:.6rem .9rem;box-shadow:var(--shadow-md);transition:transform var(--tr),box-shadow var(--tr);max-width:210px}
.quick-float-card:hover{transform:translateX(-3px);box-shadow:var(--shadow-lg)}
.quick-float-icon{flex-shrink:0;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.quick-float-icon-accent{background:var(--clr-accent);color:#fff}
.quick-float-icon-white{background:var(--clr-bg);border:1px solid var(--clr-border)}
.quick-float-text{display:flex;flex-direction:column;line-height:1.25}
.quick-float-text strong{font-family:var(--ff-head);font-size:12px;color:var(--clr-primary-dk)}
.quick-float-text small{font-size:12px;color:var(--clr-text-muted)}
@media(max-width:980px){.quick-float{display:none}}

/* ---- Back to top ---- */
.scroll-top-btn{position:fixed;left:18px;bottom:104px;z-index:800;width:46px;height:46px;border-radius:50%;border:1px solid var(--clr-border);background:#fff;color:var(--clr-primary-dk);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity var(--tr),transform var(--tr),visibility var(--tr)}
.scroll-top-btn.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.scroll-top-btn:hover{background:var(--clr-accent);color:#fff;border-color:var(--clr-accent)}

/* ---- Care Guide chat widget ---- */
.care-guide-shell{position:fixed;z-index:820;left:20px;bottom:20px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.care-guide-launcher{position:relative;display:flex;align-items:center;gap:11px;min-width:282px;min-height:66px;padding:8px 40px 8px 9px;border:1px solid rgba(130,195,241,.22);border-radius:22px;background:linear-gradient(145deg,#0b3f77,#05284f);color:#fff;box-shadow:0 19px 52px rgba(2,25,54,.32),inset 1px 1px 0 rgba(255,255,255,.1);cursor:pointer;text-align:left;transition:transform .2s ease,box-shadow .2s ease}
.care-guide-launcher:hover,.care-guide-launcher:focus-visible{transform:translateY(-3px);box-shadow:0 25px 60px rgba(2,25,54,.4),0 0 0 4px rgba(98,220,200,.13)}
.care-guide-launcher>span:nth-child(2){display:flex;flex-direction:column}
.care-guide-launcher small{font-size:9px;font-weight:820;letter-spacing:.14em;color:var(--teal);margin-bottom:4px}
.care-guide-launcher strong{font-family:var(--ff-head);font-size:14px;line-height:1.25;letter-spacing:.005em;font-weight:600}
.care-guide-status{position:absolute;right:17px;top:29px;width:8px;height:8px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px rgba(98,220,200,.12),0 0 15px rgba(98,220,200,.64)}
.care-guide-avatar{position:relative;display:block;flex:0 0 auto;width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,#f5fbff,#c9e3f8);box-shadow:7px 7px 17px rgba(0,18,41,.2),inset 1px 1px 0 #fff;overflow:hidden}
.care-guide-avatar:before,.care-guide-avatar:after{content:"";position:absolute;left:50%;top:50%;background:#70aadd;transform:translate(-50%,-50%);opacity:.7}
.care-guide-avatar:before{width:29px;height:1px}.care-guide-avatar:after{width:1px;height:29px}
.care-guide-avatar i{position:absolute;z-index:2;width:7px;height:7px;border:2px solid #0a64e8;border-radius:50%;background:#eef8ff}
.care-guide-avatar i:first-child{left:5px;top:20px}.care-guide-avatar i:nth-child(2){right:5px;top:20px}.care-guide-avatar i:nth-child(3){left:20px;top:5px;border-color:#4dcbb7}
.care-guide-avatar b{position:absolute;z-index:3;left:50%;top:50%;width:17px;height:17px;border-radius:50%;background:linear-gradient(145deg,#72efd8,#3bbca7);transform:translate(-50%,-50%);box-shadow:0 0 0 5px rgba(98,220,200,.16)}
.care-guide-hint{position:absolute;left:0;bottom:78px;width:220px;border:1px solid #cde0f0;border-radius:19px;background:rgba(255,255,255,.97);box-shadow:0 17px 48px rgba(5,42,97,.2);color:var(--ink);animation:careGuideArrive .45s ease both}
.care-guide-hint:after{content:"";position:absolute;left:31px;bottom:-7px;width:13px;height:13px;border-right:1px solid #cde0f0;border-bottom:1px solid #cde0f0;background:#fff;transform:rotate(45deg)}
.care-guide-hint-main{display:block;width:100%;padding:15px 39px 15px 17px;border:0;border-radius:19px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}
.care-guide-hint small{display:block;color:var(--blue);font-size:9px;font-weight:830;letter-spacing:.14em;margin-bottom:6px}
.care-guide-hint strong{display:block;font-family:var(--ff-head);font-size:16px;font-weight:600}
.care-guide-hint span{display:block;color:#6a7d90;font-size:11px;margin-top:3px}
.care-guide-hint-close{position:absolute;z-index:2;right:9px;top:9px;width:25px;height:25px;border:1px solid #d5e3ef;border-radius:9px;background:#f5f9fd;color:#60758a;font:inherit;font-size:15px;line-height:1;cursor:pointer}
.care-guide-hint-close:hover,.care-guide-hint-close:focus-visible{background:#eaf4ff;color:var(--blue)}
@keyframes careGuideArrive{from{opacity:0;transform:translateY(9px) scale(.97)}to{opacity:1;transform:none}}
.care-guide-panel{position:absolute;left:0;bottom:82px;width:400px;height:min(660px,calc(100vh - 125px));border:1px solid rgba(147,181,211,.48);border-radius:30px;background:#f4f8fc;box-shadow:0 32px 90px rgba(2,25,54,.34);overflow:hidden;display:flex;flex-direction:column;animation:careGuideArrive .28s ease both}
.care-guide-header{position:relative;display:grid;grid-template-columns:48px 1fr 34px;gap:12px;align-items:center;min-height:89px;padding:17px 17px 15px;color:#fff;background:radial-gradient(circle at 80% 10%,#126cba,#07457f 38%,#052b56 78%)}
.care-guide-header:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-90px;top:-105px;box-shadow:0 0 0 28px rgba(255,255,255,.018)}
.care-guide-header .care-guide-avatar{width:48px;height:48px;box-shadow:7px 7px 17px rgba(0,18,41,.28),inset 1px 1px 0 #fff}
.care-guide-header>div:nth-child(2){position:relative;z-index:2;display:flex;flex-direction:column}
.care-guide-header small{font-size:9px;line-height:1.2;font-weight:830;letter-spacing:.14em;color:var(--teal)}
.care-guide-header strong{font-family:var(--ff-head);font-size:22px;font-weight:600;line-height:1.05;margin:4px 0}
.care-guide-header>div:nth-child(2)>span{display:flex;align-items:center;gap:6px;color:#bbd3e8;font-size:10px}
.care-guide-header>div:nth-child(2)>span i{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(98,220,200,.12)}
.care-guide-header>button{position:relative;z-index:3;align-self:start;width:32px;height:32px;border:1px solid rgba(255,255,255,.16);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font:inherit;font-size:20px;line-height:1;cursor:pointer}
.care-guide-header>button:hover,.care-guide-header>button:focus-visible{background:rgba(255,255,255,.16)}
.care-guide-messages{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:18px 17px 9px;scrollbar-width:thin;scrollbar-color:#bfd2e3 transparent;background:linear-gradient(180deg,#edf5fc 0%,#f8fbfe 100%)}
.care-guide-message{display:flex;margin-bottom:11px}
.care-guide-message-visitor{justify-content:flex-end}
.care-guide-message-visitor>p{max-width:80%;margin:0;padding:10px 13px;border-radius:16px 16px 4px 16px;background:var(--blue);color:#fff;font-size:12px;line-height:1.45;box-shadow:0 8px 20px rgba(10,100,232,.17)}
.care-guide-reply{max-width:94%;padding:15px;border:1px solid #d7e4ef;border-radius:5px 18px 18px 18px;background:#fff;box-shadow:0 10px 25px rgba(5,42,97,.07)}
.care-guide-reply>strong{display:block;font-family:var(--ff-head);font-size:15px;line-height:1.22;font-weight:600;color:var(--ink)}
.care-guide-reply>p{margin:7px 0 0;color:#52687d;font-size:11px;line-height:1.62}
.care-guide-reply-urgent{border-color:#e8c5bb;background:#fff7f4}
.care-guide-reply-urgent>strong{color:#9b321e}.care-guide-reply-urgent>p{color:#70483e}
.care-guide-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.care-guide-actions>a{display:inline-flex;align-items:center;gap:6px;min-height:33px;padding:0 11px;border:1px solid #c5d9eb;border-radius:999px;background:#f3f8fd;color:#0a4c91;font-size:10px;font-weight:790;transition:background .18s,border-color .18s}
.care-guide-actions>a:first-child{border-color:var(--blue);background:var(--blue);color:#fff}
.care-guide-actions>a:hover,.care-guide-actions>a:focus-visible{border-color:#80b1e9;background:#e5f1fc}
.care-guide-actions>a:first-child:hover,.care-guide-actions>a:first-child:focus-visible{background:#0756bf;color:#fff}
.care-guide-prompts{display:flex;gap:7px;overflow-x:auto;padding:10px 14px;border-top:1px solid #d9e5ef;background:#fff;scrollbar-width:none}
.care-guide-prompts::-webkit-scrollbar{display:none}
.care-guide-prompts button{flex:0 0 auto;min-height:32px;padding:0 11px;border:1px solid #d1e0ed;border-radius:999px;background:#f6faff;color:#315b84;font:inherit;font-size:10px;font-weight:720;cursor:pointer}
.care-guide-prompts button:hover,.care-guide-prompts button:focus-visible{border-color:#7eaee4;background:#eaf4ff}
.care-guide-form{padding:10px 14px 5px;border-top:1px solid #dce7f0;background:#fff}
.care-guide-form>label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.care-guide-form>div{display:grid;grid-template-columns:1fr 39px;gap:7px;padding:6px;border:1px solid #c8daea;border-radius:17px;background:#f7fbff;box-shadow:inset 3px 3px 8px rgba(119,151,180,.08)}
.care-guide-form input{min-width:0;height:34px;border:0;background:transparent;color:var(--ink);padding:0 7px;font:inherit;font-size:12px}
.care-guide-form input:focus{outline:none}
.care-guide-form input::placeholder{color:#8596a7}
.care-guide-form button{width:36px;height:36px;border:0;border-radius:12px;background:var(--blue);color:#fff;font:inherit;font-size:17px;cursor:pointer;box-shadow:0 7px 15px rgba(10,100,232,.2)}
.care-guide-form button:disabled{background:#cbd8e4;box-shadow:none;cursor:not-allowed}
.care-guide-note{margin:0;padding:3px 14px 11px;background:#fff;color:#8b99a6;font-size:9px;text-align:center;letter-spacing:.02em}
@media(max-width:760px){
  .care-guide-shell{left:auto;right:15px;bottom:78px}
  .care-guide-launcher{min-width:56px;width:56px;min-height:56px;height:56px;padding:6px;border-radius:18px}
  .care-guide-launcher>span:nth-child(2){position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .care-guide-launcher .care-guide-avatar{width:42px;height:42px;border-radius:14px}
  .care-guide-launcher .care-guide-avatar i:first-child{left:4px;top:17px}.care-guide-launcher .care-guide-avatar i:nth-child(2){right:4px;top:17px}.care-guide-launcher .care-guide-avatar i:nth-child(3){left:17px;top:4px}
  .care-guide-status{right:2px;top:2px;width:7px;height:7px;box-shadow:0 0 0 4px #fff,0 0 14px rgba(98,220,200,.8)}
  .care-guide-hint{left:auto;right:0;bottom:68px;width:205px}
  .care-guide-hint:after{left:auto;right:20px}
  .care-guide-panel{position:fixed;left:10px;right:10px;bottom:76px;width:auto;height:min(680px,calc(100vh - 90px));border-radius:25px}
  .care-guide-shell[data-open="true"] .care-guide-launcher{display:none}
  .care-guide-header{min-height:81px;padding:14px}
  .care-guide-messages{padding:15px 13px 8px}
  .care-guide-reply{max-width:97%}
  .care-guide-prompts{padding-left:11px;padding-right:11px}
  .care-guide-form{padding-left:11px;padding-right:11px}
  .care-guide-note{padding-bottom:8px}
  .fab-whatsapp,.fab-call,.fab-book{display:none}
  .fab-stack{bottom:158px;right:16px}
  .fab-pain{animation-name:fabPainBeatMobile}
  @keyframes fabPainBeatMobile{0%,100%{transform:scale(1);box-shadow:0 0 0 4px #fff,0 10px 26px rgba(0,180,216,.6)}50%{transform:scale(1.1);box-shadow:0 0 0 4px #fff,0 10px 30px rgba(0,180,216,.9)}}
  .chatbot-bubble{background:linear-gradient(135deg,var(--clr-primary-dk),var(--clr-primary));animation-name:sfChatPulseMobile}
  @keyframes sfChatPulseMobile{0%{box-shadow:0 0 0 4px #fff,0 0 0 0 rgba(14,47,90,.5)}70%{box-shadow:0 0 0 4px #fff,0 0 0 16px rgba(14,47,90,0)}100%{box-shadow:0 0 0 4px #fff,0 0 0 0 rgba(14,47,90,0)}}
  .scroll-top-btn{left:16px;bottom:88px}
}
@media(prefers-reduced-motion:reduce){.care-guide-hint,.care-guide-panel{animation:none}.care-guide-messages{scroll-behavior:auto}}

/* ============================================================
   SIMPLIFIED SECTIONS (clean cards) + real photos
   ============================================================ */
.mb-10{margin-bottom:.6rem}
.sp-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ff-body);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent-dk);background:rgba(0,180,216,.08);border:1px solid rgba(0,180,216,.28);border-radius:var(--radius-pill);padding:.3rem 1rem;margin-bottom:.9rem}
.sp-eyebrow__dot{width:6px;height:6px;border-radius:50%;background:var(--clr-accent);display:inline-block}
.imt-name{color:var(--clr-primary);font-weight:800}
.section-eyebrow{display:inline-block;font-family:var(--ff-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent-dk);background:rgba(0,180,216,.08);border:1px solid rgba(0,180,216,.28);border-radius:var(--radius-pill);padding:.3rem 1rem;margin-bottom:.9rem}
.section-intro{color:var(--clr-text-muted);margin-top:.6rem}

/* care-fit */
.care-fit-section{background:var(--clr-bg);}
.care-fit-copy{max-width:100%;margin:0 auto 2.5rem}
.care-fit-copy p{color:var(--clr-text-muted);margin-top:.8rem}
.care-fit-reasons{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-bottom:2rem;counter-reset:careStep}
.care-fit-reasons article{
  counter-increment:careStep;
  text-align:left;
  background:
    radial-gradient(140px 120px at 105% -10%,rgba(0,180,216,.14),transparent 70%),
    radial-gradient(160px 140px at -10% 115%,rgba(26,77,143,.09),transparent 70%),
    #ffffff;
  background-size:100% 100%,100% 100%,100% 100%;
  border:1px solid var(--clr-border);
  border-radius:var(--radius-lg);
  padding:1.6rem 1.3rem 1.5rem;
  transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease,border-color .5s ease,background .6s ease;
  will-change:transform;
}
.care-fit-reasons article:hover{
  transform:translateY(-10px);
  box-shadow:0 24px 44px -16px rgba(0,180,216,.32),0 10px 20px rgba(26,77,143,.14);
  border-color:rgba(0,180,216,.4);
  background:
    radial-gradient(220px 180px at 108% -15%,rgba(0,180,216,.22),transparent 72%),
    radial-gradient(220px 180px at -12% 118%,rgba(26,77,143,.15),transparent 72%),
    #ffffff;
}
.care-fit-reasons article::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--clr-accent),var(--clr-primary));transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,1,.36,1);z-index:5}
.care-fit-reasons article:hover::before{transform:scaleX(1)}
.care-fit-reasons article>span{
  position:absolute;right:14px;top:10px;left:auto;
  font-family:var(--ff-head);font-weight:800;font-size:2.6rem;line-height:1;
  color:rgba(0,137,168,.35);
  background:linear-gradient(160deg,var(--clr-accent),var(--clr-primary));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  opacity:.16;letter-spacing:-.02em;
  transition:opacity .45s ease,transform .45s ease;
  pointer-events:none;
}
.care-fit-reasons article:hover>span{opacity:.3;transform:translateY(-3px)}
.care-fit-reasons h6{margin:.6rem 0 .4rem;color:var(--clr-primary-dk);transition:color .35s ease}
.care-fit-reasons article:hover h6{color:var(--clr-accent-dk)}
.care-fit-reasons p{font-size:16px;color:var(--clr-text-muted)}
.care-fit-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}
@media(max-width:900px){.care-fit-reasons{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.care-fit-reasons{grid-template-columns:1fr}}

/* care-fit reason icons */
.care-symbol{position:relative;flex:0 0 auto;width:72px;height:66px;border-radius:20px;overflow:hidden}
.care-symbol i,.care-symbol b{position:absolute;display:block}
.care-symbol-light{margin:27px 0 17px;border:1px solid rgba(0,180,216,.28);background:linear-gradient(155deg,rgba(0,180,216,.16),rgba(26,77,143,.10));box-shadow:0 10px 22px -10px rgba(0,180,216,.45),inset 1px 1px 0 rgba(255,255,255,.7)}
.care-symbol-assess i:first-child{inset:13px;border:1px solid #7fb0e5;border-radius:50%}
.care-symbol-assess i:nth-child(2){inset:21px;border:1px dashed #68cdbf;border-radius:50%}
.care-symbol-assess i:nth-child(3){width:8px;height:8px;left:32px;top:29px;border-radius:50%;background:#0a64e8;box-shadow:0 0 0 6px rgba(10,100,232,.12)}
.care-symbol-plan b{left:15px;right:15px;top:31px;height:2px;background:#76aee6;transform:rotate(-12deg);transform-origin:center}
.care-symbol-plan i{z-index:2;width:11px;height:11px;border:3px solid #0a64e8;border-radius:50%;background:#f5faff}
.care-symbol-plan i:first-child{left:12px;top:38px}.care-symbol-plan i:nth-child(2){left:31px;top:27px;border-color:#53cdbb}.care-symbol-plan i:nth-child(3){right:11px;top:18px}
.care-symbol-recheck i:first-child{inset:13px;border:2px solid #74ace4;border-right-color:#55d4c0;border-radius:50%}
.care-symbol-recheck b{inset:0;display:grid;place-items:center;color:#0a64e8;font-size:23px;font-weight:500}
.care-symbol-recheck b:before{content:"↻"}
.care-symbol-movement b{left:13px;right:13px;top:38px;height:2px;background:#75ade4;transform:rotate(-16deg)}
.care-symbol-movement i{z-index:2;width:11px;height:11px;border-radius:50%;border:3px solid #79b5e9;background:#0e3966}
.care-symbol-movement i:first-child{left:11px;top:39px}.care-symbol-movement i:nth-child(2){left:30px;top:28px;border-color:#5bd4c1}.care-symbol-movement i:nth-child(3){right:10px;top:18px}
.care-fit-reasons article{position:relative;overflow:hidden;padding-left:1.2rem;padding-right:1.2rem}
.care-fit-reasons .care-symbol{position:absolute;left:18px;top:16px;right:auto;width:72px;height:66px;margin:0;transform:scale(.72);transform-origin:top left}
.care-fit-reasons .care-symbol i,.care-fit-reasons .care-symbol b{letter-spacing:normal}
.care-fit-reasons h6{margin-top:3.1rem}
.care-fit-reasons article::after{
  content:counter(careStep);
  position:absolute;left:57px;top:8px;
  width:22px;height:22px;border-radius:50%;
  background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));
  color:#fff;font-family:var(--ff-head);font-weight:800;font-size:.72rem;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 14px -4px rgba(0,180,216,.55),0 0 0 3px #fff;
  z-index:4;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease;
}
.care-fit-reasons article:hover::after{transform:scale(1.15) rotate(10deg);box-shadow:0 8px 18px -3px rgba(0,180,216,.6),0 0 0 3px #fff}

/* Additional icon glyphs matching the client's visual system */
.care-symbol-glyph{margin:0 auto 14px}
.care-symbol-glyph b{position:static;inset:auto;display:grid;place-items:center;width:100%;height:100%;font-size:26px;line-height:1}
.care-symbol-spine b:before{content:"\22EE"}
.care-symbol-nerve b:before{content:"\26A1"}
.care-symbol-joint b:before{content:"\25CE"}
.care-symbol-sports b:before{content:"\2733"}
.care-symbol-surgical b:before{content:"\271A"}
.care-symbol-posture b:before{content:"\21C5"}
.care-symbol-wellness b:before{content:"\2740"}
.care-symbol-balance b:before{content:"\2696"}
.care-symbol-treat b:before{content:"\271B"}
.care-symbol-progress b:before{content:"\2197"}
.care-symbol-compare b:before{content:"\21C4"}
.care-symbol-question b:before{content:"?"}
.care-symbol-story b:before{content:"\275D"}
.care-symbol-light.care-symbol-glyph b{color:#0a64e8}
.care-symbol-dark{position:relative;flex:0 0 auto;width:60px;height:56px;border-radius:16px;overflow:hidden;margin:0 0 14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);box-shadow:inset 1px 1px 0 rgba(255,255,255,.08)}
.care-symbol-dark.care-symbol-glyph b{color:var(--clr-accent-lt);font-size:22px}
.care-fit-reasons article>span,.care-fit-reasons article>h6,.care-fit-reasons article>p{z-index:2}
.care-fit-reasons article>h6,.care-fit-reasons article>p{position:relative}
.care-fit-reasons article>span{position:absolute}

/* care-fit icons: idle motion + hover boost */
.care-fit-reasons .care-symbol{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}
.care-fit-reasons article:hover .care-symbol{transform:scale(.8) translateY(-2px);box-shadow:0 14px 26px -10px rgba(0,180,216,.5),inset 1px 1px 0 rgba(255,255,255,.7)}

@keyframes csSpin{to{transform:rotate(360deg)}}
@keyframes csDotPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.35)}}
@keyframes csRing{0%{box-shadow:0 0 0 0 rgba(10,100,232,.32)}70%{box-shadow:0 0 0 9px rgba(10,100,232,0)}100%{box-shadow:0 0 0 0 rgba(10,100,232,0)}}
@keyframes csBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

.care-symbol-recheck b{animation:csSpin 6s linear infinite}
.care-fit-reasons article:hover .care-symbol-recheck b{animation-duration:1.4s}

.care-symbol-movement i{animation:csBob 2s ease-in-out infinite}
.care-symbol-movement i:nth-child(2){animation-delay:.2s}
.care-symbol-movement i:nth-child(3){animation-delay:.4s}
.care-fit-reasons article:hover .care-symbol-movement i{animation-duration:.8s}

.care-symbol-plan i{animation:csDotPulse 2.6s ease-in-out infinite}
.care-symbol-plan i:nth-child(2){animation-delay:.45s}
.care-symbol-plan i:nth-child(3){animation-delay:.9s}
.care-fit-reasons article:hover .care-symbol-plan i{animation-duration:1s}

.care-symbol-assess i:nth-child(2){animation:csSpin 5s linear infinite}
.care-symbol-assess i:nth-child(3){animation:csRing 2.4s ease-out infinite}
.care-fit-reasons article:hover .care-symbol-assess i:nth-child(2){animation-duration:1.6s}
.care-fit-reasons article:hover .care-symbol-assess i:nth-child(3){animation-duration:1s}

@media(prefers-reduced-motion:reduce){
  .care-fit-reasons .care-symbol,.care-fit-reasons .care-symbol *{animation:none!important;transition:none!important}
}

/* stories */
.stories-heading{text-align:center;max-width:100%;margin:0 auto 2rem}
.stories-heading p{color:var(--clr-text-muted);margin-top:.6rem}
.video-story-group{margin-bottom:2rem}
.video-story-group-head{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.video-story-group-head span{font-family:var(--ff-head);font-size:1.3rem;color:var(--clr-accent);font-weight:800}

.video-story-carousel{position:relative;display:flex;align-items:center;gap:.75rem}
.video-story-rail{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,290px);gap:1rem;overflow-x:auto;padding:.3rem .1rem .6rem;scroll-snap-type:x mandatory;scrollbar-width:none}
.video-story-rail::-webkit-scrollbar{display:none}
.video-story-card{position:relative;border:none;padding:0;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;aspect-ratio:9/16;background:var(--clr-primary-dk);scroll-snap-align:start;box-shadow:var(--shadow-sm);display:block;text-align:left;font:inherit;width:100%}
.video-story-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--tr)}
.video-story-card:hover img{transform:scale(1.05)}
.video-story-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(0,180,216,.92);color:#fff;border-radius:50%;font-size:.9rem;box-shadow:0 6px 18px rgba(0,0,0,.3);z-index:2}
.video-story-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,44,88,.85),transparent 55%)}
.video-story-meta{position:absolute;left:.9rem;right:.9rem;bottom:.8rem;text-align:left;color:#fff;z-index:1}
.video-story-meta strong{display:block;font-family:var(--ff-head);font-size:.98rem;line-height:1.25}
.video-story-meta em{font-size:.72rem;color:var(--clr-accent-lt);font-style:normal}
.video-story-arrow{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--clr-border);background:#fff;color:var(--clr-primary-dk);display:flex;align-items:center;justify-content:center;font-size:.85rem;box-shadow:var(--shadow-sm);transition:background var(--tr),color var(--tr),border-color var(--tr),opacity var(--tr),transform var(--tr)}
.video-story-arrow:hover{background:var(--clr-primary-dk);color:#fff;border-color:var(--clr-primary-dk)}
.video-story-arrow:active{transform:scale(.94)}
.video-story-arrow[disabled]{opacity:.35;cursor:default;pointer-events:none}
.video-story-dots{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1.1rem}
@media(min-width:769px){.video-story-dots{display:none}}
.video-story-dot{width:8px;height:8px;padding:0;border:none;border-radius:var(--radius-pill);background:var(--clr-border);cursor:pointer;transition:width var(--tr),background var(--tr)}
.video-story-dot:hover{background:var(--clr-accent-lt)}
.video-story-dot.is-active{width:24px;background:var(--clr-primary-dk)}
@media(max-width:520px){
  .video-story-rail{grid-auto-columns:minmax(190px,78%)}
  .video-story-arrow{width:36px;height:36px;font-size:.72rem}
}
@media(min-width:981px){
  .video-story-rail{grid-auto-columns:calc((100% - 3*1rem)/4)}
}

/* ---- Video lightbox: patient stories play in-page instead of leaving to YouTube ---- */
.video-story-frame{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:5;background:#000;border-radius:inherit}
.video-story-card.is-playing .video-story-shade,
.video-story-card.is-playing .video-story-play,
.video-story-card.is-playing .video-story-meta{opacity:0;pointer-events:none;transition:opacity .2s ease}

/* video story tabs */
.video-story-tablist{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;margin-bottom:1.6rem}
.video-story-tab{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.3rem;border:1px solid var(--clr-border);border-radius:var(--radius-pill);background:#fff;color:var(--clr-text-muted);font-family:var(--ff-head);font-weight:700;font-size:16px;cursor:pointer;transition:background var(--tr),border-color var(--tr),color var(--tr)}
.video-story-tab span{font-size:.78rem;font-weight:800;color:var(--clr-accent)}
.video-story-tab:hover{border-color:var(--clr-accent)}
.video-story-tab.is-active{background:var(--clr-primary-dk);border-color:var(--clr-primary-dk);color:#fff}
.video-story-tab.is-active span{color:var(--clr-accent-lt)}
.video-story-panel[hidden]{display:none}

/* video story groups: always-visible stacked sliders (international on gradient card, Indian on light card) */
.video-story-groups{display:flex;flex-direction:column;gap:2rem}
.video-story-groups .video-story-group{margin-bottom:0;border-radius:var(--radius-xl);padding:1.8rem 1.8rem 1.6rem}
.video-story-group-intl{background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));box-shadow:var(--shadow-lg)}
.video-story-group-india{background:#fff;border:1px solid var(--clr-border);box-shadow:var(--shadow-sm)}
.video-story-groups .video-story-group-head{margin-bottom:1.3rem}
.video-story-group-num{flex:none;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--ff-head);font-weight:800;font-size:.85rem}
.video-story-group-intl .video-story-group-num{background:rgba(255,255,255,.18);color:#fff}
.video-story-group-india .video-story-group-num{background:var(--clr-bg);color:var(--clr-primary)}
.video-story-group-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.2rem}
.video-story-group-intl .video-story-group-eyebrow{color:rgba(255,255,255,.75)}
.video-story-group-india .video-story-group-eyebrow{color:var(--clr-accent-dk)}
.video-story-group-title{font-family:var(--ff-head);font-weight:800;font-size:1.5rem;margin:0}
.video-story-group-intl .video-story-group-title{color:#fff}
.video-story-group-india .video-story-group-title{color:var(--clr-primary-dk)}
.video-story-group-intl .video-story-arrow{box-shadow:none}
.video-story-group-intl .video-story-dot{background:rgba(255,255,255,.35)}
.video-story-group-intl .video-story-dot:hover{background:rgba(255,255,255,.6)}
.video-story-group-intl .video-story-dot.is-active{background:#fff}
@media(max-width:768px){
  .video-story-carousel{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"rail rail" "prev next";column-gap:.75rem;row-gap:.7rem}
  .video-story-rail{grid-area:rail}
  .video-story-arrow-prev{grid-area:prev;justify-self:end}
  .video-story-arrow-next{grid-area:next;justify-self:start}
  .video-story-groups .video-story-group{padding:1.4rem 1.2rem 1.3rem}
}

/* ---- International patients story panel: "Planning care in Chennai?" CTA,
   sitting at the bottom of the intl video-story panel. Button sits to the
   right of the text, vertically centered against it; stacks and centers
   on narrow/mobile viewports. ---- */
.intl-cta-panel{margin-top:1.6rem;padding:1.6rem 1.6rem 1.7rem;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:space-between;gap:1.6rem}
.intl-cta-content{flex:1;min-width:0}
.intl-cta-eyebrow{display:inline-flex;align-items:center;font-family:var(--ff-body);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent-dk);background:rgba(0,180,216,.08);border:1px solid rgba(0,180,216,.28);border-radius:var(--radius-pill);padding:.3rem 1rem;margin-bottom:.8rem}
.intl-cta-title{font-family:var(--ff-head);font-weight:800;font-size:1.3rem;line-height:1.3;color:var(--clr-primary-dk);margin-bottom:.6rem}
.intl-cta-text{color:var(--clr-text-muted);font-size:.95rem;line-height:1.65;margin-bottom:0}
.intl-cta-btn{flex:none;white-space:nowrap}
@media(max-width:680px){
  .intl-cta-panel{flex-direction:column;align-items:center;text-align:center}
}

/* approach */
.built-around-section{background:#fff}
.built-around-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,4vw,3.5rem);align-items:center}
.built-around-lead{font-size:1.05rem;color:var(--clr-text-muted);margin:.6rem 0 1rem}
.built-around-copy>p{color:var(--clr-text-muted)}
.built-around-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin:1.4rem 0 1rem}
.built-around-note{font-size:16px;color:var(--clr-text-muted)}
.approach-visual{position:relative;overflow:hidden;border-radius:var(--radius-xl);color:#fff;box-shadow:var(--shadow-md);display:flex;flex-direction:column}
.approach-visual-media{position:relative;line-height:0;background:#051b38}
.approach-visual-img{display:block;width:100%;height:auto}

/* process bar: solid, high-contrast, directly under the photo with no gap */
.approach-visual-footer{position:relative;background:linear-gradient(160deg,#0d3766,#051b38);padding:1.4rem 1.3rem 1.2rem;border-top:1px solid rgba(0,180,216,.3)}
.approach-mini-steps{position:relative;display:flex;justify-content:space-between;gap:.3rem}
.approach-mini-steps:before{content:"";position:absolute;left:6px;right:6px;top:17px;height:4px;border-radius:3px;z-index:0;background:linear-gradient(90deg,rgba(0,180,216,.35),rgba(0,180,216,.9) 18%,rgba(144,224,239,1) 50%,rgba(0,180,216,.9) 82%,rgba(0,180,216,.35));box-shadow:0 0 10px 1px rgba(0,180,216,.5)}
.approach-mini-steps:after{content:"";position:absolute;top:15.5px;left:19px;width:8px;height:8px;border-radius:50%;background:#fff;z-index:1;box-shadow:0 0 10px 3px rgba(144,224,239,.95);animation:approachTravel 6s ease-in-out infinite}
@keyframes approachTravel{0%{left:19px;opacity:0}8%{opacity:1}92%{opacity:1}100%{left:calc(100% - 19px);opacity:0}}

.approach-mini-step{position:relative;z-index:2;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;opacity:.62;transition:opacity .3s ease,transform .35s cubic-bezier(.22,1,.36,1)}
.approach-mini-step.is-active{opacity:1}
.approach-mini-step:hover{opacity:1;transform:translateY(-3px)}
.approach-mini-icon-wrap{position:relative;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:.4rem;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));box-shadow:0 8px 16px -6px rgba(0,180,216,.55);transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease}
.approach-mini-step.is-active .approach-mini-icon-wrap{animation:approachPulseRing 2s ease-in-out infinite}
.approach-mini-step:hover .approach-mini-icon-wrap{transform:scale(1.12)}
@keyframes approachPulseRing{0%,100%{box-shadow:0 0 0 4px rgba(0,180,216,.18),0 8px 16px -6px rgba(0,180,216,.6)}50%{box-shadow:0 0 0 9px rgba(0,180,216,.05),0 8px 16px -6px rgba(0,180,216,.85)}}
.approach-mini-icon{width:18px;height:18px;color:#fff}
.approach-mini-num{display:block;font-size:.62rem;font-weight:800;color:var(--clr-accent-lt);letter-spacing:.06em}
.approach-mini-step b{display:block;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#fff;margin-top:.1rem}

.approach-mini-caption{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1.1rem 0 0;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.92)}
.approach-mini-pulse{width:18px;height:18px;color:var(--clr-accent);flex:0 0 auto;stroke-dasharray:44;animation:approachEcg 2.4s ease-in-out infinite}
@keyframes approachEcg{0%{stroke-dashoffset:44}50%{stroke-dashoffset:0}100%{stroke-dashoffset:-44}}

@media(max-width:900px){.built-around-grid{grid-template-columns:1fr}}
@media(max-width:640px){
  .approach-visual-img{height:280px}
  .approach-mini-step b{font-size:.6rem}
}
@media(max-width:480px){
  .approach-mini-num{display:none}
  .approach-mini-step b{font-size:.56rem}
}
@media(prefers-reduced-motion:reduce){
  .approach-mini-steps:after,.approach-mini-step,.approach-mini-icon-wrap,.approach-mini-pulse{animation:none!important;transition:none!important}
}

/* recurring */
.recurring-section{background:var(--clr-bg)}
.recurring-head{max-width:100%;margin:0 auto 2rem}
.recurring-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}

/* recurring: full-width banner card */
.recurring-banner{grid-column:1/-1;position:relative;overflow:hidden;border-radius:var(--radius-lg);min-height:260px;display:flex;align-items:flex-end;background:linear-gradient(135deg,var(--clr-primary-dk),var(--clr-primary));box-shadow:var(--shadow-md);transition:box-shadow .5s ease,transform .5s cubic-bezier(.22,1,.36,1)}
.recurring-banner-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}
.recurring-banner-shade{position:absolute;inset:0;background:linear-gradient(100deg,rgba(14,47,90,.92) 0%,rgba(14,47,90,.55) 45%,rgba(0,180,216,.18) 100%)}
.recurring-banner-copy{position:relative;z-index:2;padding:2.2rem 2rem;max-width:520px}
.recurring-banner-eyebrow{display:inline-block;font-family:var(--ff-body);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--clr-accent-lt);margin-bottom:.6rem}
.recurring-banner-title{color:#fff;font-size:1.7rem;margin:0;line-height:1.25}
.recurring-banner-badge{position:absolute;z-index:2;right:1.6rem;bottom:1.6rem;display:flex;align-items:center;gap:.7rem;background:#fff;border-radius:var(--radius-md);padding:.7rem 1.1rem;box-shadow:0 14px 30px -10px rgba(14,47,90,.4);transition:transform .5s cubic-bezier(.22,1,.36,1)}
.recurring-banner-badge strong{display:block;color:var(--clr-primary-dk);font-family:var(--ff-head);font-size:.95rem}
.recurring-banner-badge span{display:block;font-size:.78rem;color:var(--clr-text-muted)}
.recurring-banner-badge-icon{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));position:relative}
.recurring-banner-badge-icon:before{content:"\2713";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:800}
.recurring-banner:hover{box-shadow:0 30px 54px -18px rgba(14,47,90,.4)}
.recurring-banner:hover .recurring-banner-img{transform:scale(1.06)}
.recurring-banner:hover .recurring-banner-badge{transform:translateY(-4px)}
@media(max-width:640px){.recurring-banner{min-height:220px;flex-direction:column;align-items:stretch}.recurring-banner-badge{position:static;margin:0 1.4rem 1.4rem;box-shadow:none;border:1px solid var(--clr-border)}.recurring-banner-copy{padding:1.6rem 1.4rem 1rem}.recurring-banner-title{font-size:1.35rem}}

/* recurring: reason cards */
.recurring-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:1.6rem 1.5rem 1.5rem;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease,border-color .5s ease}
.recurring-card:before{content:"\201C";position:absolute;top:.4rem;left:1.3rem;font-family:Georgia,serif;font-size:3rem;line-height:1;color:var(--clr-accent);opacity:.25}
.recurring-card:after{content:"";position:absolute;right:0;bottom:0;width:90px;height:90px;background-image:radial-gradient(var(--clr-accent) 1.4px,transparent 1.4px);background-size:9px 9px;-webkit-mask-image:radial-gradient(circle at 100% 100%,#000 0%,#000 35%,transparent 72%);mask-image:radial-gradient(circle at 100% 100%,#000 0%,#000 35%,transparent 72%);opacity:.18;transition:opacity .5s ease,transform .5s ease}
.recurring-card:hover{transform:translateY(-8px);box-shadow:0 22px 40px -16px rgba(0,180,216,.28),0 8px 18px rgba(26,77,143,.12);border-color:rgba(0,180,216,.35)}
.recurring-card:hover:after{opacity:.32;transform:translate(-4px,-4px)}
.recurring-card h4{margin:.4rem 0 .6rem;position:relative;z-index:1}
.recurring-card p{font-size:16px;color:var(--clr-text-muted);position:relative;z-index:1}
.recurring-card-icon{
  width:64px;height:60px;border-radius:18px;margin:0 0 1rem;
  background:linear-gradient(150deg,var(--clr-accent),var(--clr-primary));
  box-shadow:
    7px 7px 0 0 rgba(0,180,216,.22),
    14px 14px 0 0 rgba(26,77,143,.14),
    0 14px 26px -12px rgba(0,180,216,.5);
  transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease;
}
.recurring-card-icon.care-symbol-glyph b{color:#fff!important}
.recurring-card:hover .recurring-card-icon{
  transform:translateY(-4px) rotate(-6deg);
  box-shadow:
    10px 10px 0 0 rgba(0,180,216,.28),
    20px 20px 0 0 rgba(26,77,143,.18),
    0 18px 32px -12px rgba(0,180,216,.6);
}
.recurring-card-rule{display:block;width:34px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--clr-accent),var(--clr-primary));margin-bottom:.7rem;transition:width .45s cubic-bezier(.22,1,.36,1)}
.recurring-card:hover .recurring-card-rule{width:56px}
.recurring-card-arrow{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-top:1.1rem;border-radius:50%;border:1px solid rgba(0,180,216,.35);color:var(--clr-accent-dk);font-weight:700;transition:background .4s ease,color .4s ease,transform .4s cubic-bezier(.22,1,.36,1),border-color .4s ease}
.recurring-card:hover .recurring-card-arrow{background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;border-color:transparent;transform:translateX(6px)}
@media(max-width:820px){.recurring-cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  .recurring-banner-img,.recurring-banner-badge,.recurring-card,.recurring-card-icon,.recurring-card-rule,.recurring-card-arrow,.recurring-card:after{transition:none!important}
}

/* difference */
.difference-section{background:#fff}
.difference-head{max-width:720px;margin:0 auto 2rem}
.difference-head p{color:var(--clr-text-muted);margin-top:.4rem}
.difference-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;counter-reset:diffStep}

.difference-item{position:relative;overflow:hidden;counter-increment:diffStep;text-align:left;border-radius:var(--radius-lg);padding:2rem 1.9rem;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
.difference-item:hover{transform:translateY(-8px);box-shadow:0 22px 40px -18px rgba(0,180,216,.3),0 10px 20px rgba(26,77,143,.12)}
.difference-item>span{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.5rem;font-size:.68rem;font-weight:800;letter-spacing:.1em;color:var(--clr-accent-dk);background:rgba(0,180,216,.08);border:1px solid rgba(0,180,216,.25);border-radius:var(--radius-pill);padding:.3rem .85rem .3rem .3rem;margin-bottom:1.1rem}
.difference-item>span:before{content:counter(diffStep,decimal-leading-zero);display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;font-size:.6rem}
.difference-item h4{position:relative;z-index:2;margin:0 0 .6rem}
.difference-item p{position:relative;z-index:2;font-size:16px;color:var(--clr-text-muted)}
.difference-item-highlight{font-style:normal;color:var(--clr-primary);background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.difference-item-rule{position:relative;z-index:2;display:block;width:34px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--clr-accent),var(--clr-primary));margin-bottom:.8rem;transition:width .45s cubic-bezier(.22,1,.36,1)}
.difference-item:hover .difference-item-rule{width:56px}

/* hero card (item 1, full width): copy + floating visual + form teaser */
.difference-item-hero{grid-column:1/-1;display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;background:linear-gradient(160deg,#ffffff 0%,rgba(0,180,216,.05) 55%,#ffffff 100%);border:1px solid var(--clr-border)}
.difference-item-copy{position:relative;z-index:2}
.difference-item-visual{position:absolute;left:0;bottom:0;width:280px;height:200px;z-index:1;pointer-events:none;overflow:hidden;border-bottom-left-radius:var(--radius-lg)}
.difference-item-visual i{position:absolute;display:block;border-radius:50%;filter:blur(1px);transition:filter .5s ease}
.difference-item-visual i:nth-child(1){width:170px;height:170px;left:-40px;bottom:-50px;background:radial-gradient(circle at 30% 30%,rgba(0,180,216,.3),transparent 70%);animation:diffFloat 7s ease-in-out infinite}
.difference-item-visual i:nth-child(2){width:110px;height:110px;left:70px;bottom:-30px;background:radial-gradient(circle at 30% 30%,rgba(26,77,143,.24),transparent 70%);animation:diffFloat 9s ease-in-out infinite reverse}
.difference-item-visual i:nth-child(3){width:60px;height:60px;left:20px;bottom:30px;background:radial-gradient(circle at 30% 30%,rgba(0,180,216,.45),transparent 70%);animation:diffFloat 6s ease-in-out infinite}
.difference-orb{position:absolute;left:14px;bottom:18px;width:38px;height:38px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#eaf7fc 0%,var(--clr-accent) 45%,var(--clr-primary) 100%);box-shadow:0 8px 18px -4px rgba(26,77,143,.5),inset -3px -3px 6px rgba(14,47,90,.35);animation:diffFloat 5s ease-in-out infinite}
.difference-item-hero:hover .difference-item-visual i{filter:blur(.5px)}
@keyframes diffFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

.difference-hero-form{position:relative;z-index:2;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:1.5rem 1.4rem 1.4rem;box-shadow:0 20px 40px -18px rgba(26,77,143,.22);text-align:center;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
.difference-item-hero:hover .difference-hero-form{transform:translateY(-4px);box-shadow:0 26px 48px -16px rgba(26,77,143,.3)}
.difference-hero-form-eyebrow{display:block;font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--clr-accent-dk);margin-bottom:.9rem}
.difference-hero-form-icon{width:52px;height:52px;margin:0 auto .9rem;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:22px;background:linear-gradient(150deg,var(--clr-accent),var(--clr-primary));color:#fff;box-shadow:0 10px 20px -8px rgba(0,180,216,.5);animation:diffFloat 4.5s ease-in-out infinite}
.difference-hero-form-field{display:flex;align-items:center;gap:.6rem;background:var(--clr-bg);border:1px solid var(--clr-border);border-radius:10px;padding:.15rem .9rem;margin-bottom:.6rem;text-align:left;transition:border-color .3s ease,box-shadow .3s ease}
.difference-hero-form-field:focus-within,.difference-hero-form-field:hover{border-color:var(--clr-accent);box-shadow:0 0 0 3px rgba(0,180,216,.12)}
.difference-hero-form-field span{font-size:14px;color:var(--clr-accent-dk)}
.difference-hero-form-field input{flex:1;min-width:0;border:0;background:transparent;padding:.7rem 0;font-family:var(--ff-body);font-size:.9rem;color:var(--clr-text)}
.difference-hero-form-field input::placeholder{color:#93a3b5}
.difference-hero-form-field input:focus{outline:none}
.difference-hero-form-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.8rem;padding:.8rem 1rem;border:0;width:100%;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;font-family:var(--ff-body);font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s ease}
.difference-hero-form-btn:hover{transform:translateY(-2px);box-shadow:0 12px 22px -8px rgba(0,180,216,.55)}

/* dark card (item 2) */
.difference-item-dark{background:linear-gradient(150deg,var(--clr-primary-dk),var(--clr-primary));border:1px solid rgba(255,255,255,.08)}
.difference-item-dark h4{color:#fff}
.difference-item-dark p{color:rgba(255,255,255,.75)}
.difference-item-dark>span{color:var(--clr-accent-lt);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2)}
.difference-item-dark .difference-item-highlight{background:linear-gradient(90deg,var(--clr-accent-lt),#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.difference-item-dark:after{content:"";position:absolute;right:0;top:0;width:120px;height:120px;background-image:radial-gradient(rgba(255,255,255,.55) 1.4px,transparent 1.4px);background-size:10px 10px;-webkit-mask-image:radial-gradient(circle at 100% 0%,#000 0%,#000 35%,transparent 72%);mask-image:radial-gradient(circle at 100% 0%,#000 0%,#000 35%,transparent 72%);opacity:.5;transition:opacity .5s ease;z-index:1}
.difference-item-dark:hover:after{opacity:.85}
.difference-chip-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1.2rem}
.difference-chip{display:flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:.65rem .8rem;color:#fff;font-family:var(--ff-body);font-size:.85rem;font-weight:700;transition:background .35s ease,transform .35s cubic-bezier(.22,1,.36,1),border-color .35s ease}
.difference-chip-icon{width:26px;height:26px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.12);font-size:14px}
.difference-chip:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);transform:translateY(-3px)}

/* accent card (item 3) */
.difference-item-accent{background:#fff;border:1px solid rgba(0,180,216,.3)}
.difference-item-accent:after{content:"";position:absolute;right:0;bottom:0;width:100px;height:100px;background-image:radial-gradient(var(--clr-accent) 1.4px,transparent 1.4px);background-size:9px 9px;-webkit-mask-image:radial-gradient(circle at 100% 100%,#000 0%,#000 35%,transparent 72%);mask-image:radial-gradient(circle at 100% 100%,#000 0%,#000 35%,transparent 72%);opacity:.2;transition:opacity .5s ease,transform .5s ease;z-index:1}
.difference-item-accent:hover:after{opacity:.4;transform:translate(-4px,-4px)}
.difference-flow{position:relative;z-index:2;display:flex;align-items:stretch;gap:.5rem;margin-top:1.2rem}
.difference-flow-step{flex:1;min-width:0;background:var(--clr-bg);border:1px solid var(--clr-border);border-radius:12px;padding:.8rem .7rem;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
.difference-flow-step.is-active{border-color:rgba(0,180,216,.4);box-shadow:0 10px 20px -12px rgba(0,180,216,.4)}
.difference-flow-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;font-size:13px;margin-bottom:.5rem}
.difference-flow-step strong{display:block;font-family:var(--ff-head);color:var(--clr-primary-dk);font-size:.82rem;margin-bottom:.15rem}
.difference-flow-step em{display:block;font-style:normal;font-size:.72rem;color:var(--clr-text-muted)}
.difference-flow-arrow{flex:0 0 auto;align-self:center;color:var(--clr-accent-dk);font-weight:700}
.difference-item-accent:hover .difference-flow-step{transform:translateY(-3px)}

@media(max-width:820px){.difference-grid{grid-template-columns:1fr}}
@media(max-width:900px){.difference-item-hero{grid-template-columns:1fr}.difference-item-visual{display:none}}
@media(max-width:640px){.difference-flow{flex-direction:column}.difference-flow-arrow{transform:rotate(90deg);align-self:flex-start;margin-left:.9rem}.difference-chip-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  .difference-item,.difference-item-visual i,.difference-orb,.difference-hero-form-icon,.difference-hero-form,.difference-hero-form-btn,.difference-chip,.difference-flow-step,.difference-item-dark:after,.difference-item-accent:after,.difference-item-rule{transition:none!important;animation:none!important}
}

/* care-gateways (with photos) */
.care-gateways-section{background:var(--clr-bg)}
.care-gateways-head{max-width:100%;margin:0 auto 2rem}
.care-gateways-head p{color:var(--clr-text-muted);margin-top:.5rem}
.care-gateways-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.care-gateway{background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform var(--tr),box-shadow var(--tr)}
.care-gateway:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.care-gateway img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.care-gateway-body{padding:1.6rem}
.care-gateway-body h4{margin-bottom:.5rem}
.care-gateway-body p{color:var(--clr-text-muted);margin-bottom:1rem;font-size:16px}
@media(max-width:760px){.care-gateways-grid{grid-template-columns:1fr}}

/* pathway (dark) */
.pathway-section{background:linear-gradient(160deg,var(--clr-primary-dk),#0a3060);color:#fff}
.pathway-head{max-width:100%;margin:0 auto 2.5rem}
.pathway-head h2{color:#fff}
.pathway-head p{color:rgba(255,255,255,.82);margin-top:.6rem}
.pathway-flow{position:relative;isolation:isolate;display:flex;gap:.4rem;padding:2.6rem 2rem 2rem;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-lg);background:rgba(255,255,255,.03);overflow:hidden}
.pathway-flow-line{position:absolute;left:70px;right:70px;top:calc(2.6rem + 21px + 33px - 20px);height:40px;z-index:-1;pointer-events:none}
.pathway-flow:after{content:"";position:absolute;left:0;top:0;width:110px;height:110px;background-image:radial-gradient(rgba(255,255,255,.5) 1.4px,transparent 1.4px);background-size:10px 10px;-webkit-mask-image:radial-gradient(circle at 0% 0%,#000 0%,#000 35%,transparent 72%);mask-image:radial-gradient(circle at 0% 0%,#000 0%,#000 35%,transparent 72%);opacity:.4;z-index:0;pointer-events:none}
.pathway-flow-corner{position:absolute;right:0;bottom:0;width:110px;height:110px;background-image:radial-gradient(rgba(0,180,216,.6) 1.4px,transparent 1.4px);background-size:10px 10px;-webkit-mask-image:radial-gradient(circle at 100% 100%,#000 0%,#000 35%,transparent 72%);mask-image:radial-gradient(circle at 100% 100%,#000 0%,#000 35%,transparent 72%);opacity:.4;z-index:0;pointer-events:none}

.pathway-node{position:relative;z-index:2;flex:1;min-width:0;text-align:center;padding:0 .4rem;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.pathway-node:not(:last-child){border-right:1px solid rgba(255,255,255,.08)}
.pathway-node:hover{transform:translateY(-6px)}
.pathway-node-number{display:block;font-family:var(--ff-head);font-size:.72rem;font-weight:800;letter-spacing:.1em;color:var(--clr-accent-lt);margin-bottom:.5rem;opacity:.85}

.pathway-node-circle{position:relative;width:66px;height:66px;margin:0 auto .9rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,rgba(0,180,216,.3),rgba(10,48,96,.5) 72%);border:1px solid rgba(0,180,216,.45);box-shadow:0 0 0 4px rgba(0,180,216,.08),0 12px 24px -10px rgba(0,180,216,.55);transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease,border-color .45s ease}
.pathway-node-circle:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px dashed rgba(0,180,216,.35);animation:pathwaySpin 16s linear infinite}
.pathway-node-circle:after{content:"";position:absolute;top:50%;right:-8px;transform:translate(50%,-50%);width:10px;height:10px;border-radius:50%;background:var(--clr-accent);box-shadow:0 0 0 4px rgba(0,180,216,.25),0 0 14px 2px rgba(0,180,216,.85);animation:pathwayPulse 2s ease-in-out infinite;z-index:3}
.pathway-node:last-child .pathway-node-circle:after{display:none}
.pathway-node-icon{width:32px;height:32px;color:var(--clr-accent-lt);filter:drop-shadow(0 0 5px rgba(0,180,216,.6));transition:transform .45s cubic-bezier(.22,1,.36,1),color .35s ease,filter .35s ease}
.pathway-node:hover .pathway-node-circle{transform:scale(1.08);box-shadow:0 0 0 5px rgba(0,180,216,.14),0 16px 30px -10px rgba(0,180,216,.7);border-color:rgba(144,224,239,.7)}
.pathway-node:hover .pathway-node-icon{color:#fff;transform:scale(1.1);filter:drop-shadow(0 0 8px rgba(144,224,239,.9))}
@keyframes pathwaySpin{to{transform:rotate(360deg)}}
@keyframes pathwayPulse{0%,100%{opacity:.6;transform:translate(50%,-50%) scale(1)}50%{opacity:1;transform:translate(50%,-50%) scale(1.3)}}

/* per-icon flourishes */
.pathway-icon-recheck{animation:pathwaySpin 6s linear infinite}
.pathway-node:hover .pathway-icon-recheck{animation-duration:1.6s}

.pathway-node h4{color:white;margin-bottom:.4rem;transition:color .35s ease}
.pathway-node:hover h4{color:#fff}
.pathway-node p{color:rgba(255,255,255,.8);font-size:16px}
.pathway-node-rule{display:block;width:28px;height:3px;border-radius:3px;margin:.8rem auto 0;background:var(--clr-accent);transition:width .4s cubic-bezier(.22,1,.36,1),background .4s ease}
.pathway-node:nth-of-type(even) .pathway-node-rule{background:var(--clr-accent-lt)}
.pathway-node:hover .pathway-node-rule{width:46px}

.pathway-note{text-align:center;color:rgba(255,255,255,.7);font-size:16px;margin-top:1.6rem}

@media(max-width:900px){
  .pathway-flow{flex-wrap:wrap;row-gap:2.2rem}
  .pathway-flow-line{display:none}
  .pathway-flow-corner{display:none}
  .pathway-node{flex:0 0 calc(50% - .4rem)}
  .pathway-node:not(:last-child){border-right:none}
  .pathway-node-circle:after{display:none}
}
@media(max-width:520px){
  .pathway-flow{padding:2.2rem 1.4rem 1.6rem}
  .pathway-node{flex:0 0 100%}
}
@media(prefers-reduced-motion:reduce){
  .pathway-node-circle:before,.pathway-node-circle:after,.pathway-node,.pathway-node-circle,.pathway-node-rule,.pathway-node-icon,.pathway-icon-recheck{animation:none!important;transition:none!important}
}

/* methods */
.methods-section{background:#fff}
.methods-inner{max-width:100%;margin:0 auto}
.methods-inner h4{margin-bottom:.6rem}
.methods-inner p{color:var(--clr-text-muted);margin-bottom:1rem}

.methods-techniques{max-width:900px;margin:1.6rem auto 1.8rem;text-align:center}
.methods-techniques-eyebrow{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent-dk);margin-bottom:1.1rem}
.technique-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;text-align:left}
.technique-chip{position:relative;overflow:hidden;display:flex;align-items:center;gap:.9rem;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:.85rem 1.1rem;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
.technique-chip:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,180,216,.1),transparent 65%);transform:translateX(-100%);transition:transform .5s ease;z-index:0}
.technique-chip:hover:before{transform:translateX(0)}
.technique-chip:hover{transform:translateY(-4px);border-color:rgba(0,180,216,.4);box-shadow:0 16px 28px -16px rgba(0,180,216,.4)}
.technique-chip-icon{position:relative;z-index:1;flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));box-shadow:0 8px 16px -8px rgba(0,180,216,.5);transition:transform .4s cubic-bezier(.22,1,.36,1);animation:techniqueGlow 3s ease-in-out infinite}
.technique-chip-icon svg{width:16px;height:16px;color:#fff}
.technique-chip:hover .technique-chip-icon{transform:rotate(-8deg) scale(1.12)}
.technique-chip>span:last-child{position:relative;z-index:1;font-family:var(--ff-head);font-weight:700;color:var(--clr-primary-dk);font-size:.95rem;transition:color .35s ease}
.technique-chip:hover>span:last-child{color:var(--clr-accent-dk)}
@keyframes techniqueGlow{0%,100%{box-shadow:0 8px 16px -8px rgba(0,180,216,.5)}50%{box-shadow:0 8px 20px -6px rgba(0,180,216,.85)}}
.technique-chip:nth-child(2) .technique-chip-icon{animation-delay:.3s}
.technique-chip:nth-child(3) .technique-chip-icon{animation-delay:.6s}
.technique-chip:nth-child(4) .technique-chip-icon{animation-delay:.9s}
.technique-chip:nth-child(5) .technique-chip-icon{animation-delay:1.2s}
.technique-chip:nth-child(6) .technique-chip-icon{animation-delay:1.5s}
.technique-chip:nth-child(7) .technique-chip-icon{animation-delay:1.8s}
.technique-chip:nth-child(8) .technique-chip-icon{animation-delay:2.1s}
.technique-chip:nth-child(9) .technique-chip-icon{animation-delay:2.4s}
.technique-chip:nth-child(10) .technique-chip-icon{animation-delay:2.7s}
@media(max-width:640px){.technique-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  .technique-chip,.technique-chip-icon,.technique-chip:before{animation:none!important;transition:none!important}
}

/* first-visit */
.first-visit-section{background:var(--clr-bg)}
.first-visit-box{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--clr-primary-dk),var(--clr-accent-dk));border-radius:var(--radius-xl);padding:clamp(1.6rem,4vw,3rem);display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(1.6rem,4vw,3rem);align-items:center;box-shadow:var(--shadow-md)}
.first-visit-copy{color:#fff}
.first-visit-eyebrow{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);color:var(--clr-accent-lt)}
.first-visit-copy h3{color:#fff}
.first-visit-copy p{color:rgba(255,255,255,.85);margin:.8rem 0 1.4rem;font-size:.98rem}

.first-visit-panel{background:#fff;border-radius:var(--radius-lg);padding:1.6rem 1.7rem;box-shadow:0 20px 40px -18px rgba(4,20,42,.4);transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
.first-visit-panel:hover{transform:translateY(-4px);box-shadow:0 26px 50px -16px rgba(4,20,42,.5)}
.first-visit-panel h3{font-size:1.15rem}
.first-visit-list{list-style:none;display:grid}
.first-visit-list li{display:flex;align-items:flex-start;gap:.9rem;padding:.85rem 0;border-bottom:1px solid var(--clr-border);transition:transform .35s cubic-bezier(.22,1,.36,1),padding-left .35s ease}
.first-visit-list li:last-child{border-bottom:none;padding-bottom:0}
.first-visit-list li:first-child{padding-top:0}
.first-visit-list li:hover{padding-left:.35rem;background:linear-gradient(90deg,rgba(0,180,216,.06),transparent)}
.first-visit-num{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));font-family:var(--ff-head);font-weight:800;font-size:.72rem;box-shadow:0 6px 14px -6px rgba(0,180,216,.6);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.first-visit-list .first-visit-num{color:#fff}
.first-visit-list li:hover .first-visit-num{transform:scale(1.12) rotate(-6deg)}
.first-visit-list strong{display:block;color:var(--clr-primary-dk);font-family:var(--ff-head);font-size:1.02rem}
.first-visit-list span{font-size:.86rem;color:var(--clr-text-muted)}

@media(max-width:820px){.first-visit-box{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  .first-visit-panel,.first-visit-list li,.first-visit-num{transition:none!important}
}

/* conditions */
.conditions-section{background:#fff}
.conditions-head{max-width:100%;margin:0 auto 2rem}
.conditions-head p{color:var(--clr-text-muted);margin-top:.5rem}
.conditions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.condition-card{text-align: center;background:var(--clr-bg);border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:1.5rem;transition:transform var(--tr),box-shadow var(--tr)}
.condition-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--clr-accent)}
.condition-card h5{margin-bottom:.4rem}
.condition-card p{font-size:16px;color:var(--clr-text-muted)}
@media(max-width:820px){.conditions-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.conditions-grid{grid-template-columns:1fr}}

/* services (dark, clean cards) */
body .services-section{background:var(--clr-primary-dk);color:#fff}
.services-head{max-width:100%;margin:0 auto 2.5rem}
.services-head h3{color:#fff}
.services-head p{color:rgba(255,255,255,.82);margin-top:.6rem}
.services-head .imt-name{color:var(--clr-accent-lt)}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
body .service-card{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg);padding:1.5rem;text-decoration:none;color:#fff;transition:background .4s ease,transform .45s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
.service-card:hover{background:rgba(255,255,255,.1);transform:translateY(-6px);border-color:rgba(0,180,216,.4);box-shadow:0 20px 38px -18px rgba(0,180,216,.35)}
.services-grid>.service-card:last-child{grid-column:span 2}
.service-card small{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--clr-accent-lt)}
.service-card h4{color:#fff;margin:.5rem 0}
body .service-card p{color:rgba(255,255,255,.78);font-size:16px;margin-bottom:.6rem}
.service-card .service-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--clr-accent-lt);font-weight:700;font-size:.84rem;transition:gap .3s ease,color .3s ease}
.service-card:hover .service-link{gap:.55rem;color:#fff}
.services-promise{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;margin-top:2rem;color:rgba(255,255,255,.85);font-family:var(--ff-head);font-size:12px}

/* core-approach: full-width hero row with animated visual */
.service-card.service-card-core{grid-column:1/-1;background:linear-gradient(120deg,var(--clr-accent-dk),var(--clr-primary) 65%);display:flex;align-items:center;justify-content:space-between;gap:2rem;overflow:hidden;min-height:190px}
.service-card-core-copy{max-width:480px;position:relative;z-index:2}
.service-card-core-visual{position:relative;flex:0 0 auto;width:220px;height:190px}
.service-hub-svg{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.hub-ring{fill:none;stroke:rgba(144,224,239,.28);stroke-width:1;stroke-dasharray:2 6;transform-origin:110px 95px;animation:hubRotate 40s linear infinite}
@keyframes hubRotate{to{transform:rotate(360deg)}}
.hub-spoke{stroke:rgba(144,224,239,.55);stroke-width:1.5;stroke-dasharray:4 5;animation:hubFlow 1.3s linear infinite}
@keyframes hubFlow{to{stroke-dashoffset:-18}}
.hub-node{fill:#fff;filter:drop-shadow(0 0 5px rgba(144,224,239,.9));animation:hubNodePulse 2.4s ease-in-out infinite}
.hub-node:nth-of-type(2){animation-delay:.2s}
.hub-node:nth-of-type(3){animation-delay:.4s}
.hub-node:nth-of-type(4){animation-delay:.6s}
.hub-node:nth-of-type(5){animation-delay:.8s}
@keyframes hubNodePulse{0%,100%{opacity:.55;r:4}50%{opacity:1;r:5.4}}

.service-orbit{position:absolute;z-index:1;border-radius:50%;border:1px solid rgba(144,224,239,.35);left:50%;top:50%;transform:translate(-50%,-50%)}
.service-orbit-1{width:70px;height:70px;animation:serviceOrbitPulse 3.2s ease-out infinite}
.service-orbit-2{width:120px;height:120px;animation:serviceOrbitPulse 3.2s ease-out infinite .8s}
.service-orbit-3{width:170px;height:170px;animation:serviceOrbitPulse 3.2s ease-out infinite 1.6s}
@keyframes serviceOrbitPulse{0%{opacity:.85;transform:translate(-50%,-50%) scale(.7)}80%{opacity:0}100%{opacity:0;transform:translate(-50%,-50%) scale(1.15)}}

.service-core-node{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%) scale(1);width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--ff-head);font-weight:800;font-size:.7rem;letter-spacing:.06em;color:#fff;background:radial-gradient(circle at 35% 30%,var(--clr-accent-lt),var(--clr-accent) 55%,var(--clr-accent-dk) 100%);box-shadow:0 0 0 6px rgba(144,224,239,.12),0 10px 26px -8px rgba(0,180,216,.7);animation:serviceCoreBreathe 3s ease-in-out infinite}
@keyframes serviceCoreBreathe{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.08)}}
.service-card.service-card-core:hover .service-core-node{transform:translate(-50%,-50%) scale(1.16)}

@media(max-width:900px){
  .services-grid{grid-template-columns:1fr 1fr}
  .service-card.service-card-core{flex-direction:column;text-align:center;min-height:auto;padding-bottom:1.8rem}
  .service-card-core-copy{max-width:100%}
}
@media(max-width:520px){.services-grid{grid-template-columns:1fr}.services-grid>.service-card:last-child{grid-column:span 1}}
@media(prefers-reduced-motion:reduce){
  .service-orbit,.hub-ring,.hub-spoke,.hub-node,.service-core-node,.service-card{animation:none!important;transition:none!important}
}

/* founder (with photo) */
.founder-section{background:#fff}
.founder-head{max-width:720px;margin:0 auto 2.5rem}
.founder-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,4vw,3rem);align-items:center}
.founder-visual{position:relative;border-radius:var(--radius-xl);overflow:hidden;min-height:420px;box-shadow:var(--shadow-lg)}
.founder-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.founder-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(3,24,48,.88))}
.founder-caption{position:absolute;left:1.5rem;right:1.5rem;bottom:1.5rem;z-index:2;color:#fff}
.founder-caption span{font-size:12px;letter-spacing:.12em;color:var(--clr-accent-lt);font-weight:700}
.founder-caption strong{display:block;font-family:var(--ff-head);font-size:1.4rem;margin:.3rem 0}
.founder-caption small{color:rgba(255,255,255,.8);font-size:12px;}
.founder-copy>p{color:var(--clr-text-muted);margin:.6rem 0}
.founder-stats{display:flex;gap:1.5rem;margin-top:1.2rem;border-top:1px solid var(--clr-border);padding-top:1.2rem;justify-content: space-between;}
.founder-stats span{display:flex;flex-direction:column}
.founder-stats strong{font-family:var(--ff-head);font-size:1.6rem;color:var(--clr-primary)}
.founder-stats small{color:var(--clr-text-muted);font-size:.78rem}

.founder-credentials{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:1.3rem;text-align:left}
.credential-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:1rem 1.1rem 1.1rem;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
.credential-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--clr-accent),var(--clr-primary));transform:scaleY(0);transform-origin:top;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.credential-card:hover:before{transform:scaleY(1)}
.credential-card:hover{transform:translateY(-4px);border-color:rgba(0,180,216,.35);box-shadow:0 16px 30px -18px rgba(0,180,216,.4)}
.credential-icon{position:absolute;right:.9rem;top:.9rem;width:20px;height:20px;color:rgba(0,180,216,.35);transition:transform .45s cubic-bezier(.22,1,.36,1),color .35s ease}
.credential-card:hover .credential-icon{transform:translateY(-2px) rotate(-8deg);color:var(--clr-accent)}
.credential-card strong{display:block;font-family:var(--ff-head);font-size:1.25rem;color:var(--clr-primary-dk);letter-spacing:.02em}
.credential-card small{display:block;margin-top:.2rem;color:var(--clr-text-muted);font-size:.82rem}

@media(max-width:820px){.founder-grid{grid-template-columns:1fr}.founder-visual{min-height:340px}}
@media(max-width:420px){.founder-credentials{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  .credential-card,.credential-card:before,.credential-icon{transition:none!important}
}

/* manuthera (with photo, dark) */
.manuthera-section{background:var(--clr-primary-dk);color:#fff}
.manuthera-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,3rem);align-items:center}
.manuthera-visual{order:2;border-radius:var(--radius-xl);overflow:hidden;min-height:450px;position:relative;box-shadow:var(--shadow-lg)}
.manuthera-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.manuthera-label{display:inline-flex;align-items:center;gap:.5rem;background:rgba(0,180,216,.15);border:1px solid var(--clr-accent);color:var(--clr-accent-lt);padding:.4rem 1rem;border-radius:var(--radius-pill);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem}
.manuthera-copy{order:1;}
.manuthera-copy h2{color:#fff;margin-bottom:1rem}
.manuthera-copy>p{color:rgba(255,255,255,.85);margin-bottom:1rem}
.manuthera-list{list-style:none;display:grid;gap:.6rem;margin-bottom:1.4rem}
.manuthera-list li{padding-left:1.5rem;position:relative;color:rgba(255,255,255,.9);font-size:16px}
.manuthera-list li::before{content:"\2713";position:absolute;left:0;color:var(--clr-accent-lt);font-weight:800}
.light-link{color:var(--clr-accent-lt)}
@media(max-width:820px){.manuthera-grid{grid-template-columns:1fr}}

/* clinic (photos) */
.clinic-section{background:#fff}
.clinic-head{max-width:100%;margin:0 auto 2rem}
.clinic-head p{color:var(--clr-text-muted);margin-top:.5rem}
.clinic-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.clinic-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;min-height:360px;margin:0;box-shadow:var(--shadow-sm)}
.clinic-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.clinic-card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(3,23,47,.9))}
.clinic-card figcaption{position:absolute;left:1.3rem;right:1.3rem;bottom:1.3rem;z-index:2;color:#fff}
.clinic-card figcaption small{color:var(--clr-accent-lt);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.clinic-card figcaption h6{display:block;font-family:var(--ff-head);font-size:1.2rem;margin:.3rem 0}
.clinic-card figcaption p{color:rgba(255,255,255,.85);font-size:16px}
@media(max-width:820px){.clinic-gallery{grid-template-columns:1fr}}

/* faq */
.faq-section{background:var(--clr-bg)}
.faq-header{text-align:center;max-width:640px;margin:0 auto clamp(2rem,4vw,3rem)}
.faq-header h4{margin-bottom:.8rem}
.faq-header p{color:var(--clr-text-muted);margin-bottom:1.2rem}
.faq-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,3vw,2rem);align-items:start}
.faq-list details{background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-md);margin-bottom:.7rem;overflow:hidden}
.faq-list details[open]{border-color:var(--clr-accent);box-shadow:var(--shadow-sm)}
.faq-list summary{list-style:none;cursor:pointer;padding:1rem 1.2rem;display:flex;align-items:center;gap:.8rem;font-family:var(--ff-head);font-weight:700;color:var(--clr-primary-dk)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{font-size:.8rem;color:var(--clr-accent);font-weight:800}
.faq-list summary i{margin-left:auto;width:24px;height:24px;border-radius:50%;background:var(--clr-bg);display:flex;align-items:center;justify-content:center;transition:transform var(--tr);flex-shrink:0}
.faq-list summary i::before{content:"+";color:var(--clr-primary)}
.faq-list details[open] summary i{transform:rotate(45deg);background:var(--clr-accent)}
.faq-list details[open] summary i::before{color:#fff}
.faq-list details p{padding:0 1.2rem 1.1rem;color:var(--clr-text-muted);font-size:16px}
@media(max-width:820px){.faq-columns{grid-template-columns:1fr}}

/* editorial title helper */
.editorial-title{font-weight:800}
.pain-check-intro {order: 2;}
.pain-check-card { order: 1;}
@media(max-width:820px){.pain-check-intro{order: 1;}}
@media(max-width:820px){.text-m-center{text-align:center;justify-content: center;}}
.text-blue{background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));-webkit-background-clip:text;background-clip:text;color:transparent;}
/* ============================================================
   AI CHATBOT (ported from the current live site's self-hosted
   SFBot, restyled to match this site's tokens)
   ============================================================ */
body .chatbot-launcher{position:fixed;bottom:20px;left:20px;z-index:950;display:flex;flex-direction:column;align-items:flex-start;gap:.9rem}
.chatbot-bubble{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));box-shadow:0 8px 32px rgba(26,77,143,.4);display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);animation:2.5s cubic-bezier(.35,0,.25,1) infinite sfChatPulse;border:none}
.chatbot-bubble:hover{transform:scale(1.08);box-shadow:0 12px 40px rgba(26,77,143,.5)}
.chatbot-bubble.open{animation:none;background:linear-gradient(135deg,var(--clr-danger),#c0392b)}
@keyframes sfChatPulse{0%{box-shadow:0 0 0 0 rgba(0,180,216,.5)}70%{box-shadow:0 0 0 16px rgba(0,180,216,0)}100%{box-shadow:0 0 0 0 rgba(0,180,216,0)}}
body .chatbot-window{position:fixed;bottom:96px;left:20px;z-index:950;width:368px;max-height:520px;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--clr-border);display:flex;flex-direction:column;overflow:hidden;transform:scale(.85) translateY(20px);transform-origin:bottom left;opacity:0;pointer-events:none;transition:transform var(--transition),opacity var(--transition)}
.chatbot-window.open{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}
.chatbot-header{background:linear-gradient(135deg,var(--clr-primary-dk),var(--clr-primary));padding:1.1rem 1.3rem;display:flex;align-items:center;gap:.85rem;flex-shrink:0}
.chatbot-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}
.chatbot-header-info h4{font-size:.9rem;font-weight:700;color:#fff;margin:0}
.chatbot-header-info p{font-size:.75rem;color:rgba(255,255,255,.65);display:flex;align-items:center;gap:.35rem;margin:.15rem 0 0}
.chatbot-header-info p::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--clr-ok);flex-shrink:0;animation:1.8s ease-in-out infinite sfChatBlink}
@keyframes sfChatBlink{0%,100%{opacity:1}50%{opacity:.3}}
.chatbot-close{margin-left:auto;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.85rem;transition:background var(--transition-fast);border:none;cursor:pointer;line-height:1}
.chatbot-close:hover{background:rgba(255,255,255,.25)}
.chatbot-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.85rem;scroll-behavior:smooth;min-height:220px}
.chatbot-messages::-webkit-scrollbar{width:4px}
.chatbot-messages::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:4px}
.chat-msg{display:flex;gap:.6rem;animation:.3s cubic-bezier(.4,0,.2,1) sfMsgSlideIn}
@keyframes sfMsgSlideIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.chat-msg-bot{align-self:flex-start;max-width:88%}
.chat-msg-user{align-self:flex-end;flex-direction:row-reverse;max-width:80%}
.chat-msg-bubble{padding:.7rem 1rem;border-radius:var(--radius-md);font-size:.86rem;line-height:1.55}
.chat-msg-bot .chat-msg-bubble{background:var(--clr-bg);color:var(--clr-text);border-radius:4px var(--radius-md) var(--radius-md) var(--radius-md)}
.chat-msg-user .chat-msg-bubble{background:var(--clr-primary);color:#fff;border-radius:var(--radius-md) 4px var(--radius-md) var(--radius-md)}
.chat-msg-bubble strong{color:inherit}
.chat-msg-time{font-size:.66rem;color:var(--clr-text-muted);margin-top:.3rem;text-align:right}
.chat-msg-bot .chat-msg-time{text-align:left}
.chat-typing{display:flex;gap:4px;padding:.7rem 1rem;background:var(--clr-bg);border-radius:4px var(--radius-md) var(--radius-md) var(--radius-md);align-self:flex-start}
.chat-typing span{width:7px;height:7px;border-radius:50%;background:var(--clr-text-muted);opacity:.6;animation:1.2s ease-in-out infinite sfTypingDot}
.chat-typing span:nth-child(2){animation-delay:.2s}
.chat-typing span:nth-child(3){animation-delay:.4s}
@keyframes sfTypingDot{0%,100%,60%{transform:translateY(0);opacity:.4}30%{transform:translateY(-5px);opacity:1}}
.chatbot-quick-replies{display:flex;flex-wrap:wrap;gap:.5rem;padding:.6rem 1rem;border-top:1px solid var(--clr-border);flex-shrink:0}
.quick-reply{padding:.38rem .85rem;border:1.5px solid var(--clr-border);border-radius:var(--radius-pill);font-size:.76rem;font-weight:600;color:var(--clr-primary);background:#fff;cursor:pointer;transition:all var(--transition-fast)}
.quick-reply:hover{background:var(--clr-primary);color:#fff;border-color:var(--clr-primary)}
.chatbot-input-row{display:flex;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--clr-border);flex-shrink:0}
.chatbot-input{flex:1;border:1.5px solid var(--clr-border);border-radius:var(--radius-pill);padding:.6rem 1rem;font-size:.88rem;color:var(--clr-text);outline:0;transition:border-color var(--transition-fast);background:var(--clr-bg)}
.chatbot-input:focus{border-color:var(--clr-accent);background:#fff}
.chatbot-send{width:40px;height:40px;border-radius:50%;background:var(--clr-primary);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast),transform var(--transition-fast);border:none;cursor:pointer}
.chatbot-send:hover{background:var(--clr-accent-dk);transform:scale(1.08)}
@media(max-width:980px){body .chatbot-launcher{left:auto;right:15px;bottom:78px}body .chatbot-window{left:auto;right:15px;bottom:150px;transform-origin:bottom right}}
@media(max-width:760px){body .chatbot-launcher{bottom:84px}body .chatbot-window{bottom:156px}}
@media(max-width:520px){body .chatbot-window{width:calc(100vw - 1.5rem);right:.75rem;bottom:156px;max-height:60vh}}

/* ---- Condition / Service cards: corner icon badge + number (matches care-fit-reasons pattern) ---- */
.condition-card{position:relative;overflow:hidden;padding-top:3.6rem}
.condition-card .care-symbol{position:absolute;left:14px;top:14px;width:48px;height:48px;border-radius:14px;margin:0}
.condition-card>span{position:absolute;right:16px;top:16px;font-family:var(--ff-head);font-size:1.3rem;font-weight:800;color:var(--clr-accent);z-index:2}
.condition-card h5,.condition-card p{position:relative;z-index:1;padding-top:10px;}
.condition-card .care-symbol-glyph b{font-size:20px}
.cond-icon{display:flex;align-items:center;justify-content:center}
.cond-icon svg{width:22px;height:22px;color:#0a64e8}

body .service-card{position:relative;overflow:hidden;padding-top:3.6rem}
.service-card .care-symbol{position:absolute;left:14px;top:14px;width:48px;height:44px;border-radius:14px;margin:0}
.service-card>span.card-index{position:absolute;right:18px;top:16px;font-family:var(--ff-head);font-size:1.3rem;font-weight:800;color:var(--clr-accent-lt);z-index:2}
.service-card .care-symbol-glyph b{font-size:20px}
.service-card.service-card-core{padding-top:1.5rem}

/* ============================================================
   EXPLORE CARE CAROUSEL - new standalone section, fully namespaced
   under .explore- so nothing here touches the existing dark
   .services-grid section above it.
   ============================================================ */
.explore-section{background:linear-gradient(180deg,#fff,var(--clr-bg))}
.explore-head{max-width:720px;margin:0 auto 2.5rem}
.explore-carousel{position:relative;display:flex;align-items:center;gap:1rem}
.explore-rail{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,300px);gap:1.3rem;overflow-x:auto;padding:.6rem .1rem 1.3rem;scroll-snap-type:x mandatory;scrollbar-width:none;perspective:1000px}
.explore-rail::-webkit-scrollbar{display:none}

.explore-card{--sx:50%;--sy:0%;--acc1:var(--clr-accent);--acc2:var(--clr-primary);position:relative;display:block;background:#fff;border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:1.8rem 1.6rem 1.7rem;text-decoration:none;color:var(--clr-text);box-shadow:var(--shadow-sm);scroll-snap-align:start;overflow:hidden;opacity:0;transform:translateY(30px) scale(.96);transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .45s ease,border-color .45s ease}
.explore-rail.in-view .explore-card{animation:exploreCardIn .7s cubic-bezier(.22,1,.36,1) forwards}
@keyframes exploreCardIn{to{opacity:1;transform:translateY(0) scale(1)}}
.explore-card::before{content:"";position:absolute;inset:0;z-index:0;opacity:0;background:radial-gradient(220px circle at var(--sx) var(--sy),rgba(0,180,216,.14),transparent 70%);transition:opacity .4s ease}
.explore-card::after{content:"";position:absolute;left:1.6rem;right:1.6rem;bottom:0;height:3px;border-radius:3px 3px 0 0;background:linear-gradient(90deg,var(--acc1),var(--acc2));transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.explore-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 26px 46px -20px rgba(14,47,90,.28);border-color:transparent}
.explore-card:hover::before{opacity:1}
.explore-card:hover::after{transform:scaleX(1)}
.explore-watermark{position:absolute;top:-.4rem;right:.4rem;z-index:0;font-family:var(--ff-head);font-weight:800;font-size:4.6rem;line-height:1;color:var(--clr-bg);-webkit-text-stroke:1px rgba(14,47,90,.06);transition:transform .5s cubic-bezier(.22,1,.36,1),color .4s ease}
.explore-card:hover .explore-watermark{transform:translateY(-4px) scale(1.06);color:rgba(0,180,216,.1)}
.explore-icon{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;margin-bottom:1rem;color:#fff;background:linear-gradient(135deg,var(--acc1),var(--acc2));box-shadow:0 10px 22px -8px rgba(14,47,90,.4);transition:transform .45s cubic-bezier(.34,1.6,.64,1),box-shadow .4s ease}
.explore-icon svg{width:24px;height:24px}
.explore-card:hover .explore-icon{transform:rotate(-8deg) scale(1.12);box-shadow:0 14px 30px -8px rgba(14,47,90,.5)}
.explore-card h4{position:relative;z-index:1;margin:.2rem 0 .5rem;color:var(--clr-primary-dk);font-size:1.14rem;line-height:1.3}
.explore-card p{position:relative;z-index:1;color:var(--clr-text-muted);font-size:.92rem;line-height:1.55;margin-bottom:.8rem}
.explore-link{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.32rem;font-weight:700;font-size:.85rem;color:var(--clr-accent-dk);transition:gap .3s ease}
.explore-card:hover .explore-link{gap:.55rem}

.explore-rail>a:nth-of-type(2){--acc1:var(--clr-accent);--acc2:var(--clr-primary)}
.explore-rail>a:nth-of-type(3){--acc1:var(--clr-primary);--acc2:var(--clr-teal)}
.explore-rail>a:nth-of-type(4){--acc1:var(--clr-teal);--acc2:var(--clr-accent-dk)}
.explore-rail>a:nth-of-type(5){--acc1:var(--clr-accent-dk);--acc2:var(--clr-primary-dk)}
.explore-rail>a:nth-of-type(6){--acc1:var(--clr-primary-dk);--acc2:var(--clr-accent)}
.explore-rail>a:nth-of-type(7){--acc1:var(--clr-accent);--acc2:var(--clr-teal)}
.explore-rail>a:nth-of-type(8){--acc1:var(--clr-teal);--acc2:var(--clr-primary)}

.explore-card-core{background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));border:none;overflow:hidden}
.explore-card-core::after{display:none}
.explore-card-core small{position:relative;z-index:1;display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.85);margin-bottom:.6rem}
.explore-card-core h4{position:relative;z-index:1;color:#fff}
.explore-card-core p{position:relative;z-index:1;color:rgba(255,255,255,.88)}
.explore-card-core .explore-link{position:relative;z-index:1;color:#fff}
.explore-card-core:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 30px 54px -18px rgba(0,180,216,.5)}
.explore-card-glow{position:absolute;top:-30%;right:-20%;width:170px;height:170px;background:radial-gradient(circle,rgba(255,255,255,.4),transparent 70%);border-radius:50%;animation:exploreGlowPulse 3.4s ease-in-out infinite;z-index:0}
@keyframes exploreGlowPulse{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.18)}}
.explore-core-ring{position:absolute;z-index:0;width:260px;height:260px;left:50%;bottom:-140px;transform:translateX(-50%);border-radius:50%;background:conic-gradient(from 0deg,rgba(255,255,255,.28),transparent 30%,rgba(255,255,255,.16) 60%,transparent 90%);animation:exploreRingSpin 14s linear infinite;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 2px))}
@keyframes exploreRingSpin{to{transform:translateX(-50%) rotate(360deg)}}

.explore-arrow{flex:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--clr-border);background:#fff;color:var(--clr-primary-dk);display:flex;align-items:center;justify-content:center;font-size:.9rem;box-shadow:var(--shadow-sm);transition:background var(--tr),color var(--tr),border-color var(--tr),opacity var(--tr),transform var(--tr)}
.explore-arrow:hover{background:var(--clr-primary-dk);color:#fff;border-color:var(--clr-primary-dk)}
.explore-arrow:active{transform:scale(.94)}
.explore-arrow[disabled]{opacity:.35;cursor:default;pointer-events:none}
.explore-dots{display:none;align-items:center;justify-content:center;gap:.5rem;margin-top:.3rem}
.explore-dot{width:8px;height:8px;padding:0;border:none;border-radius:var(--radius-pill);background:var(--clr-border);cursor:pointer;transition:width var(--tr),background var(--tr)}
.explore-dot:hover{background:var(--clr-accent-lt)}
.explore-dot.is-active{width:24px;background:var(--clr-primary-dk)}
.explore-swipe-hint{display:none;text-align:center;font-family:var(--ff-head);font-size:.78rem;font-weight:700;color:var(--clr-text-muted);margin-top:.6rem}

@media(max-width:900px){
  .explore-dots{display:flex}
  .explore-swipe-hint{display:block}
}
@media(max-width:768px){
  .explore-carousel{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"rail rail" "prev next";column-gap:.75rem;row-gap:.7rem}
  .explore-rail{grid-area:rail}
  .explore-arrow-prev{grid-area:prev;justify-self:end}
  .explore-arrow-next{grid-area:next;justify-self:start}
}
@media(max-width:520px){.explore-rail{grid-auto-columns:minmax(230px,84%)}}
@media(prefers-reduced-motion:reduce){
  .explore-card,.explore-card-glow,.explore-core-ring,.explore-icon,.explore-watermark{animation:none!important;transition:none!important}
  .explore-rail .explore-card{opacity:1;transform:none}
}

/* ============================================================
   POPUP APPOINTMENT FORM ("Book Your First Visit")
   Ported as-is from the original Sport-Fit site's popup form.
   Namespaced under .apf- so it cannot collide with any other
   styles on this page. Uses this site's existing --clr-* tokens.
   ============================================================ */
.apf-overlay{position:fixed;inset:0;background:rgba(10,25,50,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:998;opacity:0;pointer-events:none;transition:opacity .35s}.apf-overlay.apf-open{opacity:1;pointer-events:auto}.apf-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-46%) scale(.96);z-index:999;width:min(900px,96vw);max-height:92vh;display:grid;grid-template-columns:1fr 1.35fr;border-radius:20px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.45);opacity:0;pointer-events:none;transition:opacity .38s,transform .38s cubic-bezier(.34,1.3,.64,1)}.apf-modal.apf-open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.apf-close{position:absolute;top:12px;right:14px;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.35);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:background .2s,transform .2s;backdrop-filter:blur(6px)}.apf-close:hover{background:rgba(0,0,0,.98);transform:rotate(90deg)}.apf-left{background:linear-gradient(145deg,var(--clr-primary-dk) 0,var(--clr-primary) 60%,var(--clr-accent-dk) 100%);padding:44px 32px;color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column}.apf-left-inner{position:relative;z-index:2}.apf-brand-icon{width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;margin-bottom:22px;color:#fff;backdrop-filter:blur(6px)}.apf-left-title{margin-bottom:12px;color:#fff}.apf-left-title em{font-style:italic;color:var(--clr-accent-lt)}.apf-left-sub{font-size:13px;color:rgba(255,255,255,.72);line-height:1.6;margin-bottom:15px}.apf-features{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}.apf-feature{display:flex;align-items:center;gap:10px;font-size:13px;color:rgba(255,255,255,.88);font-weight:500}.apf-feat-dot{width:7px;height:7px;border-radius:50%;background:var(--clr-accent);flex-shrink:0;box-shadow:0 0 8px rgba(0,180,216,.6)}.apf-rating{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}.apf-stars{color:#ffc107;font-size:16px;letter-spacing:2px}.apf-rating-text{font-size:11px;color:rgba(255,255,255,.55)}.apf-deco{position:absolute;border-radius:50%;pointer-events:none}.apf-deco-1{width:220px;height:220px;right:-60px;top:-60px;background:rgba(255,255,255,.06);z-index:1}.apf-deco-2{width:160px;height:160px;right:-20px;bottom:40px;background:rgba(0,180,216,.12);z-index:1}.apf-right{background:#fff;padding:36px 32px 28px;overflow-y:auto;max-height:98vh}.apf-right::-webkit-scrollbar{width:4px}.apf-right::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:4px}.apf-form-eyebrow{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-accent);margin-bottom:5px}.apf-form-title{color:var(--clr-primary-dk);margin-bottom:4px}.apf-form-sub{color:var(--clr-text-muted);margin-bottom:22px}.apf-form{display:flex;flex-direction:column;gap:14px}.apf-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.apf-field{display:flex;flex-direction:column;gap:5px}.apf-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--clr-text-muted)}.apf-label span{color:var(--clr-accent)}.apf-input-wrap{position:relative;display:flex;align-items:center}.apf-input-wrap>svg:first-child{position:absolute;left:12px;color:var(--clr-text-muted);pointer-events:none;flex-shrink:0}.apf-input-wrap input,.apf-input-wrap select,.apf-input-wrap textarea{width:100%;padding:10px 12px 10px 36px;border:1.5px solid var(--clr-border);border-radius:10px;font-family:var(--ff-body);font-size:13px;color:var(--clr-text);background:var(--clr-bg);outline:0;transition:border-color .2s,box-shadow .2s,background .2s;appearance:none;-webkit-appearance:none}.apf-input-wrap input:focus,.apf-input-wrap select:focus,.apf-input-wrap textarea:focus{border-color:var(--clr-accent);box-shadow:0 0 0 3px rgba(0,180,216,.13);background:#fff}.apf-input-wrap input::placeholder,.apf-input-wrap textarea::placeholder{color:rgba(90,120,150,.45)}.apf-select-wrap{position:relative}.apf-select-wrap select{cursor:pointer;padding-right:32px}.apf-chevron{position:absolute;right:10px;color:var(--clr-text-muted);pointer-events:none}.apf-textarea-wrap textarea{padding-top:10px;resize:vertical;min-height:72px;line-height:1.5}.apf-captcha{transform:scale(.88)}.apf-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 20px;background:linear-gradient(135deg,var(--clr-accent),var(--clr-primary));color:#fff;font-family:var(--ff-body);font-size:15px;font-weight:700;border:none;border-radius:12px;cursor:pointer;box-shadow:0 6px 22px rgba(0,180,216,.4);transition:transform .22s,box-shadow .22s,filter .22s;margin-top:4px}.apf-submit:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,180,216,.5);filter:brightness(1.06)}.apf-submit:active{transform:translateY(0)}.apf-privacy{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;color:var(--clr-text-muted);margin-top:2px;text-align:center}.apf-privacy svg{flex-shrink:0;color:var(--clr-success,var(--clr-ok,#1cbf7a))}@media (max-width:720px){.apf-right{max-height:70vh}.d-md-none-footer-form{display:none!important}.apf-modal{grid-template-columns:1fr;max-height:95vh;top:50%;width:min(480px,96vw)}.apf-left{padding:28px 24px 22px}.apf-left-title{font-size:1.4rem}.apf-features{display:none}.apf-rating{margin-top:16px;padding-top:14px}.apf-right{padding:24px 20px 22px}.apf-row{grid-template-columns:1fr;gap:14px}}@media (max-width:480px){.apf-modal{width:96vw;border-radius:16px}.apf-left{padding:22px 18px 18px}.apf-right{padding:20px 16px 18px}.apf-captcha{transform:scale(.78)}}
























.wdih-section{position:relative;padding:80px 24px 100px;background:#183966;overflow:hidden}.wdih-section::before{content:'';position:absolute;inset:0;background:#031a38;pointer-events:none}.wdih-header{text-align:center;margin-bottom:56px;position:relative}.wdih-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(26,77,143,.08);border:1px solid rgba(26,77,143,.15);border-radius:999px;padding:6px 18px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin-bottom:20px}.wdih-badge span{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--clr-pain);animation:1.6s ease-in-out infinite pulse-dot}.wdih-title{font-family:var(--ff-head);font-weight:800;line-height:1.15;color:#fff;margin-bottom:16px}.wdih-title em{font-style:italic;color:var(--clr-accent)}.wdih-sub{color:#fff;max-width:920px;margin:0 auto 12px;line-height:1.7}.wdih-hint{font-size:1rem;color:var(--clr-pain);font-weight:600;letter-spacing:.04em;animation:3s ease-in-out infinite float;display:inline-block}.wdih-layout{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;align-items:center;max-width:1200px;margin:0 auto}.wdih-cards-left,.wdih-cards-right{display:flex;flex-direction:column;gap:16px}.wdih-feat-card{background:#032148;border:1px solid #484c4e;border-radius:var(--radius-md);padding:18px 20px;box-shadow:var(--shadow-md);transition:var(--tr);position:relative;overflow:hidden}.wdih-feat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent))}.wdih-feat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.wdih-feat-icon{font-size:1.6rem;margin-bottom:8px}.wdih-feat-title{font-size:1rem;font-weight:700;color:var(--clr-accent);margin-bottom:4px}.wdih-feat-desc{font-size:.95rem;color:#fff;line-height:1.5}.wdih-body-wrap{position:relative;width:360px;flex-shrink:0}.wdih-body-bg{position:absolute;inset:-30px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,rgba(26,77,143,.06) 0,transparent 70%);filter:blur(20px)}.wdih-overlay{position:fixed;inset:0;background:rgba(14,47,90,.55);backdrop-filter:blur(6px);z-index:10;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .3s}.wdih-overlay.open{opacity:1;pointer-events:all}.wdih-modal{background:var(--clr-white);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);position:relative;transform:scale(.9) translateY(20px);opacity:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s}.wdih-overlay.open .wdih-modal{transform:scale(1) translateY(0);opacity:1}.wdih-modal::-webkit-scrollbar{width:4px}.wdih-modal::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:4px}.wdih-progress-bar{height:4px;background:var(--clr-border);border-radius:4px 4px 0 0;overflow:hidden}.wdih-progress-fill{height:100%;background:linear-gradient(90deg,var(--clr-primary),var(--clr-accent));border-radius:4px;transition:width .45s cubic-bezier(.4,0,.2,1)}.wdih-modal-header{padding:20px 24px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--clr-border)}.wdih-modal-title{font-size:.95rem;font-weight:700;color:var(--clr-primary)}.wdih-close{width:34px;height:34px;border-radius:50%;border:none;background:var(--clr-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--clr-muted);transition:var(--tr)}.wdih-close:hover{background:rgba(232,76,76,.1);color:var(--clr-danger)}.wdih-modal-body{padding:28px 24px 24px}.wdih-zone-intro{text-align:center;margin-bottom:28px}.wdih-zone-emoji{font-size:3rem;margin-bottom:10px;display:block}.wdih-zone-name{font-family:var(--ff-head);font-size:1.6rem;font-weight:800;color:var(--clr-primary-dk);margin-bottom:4px}.wdih-step-counter{font-size:.8rem;color:var(--clr-muted);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.wdih-cat-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(26,77,143,.07);border:1px solid rgba(26,77,143,.12);border-radius:999px;padding:5px 14px;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--clr-primary);margin-bottom:18px}.wdih-question{font-family:var(--ff-head);font-size:1.25rem;font-weight:700;color:var(--clr-text);margin-bottom:20px;line-height:1.35}.wdih-answers{display:flex;flex-direction:column;gap:10px}.wdih-ans{display:flex;align-items:center;gap:14px;padding:14px 18px;border:2px solid var(--clr-border);border-radius:var(--radius-md);cursor:pointer;background:var(--clr-white);transition:var(--tr);position:relative;overflow:hidden}.wdih-ans::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,77,143,0),rgba(0,180,216,.04));opacity:0;transition:opacity .2s}.wdih-ans:hover{border-color:var(--clr-accent);transform:translateX(4px);box-shadow:0 4px 16px rgba(0,180,216,.12)}.wdih-ans:hover::before{opacity:1}.wdih-ans.selected{border-color:var(--clr-primary);background:rgba(26,77,143,.04)}.wdih-ans.selected .wdih-ans-check{opacity:1;transform:scale(1)}.wdih-ans-emoji{font-size:1.5rem;flex-shrink:0}.wdih-ans-text{flex:1}.wdih-ans-label{font-size:.9rem;font-weight:700;color:var(--clr-text)}.wdih-ans-desc{font-size:.76rem;color:var(--clr-muted);margin-top:2px}.wdih-ans-check{width:22px;height:22px;border-radius:50%;background:var(--clr-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;opacity:0;transform:scale(.5);transition:var(--tr);flex-shrink:0}.wdih-slider-wrap{margin-top:8px}.wdih-slider-val{font-family:var(--ff-head);font-size:3.5rem;font-weight:800;text-align:center;color:var(--clr-primary);margin-bottom:4px;transition:color .3s}.wdih-slider-label{text-align:center;font-size:.85rem;color:var(--clr-muted);margin-bottom:20px;min-height:20px}.wdih-slider{-webkit-appearance:none;appearance:none;width:100%;height:10px;border-radius:10px;background:linear-gradient(90deg,#22c55e,#eab308,#ef4444);outline:0;cursor:pointer}.wdih-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;border-radius:50%;background:var(--clr-white);border:3px solid var(--clr-primary);box-shadow:0 2px 12px rgba(26,77,143,.25);transition:var(--tr)}.wdih-slider::-webkit-slider-thumb:hover{transform:scale(1.2);border-color:var(--clr-accent)}.wdih-nav{display:flex;gap:12px;margin-top:24px}.wdih-btn{flex:1;padding:14px 20px;border-radius:var(--radius-md);border:none;font-family:var(--ff-body);font-size:.9rem;font-weight:700;cursor:pointer;transition:var(--tr);display:flex;align-items:center;justify-content:center;gap:6px}.wdih-btn-back{background:var(--clr-bg);color:var(--clr-muted);border:1px solid var(--clr-border)}.wdih-btn-back:hover{background:var(--clr-border);color:var(--clr-text)}.wdih-btn-next{background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));color:#fff;box-shadow:0 6px 20px rgba(26,77,143,.3)}.wdih-btn-next:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(26,77,143,.4)}.wdih-btn-next:disabled{opacity:.45;cursor:not-allowed;transform:none}.wdih-results{display:none;padding:28px 24px}.wdih-results.show{display:block}.wdih-results-hero{text-align:center;margin-bottom:28px}.wdih-results-emoji{font-size:2.8rem;margin-bottom:10px;display:block}.wdih-results-title{font-family:var(--ff-head);font-size:1.5rem;font-weight:800;color:var(--clr-primary-dk);margin-bottom:4px}.wdih-gauge-wrap{position:relative;width:140px;height:140px;margin:0 auto 20px}.wdih-gauge-svg{width:140px;height:140px}.wdih-gauge-track{fill:none;stroke:var(--clr-border);stroke-width:10}.wdih-gauge-fill{fill:none;stroke-width:10;stroke-linecap:round;stroke-dasharray:283;stroke-dashoffset:283;transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1),stroke .6s}.wdih-gauge-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.wdih-gauge-score{font-family:var(--ff-head);font-size:2.2rem;font-weight:800;color:var(--clr-primary);line-height:1}.wdih-gauge-severity{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--clr-muted)}.wdih-result-items{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.wdih-result-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--clr-bg);border-radius:var(--radius-md);border:1px solid var(--clr-border)}.wdih-result-icon{font-size:1.3rem;flex-shrink:0;margin-top:1px}.wdih-result-label{font-size:.8rem;font-weight:700;color:var(--clr-primary);margin-bottom:2px}.wdih-result-value{font-size:.82rem;color:var(--clr-text);line-height:1.5}.wdih-book-btn{width:100%;padding:18px;background:linear-gradient(135deg,var(--clr-primary),var(--clr-accent));border:none;border-radius:var(--radius-md);font-family:var(--ff-body);font-size:1rem;font-weight:700;color:#fff;cursor:pointer;box-shadow:0 8px 24px rgba(26,77,143,.35);transition:var(--tr);display:flex;align-items:center;justify-content:center;gap:8px}.wdih-book-btn:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(26,77,143,.45)}.wdih-book-sub{text-align:center;font-size:.75rem;color:var(--clr-muted);margin-top:10px;letter-spacing:.04em}@keyframes pulse-dot{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.7}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(max-width:960px){.wdih-layout{grid-template-columns:1fr;grid-template-rows:auto auto auto}.wdih-cards-left,.wdih-cards-right{flex-direction:row;flex-wrap:wrap;order:2}.wdih-feat-card{flex:1;min-width:200px}.wdih-body-wrap{order:1;margin:0 auto;width:360px}.wdih-cards-right{order:3}}@media(max-width:600px){.wdih-section{padding:56px 16px 72px}.wdih-body-wrap{width:min(300px,88vw)}.wdih-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh}.wdih-overlay{align-items:flex-end;padding:0}.wdih-feat-card{min-width:160px}}

/* ---- Pain & Movement Check modal: render above the mobile sticky bar/FABs
   (z-index only - the modal now uses the full viewport instead of reserving
   space for the FAB bar, see below) so its Next/Back nav is never hidden ---- */
.wdih-overlay{z-index:1000}

/* ---- Full-viewport modal sizing, independent of the FAB bar ----
   Previously this reserved 84px at the bottom for the mobile FAB/quickbar,
   using a static vh max-height. Mobile Chrome's address bar show/hide
   changes the *visible* viewport without changing static vh, so the
   reserved space and the stale vh height stacked and pushed the modal's
   header/close button above the visible area. dvh tracks the real visible
   viewport, so the modal now sizes itself correctly regardless of browser
   chrome, and no longer needs to account for the FAB bar at all - it simply
   renders above it (z-index above). */
.wdih-overlay{height:100vh;height:100dvh}
.wdih-modal{max-height:90vh;max-height:90dvh}
@media(max-width:600px){
  .wdih-modal{max-height:92vh;max-height:92dvh}
}
.wdih-modal-header{position:sticky;top:0;z-index:2;background:var(--clr-white)}

/* ---- No body-part icon/emoji at the top of the assessment: the JS no
   longer injects anything into these spans (per-answer emojis inside each
   question are untouched), so hide the now-empty slot instead of leaving
   its reserved space (font-size:3rem/2.8rem, margin-bottom) as blank gap ---- */
.wdih-zone-emoji,.wdih-results-emoji{display:none}

/* ---- fallback vars this theme doesn't define, scoped to this section ---- */
#pain-check{
  --clr-pain:#ef4444;
  --clr-muted:#5b6b7f;
  --shadow-xl:0 40px 100px rgba(5,42,97,.22);
}

#pain-check .wdih-view-toggle{display:flex;justify-content:center;margin:0 auto 14px}
#pain-check .wdih-anatomy-stage{background:transparent;padding:0}
#pain-check .anatomy-figure-wrap{width:min(360px,100%)}
#pain-check .anatomy-figure{filter:drop-shadow(0 12px 40px rgba(26,77,143,.22)) drop-shadow(0 4px 12px rgba(26,77,143,.12))}

#pain-check .wdih-anatomy-stage{overflow:visible}
#pain-check .wdih-body-bg{pointer-events:none}
#pain-check .wdih-view-toggle{position:relative;z-index:5;gap:2rem;}


/* label look = OLD site's white/blue rounded tag, NEW site's names stay as authored in HTML */
#pain-check .wdih-point span{
  top:auto;bottom:calc(100% + 10px);
  transform:translateX(-50%);
  background:#ffffff;
  color:var(--clr-accent-dk);
  font-family:var(--ff-head);
  font-weight:900;font-size:13px;line-height:1.2;
  padding:4px 10px;border-radius:6px;
  box-shadow:0 6px 18px rgba(5,44,88,.22);
  white-space:nowrap;
}
#pain-check .wdih-point span::after{
  content:"";position:absolute;top:100%;left:50%;
  transform:translateX(-50%);
  border:5px solid transparent;border-top-color:#ffffff;
}
#pain-check .point-head-jaw span{top:calc(100% + 10px);bottom:auto}
#pain-check .point-head-jaw span::after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:#ffffff}











.sfl-panel{padding:26px 28px 30px;animation:sflIn .3s ease}
@keyframes sflIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.sfl-head{text-align:center;margin-bottom:20px}
.sfl-badge{display:inline-block;background:#e8f4fd;color:#1a4d8f;font-size:.68rem;font-weight:800;letter-spacing:.12em;padding:6px 14px;border-radius:99px;margin-bottom:12px}
.sfl-title{font-family:var(--ff-head,'Fraunces',serif);font-size:1.5rem;font-weight:800;color:#0e2f5a;margin:0 0 8px;line-height:1.25}
.sfl-sub{font-size:.9rem;color:#5a7a96;margin:0;line-height:1.5}
.sfl-form{display:flex;flex-direction:column;gap:14px;position:relative}
.sfl-field{display:flex;flex-direction:column;gap:6px}
.sfl-label{font-size:.8rem;font-weight:700;color:#1c2b3a}
.sfl-label i{color:#ef4444;font-style:normal}
.sfl-label small{font-weight:500;color:#8aa4bd}
.sfl-field input{width:100%;padding:13px 15px;border:1.5px solid #d8e6f2;border-radius:10px;font-size:1rem;font-family:inherit;color:#0e2f5a;background:#fff;transition:border-color .2s,box-shadow .2s}
.sfl-field input:focus{outline:none;border-color:#00b4d8;box-shadow:0 0 0 3px rgba(0,180,216,.15)}
.sfl-err{color:#dc2626;font-size:.78rem;min-height:1em}
.sfl-err-consent{margin-top:-8px}
.sfl-consent{display:flex;gap:10px;align-items:flex-start;font-size:.82rem;color:#5a7a96;line-height:1.45;cursor:pointer}
.sfl-consent input{margin-top:2px;width:17px;height:17px;flex:0 0 17px;accent-color:#00b4d8;cursor:pointer}
.sfl-consent a{color:#1a4d8f;text-decoration:underline}
.sfl-actions{display:flex;gap:12px;margin-top:4px}
.sfl-btn{flex:1;padding:14px 18px;border-radius:10px;font-size:.95rem;font-weight:700;font-family:inherit;cursor:pointer;border:none;transition:transform .15s,box-shadow .2s,opacity .2s}
.sfl-btn-back{flex:0 0 34%;background:#f2f7fb;color:#5a7a96;border:1.5px solid #e2edf6}
.sfl-btn-back:hover{background:#e8f1f8}
.sfl-btn-go{background:linear-gradient(135deg,#0e2f5a,#1a7fc1);color:#fff;box-shadow:0 4px 14px rgba(14,47,90,.25)}
.sfl-btn-go:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(14,47,90,.32)}
.sfl-btn-go:disabled{opacity:.6;cursor:not-allowed;transform:none}
.sfl-note{text-align:center;font-size:.72rem;color:#9db3c8;margin:2px 0 0}
.sfl-wa-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 20px;margin:0 0 10px;border-radius:12px;background:#25D366;color:#fff;font-size:1rem;font-weight:700;text-decoration:none;box-shadow:0 4px 16px rgba(37,211,102,.32);transition:transform .15s,box-shadow .2s}
.sfl-wa-btn:hover{transform:translateY(-2px);box-shadow:0 7px 22px rgba(37,211,102,.42);color:#fff}
.sfl-wa-btn svg{flex:0 0 20px}
.sfl-wa-hint{text-align:center;font-size:.75rem;color:#8aa4bd;margin:0 0 14px}
.sfl-dl-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px 20px;margin:0 0 10px;border-radius:12px;border:1.5px solid var(--clr-border);background:#fff;color:var(--clr-primary-dk);font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .2s,background .2s}
.sfl-dl-btn:hover{transform:translateY(-2px);background:var(--clr-bg);box-shadow:0 6px 18px rgba(14,47,90,.14)}
.sfl-dl-btn svg{flex:0 0 18px}
@media (max-width:480px){.sfl-panel{padding:20px 18px 24px}.sfl-title{font-size:1.25rem}.sfl-actions{flex-direction:column-reverse}.sfl-btn-back{flex:1 1 auto}}
/* ============================ ASSESSMENT-VISUAL (animated first-visit box) ============================ */
.assessment-visual{color:#fff;background:radial-gradient(circle at 52% 42%,#176ab4,#0a4381 38%,#05284f 76%);border-radius:42px;min-height:570px;padding:29px;position:relative;overflow:hidden;box-shadow:0 34px 74px #052a613b;isolation:isolate}
.assessment-top{z-index:5;color:#bdd9f0;letter-spacing:.14em;justify-content:space-between;align-items:center;font-family:Georgia,serif;font-size:10px;display:flex;position:relative}
.assessment-top b{letter-spacing:0;color:#fff;background:#ffffff17;border:1px solid #ffffff29;border-radius:999px;padding:9px 14px;font-size:10px}
.assessment-grid{background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}
.assessment-rings i{border:1px solid #9bd2ff40;border-radius:50%;width:330px;height:330px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}
.assessment-rings i:nth-child(2){border-style:dashed;width:230px;height:230px}
.person-outline{z-index:2;border:2px solid #b1dbfb80;border-radius:45% 45% 35% 35%;width:92px;height:260px;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)}
.person-outline:before{content:"";background:#0d4b87;border:2px solid #b1dbfb80;border-radius:50%;width:62px;height:62px;position:absolute;top:-52px;left:13px}
.person-outline:after{content:"";background:var(--teal);border-radius:99px;width:6px;height:142px;position:absolute;top:34px;left:42px;box-shadow:0 0 20px #62dcc8b3}
.person-outline i,.person-outline b{z-index:3;background:var(--teal);width:12px;height:12px;box-shadow:0 0 18px var(--teal);border:4px solid #e8ffff;border-radius:50%;position:absolute;left:39px}
.person-outline i{top:65px}
.person-outline b:nth-child(2){top:125px}
.person-outline b:nth-child(3){top:182px}
.person-outline b:nth-child(4){top:232px}
.assessment-chip{z-index:5;background:#031f41c7;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:9px 12px;font-family:Georgia,serif;font-size:11px;display:flex;position:absolute}
.assessment-chip i{background:var(--teal);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #62dcc821}
.chip-listen{top:180px;left:40px}
.chip-test{top:268px;right:42px}
.chip-recheck{bottom:160px;left:56px}
.assessment-flow{z-index:5;letter-spacing:.12em;background:#031a3794;border:1px solid #ffffff26;border-radius:17px;justify-content:space-around;align-items:center;min-height:67px;padding:14px 18px;font-size:8px;font-weight:800;display:flex;position:absolute;bottom:28px;left:28px;right:28px}
.assessment-flow span{flex-direction:column;gap:5px;display:flex}
.assessment-flow span b{color:var(--teal);font-family:Georgia,serif;font-size:8px}
.assessment-flow>i{background:#fff3;width:30px;height:1px}
@media (max-width:1020px){.assessment-visual{min-height:520px}}
@media (max-width:760px){.assessment-visual{border-radius:28px;min-height:470px}.assessment-chip{font-size:9px}.chip-listen{left:20px}.chip-test{right:18px}.chip-recheck{left:24px}.assessment-flow{padding:10px;left:17px;right:17px}.assessment-flow>i{width:12px}}
@media (max-width:390px){.assessment-flow{font-size:6px}.assessment-top{font-size:8px}}

/* Assess -> Plan -> Treat & Recheck highlight sequence */
.assessment-visual .assessment-chip,.assessment-visual .assessment-flow span,.assessment-visual .person-outline i,.assessment-visual .person-outline b{transition:opacity .42s ease,transform .42s ease,box-shadow .42s ease,background .42s ease,border-color .42s ease,color .42s ease}
.assessment-visual .assessment-chip{opacity:.58;box-shadow:0 0 0 0 rgba(98,220,200,0)}
.assessment-visual .assessment-flow span{opacity:.45;filter:saturate(.75);padding:8px 10px;border-radius:12px;min-width:92px;text-align:center;align-items:center}
.assessment-visual .person-outline i,.assessment-visual .person-outline b{opacity:.38;transform:scale(.88)}
.assessment-visual .assessment-rings i{transition:filter .45s ease,opacity .45s ease}
.assessment-visual .person-outline:after{transition:height .45s ease,top .45s ease,box-shadow .45s ease,opacity .45s ease}
.assessment-visual.is-assess .chip-listen,.assessment-visual.is-plan .chip-test,.assessment-visual.is-recheck .chip-recheck{opacity:1;background:#062b55e8;border-color:#7df3df80;box-shadow:0 0 0 1px #7df3df25,0 0 24px #62dcc84d,0 10px 26px #00152f55;transform:translateY(-3px) scale(1.045)}
.assessment-visual.is-assess .chip-listen i,.assessment-visual.is-plan .chip-test i,.assessment-visual.is-recheck .chip-recheck i{box-shadow:0 0 0 7px #62dcc82c,0 0 20px #62dcc8cc}
.assessment-visual.is-assess .assessment-flow span:nth-of-type(1),.assessment-visual.is-plan .assessment-flow span:nth-of-type(2),.assessment-visual.is-recheck .assessment-flow span:nth-of-type(3){opacity:1;filter:none;color:#fff;background:#0b3867b5;box-shadow:inset 0 0 0 1px #7df3df48,0 0 22px #62dcc824;transform:translateY(-2px)}
.assessment-visual.is-assess .assessment-flow span:nth-of-type(1) b,.assessment-visual.is-plan .assessment-flow span:nth-of-type(2) b,.assessment-visual.is-recheck .assessment-flow span:nth-of-type(3) b{color:#91f5e6;text-shadow:0 0 12px #62dcc87a}
.assessment-visual.is-assess .person-outline i{opacity:1;transform:scale(1.18);background:#86f5e4;border-color:#fff;box-shadow:0 0 26px #62dcc8,0 0 50px #62dcc870}
.assessment-visual.is-plan .person-outline b:nth-child(2),.assessment-visual.is-plan .person-outline b:nth-child(3){opacity:1;transform:scale(1.16);background:#86f5e4;border-color:#fff;box-shadow:0 0 26px #62dcc8,0 0 50px #62dcc870}
.assessment-visual.is-recheck .person-outline b:nth-child(4){opacity:1;transform:scale(1.2);background:#86f5e4;border-color:#fff;box-shadow:0 0 28px #62dcc8,0 0 54px #62dcc878}
.assessment-visual.is-assess .person-outline:after{height:70px;top:34px;opacity:.85;box-shadow:0 0 22px #62dcc881,0 -22px 42px -18px #62dcc86b}
.assessment-visual.is-plan .person-outline:after{height:142px;top:34px;opacity:1;box-shadow:0 0 28px #62dcc89b,0 0 54px #62dcc84d}
.assessment-visual.is-recheck .person-outline:after{height:196px;top:34px;opacity:1;box-shadow:0 0 24px #62dcc890,0 42px 52px -20px #62dcc879}
.assessment-visual.is-assess .assessment-rings i{filter:drop-shadow(0 0 10px rgba(98,220,200,.10))}
.assessment-visual.is-plan .assessment-rings i{filter:drop-shadow(0 0 20px rgba(98,220,200,.22))}
.assessment-visual.is-recheck .assessment-rings i{filter:drop-shadow(0 0 14px rgba(98,220,200,.16))}
@media (prefers-reduced-motion:no-preference){
.assessment-visual .assessment-grid{animation:sfpGridFloat 8s ease-in-out infinite}
.assessment-visual .assessment-rings i:first-child{animation:sfpRingGlow 5.4s ease-in-out infinite}
.assessment-visual .assessment-rings i:nth-child(2){animation:sfpRingGlow 5.4s ease-in-out infinite reverse}
}
@keyframes sfpGridFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes sfpRingGlow{0%,100%{opacity:.8}50%{opacity:1}}
@media (max-width:760px){.assessment-visual .assessment-flow span{min-width:0;padding:7px 5px}.assessment-visual .assessment-flow{gap:4px}.assessment-visual .assessment-flow>i{width:14px}}
@media (prefers-reduced-motion:reduce){.assessment-visual .assessment-grid,.assessment-visual .assessment-rings i{animation:none!important}}







.trade-h1{
  font-size: 40px;
  font-weight:800;
}

@media (max-width: 1199px) {
 .trade-h1{
    font-size: 32px;
    font-weight:800;
  }
}

@media (max-width: 767px) {
 .trade-h1{
    font-size: 20px;
    font-weight:800;
  }
}


/* ==========================================================================
   CONDITION LANDING PAGES (.clp)
   Used by the 23 condition landing pages (first: acl-rehabilitation-chennai.php).
   Every selector is scoped under main.clp and every class is prefixed clp-,
   so nothing here can reach any other page or component on the site.
   ========================================================================== */
main.clp{--clp-ink:#071c36;--clp-navy:#0e2f5a;--clp-blue:#1a4d8f;--clp-cyan:#00b4d8;--clp-cyan-dk:#0077a8;--clp-cyan-lt:#90e0ef;--clp-text:#3b5068;--clp-muted:#56708a;--clp-line:#dbe7f2;--clp-ice:#f4f8fd;--clp-star:#f5a524;--clp-wa:#1faa59;display:block;color:var(--clp-text);overflow-x:clip}
main.clp *{box-sizing:border-box}
main.clp img{max-width:100%;display:block}
main.clp p{margin:0}
main.clp section[id]{scroll-margin-top:var(--header-h,76px)}
main.clp ul,main.clp ol{list-style:none;margin:0;padding:0}

/* ---- Type ---- */
main.clp .clp-h1{color:var(--clp-ink);margin:1.15rem 0 1.15rem}
main.clp .clp-h1 em{font-style:italic;color:var(--clp-cyan-dk)}
main.clp .clp-h2{font-family:var(--ff-head);font-weight:800;line-height:1.14;letter-spacing:-.015em;color:var(--clp-ink);margin:0}
main.clp .clp-h3{font-family:var(--ff-head);font-weight:800;line-height:1.22;color:var(--clp-ink);margin:0 0 .75rem}
main.clp .clp-brand{color:var(--clp-cyan-dk)}
main.clp .clp-eyebrow{display:block;font:700 .74rem/1.3 var(--ff-body);letter-spacing:.12em;text-transform:uppercase;color:var(--clp-cyan-dk);margin:0 0 .85rem}
main.clp .clp-eyebrow::before{content:"";display:inline-block;vertical-align:middle;width:22px;height:2px;margin:-2px .6rem 0 0;border-radius:2px;background:currentColor}
main.clp .clp-intro{font-size:1.02rem;line-height:1.7;color:var(--clp-text);max-width:60ch}

/* ---- Layout ---- */
main.clp .clp-section{padding:clamp(3.5rem,7vw,6rem) 0;background:#fff}
main.clp .clp-ice{background:var(--clp-ice)}
main.clp .clp-sky{background:linear-gradient(180deg,#eaf4ff 0%,#f4f9ff 100%)}
main.clp .clp-flush-top{padding-top:0}
main.clp .clp-head{display:grid;grid-template-columns:1.1fr .9fr;gap:1.25rem 4rem;align-items:end;margin-bottom:clamp(2rem,4vw,3rem)}
main.clp .clp-grid{display:grid;gap:1.25rem}
main.clp .clp-grid-4{grid-template-columns:repeat(4,1fr)}
main.clp .clp-grid-3{grid-template-columns:repeat(3,1fr)}

/* ---- Buttons (extend the site .button) ---- */
main.clp .clp-btn-lg{padding:1rem 1.6rem;font-size:1rem}
main.clp .clp-btn-wa,main.clp .clp-btn-outline,main.clp .clp-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.95rem 1.5rem;border-radius:999px;font:700 .98rem/1.2 var(--ff-body);text-decoration:none;transition:transform .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
main.clp .clp-btn-wa{background:#fff;color:var(--clp-ink);border:1.5px solid #cfe0ee}
main.clp .clp-btn-wa svg{width:20px;height:20px;fill:var(--clp-wa);flex:none}
main.clp .clp-btn-wa:hover{border-color:var(--clp-wa);color:var(--clp-ink);transform:translateY(-2px)}
main.clp .clp-btn-outline{background:#fff;color:var(--clp-blue);border:1.5px solid var(--clp-blue)}
main.clp .clp-btn-outline:hover{background:var(--clp-blue);color:#fff}
main.clp .clp-btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.45)}
main.clp .clp-btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}

/* ---- Hero ---- */
main.clp .clp-hero{position:relative;padding:calc(var(--header-h,76px) + clamp(1.75rem,4vw,3.5rem)) 0 clamp(3rem,6vw,5rem);background:radial-gradient(900px 480px at 88% 8%,rgba(0,180,216,.12),transparent 60%),linear-gradient(180deg,#fff 0%,#f3f8fd 100%);overflow:hidden}
main.clp .clp-hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(2rem,4.5vw,4.5rem);align-items:center}
main.clp .clp-kicker{display:inline-flex;align-items:center;gap:.6rem;max-width:100%;font:700 .7rem/1.45 var(--ff-body);letter-spacing:.06em;text-transform:uppercase;color:var(--clp-blue);background:#fff;border:1px solid #cfe2f2;border-radius:999px;padding:.45rem 1rem .45rem .55rem;box-shadow:0 6px 18px rgba(26,77,143,.08);margin:0}
main.clp .clp-kicker i,main.clp .clp-visual-badge i{position:relative;width:10px;height:10px;border-radius:50%;background:var(--clp-cyan);flex:none}
main.clp .clp-kicker i::after,main.clp .clp-visual-badge i::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--clp-cyan);opacity:.5;animation:clpPulse 2.2s ease-out infinite}
@keyframes clpPulse{0%{transform:scale(.6);opacity:.7}100%{transform:scale(1.8);opacity:0}}
main.clp .clp-lead{font-size:1.08rem;line-height:1.7;color:var(--clp-text);max-width:60ch}
main.clp .clp-support{margin-top:1.1rem;padding:1rem 1.2rem;background:#fff;border:1px solid var(--clp-line);border-left:4px solid var(--clp-cyan);border-radius:14px;font-size:.98rem;line-height:1.65;color:var(--clp-text);max-width:62ch}
main.clp .clp-support b{color:var(--clp-blue)}
main.clp .clp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.6rem}

/* Hero proof bar - replaces the old row of pills with one segmented card */
main.clp .clp-proof{display:grid;grid-template-columns:repeat(3,auto) 1fr;margin-top:1.75rem;background:#fff;border:1px solid var(--clp-line);border-radius:18px;box-shadow:0 12px 32px rgba(26,77,143,.08);overflow:hidden;max-width:620px}
main.clp .clp-proof li{display:flex;flex-direction:column;justify-content:center;gap:.15rem;padding:.9rem 1.15rem;border-left:1px solid var(--clp-line);min-width:0}
main.clp .clp-proof li:first-child{border-left:0}
main.clp .clp-proof strong{font-family:var(--ff-head);font-weight:800;font-size:1.4rem;line-height:1.1;color:var(--clp-ink);white-space:nowrap}
main.clp .clp-proof .clp-star{color:var(--clp-star);margin-left:2px}
main.clp .clp-proof li>span{font-size:.74rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--clp-muted);white-space:nowrap}
main.clp .clp-proof .clp-proof-loc{flex-direction:row;align-items:center;gap:.6rem;background:linear-gradient(135deg,#f0f8ff,#e8f6fb)}
main.clp .clp-proof .clp-proof-loc svg{width:26px;height:26px;flex:none;fill:none;stroke:var(--clp-cyan-dk);stroke-width:1.8}
main.clp .clp-proof .clp-proof-loc span{font-size:.84rem;font-weight:700;letter-spacing:0;text-transform:none;color:var(--clp-navy);white-space:normal;line-height:1.3}

/* Hero visual */
main.clp .clp-visual{position:relative;border-radius:28px;overflow:hidden;min-height:560px;background:var(--clp-navy);box-shadow:0 30px 70px rgba(5,42,97,.2)}
main.clp .clp-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
main.clp .clp-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,28,54,.25) 0%,transparent 28%,transparent 45%,rgba(7,28,54,.55) 100%);pointer-events:none}
main.clp .clp-visual-badge{position:absolute;z-index:2;top:1.1rem;left:1.1rem;display:inline-flex;align-items:center;gap:.55rem;padding:.5rem .9rem .5rem .7rem;border-radius:999px;background:rgba(255,255,255,.94);color:var(--clp-navy);font:700 .78rem/1 var(--ff-body);letter-spacing:.04em;box-shadow:0 8px 20px rgba(7,28,54,.18)}
main.clp .clp-visual-mark{position:absolute;z-index:2;top:1rem;right:1rem;width:74px;height:58px;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 20px rgba(7,28,54,.2)}
main.clp .clp-visual-mark img{width:100%;height:100%;object-fit:cover}
main.clp .clp-visual-float{position:absolute;z-index:2;top:5rem;left:1.1rem;max-width:250px;display:flex;flex-direction:column;gap:.3rem;padding:.9rem 1rem;border-radius:16px;background:#fff;box-shadow:0 14px 32px rgba(7,28,54,.22);border-left:4px solid var(--clp-cyan)}
main.clp .clp-visual-float b{font-family:var(--ff-head);font-size:1.02rem;color:var(--clp-ink)}
main.clp .clp-visual-float span{font-size:.86rem;line-height:1.5;color:var(--clp-text)}
main.clp .clp-visual-copy{position:absolute;z-index:2;left:1rem;right:1rem;bottom:1rem;padding:1.15rem 1.25rem;border-radius:20px;background:rgba(7,28,54,.86);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);color:#fff}
main.clp .clp-visual-copy small{display:block;font:700 .7rem/1 var(--ff-body);letter-spacing:.14em;text-transform:uppercase;color:var(--clp-cyan-lt);margin-bottom:.55rem}
main.clp .clp-visual-copy strong{display:block;font-family:var(--ff-head);font-size:1.12rem;line-height:1.35;color:#fff}
main.clp .clp-flow{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.85rem}
main.clp .clp-flow span{padding:.32rem .7rem;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font:700 .7rem/1 var(--ff-body);letter-spacing:.08em;text-transform:uppercase;color:#fff}

/* ---- Stats ribbon ---- */
main.clp .clp-stats{background:var(--clp-navy);color:#fff}
main.clp .clp-stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
main.clp .clp-stats-grid>div{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.6rem 1rem;text-align:center;border-left:1px solid rgba(255,255,255,.12)}
main.clp .clp-stats-grid>div:first-child{border-left:0}
main.clp .clp-stats strong{font-family:var(--ff-head);font-weight:800;font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.1;color:#fff}
main.clp .clp-stats span{font-size:.86rem;color:rgba(255,255,255,.8)}

/* ---- Cards ---- */
main.clp .clp-card{position:relative;background:#fff;border:1px solid var(--clp-line);border-radius:20px;padding:1.6rem 1.5rem;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
main.clp .clp-ice .clp-card{box-shadow:0 6px 20px rgba(26,77,143,.05)}
main.clp .clp-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(26,77,143,.12);border-color:#bfdaee}
main.clp .clp-card p,main.clp .clp-check p{font-size:.95rem;line-height:1.6;color:var(--clp-text)}
main.clp .clp-card-title{font-family:var(--ff-head);font-weight:800;line-height:1.3;color:var(--clp-ink);margin:0 0 .45rem}
main.clp .clp-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,#e6f6fb,#d6ecfb);margin-bottom:1.1rem;flex:none}
main.clp .clp-icon svg{width:24px;height:24px;fill:none;stroke:var(--clp-blue);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
main.clp .clp-num{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--clp-navy);color:#fff;font:800 .95rem/1 var(--ff-body);margin-bottom:1.1rem}

/* ---- What / Why / How ---- */
main.clp .clp-explainer{display:grid;grid-template-columns:.85fr 1.15fr;gap:1.5rem;align-items:stretch;margin-bottom:clamp(3rem,6vw,5rem)}
main.clp .clp-art{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--clp-line);border-radius:24px;overflow:hidden}
main.clp .clp-art img{width:100%;height:100%;min-height:260px;object-fit:cover;flex:1}
main.clp .clp-art-label{padding:1rem 1.25rem;background:var(--clp-navy);color:#fff;font:700 .76rem/1.45 var(--ff-body);letter-spacing:.1em;text-transform:uppercase}
main.clp .clp-wwh{display:grid;gap:1rem}
main.clp .clp-wwh-row{display:grid;grid-template-columns:78px 1fr;gap:1.1rem;align-items:start;padding:1.35rem 1.4rem;background:#fff;border:1px solid var(--clp-line);border-radius:20px}
main.clp .clp-wwh-row>b{display:grid;place-items:center;height:38px;border-radius:10px;background:var(--clp-cyan-dk);color:#fff;font:800 .78rem/1 var(--ff-body);letter-spacing:.12em}
main.clp .clp-wwh-row:nth-child(2)>b{background:var(--clp-blue)}
main.clp .clp-wwh-row:nth-child(3)>b{background:var(--clp-navy)}
main.clp .clp-wwh-row strong{display:block;font-family:var(--ff-head);font-weight:800;font-size:1.14rem;color:var(--clp-ink);margin-bottom:.35rem}
main.clp .clp-wwh-row p{font-size:.96rem;line-height:1.65;color:var(--clp-text)}

/* ---- Dark approach section ---- */
main.clp .clp-dark{background:radial-gradient(800px 420px at 90% 0%,rgba(0,180,216,.16),transparent 60%),linear-gradient(165deg,#0e2f5a 0%,#071c36 100%);color:#fff}
main.clp .clp-dark .clp-h2,main.clp .clp-dark .clp-card-title{color:#fff}
main.clp .clp-dark .clp-brand{color:var(--clp-cyan-lt)}
main.clp .clp-dark .clp-eyebrow{color:var(--clp-cyan-lt)}
main.clp .clp-dark .clp-intro{color:rgba(255,255,255,.82)}
main.clp .clp-check{display:flex;gap:1rem;align-items:flex-start;padding:1.35rem;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);transition:background .3s ease,border-color .3s ease}
main.clp .clp-check:hover{background:rgba(255,255,255,.08);border-color:rgba(144,224,239,.4)}
main.clp .clp-check .clp-icon{margin:0;background:rgba(0,180,216,.16)}
main.clp .clp-check .clp-icon svg{stroke:var(--clp-cyan-lt)}
main.clp .clp-dark .clp-check p{color:rgba(255,255,255,.76)}

main.clp .clp-path{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin:clamp(2.5rem,5vw,3.5rem) 0}
main.clp .clp-path::before{content:"";position:absolute;top:22px;left:calc(100%/12);right:calc(100%/12);height:2px;background:linear-gradient(90deg,var(--clp-cyan),rgba(144,224,239,.25))}
main.clp .clp-path li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 .25rem}
main.clp .clp-path b{position:relative;z-index:1;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#0b2748;border:2px solid var(--clp-cyan);color:#fff;font:800 .9rem/1 var(--ff-body);margin-bottom:1rem;box-shadow:0 0 0 6px rgba(0,180,216,.12)}
main.clp .clp-path strong{font-family:var(--ff-head);font-weight:800;font-size:1.02rem;line-height:1.3;color:#fff;margin-bottom:.4rem}
main.clp .clp-path p{font-size:.88rem;line-height:1.55;color:rgba(255,255,255,.74)}

main.clp .clp-imt{display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem;align-items:stretch}
main.clp .clp-imt-card{padding:clamp(1.5rem,3vw,2.25rem);border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
main.clp .clp-imt-card .clp-h3{color:#fff}
main.clp .clp-imt-card p{color:rgba(255,255,255,.82);line-height:1.7}
main.clp .clp-chips{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.4rem}
main.clp .clp-chips span{padding:.55rem .95rem;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:.86rem;font-weight:600}
main.clp .clp-visit{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(1.5rem,3vw,2.25rem);border-radius:24px;background:#fff;color:var(--clp-text);box-shadow:0 24px 60px rgba(0,0,0,.25)}
main.clp .clp-visit small{font:800 .72rem/1 var(--ff-body);letter-spacing:.14em;color:var(--clp-cyan-dk)}
main.clp .clp-price{font-family:var(--ff-head);font-weight:800;font-size:clamp(2.3rem,4vw,3rem);line-height:1.1;color:var(--clp-blue);margin:.5rem 0 .35rem}
main.clp .clp-visit .button{margin-top:1.4rem}

/* Tick list - dark text on light surfaces, always readable */
main.clp .clp-ticks{display:grid;gap:.7rem;margin-top:.5rem}
main.clp .clp-ticks li{position:relative;padding-left:2rem;font-size:.96rem;line-height:1.55;color:var(--clp-text)}
main.clp .clp-ticks li::before{content:"";position:absolute;left:0;top:.1rem;width:1.3rem;height:1.3rem;border-radius:50%;background:#e1f5fa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230077a8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/.8rem no-repeat}
main.clp .clp-ticks li.clp-tick-warn{color:#7a3b00;background:#fff6e8;border:1px solid #f6d9a8;border-radius:12px;padding:.7rem .9rem .7rem 2.6rem}
main.clp .clp-ticks li.clp-tick-warn::before{left:.8rem;top:.8rem;background:#f5a524 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M12 6v7M12 17.5v.5'/%3E%3C/svg%3E") center/.8rem no-repeat}

/* ---- 3D assessment ---- */
main.clp .clp-assess{background:#fff;border:1px solid var(--clp-line);border-radius:28px;padding:clamp(1rem,2.5vw,1.75rem);box-shadow:0 24px 60px rgba(26,77,143,.1)}
main.clp .clp-assess-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1.5rem;margin-bottom:1rem}
main.clp .clp-assess-head strong{font-family:var(--ff-head);font-weight:800;font-size:1.2rem;color:var(--clp-ink)}
main.clp .clp-assess-head span{font-size:.86rem;color:var(--clp-muted)}
main.clp .clp-assess-values{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem}
main.clp .clp-assess-values span{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border-radius:999px;background:#eefaf4;border:1px solid #c9ecd9;color:#14532d;font-size:.82rem;font-weight:600}
main.clp .clp-assess-values span::before{content:"\2713";font-weight:800;color:#1faa59}
main.clp .clp-assess-frame{display:block;width:100%;height:clamp(620px,82vh,860px);border:0;border-radius:18px;background:var(--clp-ice)}
main.clp .clp-assess-open{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem 1.5rem;margin-top:1.1rem}
main.clp .clp-assess-open p{flex:1 1 280px;font-size:.86rem;line-height:1.55;color:var(--clp-muted)}

/* ---- Clinical context ---- */
main.clp .clp-scan{display:grid;grid-template-columns:1fr 1fr;background:var(--clp-ice);border:1px solid var(--clp-line);border-radius:28px;overflow:hidden}
main.clp .clp-scan-img img{width:100%;height:100%;min-height:320px;object-fit:cover}
main.clp .clp-scan-copy{padding:clamp(1.75rem,4vw,3rem)}
main.clp .clp-scan-copy>p{line-height:1.7;margin-bottom:1.1rem}

/* ---- Proof ---- */
main.clp .clp-proof-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:1.25rem;align-items:stretch}
main.clp .clp-story,main.clp .clp-vcard{position:relative;display:block;width:100%;padding:0;border:0;border-radius:24px;overflow:hidden;background:var(--clp-ink);text-align:left;cursor:pointer;color:#fff;font:inherit}
main.clp .clp-story{min-height:440px}
main.clp .clp-story>img,main.clp .clp-vcard>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
main.clp .clp-story:hover>img,main.clp .clp-vcard:hover>img{transform:scale(1.04)}
main.clp .clp-story::after,main.clp .clp-vcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,28,54,.1) 25%,rgba(7,28,54,.78) 58%,rgba(7,28,54,.96) 100%);pointer-events:none}
main.clp .clp-play{position:absolute;z-index:2;top:50%;left:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;background:rgba(255,255,255,.95);box-shadow:0 0 0 10px rgba(255,255,255,.2);transition:transform .3s ease}
main.clp .clp-play::before{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:11px 0 11px 18px;border-color:transparent transparent transparent var(--clp-blue)}
main.clp .clp-story:hover .clp-play,main.clp .clp-vcard:hover .clp-play{transform:scale(1.08)}
main.clp .clp-story-copy,main.clp .clp-vcard-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:.35rem;padding:1.4rem}
main.clp .clp-story-copy small,main.clp .clp-vcard-copy small{font:700 .7rem/1.3 var(--ff-body);letter-spacing:.12em;text-transform:uppercase;color:var(--clp-cyan-lt)}
main.clp .clp-story-copy strong{font-family:var(--ff-head);font-size:1.4rem;line-height:1.25;color:#fff}
main.clp .clp-story-copy em,main.clp .clp-vcard-copy em{font-style:normal;font-size:.9rem;line-height:1.5;color:rgba(255,255,255,.85)}
main.clp .clp-story.is-playing>*:not(iframe),main.clp .clp-vcard.is-playing>*:not(iframe),main.clp .clp-story.is-playing::after,main.clp .clp-vcard.is-playing::after{display:none}
main.clp .clp-story iframe,main.clp .clp-vcard iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:3}
main.clp .clp-reviews{display:grid;gap:1rem}
main.clp .clp-review{padding:1.3rem 1.4rem;background:#fff;border:1px solid var(--clp-line);border-radius:20px}
main.clp .clp-stars{color:var(--clp-star);letter-spacing:.12em;font-size:1rem}
main.clp .clp-review blockquote{margin:.55rem 0 .9rem;font-family:var(--ff-head);font-weight:700;font-size:1.12rem;line-height:1.4;color:var(--clp-ink)}
main.clp .clp-review-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}
main.clp .clp-review-foot small{font-size:.84rem;color:var(--clp-muted)}
main.clp .clp-review-foot span{padding:.3rem .75rem;border-radius:999px;background:#e8f4fb;color:var(--clp-blue);font-size:.78rem;font-weight:700}
main.clp .clp-google{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1.3rem 1.4rem;border-radius:20px;background:var(--clp-navy);color:#fff}
main.clp .clp-google strong{display:block;font-family:var(--ff-head);font-size:1.2rem;color:#fff}
main.clp .clp-google span{font-size:.86rem;color:rgba(255,255,255,.78)}

main.clp .clp-lib{margin-top:clamp(2.5rem,5vw,3.5rem);padding:clamp(1.25rem,3vw,2rem);background:#fff;border:1px solid var(--clp-line);border-radius:28px}
main.clp .clp-lib-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.4rem}
main.clp .clp-lib-head small{display:block;font:700 .72rem/1.3 var(--ff-body);letter-spacing:.12em;color:var(--clp-cyan-dk);margin-bottom:.5rem}
main.clp .clp-lib-head .clp-h3{margin-bottom:.4rem}
main.clp .clp-lib-arrows{display:flex;gap:.5rem;flex:none}
main.clp .clp-lib-arrows button{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--clp-line);background:#fff;color:var(--clp-blue);font-size:1.15rem;font-weight:700;transition:background .25s ease,color .25s ease,border-color .25s ease}
main.clp .clp-lib-arrows button:hover{background:var(--clp-blue);border-color:var(--clp-blue);color:#fff}
main.clp .clp-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3rem)/4);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.25rem}
main.clp .clp-rail::-webkit-scrollbar{display:none}
main.clp .clp-vcard{aspect-ratio:3/4;scroll-snap-align:start;border-radius:20px}
main.clp .clp-vcard .clp-play{width:54px;height:54px;margin:-27px 0 0 -27px}
main.clp .clp-vcard .clp-play::before{border-width:9px 0 9px 15px}
main.clp .clp-vcard-copy{padding:1rem}
main.clp .clp-vcard-copy strong{font-family:var(--ff-head);font-size:1.02rem;line-height:1.3;color:#fff}
main.clp .clp-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1.3rem}
main.clp .clp-trust span{padding:.45rem .9rem;border-radius:999px;background:var(--clp-ice);border:1px solid var(--clp-line);color:var(--clp-navy);font-size:.82rem;font-weight:600}

/* ---- Clinic spaces ---- */
main.clp .clp-clinic{background:#fff;border:1px solid var(--clp-line);border-radius:22px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
main.clp .clp-clinic:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(26,77,143,.12)}
main.clp .clp-clinic img{width:100%;aspect-ratio:16/10;object-fit:cover}
main.clp .clp-clinic>div{padding:1.2rem 1.35rem 1.4rem}
main.clp .clp-clinic strong{display:block;font-family:var(--ff-head);font-weight:800;font-size:1.15rem;color:var(--clp-ink);margin-bottom:.3rem}
main.clp .clp-clinic p{font-size:.94rem;line-height:1.6;color:var(--clp-text)}

/* ---- FAQ ---- */
main.clp .clp-count{display:inline-block;margin-top:1rem;padding:.4rem .9rem;border-radius:999px;background:#fff;border:1px solid var(--clp-line);color:var(--clp-blue);font-size:.8rem;font-weight:700}
main.clp .clp-faq{display:grid;grid-template-columns:1fr 1fr;gap:.9rem 1.25rem;align-items:start}
main.clp .clp-q{background:#fff;border:1px solid var(--clp-line);border-radius:18px;transition:border-color .25s ease,box-shadow .25s ease}
main.clp .clp-q[open]{border-color:#a9d3ea;box-shadow:0 12px 30px rgba(26,77,143,.08)}
main.clp .clp-q summary{display:flex;align-items:center;gap:.9rem;padding:1.1rem 1.2rem;cursor:pointer;list-style:none}
main.clp .clp-q summary::-webkit-details-marker{display:none}
main.clp .clp-q-num{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e8f4fb;color:var(--clp-blue);font:800 .8rem/1 var(--ff-body)}
main.clp .clp-q[open] .clp-q-num{background:var(--clp-blue);color:#fff}
main.clp .clp-q-text{flex:1;font-weight:700;font-size:1rem;line-height:1.4;color:var(--clp-ink)}
main.clp .clp-q summary i{position:relative;flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--clp-line)}
main.clp .clp-q summary i::before,main.clp .clp-q summary i::after{content:"";position:absolute;top:50%;left:50%;width:11px;height:2px;margin:-1px 0 0 -5.5px;border-radius:2px;background:var(--clp-blue);transition:transform .25s ease}
main.clp .clp-q summary i::after{transform:rotate(90deg)}
main.clp .clp-q[open] summary i::after{transform:rotate(0)}
main.clp .clp-q>p{padding:0 1.2rem 1.2rem 4.3rem;font-size:.96rem;line-height:1.7;color:var(--clp-text)}

/* ---- Final CTA ---- */
main.clp .clp-final{padding:clamp(3.5rem,7vw,6rem) 0;text-align:center;color:#fff;background:radial-gradient(700px 360px at 50% 0%,rgba(0,180,216,.2),transparent 65%),linear-gradient(165deg,#0e2f5a 0%,#071c36 100%)}
main.clp .clp-final .clp-eyebrow{color:var(--clp-cyan-lt)}
main.clp .clp-final .clp-h2{color:#fff;max-width:26ch;margin:0 auto}
main.clp .clp-final-lead{max-width:62ch;margin:1rem auto 0;font-size:1.04rem;line-height:1.7;color:rgba(255,255,255,.84)}
main.clp .clp-decisions{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2.25rem 0;text-align:left}
main.clp .clp-decisions>div{padding:1.35rem;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
main.clp .clp-decisions strong{display:block;font-family:var(--ff-head);font-size:1.1rem;color:#fff;margin-bottom:.4rem}
main.clp .clp-decisions p{font-size:.93rem;line-height:1.6;color:rgba(255,255,255,.78)}
main.clp .clp-final-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}
main.clp .clp-final .button:not(.button-white){background:var(--clp-cyan-dk)}
main.clp .clp-final .button:not(.button-white):hover{background:var(--clp-cyan)}

/* ---- Related + important ---- */
main.clp .clp-related{padding:2rem 0;background:var(--clp-ice);border-top:1px solid var(--clp-line)}
main.clp .clp-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem 3rem}
main.clp .clp-related strong{display:block;font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--clp-navy);margin-bottom:.6rem}
main.clp .clp-related p{font-size:.9rem;line-height:1.6;color:var(--clp-text)}
main.clp .clp-related-links{display:flex;flex-wrap:wrap;gap:.5rem}
main.clp .clp-related-links a{padding:.4rem .85rem;border-radius:999px;background:#fff;border:1px solid var(--clp-line);color:var(--clp-blue);font-size:.86rem;font-weight:600}
main.clp .clp-related-links a:hover{border-color:var(--clp-blue)}

/* ---- Responsive ---- */
@media (max-width:1100px){
  main.clp .clp-grid-4{grid-template-columns:repeat(2,1fr)}
  main.clp .clp-path{grid-template-columns:repeat(3,1fr);row-gap:2rem}
  main.clp .clp-path::before{display:none}
  main.clp .clp-rail{grid-auto-columns:calc((100% - 2rem)/3)}
}
@media (max-width:991px){
  main.clp .clp-hero-grid,main.clp .clp-head,main.clp .clp-explainer,main.clp .clp-imt,main.clp .clp-scan,main.clp .clp-proof-grid,main.clp .clp-faq{grid-template-columns:1fr}
  main.clp .clp-head{align-items:start}
  main.clp .clp-grid-3{grid-template-columns:repeat(2,1fr)}
  main.clp .clp-visual{min-height:520px}
  main.clp .clp-decisions{grid-template-columns:1fr}
  main.clp .clp-rail{grid-auto-columns:calc((100% - 1rem)/2)}
}
@media (max-width:640px){
  main.clp .clp-grid-4,main.clp .clp-grid-3{grid-template-columns:1fr}
  main.clp .clp-kicker{font-size:.66rem;letter-spacing:.06em;border-radius:14px;align-items:flex-start}
  main.clp .clp-kicker i{margin-top:3px}
  main.clp .clp-actions>a{width:100%;justify-content:center}
  main.clp .clp-proof{grid-template-columns:1fr 1fr}
  main.clp .clp-proof li:nth-child(3){border-left:0}
  main.clp .clp-proof li:nth-child(n+3){border-top:1px solid var(--clp-line)}
  main.clp .clp-visual{min-height:500px;border-radius:22px}
  main.clp .clp-visual-float{top:4.4rem;max-width:210px}
  main.clp .clp-stats-grid{grid-template-columns:1fr 1fr}
  main.clp .clp-stats-grid>div:nth-child(3){border-left:0}
  main.clp .clp-stats-grid>div:nth-child(n+3){border-top:1px solid rgba(255,255,255,.12)}
  main.clp .clp-wwh-row{grid-template-columns:1fr;gap:.75rem}
  main.clp .clp-wwh-row>b{width:78px}
  main.clp .clp-path{grid-template-columns:1fr;gap:0}
  main.clp .clp-path li{flex-direction:row;flex-wrap:wrap;align-items:flex-start;text-align:left;padding:0 0 1.4rem 62px;min-height:62px}
  main.clp .clp-path li::before{content:"";position:absolute;left:22px;top:46px;bottom:0;width:2px;background:rgba(144,224,239,.3)}
  main.clp .clp-path li:last-child::before{display:none}
  main.clp .clp-path b{position:absolute;left:0;top:0;margin:0}
  main.clp .clp-path strong{width:100%;padding-top:.65rem}
  main.clp .clp-story{min-height:360px}
  main.clp .clp-rail{grid-auto-columns:78%}
  main.clp .clp-lib-head{flex-direction:column;align-items:flex-start}
  main.clp .clp-q>p{padding-left:1.2rem}
  main.clp .clp-final-actions>a{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  main.clp .clp-kicker i::after,main.clp .clp-visual-badge i::after{animation:none}
}

/* Visually hidden heading - keeps a section heading in the outline for SEO/screen readers without adding visible text. */
main.clp .clp-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Hero copy centred once the hero stacks (tablet + mobile). */
@media (max-width:991px){
  main.clp .clp-hero-copy{text-align:center}
  main.clp .clp-hero-copy .clp-kicker{text-align:center}
  main.clp .clp-hero-copy .clp-lead,main.clp .clp-hero-copy .clp-support,main.clp .clp-hero-copy .clp-proof{margin-left:auto;margin-right:auto}
  main.clp .clp-hero-copy .clp-support{border-left:1px solid var(--clp-line);border-top:4px solid var(--clp-cyan)}
  main.clp .clp-hero-copy .clp-actions{justify-content:center}
  main.clp .clp-hero-copy .clp-proof li{align-items:center;text-align:center}
  main.clp .clp-hero-copy .clp-proof .clp-proof-loc{justify-content:center}
}

/* Hero image overlays (badge, icon, "Not sure" card, care-flow panel) hidden on phones. */
@media (max-width:767px){
  main.clp .clp-visual .clp-visual-badge,main.clp .clp-visual .clp-visual-mark,main.clp .clp-visual .clp-visual-float,main.clp .clp-visual .clp-visual-copy{display:none}
}
