
:root{
  --pink:#ED3A5F;
  --pink-deep:#D42A4E;
  --indigo:#6B72C4;
  --indigo-deep:#565DAF;
  --ink:#2B2B33;
  --ink-soft:#5A5A66;
  --pink-tint:#FDF1F4;
  --indigo-tint:#EFF0FA;
  --paper:#FFFFFF;
  --line:#ECECF2;
  --radius:20px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;font-size:16px}
h1,h2,h3,h4{font-family:'Sora',sans-serif;line-height:1.15;letter-spacing:-0.02em}
img{max-width:100%}
a{text-decoration:none;color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--indigo-deep)}
.eyebrow::before{content:"";width:22px;height:4px;border-radius:2px;background:var(--pink)}
.btn{display:inline-block;padding:14px 28px;border-radius:999px;font-weight:700;font-size:15px;transition:transform .15s ease, box-shadow .15s ease;cursor:pointer;border:none;font-family:inherit}
.btn:hover{transform:translateY(-2px)}
.btn:focus-visible{outline:3px solid var(--indigo);outline-offset:2px}
.btn-pink{background:var(--pink);color:#fff;box-shadow:0 8px 24px rgba(237,58,95,.28)}
.btn-pink:hover{background:var(--pink-deep)}
.btn-ghost{background:#fff;color:var(--ink);border:2px solid var(--line)}
.btn-ghost:hover{border-color:var(--indigo)}
.btn-indigo{background:var(--indigo);color:#fff;box-shadow:0 8px 24px rgba(107,114,196,.3)}
.btn-indigo:hover{background:var(--indigo-deep)}

/* NAV */
nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:center;gap:10px;font-family:'Sora',sans-serif;font-weight:800;font-size:22px}
.logo .c{color:var(--pink)}
.logo .m{color:var(--ink)}
.nav-links{display:flex;gap:30px;font-weight:600;font-size:15px;color:var(--ink-soft)}
.nav-links a:hover{color:var(--pink)}
.nav-cta{display:flex;gap:12px;align-items:center}
.nav-cta .btn{padding:11px 22px;font-size:14px}
@media(max-width:900px){.nav-links{display:none}}

/* HERO */
.hero{background:var(--indigo-tint);padding:80px 0 90px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.hero h1{font-size:clamp(36px,4.6vw,58px);font-weight:800;margin:18px 0 20px}
.hero h1 .grad{color:var(--pink)}
.hero p.lede{font-size:19px;color:var(--ink-soft);max-width:520px;margin-bottom:32px}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero-trust{display:flex;gap:28px;margin-top:44px;flex-wrap:wrap}
.trust-item strong{font-family:'Sora',sans-serif;font-size:24px;display:block;color:var(--ink)}
.trust-item span{font-size:13px;color:var(--ink-soft)}

/* CARD MOCKUP */
.card-stage{position:relative;display:flex;flex-direction:column;align-items:center;perspective:1400px}
.hcard{width:400px;max-width:100%;aspect-ratio:1.586;border-radius:26px;padding:30px 32px;color:#fff;position:relative;
  display:flex;flex-direction:column;
  background:var(--indigo);
  box-shadow:0 34px 70px rgba(79,82,168,.34);
  transform:rotate(-7deg) rotateX(6deg) rotateY(-9deg);
  transform-style:preserve-3d;transition:transform .35s ease}
.hcard:hover{transform:rotate(0deg)}
.hcard-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.hcard .brand{font-family:'Sora',sans-serif;font-weight:800;font-size:22px;letter-spacing:-.01em}
.hcard .tier{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;opacity:.85;text-align:right;line-height:1.4}
/* EMV chip */
.hcard .chip{display:block;width:46px;height:34px;border-radius:8px;margin-top:26px;background:#E3B85C}
.hcard .num{font-family:'Sora',sans-serif;font-weight:500;letter-spacing:.22em;font-size:22px;margin-top:auto;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hcard-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:18px;
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;opacity:.9}
.hcard-foot .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hcard-foot .valid{white-space:nowrap}
.hcard-note{font-size:11.5px;color:var(--ink-soft);text-align:center;max-width:380px;margin:30px auto 0;line-height:1.6}
.float-chip{position:absolute;background:#fff;border-radius:14px;padding:12px 18px;box-shadow:0 14px 36px rgba(43,43,51,.14);font-weight:700;font-size:14px;display:flex;align-items:center;gap:10px}
.float-chip .dot{width:10px;height:10px;border-radius:50%}
.chip1{top:-30px;right:-4%}.chip1 .dot{background:var(--pink)}
.chip2{bottom:86px;left:0}.chip2 .dot{background:var(--indigo)}
@media(prefers-reduced-motion:reduce){.hcard,.hcard:hover{transition:none}}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.card-stage{margin-top:20px}}

/* SECTIONS */
section{padding:88px 0}
.sec-head{max-width:640px;margin-bottom:52px}
.sec-head h2{font-size:clamp(28px,3.4vw,40px);font-weight:800;margin:14px 0 14px}
.sec-head p{color:var(--ink-soft);font-size:17px}
.center{text-align:center;margin-left:auto;margin-right:auto}
.center .eyebrow{justify-content:center}

/* TREATMENTS */
.t-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.t-card{border:1px solid var(--line);border-radius:var(--radius);padding:26px 20px;text-align:center;transition:all .2s ease;background:#fff}
.t-card:hover{border-color:var(--indigo);box-shadow:0 14px 34px rgba(107,114,196,.14);transform:translateY(-4px)}
.t-icon{width:56px;height:56px;border-radius:16px;margin:0 auto 14px;display:grid;place-items:center;font-size:26px}
.t-card:nth-child(odd) .t-icon{background:var(--pink-tint)}
.t-card:nth-child(even) .t-icon{background:var(--indigo-tint)}
.t-card h3{font-size:15px;font-weight:700}
.t-card span{font-size:12.5px;color:var(--ink-soft)}
@media(max-width:1100px){.t-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.t-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.t-grid{grid-template-columns:repeat(2,1fr)}}

/* JOURNEY — signature arc */
.journey{background:#fff}
.j-track{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:8px}
.j-track::before{content:"";position:absolute;top:26px;left:6%;right:6%;height:6px;border-radius:3px;
  background:var(--indigo);opacity:.35}
.j-step{position:relative;text-align:center;padding-top:64px}
.j-step .node{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:38px;height:38px;border-radius:50%;background:#fff;border:4px solid var(--pink);display:grid;place-items:center;font-family:'Sora',sans-serif;font-weight:800;font-size:14px;color:var(--pink)}
.j-step:nth-child(3) .node{border-color:#A05A96;color:#A05A96}
.j-step:nth-child(4) .node,.j-step:nth-child(5) .node{border-color:var(--indigo);color:var(--indigo)}
.j-step h3{font-size:16px;margin-bottom:6px}
.j-step p{font-size:13.5px;color:var(--ink-soft);max-width:200px;margin:0 auto}
@media(max-width:900px){.j-track{grid-template-columns:1fr}.j-track::before{display:none}.j-step{padding-top:0;padding-left:56px;text-align:left}.j-step .node{left:0;transform:none}}

/* BENEFITS */
.b-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.b-card{border-radius:var(--radius);padding:32px 28px;background:#fff;border:1px solid var(--line);transition:all .2s ease}
.b-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(43,43,51,.08)}
.b-card .ic{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;font-size:23px}
.b-card:nth-child(3n+1) .ic{background:var(--pink-tint)}
.b-card:nth-child(3n+2) .ic{background:var(--indigo-tint)}
.b-card:nth-child(3n) .ic{background:var(--pink-tint)}
.b-card h3{font-size:18px;margin-bottom:8px}
.b-card p{font-size:14.5px;color:var(--ink-soft)}
@media(max-width:1000px){.b-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.b-grid{grid-template-columns:1fr}}

/* PLANS */
.plans{background:var(--ink);color:#fff}
.plans .sec-head h2{color:#fff}
.plans .sec-head p{color:#B9B9C6}
.plans .eyebrow{color:#9AA0E8}
.p-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.p-card{background:#34343E;border-radius:var(--radius);padding:36px 30px;border:1px solid #44444F;position:relative}
.p-card.featured{background:var(--pink);border:none;transform:scale(1.04);box-shadow:0 24px 60px rgba(237,58,95,.3)}
.p-card .tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:#fff;color:var(--pink);font-size:12px;font-weight:800;letter-spacing:.08em;padding:5px 16px;border-radius:999px;text-transform:uppercase}
.p-card h3{font-size:20px;margin-bottom:6px}
.p-card .price{font-family:'Sora',sans-serif;font-size:38px;font-weight:800;margin:12px 0 2px}
.p-card .per{font-size:13px;opacity:.75;margin-bottom:22px}
.p-card ul{list-style:none;margin-bottom:28px}
.p-card li{padding:8px 0;font-size:14.5px;display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.08)}
.p-card li::before{content:"✓";font-weight:800;color:var(--pink)}
.p-card.featured li::before{color:#fff}
.p-card .btn{width:100%;text-align:center}
.p-card.featured .btn{background:#fff;color:var(--pink)}
@media(max-width:1000px){.p-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}.p-card.featured{transform:none}}

/* HOSPITALS strip */
.h-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.h-card{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#fff;transition:all .2s ease}
.h-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(43,43,51,.1)}
.h-img{height:150px;display:flex;align-items:flex-end;padding:16px;color:#fff;font-weight:700;font-family:'Sora',sans-serif}
.h1i{background:var(--indigo)}
.h2i{background:var(--pink)}
.h3i{background:var(--indigo-deep)}
.h-body{padding:20px 22px}
.h-body .meta{font-size:13px;color:var(--ink-soft);margin-bottom:10px}
.h-badges{display:flex;gap:8px;flex-wrap:wrap}
.badge{font-size:12px;font-weight:700;padding:5px 12px;border-radius:999px}
.badge.pk{background:var(--pink-tint);color:var(--pink-deep)}
.badge.in{background:var(--indigo-tint);color:var(--indigo-deep)}
@media(max-width:1000px){.h-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.h-grid{grid-template-columns:1fr}}

/* CTA / FORM */
.cta{background:var(--indigo-tint)}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cta h2{font-size:clamp(28px,3.2vw,38px);font-weight:800;margin:14px 0 16px}
.cta p{color:var(--ink-soft);margin-bottom:22px}
.cta ul{list-style:none}
.cta li{padding:7px 0;font-weight:600;font-size:15px;display:flex;gap:10px}
.cta li::before{content:"●";color:var(--pink);font-size:11px;line-height:2.2}
.form-card{background:#fff;border-radius:24px;padding:36px;box-shadow:0 24px 60px rgba(43,43,51,.12)}
.form-card h3{font-size:20px;margin-bottom:20px}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-card label{font-size:13px;font-weight:700;display:block;margin:14px 0 6px}
.form-card input,.form-card select,.form-card textarea{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:12px;font-family:inherit;font-size:14.5px;background:#FAFAFC}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:none;border-color:var(--indigo);background:#fff}
.form-card .btn{width:100%;margin-top:22px}
.form-note{font-size:12.5px;color:var(--ink-soft);text-align:center;margin-top:12px}
@media(max-width:900px){.cta-grid{grid-template-columns:1fr}.f-row{grid-template-columns:1fr}}

/* FOOTER */
footer{background:var(--ink);color:#B9B9C6;padding:64px 0 32px;font-size:14px}
.f-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:44px}
footer h4{color:#fff;font-size:15px;margin-bottom:16px}
footer a{display:block;padding:5px 0}
footer a:hover{color:var(--pink)}
.f-logo{font-family:'Sora',sans-serif;font-weight:800;font-size:22px;color:#fff;margin-bottom:12px}
.f-logo .c{color:var(--pink)}
.f-bottom{border-top:1px solid #44444F;padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12.5px;color:#8A8A96}
@media(max-width:900px){.f-grid{grid-template-columns:1fr 1fr}}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.on{opacity:1;transform:none}

/* Card — small screens. Keep the credit-card aspect ratio; only scale type,
   and drop the 3D tilt so the card does not overflow a narrow viewport. */
@media(max-width:560px){
  .hcard{padding:24px 24px;border-radius:22px;transform:rotate(-4deg)}
  .hcard .brand{font-size:19px}
  .hcard .num{font-size:16px;letter-spacing:.16em}
  .hcard .chip{width:40px;height:30px;margin-top:18px}
  .hcard-foot{font-size:10.5px;letter-spacing:.1em}
  .chip1,.chip2{display:none}
}

/* FAQ */
.faq{max-width:820px;margin:0 auto}
.faq details{border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:10px;background:#fff}
.faq summary{font-weight:700;cursor:pointer;font-family:'Sora',sans-serif;font-size:15.5px;list-style:none;display:flex;justify-content:space-between}
.faq summary::after{content:"+";color:var(--pink);font-size:20px;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq p{color:var(--ink-soft);font-size:14.5px;margin-top:10px}
/* consent, cookie, disclaimer, modal, static page */
.consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--ink-soft);margin-top:14px;font-weight:500}
.consent input{margin-top:3px;width:auto}
.form-err{color:var(--pink-deep);font-size:13px;margin-top:10px;display:none}
.form-ok{background:var(--indigo-tint);border-radius:12px;padding:16px;text-align:center;font-weight:600}
.disclaimer{font-size:12.5px;color:var(--ink-soft);margin-top:20px;max-width:900px}
.cookie{position:fixed;bottom:16px;left:16px;right:16px;max-width:520px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 40px rgba(43,43,51,.16);border-radius:16px;padding:16px 18px;font-size:13.5px;display:none;z-index:60;align-items:center;gap:14px}
.cookie .btn{padding:9px 16px;font-size:13px;white-space:nowrap}
.modal-bg{position:fixed;inset:0;background:rgba(43,43,51,.55);display:none;place-items:center;z-index:70;padding:20px}
.modal{background:#fff;border-radius:22px;padding:32px;max-width:520px;width:100%;max-height:92vh;overflow:auto;position:relative}
.modal .x{position:absolute;top:14px;right:16px;border:none;background:none;font-size:22px;cursor:pointer;color:var(--ink-soft)}
.page-wrap{max-width:820px;margin:0 auto;padding:60px 24px 90px}
.page-wrap h1{font-size:clamp(30px,4vw,44px);font-weight:800;margin-bottom:8px}
.page-wrap h2{font-size:22px;margin:32px 0 10px}
.page-wrap p,.page-wrap li{color:var(--ink-soft);margin-bottom:12px}
.page-wrap .lead{font-size:18px;color:var(--ink)}
.page-wrap .kv{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:22px 0}
.page-wrap .kv div{background:var(--indigo-tint);border-radius:12px;padding:14px 16px}
.page-wrap .kv b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--indigo-deep)}
.page-wrap .kv span{font-weight:600;color:var(--ink)}
.f-company{font-size:12.5px;color:#8A8A96;margin-top:14px;line-height:1.7}
.whatsapp-fab{position:fixed;right:20px;bottom:20px;z-index:55;background:#25D366;color:#fff;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;box-shadow:0 10px 26px rgba(37,211,102,.4);font-size:26px}

/* Honeypot field — off-screen rather than display:none so bots that skip
   hidden inputs still fill it in. Never shown to, or focusable by, a human. */
.hp{position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.page-wrap ul{margin:0 0 12px 20px}
.page-wrap .btn{color:#fff}
button[disabled]{opacity:.6;cursor:not-allowed}
@media(max-width:640px){.page-wrap .kv{grid-template-columns:1fr}}

/* Phone number: dial-code select + national number */
.phone-row{display:grid;grid-template-columns:118px 1fr;gap:8px}
.phone-row select{font-variant-numeric:tabular-nums}
.geo-btn{margin-top:8px;background:none;border:1px solid var(--line);border-radius:9px;padding:7px 12px;
  font-size:12.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;font-family:inherit}
.geo-btn:hover:not(:disabled){border-color:var(--indigo);color:var(--indigo-deep)}
.geo-btn:disabled{opacity:.6;cursor:progress}
.geo-status{display:block;margin-top:6px;font-size:12px;color:var(--ink-soft);min-height:1em}
@media(max-width:560px){.phone-row{grid-template-columns:104px 1fr}}


/* ------------------------------------------------------------------ *
 * RESPONSIVE — fluid type, safe areas, and a real mobile nav
 * ------------------------------------------------------------------ */

/* Never let a long word, URL or unbroken Bengali/Arabic string force a
   horizontal scrollbar on a narrow screen. */
html, body { overflow-x: hidden; }
body, p, li, td, h1, h2, h3, h4 { overflow-wrap: anywhere; }
table { max-width: 100%; }

/* Respect notches and rounded corners on modern phones. */
.wrap { padding-inline: max(20px, env(safe-area-inset-left)); }

/* Fluid section rhythm instead of a fixed 88px. */
section { padding: clamp(52px, 8vw, 88px) 0; }
.sec-head { margin-bottom: clamp(30px, 5vw, 52px); }

/* Tap targets: 44px minimum on touch devices. */
@media (hover: none) and (pointer: coarse) {
  .btn, .geo-btn, button, select, input[type="checkbox"] { min-height: 44px; }
  .nav-links a, .lang-menu a { padding-block: 10px; }
}

/* ------------------------------------------------------------------ *
 * Breadcrumbs
 * ------------------------------------------------------------------ */
.crumbs{border-bottom:1px solid var(--line);background:#fff}
.crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;list-style:none;margin:0;padding:12px 0;
  font-size:13px;color:var(--ink-soft)}
.crumbs li{display:flex;align-items:center;gap:8px}
.crumbs li+li::before{content:"/";color:var(--line-strong,#C9C9D6)}
.crumbs a{color:var(--ink-soft)}
.crumbs a:hover{color:var(--pink)}
.crumbs [aria-current="page"]{font-weight:700;color:var(--ink)}

/* ------------------------------------------------------------------ *
 * Index pages (treatments, hospitals)
 * ------------------------------------------------------------------ */
.page-wrap.wide{max-width:1180px}
.page-wrap.wide .t-card h2{font-size:15px;font-weight:700;margin:0}
.page-wrap.wide .t-card:hover h2{color:var(--pink)}
.h-name{font-size:17px;margin:0 0 6px}

.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:18px 0 24px;
  border:1px solid var(--line);border-radius:var(--radius)}
table.data{width:100%;border-collapse:collapse;font-size:14.5px;min-width:520px}
table.data th,table.data td{text-align:left;padding:13px 18px;border-bottom:1px solid var(--line)}
table.data thead th{background:var(--indigo-tint);font-size:12px;text-transform:uppercase;
  letter-spacing:.08em;color:var(--indigo-deep)}
table.data tbody tr:last-child th,table.data tbody tr:last-child td{border-bottom:none}
table.data tbody th{font-weight:700;color:var(--ink)}
table.data td{color:var(--ink-soft)}
table.data a{color:var(--pink);font-weight:700}
table.data a:hover{text-decoration:underline}

/* ------------------------------------------------------------------ *
 * Healthcare Card page
 * ------------------------------------------------------------------ */
.card-facts-sec{padding:0;margin-top:-34px}
.card-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  box-shadow:0 16px 40px rgba(43,43,51,.07)}
.card-facts .fact{background:#fff;padding:22px 24px}
.card-facts b{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.1em;
  color:var(--indigo-deep);margin-bottom:6px}
.card-facts span{font-size:14.5px;font-weight:600;color:var(--ink);line-height:1.5}
.card-facts a{color:var(--pink);font-weight:700}
.card-facts a:hover{text-decoration:underline}

.card-cta{background:#fff;text-align:center}
.card-cta h2{font-size:clamp(26px,3.2vw,38px);font-weight:800;margin:14px 0 14px}
.card-cta p{color:var(--ink-soft);font-size:17px;margin-bottom:30px}

@media(max-width:820px){.card-facts-sec{margin-top:0;padding:36px 0 0}}

/* ------------------------------------------------------------------ *
 * Currency switch
 * ------------------------------------------------------------------ */
.cur-switch{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;
  margin:-26px 0 38px;font-size:13.5px;color:#B9B9C6}
.cur-switch a{color:#fff;font-weight:700;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;padding:7px 16px;transition:background .15s ease,border-color .15s ease}
.cur-switch a:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}
.p-card .fmt{font-size:13px;color:var(--ink-soft);margin:-6px 0 14px}
.p-card.featured .fmt{color:rgba(255,255,255,.82)}

/* ------------------------------------------------------------------ *
 * Partnership status
 * ------------------------------------------------------------------ */
.pstat{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;
  letter-spacing:.02em;padding:5px 11px;border-radius:999px;white-space:nowrap}
.pstat.is-partner{background:#E7F6EE;color:#1B7A4B}
.pstat.is-onboarding{background:var(--indigo-tint);color:var(--indigo-deep)}

/* ------------------------------------------------------------------ *
 * Hospital network index
 * ------------------------------------------------------------------ */
.net-stats{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 10px}
.net-stats div{flex:1 1 150px;background:var(--indigo-tint);border-radius:var(--radius);padding:18px 20px}
.net-stats strong{display:block;font-family:'Sora',sans-serif;font-size:26px;color:var(--ink)}
.net-stats span{font-size:13px;color:var(--ink-soft)}

.city-block{padding:34px 0 0}
.city-block h2{display:flex;align-items:center;gap:12px;font-size:20px;margin:0 0 18px}
.city-block h2 .count{font-size:12px;font-weight:700;color:var(--indigo-deep);
  background:var(--indigo-tint);border-radius:999px;padding:4px 10px}

.net-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:16px}
.net-card{display:block;border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;
  background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.net-card:hover{border-color:var(--indigo);box-shadow:0 14px 34px rgba(107,114,196,.13);transform:translateY(-3px)}
.net-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}
.net-top h3{font-size:16px;line-height:1.35;margin:0}
.net-card .meta{font-size:12.5px;color:var(--ink-soft);margin-bottom:12px}
.net-benefit{margin-top:12px;font-size:13px;font-weight:600;color:var(--pink-deep)}

.net-note{margin:46px 0 30px;padding:22px 24px;border-left:4px solid var(--indigo);
  background:var(--indigo-tint);border-radius:0 var(--radius) var(--radius) 0}
.net-note p{font-size:13.5px;color:var(--ink-soft);margin:0 0 10px}
.net-note p:last-child{margin-bottom:0}
.net-note em{font-style:normal;font-weight:700;color:var(--ink)}

.notice{background:var(--indigo-tint);border-radius:var(--radius);padding:16px 20px;
  font-size:14px;color:var(--ink-soft)}

/* ------------------------------------------------------------------ *
 * Concierge band
 * ------------------------------------------------------------------ */
.concierge-band{background:var(--indigo-tint)}
.concierge-band .wrap{display:grid;grid-template-columns:220px 1fr;gap:44px;align-items:center}
.cb-figure{text-align:center;background:#fff;border-radius:var(--radius);padding:28px 20px;
  box-shadow:0 14px 36px rgba(107,114,196,.14)}
.cb-figure strong{display:block;font-family:'Sora',sans-serif;font-size:60px;line-height:1;color:var(--pink)}
.cb-figure span{display:block;margin-top:10px;font-size:13.5px;font-weight:600;color:var(--ink-soft)}
.cb-body h2{font-size:clamp(24px,3vw,34px);font-weight:800;margin-bottom:14px}
.cb-body p{color:var(--ink-soft);font-size:16px;margin-bottom:12px}
.cb-body .fine{font-size:13px;color:#8A8A96;margin-bottom:0}

@media(max-width:820px){
  .concierge-band .wrap{grid-template-columns:1fr;gap:26px}
  .cb-figure{max-width:220px}
  .cur-switch{margin-top:-14px}
}
@media(max-width:560px){
  .net-grid{grid-template-columns:1fr}
  .net-top{flex-direction:column;gap:8px}
  .net-stats div{flex-basis:100%}
}

/* ------------------------------------------------------------------ *
 * Partner logo wall
 * ------------------------------------------------------------------ */
.wall-sec{background:#fff}
.wall-label{text-align:center;font-size:13.5px;color:var(--ink-soft);margin:-24px 0 22px}
.wall-head{font-size:20px;margin:38px 0 18px}

.logo-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-bottom:44px}
.logo-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  min-height:96px;padding:16px 14px;background:#fff;border:1px solid var(--line);
  border-radius:14px;text-align:center;transition:border-color .2s ease,box-shadow .2s ease}
.logo-tile:hover{border-color:var(--indigo);box-shadow:0 10px 26px rgba(107,114,196,.12)}

/* An uploaded logo is letterboxed, never stretched — a squashed trademark is
   worse than no trademark. Greyscale until hover keeps 25 different brand
   palettes from fighting each other and the page. */
.logo-tile img{max-width:100%;max-height:52px;width:auto;height:auto;object-fit:contain;
  filter:grayscale(1);opacity:.78;transition:filter .2s ease,opacity .2s ease}
.logo-tile:hover img{filter:none;opacity:1}

.logo-tile .mono{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;
  background:var(--indigo-tint);color:var(--indigo-deep);
  font-family:'Sora',sans-serif;font-weight:800;font-size:15px;letter-spacing:.02em}
.logo-tile:nth-child(3n) .mono{background:var(--pink-tint);color:var(--pink-deep)}
.logo-tile .wordmark{font-size:11.5px;font-weight:600;color:var(--ink-soft);line-height:1.35}

@media(max-width:560px){
  .logo-wall{grid-template-columns:repeat(2,1fr);gap:10px}
  .logo-tile{min-height:88px}
}

/* --- Tablet --- */
@media (max-width: 1000px) {
  .hero { padding: 60px 0 70px; }
  .hero-grid { gap: 40px; }
  .cta-grid { gap: 36px; }
}

/* --- Small tablet / large phone --- */
@media (max-width: 820px) {
  .hero-grid { grid-template-columns: 1fr; }
  .card-stage { margin-top: 8px; }
  .hero p.lede { max-width: none; }
  .hero-trust { gap: 20px 28px; margin-top: 32px; }
  .cta-grid { grid-template-columns: 1fr; }
  .f-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
}

/* --- Phone --- */
@media (max-width: 560px) {
  .nav-in { height: 62px; }
  .logo img { height: 46px !important; margin: 0 !important; }
  .nav-cta .btn { padding: 10px 14px; font-size: 13px; }
  .nav-cta .btn-ghost { display: none; }

  .hero { padding: 40px 0 56px; }
  .hero-ctas { flex-direction: column; align-items: stretch; }
  .hero-ctas .btn { text-align: center; }
  .hero-trust { gap: 16px 22px; }
  .trust-item strong { font-size: 20px; }

  .f-row { grid-template-columns: 1fr; }
  .form-card { padding: 22px 18px; }
  .modal { padding: 22px 18px; border-radius: 16px; }
  .f-grid { grid-template-columns: 1fr; }

  .whatsapp-fab { width: 48px; height: 48px; font-size: 22px; right: 14px; bottom: calc(14px + env(safe-area-inset-bottom)); }
  .cookie { flex-direction: column; align-items: stretch; gap: 10px; text-align: center; }
}

/* --- Very small phones (360px and below) --- */
@media (max-width: 380px) {
  .nav-cta .btn { padding: 9px 12px; font-size: 12.5px; }
  .hcard { padding: 20px; }
  .hcard .num { font-size: 15px; letter-spacing: .12em; }
  .phone-row { grid-template-columns: 96px 1fr; }
}

/* --- Landscape phones: reclaim vertical space --- */
@media (max-height: 520px) and (orientation: landscape) {
  .hero { padding: 32px 0 40px; }
  section { padding: 44px 0; }
}

/* --- Print --- */
@media print {
  nav, .whatsapp-fab, .cookie, .float-chip, .hero-ctas, .form-card { display: none !important; }
  body { font-size: 12pt; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 10pt; }
}
