/* ==========================================================================
   Medical Care Hub — Responsive rules
   Verified layouts: 1920 · 1440 · 1280 · 1024 · 768 · 430 · 390 · 360
   ========================================================================== */

/* ---------- 1920px+ ultrawide: keep content comfortable ---------- */
@media (min-width:1700px){
  :root{--container:1400px;--gutter:32px}
  body{font-size:17px}
  .hero__inner{gap:64px}
}

/* ---------- 1440 / 1400 laptop ---------- */
@media (max-width:1699px){
  :root{--container:1340px}
}

@media (max-width:1400px){
  :root{--container:1200px}
  .brand__text em{display:none}
  .mainnav__list a{padding:12px 12px;font-size:.82rem}
  .header-contact{gap:14px}
  .hero__badge{left:0}
}

/* ---------- 1100px: compact contacts, nav moves into the drawer ---------- */
@media (max-width:1100px){
  :root{--container:1040px}
  .header-contact small{display:none}
  .header-contact__ico{width:32px;height:32px}
  .header-contact strong{font-size:.8rem}
  .site-header__actions{gap:12px}
  .hamburger{display:grid}

  .mainnav{
    position:fixed;top:0;right:0;bottom:0;width:min(370px,86vw);z-index:950;
    background:#fff;box-shadow:-14px 0 44px rgba(10,36,56,.18);
    transform:translateX(102%);transition:transform .38s cubic-bezier(.22,.61,.36,1);
  }
  .mainnav.is-open{transform:translateX(0)}
  .mainnav__inner{
    display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;
    height:100%;padding:22px 22px 40px;overflow-y:auto;max-width:none;
  }
  .mainnav__close{
    display:grid;place-items:center;width:42px;height:42px;margin-left:auto;margin-bottom:10px;
    border-radius:12px;background:var(--light);border:1px solid var(--line);color:var(--navy);
  }
  .mainnav__list{flex-direction:column;align-items:stretch;gap:2px}
  .mainnav__list a{
    padding:14px 14px;border-radius:var(--r-sm);font-size:1rem;color:var(--navy);
    border-bottom:1px solid var(--line-soft);
  }
  .mainnav__list a::after{display:none}
  .mainnav__list a:hover,.mainnav__list a.is-active{color:var(--blue);background:rgba(22,119,168,.07)}
  .mainnav__mobile-actions{display:grid;gap:12px;margin-top:26px}
  .mainnav__contact{display:grid;gap:12px;margin-top:14px;padding-top:20px;border-top:1px solid var(--line-soft)}
  .mainnav__contact li{display:flex;gap:10px;align-items:center;font-size:.88rem;color:var(--muted)}
  .mainnav__contact svg{color:var(--teal);flex:none}
}

/* ---------- 1024px tablet landscape ---------- */
@media (max-width:1024px){
  :root{--gutter:20px;--section-y:clamp(48px,6vw,72px)}
  .hero__inner{grid-template-columns:1fr;gap:38px;text-align:left}
  .hero__figure{max-width:620px}
  .hero__badge{left:12px}
  .trust{margin-top:-30px}
  .trust__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust__item{border-bottom:1px solid var(--line-soft)}
  .trust__item:nth-child(2n){border-right:0}
  .trust__item:nth-last-child(-n+2){border-bottom:0}
  .grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 26px}
  .step:nth-child(2n)::after{display:none}
  .split{grid-template-columns:1fr;gap:34px}
  .split--reverse .split__media{order:0}
  .split__float{right:14px;bottom:-14px}
  .doc-detail{grid-template-columns:1fr}
  .doc-detail__media img{max-width:420px}
  .contact-layout{grid-template-columns:1fr}
  .emergency__inner{grid-template-columns:1fr;gap:26px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .field--half{grid-column:span 1}
  .counters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .map-wrap iframe{height:380px}
}

/* ---------- 900px ---------- */
@media (max-width:900px){
  .topbar__list li.hide-md{display:none}
  .quick-appt__head{flex-direction:column;align-items:flex-start}
  .cta-strip__inner{flex-direction:column;align-items:flex-start;text-align:left}
}

/* ---------- 768px tablet portrait ---------- */
@media (max-width:768px){
  :root{--header-h:68px;--section-y:clamp(44px,7vw,64px)}
  body{font-size:15.5px;padding-bottom:64px}   /* room for the mobile action bar */
  h1{font-size:clamp(1.75rem,6.4vw,2.3rem)}
  h2{font-size:clamp(1.4rem,5vw,1.85rem)}
  .topbar{font-size:.78rem}
  .topbar__inner{justify-content:center;gap:10px 16px;padding-block:8px}
  .topbar__list{gap:14px;margin-right:0;justify-content:center;width:100%;order:3}
  .topbar__social{display:none}
  .site-header__actions .btn{display:none}
  .header-contact{display:none}
  .brand__text em{display:none}
  .brand__text strong{font-size:1.05rem}
  .grid,.grid--2,.grid--3,.grid--4,.grid--auto{grid-template-columns:1fr;gap:20px}
  .info-grid,.ticks--2col{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr;gap:34px}
  .step::after{display:none}
  .trust__grid{grid-template-columns:1fr;border-radius:var(--r)}
  .trust__item{border-right:0}
  .trust{margin-top:-20px}
  .hero__actions .btn{flex:1 1 auto}
  .hero__pill{display:none}
  .hero__badge{position:static;margin-top:-26px;margin-inline:14px;width:auto}
  .hero__figure>img{aspect-ratio:4/3}
  .form-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:32px;text-align:left}
  .footer-bottom{flex-direction:column;text-align:center;gap:12px}
  .footer-legal{justify-content:center;gap:16px}
  .faq__a-inner{padding-left:24px}
  .faq__q{padding:16px 18px;font-size:.94rem;gap:12px}
  .emergency__actions{width:100%}
  .doc-detail__media img{max-width:100%}
  .map-wrap iframe{height:320px}
  .map-note{position:static;max-width:none;border-radius:0;box-shadow:none;border-bottom:1px solid var(--line)}
  .float-whatsapp{bottom:80px;right:16px;width:52px;height:52px}
  .float-whatsapp__tip{display:none}
  .to-top{bottom:142px;right:18px}
  .mobile-bar{
    display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:820;
    background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(18,59,93,.1);
    padding:6px 6px calc(6px + env(safe-area-inset-bottom));
  }
  .mobile-bar a{
    display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;border-radius:12px;
    font-family:var(--ff-head);font-size:.7rem;font-weight:600;color:var(--navy);
  }
  .mobile-bar svg{color:var(--blue)}
  .mobile-bar a.is-primary{background:var(--grad-brand);color:#fff}
  .mobile-bar a.is-primary svg{color:#fff}
  .tabs{gap:8px;margin-bottom:28px}
  .tab{padding:8px 15px;font-size:.82rem}
}

/* ---------- 480px large phone ---------- */
@media (max-width:480px){
  :root{--gutter:16px}
  .card,.role-card,.pkg-card,.tst-card{padding:24px 20px}
  .quick-appt__card{padding:22px 18px;border-radius:var(--r-md)}
  .contact-form{padding:22px 18px}
  .svc-card{padding:20px;gap:14px}
  .svc-card__ico{width:46px;height:46px}
  .doc-card__actions{flex-direction:column}
  .doc-card__actions .btn{width:100%}
  .fac-card__actions{flex-direction:column}
  .fac-card__actions .btn{width:100%}
  .hero__actions{flex-direction:column;align-items:stretch}
  .hero__actions .btn{width:100%}
  .hero__meta{gap:10px 18px;font-size:.84rem}
  .btn{padding:12px 20px}
  .quick-actions{grid-template-columns:1fr}
  .counters{grid-template-columns:1fr}
  .form-footer{flex-direction:column;align-items:stretch}
  .form-footer .btn{width:100%}
  .err-links{flex-direction:column}
  .err-links .btn{width:100%}
}

/* ---------- 390px / 375px ---------- */
@media (max-width:400px){
  body{font-size:15px}
  .brand__mark svg{width:38px;height:38px}
  .brand__text strong{font-size:.98rem}
  .topbar__list{gap:10px;font-size:.74rem}
  .topbar__emergency{font-size:.72rem;padding:5px 11px}
  .card__ico,.role-card__ico{width:52px;height:52px;border-radius:15px}
  .pkg-price strong{font-size:1.35rem}
  .chip{font-size:.72rem;padding:4px 9px}
}

/* ---------- 360px small phone ---------- */
@media (max-width:360px){
  :root{--gutter:14px}
  .topbar__inner{gap:8px}
  .topbar__list li a span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hamburger{width:42px;height:42px}
  .mobile-bar a{font-size:.66rem}
  .faq__q{font-size:.9rem}
}

/* ---------- print ---------- */
@media print{
  .topbar,.site-header,.mobile-bar,.float-whatsapp,.to-top,.cta-strip,.hero__actions{display:none !important}
  body{background:#fff;color:#000;padding:0}
  .card,.doc-card,.fac-card,.pkg-card{box-shadow:none;border-color:#ccc}
}
