/*
Theme Name:  Dr. Siddharth Reddy Orthopaedics
Theme URI:   https://thoughtful.design/drsiddharthreddyortho/
Author:      Thoughtful Design
Author URI:  https://thoughtful.design/
Description: Custom pixel-perfect WordPress theme for Dr. Siddharth Reddy Orthopaedics, Hyderabad. Features hero slider, specialties tabs with panel, testimonials slider, YouTube insights, blog slider, appointment form with AJAX, floating WhatsApp/Call/scroll-to-top buttons, mobile hamburger menu and full responsive design.
Version:     1.0.0
Requires at least: 6.2
Tested up to: 6.5
Requires PHP: 8.0
License:     GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dsr-ortho
Tags:        medical, health, one-page, custom-menu, featured-images, custom-logo, responsive-layout, full-width-template
*/

/* ══ RESET ══ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:110%}
body{font-family:'Inter',system-ui,sans-serif;color:#1a2e4a;background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul,ol{list-style:none}
button{cursor:pointer;font-family:inherit;border:none;background:none;padding:0}
input,select,textarea{font-family:inherit;outline:none}

/* ══ TOKENS ══ */
:root{
  --navy:#0c2340;
  --blue:#1b5ca8;
  --teal:#13c3bb;
  --teal2:#10b0aa;
  --orange:#f5a623;
  --lblue:#eef5ff;
  --cream:#fdf8f1;
  --dark:#202020;
  --muted:#637587;
  --bdr:#dce8f4;
  --max-w:1300px;
}

/* ══ LAYOUT ══ */
.wrap{max-width:var(--max-w);margin:0 auto;padding:0 60px}
.wrap-hdr{max-width:1400px;margin:0 auto;padding:0 40px;width:100%}

/* ══ PILL ARROWS ══ */
.pill{display:inline-flex;border:1.5px solid #1a3a5c;border-radius:100px;overflow:hidden}
.pill button{width:46px;height:46px;display:flex;align-items:center;justify-content:center;color:#1a3a5c;font-size:15px;transition:.15s}
.pill button:first-child{border-right:1.5px solid #1a3a5c}
.pill button:hover{background:#1a3a5c;color:#fff}
.pill.wh{border-color:rgba(255,255,255,.55)}
.pill.wh button{color:rgba(255,255,255,.85);border-color:rgba(255,255,255,.4)}
.pill.wh button:hover{background:rgba(255,255,255,.2);color:#fff}

/* ══ BUTTONS ══ */
.btn-teal{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);color:#fff;padding:13px 24px;border-radius:15px;font-size:14px;font-weight:700;transition:.2s;border:none;cursor:pointer;white-space:nowrap}
.btn-teal:hover{background:linear-gradient(298deg, #1fb0c8 7.96%, #0f4188 52.24%);color:#fff;transform:translateY(-1px)}
.btn-teal svg{width:15px;height:15px}
.arr-svg{width:14px;height:14px;display:block}

/* ══════════ HEADER ══════════ */
/* WordPress admin bar is 32px tall on desktop, 46px on mobile */
/* #hdr is position:fixed so it ignores body margin — always sits at top:0 */
/* When admin bar is present WP adds margin-top to body; we shift header down */
.admin-bar #hdr{top:32px}
@media screen and (max-width:782px){.admin-bar #hdr{top:46px}}

#hdr{
  position:fixed;top:0;left:0;right:0;
  z-index:9999;
  background:#fff;
  border-bottom:1px solid #e4edf8;
  height:94px;
  display:flex!important;
  align-items:center;
  transition:box-shadow .3s;
  visibility:visible!important;
  opacity:1!important;
}
#hdr.stuck{box-shadow:0 2px 18px rgba(12,35,64,.1)}
.hdr-inner{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  align-items:center;
  gap:16px;
  width:100%;
}

/* ── LOGO ── */
.logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none;line-height:0}
.logo-img{height:76px;width:auto;display:block;object-fit:contain}
/* WordPress wraps custom logo in <a class="custom-logo-link"><img class="custom-logo"> */
.logo .custom-logo-link{display:flex;align-items:center;line-height:0;text-decoration:none}
.logo .custom-logo-link img,.logo .custom-logo,.logo img.custom-logo{height:76px!important;width:auto!important;display:block!important;object-fit:contain}

/* ── HDR-LOGO class (used in header.php) ── */
.hdr-logo{display:flex!important;align-items:center!important;flex-shrink:0!important;text-decoration:none!important;line-height:0!important}
.hdr-logo img,.hdr-logo .custom-logo,.hdr-logo .custom-logo-link img{height:76px!important;width:auto!important;display:block!important;object-fit:contain!important;max-width:280px!important}
.hdr-logo .custom-logo-link{display:flex!important;align-items:center!important;line-height:0!important}

/* ── DESKTOP NAV ── */
.nav{display:flex;align-items:center;justify-content:center}
/* Reset WP menu list */
.nav-menu{display:flex;align-items:center;justify-content:center;gap:2px;list-style:none;margin:0;padding:0}
.nav-item{position:relative;list-style:none}
.nav-item>a{display:flex;align-items:center;gap:4px;font-size:15px;font-weight:700;color:#2d3e52;padding:8px 12px;border-radius:100px;letter-spacing:.05em;transition:.15s;white-space:nowrap;text-decoration:none;text-transform:initial}
.nav-item>a:hover{color:#0c2340;background:#f0f6fc}
.nav-item.active>a,.nav-item .current-menu-item>a,.nav-item>a[aria-current="page"]{background:#1a2e4a;color:#fff;border-radius:100px}
/* Caret icon */
.nav-caret{width:10px;height:7px;display:inline-block;transition:transform .2s;flex-shrink:0}
/* Dropdown sub-menu */
.nav-dropdown{
  position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);
  background:#fff;border-radius:12px;
  box-shadow:0 8px 32px rgba(12,35,64,.14);
  list-style:none;margin:0;padding:8px 0;
  min-width:210px;
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateX(-50%) translateY(-6px);
  transition:opacity .2s,transform .2s,visibility .2s;
  z-index:99999;
  border:1px solid #e8f0f8;
}
.nav-item:hover>.nav-dropdown,
.nav-item:focus-within>.nav-dropdown{
  opacity:1;visibility:visible;pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav-item:hover>.nav-dropdown .nav-dropdown,
.nav-item:focus-within>.nav-dropdown .nav-dropdown{
  opacity:1;visibility:visible;transform:translateY(0);
}
/* Touch support — first tap opens, second navigates */
.nav-item.touch-open>.nav-dropdown{
  opacity:1;visibility:visible;
  transform:translateX(-50%) translateY(0);
}
.nav-item.touch-open>a .nav-caret{transform:rotate(180deg)}
/* Dropdown items */
.nav-dropdown .nav-item{position:relative}
.nav-dropdown .nav-item>a{display:block;font-size:15px;font-weight:600;color:#2d3e52;padding:9px 20px;border-radius:0;white-space:nowrap;letter-spacing:.02em;transition:background .15s,color .15s;text-transform:initial}
.nav-dropdown .nav-item>a:hover{background:#eef5ff;color:#1a5ca8}
/* Second level dropdown */
.nav-dropdown .nav-dropdown{
  left:100%;top:0;transform:translateX(6px) translateY(-8px);
  border-radius:12px;
}
.nav-dropdown .nav-item:hover>.nav-dropdown,
.nav-dropdown .nav-item:focus-within>.nav-dropdown{
  transform:translateX(0) translateY(-8px);
}

/* Header CTA */
.hdr-cta{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);color:#fff;padding:12px 22px;border-radius:15px;font-size:15px;font-weight:700;transition:.2s;white-space:nowrap;text-decoration:none;justify-self:end}
.hdr-cta:hover{background:linear-gradient(298deg, #1fb0c8 7.96%, #0f4188 52.24%);color:#fff;transform:translateY(-1px)}
.hdr-cta svg{width:14px;height:14px}


/* ── HDR-LOGO class (used in header.php) ── */
.hdr-logo{display:flex!important;align-items:center!important;flex-shrink:0!important;text-decoration:none!important;line-height:0!important}
.hdr-logo img,.hdr-logo .custom-logo,.hdr-logo .custom-logo-link img{height:56px!important;width:auto!important;display:block!important;object-fit:contain!important;max-width:200px!important}
.hdr-logo .custom-logo-link{display:flex!important;align-items:center!important;line-height:0!important}

/* ══════════ HAMBURGER (mobile only) ══════════ */
.hamburger{display:none!important;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;cursor:pointer;background:none;border:none;padding:6px;border-radius:8px;transition:background .2s;flex-shrink:0}
.hamburger:hover{background:#f0f6fc}
.hamburger span{display:block;width:100%;height:2.5px;background:#1a2e4a;border-radius:2px;transition:all .3s cubic-bezier(.23,.99,.43,.99);transform-origin:center}
.hamburger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ══════════ MOBILE NAV DRAWER ══════════ */
.mobile-nav{position:fixed;top:94px;left:0;right:0;bottom:0;background:#fff;z-index:9998;display:flex;flex-direction:column;padding:0;transform:translateX(100%);transition:transform .35s cubic-bezier(.23,.99,.43,.99);overflow-y:auto;box-shadow:inset 0 1px 0 #e4edf8}
.mobile-nav.open{transform:translateX(0)}
/* Mobile nav admin bar shift */
.admin-bar .mobile-nav{top:126px}
@media screen and (max-width:782px){.admin-bar .mobile-nav{top:140px}}

/* mobile menu list */
.mobile-menu{list-style:none;margin:0;padding:0;flex:1}
.mob-item{list-style:none;border-bottom:1px solid #eef2f8}
.mob-row{display:flex;align-items:center;justify-content:space-between;padding:0}
.mob-row>a{flex:1;font-size:17px;font-weight:700;color:#1a2e4a;padding:15px 24px;display:block;letter-spacing:.02em;transition:color .15s;text-decoration:none;text-transform:initial}
.mob-row>a:hover,.mob-item.active .mob-row>a{color:var(--teal)}
/* accordion toggle button */
.mob-toggle{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-left:1px solid #eef2f8;cursor:pointer;color:#8898a8;flex-shrink:0;transition:color .15s,background .15s}
.mob-toggle:hover,.mob-item.open .mob-toggle{color:var(--teal);background:#f8fbff}
.mob-toggle svg{width:13px;height:9px;transition:transform .25s}
.mob-item.open .mob-toggle svg{transform:rotate(180deg)}
/* sub menu */
.mob-sub{list-style:none;margin:0;padding:0;background:#f8fbff;border-top:1px solid #eef2f8}
.mob-sub .mob-item{border-bottom:1px solid #eef2f8}
.mob-sub .mob-item:last-child{border-bottom:none}
.mob-sub .mob-row>a{font-size:15px;font-weight:600;padding:12px 24px 12px 36px;color:#4a6272}
.mob-sub .mob-row>a:hover{color:var(--teal);background:#eef5ff}
/* nested sub-sub */
.mob-sub .mob-sub{background:#eff6ff}
.mob-sub .mob-sub .mob-row>a{padding-left:52px}
/* mobile CTA */
.mob-cta{display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);color:#fff;padding:16px;font-size:15px;font-weight:700;text-decoration:none;margin:20px 20px 32px;border-radius:15px;transition:background .2s}
.mob-cta:hover{background:linear-gradient(298deg, #1fb0c8 7.96%, #0f4188 52.24%)}
.mob-cta svg{width:14px;height:14px}

/* ══════════ FLOATING ACTION BUTTONS ══════════ */
.fab-stack{position:fixed;bottom:28px;right:28px;display:flex;flex-direction:column;align-items:center;gap:12px;z-index:998}
.fab-top{width:46px;height:46px;border-radius:50%;background:#fff;border:1.5px solid #dde8f5;box-shadow:0 4px 16px rgba(12,35,64,.14);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--navy);transition:all .25s;opacity:0;transform:translateY(12px);pointer-events:none;position:relative}
.fab-top.show{opacity:1;transform:translateY(0);pointer-events:auto}
.fab-top:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-2px)}
.fab-top svg{width:18px;height:18px}
.fab-call{width:50px;height:50px;border-radius:50%;background:var(--blue);box-shadow:0 4px 18px rgba(27,92,168,.38);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .25s;text-decoration:none;position:relative}
.fab-call:hover{background:#144a90;transform:translateY(-2px);box-shadow:0 8px 24px rgba(27,92,168,.45)}
.fab-call svg{width:22px;height:22px}
.fab-call::before{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(27,92,168,.35);animation:fabPulse 2s ease-out infinite}
.fab-call::after{content:'';position:absolute;inset:-12px;border-radius:50%;border:2px solid rgba(27,92,168,.18);animation:fabPulse 2s ease-out .5s infinite}
@keyframes fabPulse{0%{transform:scale(.85);opacity:1}100%{transform:scale(1.25);opacity:0}}
.fab-wa{width:56px;height:56px;border-radius:50%;background:#25d366;box-shadow:0 4px 18px rgba(37,211,102,.38);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:all .25s;text-decoration:none;position:relative}
.fab-wa:hover{background:#1ebe5d;transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,.45)}
.fab-wa svg{width:28px;height:28px}
.fab-wa::before{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(37,211,102,.35);animation:fabPulse 2.2s ease-out infinite}
.fab-tip{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#1a2e4a;color:#fff;font-size:12px;font-weight:600;padding:5px 11px;border-radius:7px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s}
.fab-tip::after{content:'';position:absolute;left:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-left-color:#1a2e4a}
.fab-call:hover .fab-tip,.fab-wa:hover .fab-tip,.fab-top:hover .fab-tip{opacity:1}

/* ══════════ REVEAL ANIMATIONS ══════════ */
.rv{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.23,.99,.43,.99),transform .7s cubic-bezier(.23,.99,.43,.99)}
.rv.fl{transform:translateX(-36px)}
.rv.fr{transform:translateX(36px)}
.rv.on{opacity:1!important;transform:none!important}
.d1{transition-delay:.07s}.d2{transition-delay:.14s}.d3{transition-delay:.21s}
.d4{transition-delay:.28s}.d5{transition-delay:.35s}.d6{transition-delay:.42s}
.rv-card{opacity:0;transform:translateY(28px) scale(.97);transition:opacity .65s cubic-bezier(.23,.99,.43,.99),transform .65s cubic-bezier(.23,.99,.43,.99)}
.rv-card.on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv,.rv-card{opacity:1;transform:none;transition:none}}

/* ══════════ HERO SLIDER ══════════ */
.hero-wrap{margin-top:94px;padding:0 14px 14px}
/* With WP admin bar — shift hero down to clear both header and admin bar */
.admin-bar .hero-wrap{margin-top:126px}
@media screen and (max-width:782px){.admin-bar .hero-wrap{margin-top:140px}}
.hero{position:relative;overflow:hidden;border-radius:16px;height:500px;background:#1a4888}
.h-track{display:flex;height:100%;transition:transform .65s cubic-bezier(.77,0,.175,1)}
.h-slide{min-width:100%;height:100%;position:relative;flex-shrink:0}
.h-slide img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.h-slide.overlay::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(12,35,80,.88) 0%,rgba(15,42,88,.82) 15%,rgba(22,55,100,.65) 30%,rgba(35,70,118,.38) 50%,rgba(55,90,135,.15) 65%,transparent 80%)}
.h-content{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:center}
.h-content .wrap{text-align:left!important;width:100%}
.h-h1{font-size:38px;font-weight:800;color:#fff;line-height:1.2;letter-spacing:-.4px;margin-bottom:12px;max-width:520px;text-align:left!important}
.h-p{font-size:14.5px;color:rgba(255,255,255,.85);line-height:1.65;max-width:440px;text-align:left!important}
.h-arrows{position:absolute;bottom:22px;right:28px;z-index:5}
.h-dots{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:7px;z-index:5}
.h-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.38);border:none;transition:.3s;cursor:pointer}
.h-dot.on{background:#fff;width:22px;border-radius:4px}

/* ══════════ APPOINTMENTS + STATS ══════════ */
.appt-sec{padding:34px 0 0}
.appt-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:30px;border-bottom:1.5px solid #dde8f5}
.appt-left{display:flex;align-items:center;gap:18px}
.appt-ico{width:56px;height:56px;border:1.5px solid #aac8e0;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;background:#f8fbff}
.appt-ico img{width:42px;height:42px;object-fit:contain}
.appt-txt h3{font-size:17px;font-weight:700;color:var(--blue);margin-bottom:3px}
.appt-txt p{font-size:13.5px;color:var(--muted)}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:26px 0 52px}
.sc{display:flex;align-items:center;gap:20px;padding:22px 28px;border-radius:15px}
.sc1{background:#cce9f8}.sc2{background:#d0dbf8}.sc3{background:#fde5cc}
.sc-ico{width:68px;height:68px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.sc-ico img{width:64px;height:64px;object-fit:contain}
.sc-num{font-size:38px;font-weight:800;color:#1a2e4a;line-height:1;margin-bottom:4px}
.sc-lbl{font-size:14px;color:var(--muted);font-weight:500}

/* ══════════ DOCTOR ══════════ */
.doc-sec{background:#eef5ff;padding:64px 0}
.doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.doc-vis{position:relative;display:flex;align-items:center;justify-content:center;height:488px}
.doc-port{display:flex;align-items:flex-end;justify-content:center;height:100%;width:100%}
.doc-port img{max-height:100%;width:auto;object-fit:contain;display:block;background:transparent}
.doc-info h2{font-size:36px;font-weight:800;color:#1a2e4a;letter-spacing:-.4px;margin-bottom:6px}
.doc-spec{font-size:17px;font-weight:600;color:var(--blue);line-height:1.38;margin-bottom:18px}
.doc-bio{font-size:14.5px;color:#4a6272;line-height:1.8;margin-bottom:30px;max-width:45ch}

/* ══════════ SPECIALTIES ══════════ */
.spec-sec{padding:60px 0 0}
.sec-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.sec-h2{font-size:34px;font-weight:800;color:#1a2e4a;letter-spacing:-.4px}
.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:28px}
.tab{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:14px;background:#eef5ff;border:none;cursor:pointer;text-align:left;transition:.22s}
.tab:hover:not(.on){background:#d6e8f8;box-shadow:0 2px 10px rgba(12,35,64,.07)}
.tab.on{background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);border-radius:15px}
.tab-ico{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.tab-ico img{width:44px;height:44px;object-fit:contain;transition:.3s}
.tab.on .tab-ico img{filter:brightness(0) invert(1)}
.tab-lbl{font-size:14.5px;font-weight:600;color:#1a2e4a;line-height:1.3}
.tab.on .tab-lbl{color:#fff}
.spec-pan{display:grid;grid-template-columns:.88fr 1fr;gap:44px;align-items:center;margin-bottom:34px}
.sp-img{border-radius:16px;overflow:hidden;height:352px;background:#3a5870}
.sp-img img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .35s}
.sp-info h3{font-size:26px;font-weight:700;color:#1a2e4a;margin-bottom:13px}
.sp-info p{font-size:14.5px;color:#4a6272;line-height:1.8;margin-bottom:25px}
.sg1{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:15px}
.sg2{display:grid;grid-template-columns:1fr;width:33.33%;margin:0 auto 62px}
.scard{display:block;position:relative;border-radius:13px;overflow:hidden;aspect-ratio:4/3;cursor:pointer;text-decoration:none}
.scard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.scard:hover img{transform:scale(1.06)}
.scard-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,20,48,.82) 0%,rgba(8,20,48,.04) 55%,transparent 100%)}
.scard-ft{position:absolute;bottom:0;left:0;right:0;padding:14px 17px;display:flex;align-items:flex-end;justify-content:space-between}
.scard-name{font-size:15px;font-weight:700;color:#fff;line-height:1.2}
.scard-arr{width:31px;height:31px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;flex-shrink:0;transition:.2s}
.scard:hover .scard-arr{background:rgba(255,255,255,.36)}

/* ══════════ TESTIMONIALS ══════════ */
.test-outer{background:var(--cream);border-radius:24px;margin:0;padding:60px 0}
.test-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:30px}
.test-top h2{font-size:34px;font-weight:800;color:#1a2e4a;letter-spacing:-.4px}
.test-sub{font-size:14.5px;color:var(--blue);font-weight:500;margin-top:6px}
.test-sldr{overflow:hidden}
.test-track{display:flex;transition:transform .55s cubic-bezier(.77,0,.175,1)}
.test-slide{min-width:50%;padding:0 10px;box-sizing:border-box}
.test-card{background:#fff;border-radius:20px;padding:38px;box-shadow:0 2px 16px rgba(12,35,64,.08);max-width:680px;margin:0 auto}
.t-stars{display:flex;gap:3px;margin-bottom:13px}
.t-stars svg{width:22px;height:22px;fill:var(--orange)}
.t-quote{font-size:14.5px;line-height:1.82;color:#2a3e55;margin-bottom:17px}
.t-name{font-size:16px;font-weight:700;color:var(--blue)}

/* ══════════ INSIGHTS / VIDEOS ══════════ */
.ins-sec{padding:60px 0}
.ins-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}
.ins-top h2{font-size:34px;font-weight:800;color:#1a2e4a;letter-spacing:-.4px}
.ins-sub{font-size:14.5px;color:var(--blue);font-weight:500;margin-bottom:28px}
.ins-sldr{overflow:hidden}
.ins-track{display:flex;transition:transform .55s cubic-bezier(.77,0,.175,1)}
.ins-slide{min-width:33.333%;padding:0 8px;box-sizing:border-box}
.vid-wrap{position:relative;width:100%;padding-top:56.25%;border-radius:14px;overflow:hidden;background:#1a2e4a;margin-bottom:14px}
.vid-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;display:block}
/* YouTube Shorts — 9:16 portrait ratio */
.vid-short{padding-top:177.78%}
.ins-title{font-size:15px;font-weight:600;color:#1a2e4a;line-height:1.45}
.ins-author{font-size:12.5px;color:var(--blue);font-weight:500;margin-top:4px}

/* ══════════ BLOG ══════════ */
.blog-outer{background:var(--lblue);border-radius:24px;padding:60px 0;margin:0}
.blog-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}
.blog-top h2{font-size:34px;font-weight:800;color:#1a2e4a;letter-spacing:-.4px}
.blog-sub{font-size:14.5px;color:var(--blue);font-weight:500;margin-bottom:28px}
.blog-sldr{overflow:hidden}
.blog-track{display:flex;transition:transform .55s cubic-bezier(.77,0,.175,1)}
.blog-slide{min-width:33.333%;padding:0 8px;box-sizing:border-box}
.blog-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 14px rgba(12,35,64,.07);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column;height:100%}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 10px 36px rgba(12,35,64,.14)}
.blog-img{aspect-ratio:4/3;overflow:hidden;flex-shrink:0;background:#3a5060}
.blog-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.blog-card:hover .blog-img img{transform:scale(1.05)}
.blog-body{padding:22px;flex:1;display:flex;flex-direction:column}
.blog-title{font-size:15.5px;font-weight:700;color:#1a2e4a;line-height:1.38;margin-bottom:10px}
.blog-exc{font-size:13.5px;color:#5a7090;line-height:1.72;flex:1;margin-bottom:16px}
.read-more{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:#1a2e4a;transition:gap .15s}
.read-more:hover{gap:14px}
.read-more svg{width:15px;height:15px}

/* ══════════ CTA / APPOINTMENT ══════════ */
.cta-sec{background:var(--dark);border-radius:20px;padding:66px 60px;margin:2px auto 0;max-width:var(--max-w);display:block}
.cta-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:64px;align-items:start}
.cta-h2{font-size:38px;font-weight:800;color:#fff;line-height:1.14;letter-spacing:-.5px;margin-bottom:44px}
.loc{display:flex;align-items:flex-start;gap:16px;margin-bottom:22px}
.loc-pin{width:34px;flex-shrink:0;display:flex;align-items:flex-start;justify-content:center;padding-top:2px}
.loc-pin img{width:26px;height:26px;object-fit:contain}
.loc-name{font-size:15px;font-weight:700;color:#fff;margin-bottom:4px}
.loc-addr{font-size:13px;color:rgba(255,255,255,.5);line-height:1.65}
.loc-arr{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);font-size:14px;margin-left:auto;flex-shrink:0;margin-top:2px;cursor:pointer;border:none;transition:.2s}
.loc-arr:hover{background:rgba(255,255,255,.2)}
.form-box{background:#fff;border-radius:18px;padding:36px}
.form-box h3{font-size:22px;font-weight:700;color:#1a2e4a;margin-bottom:26px}
.ff{border-bottom:1.5px solid #cad6e8;margin-bottom:20px}
.ff input,.ff select{width:100%;border:none;background:transparent;font-size:14.5px;color:#2a4060;padding:10px 0;appearance:none;-webkit-appearance:none}
.ff input::placeholder{color:#9ab2c8}
.ff select{color:#9ab2c8}
.ff select.v{color:#2a4060}
.ff-date{display:flex;align-items:center;justify-content:space-between}
.ff-date input{flex:1}
.cal-ico{color:#8898a8;flex-shrink:0}
.cal-ico svg{width:19px;height:19px;display:block}
#form-ok{display:none;background:#e8f8f2;color:#155e40;font-size:13.5px;padding:10px 14px;border-radius:8px;margin-bottom:12px;font-weight:500}
.book-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);color:#fff;border:none;cursor:pointer;padding:16px;border-radius:15px;font-size:15px;font-weight:700;transition:.2s;margin-top:6px}
.book-btn:hover{background:linear-gradient(298deg, #1fb0c8 7.96%, #0f4188 52.24%)}
.book-btn svg{width:15px;height:15px}

/* ══════════ FOOTER ══════════ */
.ftr{background:var(--dark);border-radius:20px;padding:50px 0 30px;margin:2px auto 0;max-width:var(--max-w)}
.ftr-inner{max-width:var(--max-w);margin:0 auto;padding:0 60px}
.ftr-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:26px}
.f-logo{display:flex;align-items:center}
.f-logo img,.f-logo .custom-logo{height:80px;width:auto;display:block;object-fit:contain;background:#ffffff;border-radius:10px;padding:8px 12px}
.fc-ttl{font-size:12.5px;font-weight:700;color:#fff;letter-spacing:.04em;margin-bottom:16px}
.fc-links{display:flex;flex-direction:column;gap:10px}
.fc-links a,.fc-links li a{font-size:13.5px;color:rgba(255,255,255,.48);transition:.15s;display:block}
.fc-links ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.fc-links a:hover{color:rgba(255,255,255,.9)}
.fc-contact p{font-size:13.5px;color:rgba(255,255,255,.48);margin-bottom:9px}
.socials{display:flex;gap:8px}
.soc{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.45);transition:.2s}
.soc:hover{border-color:rgba(255,255,255,.45);color:#fff}
.soc svg{width:14px;height:14px}
.ftr-bot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.ftr-bot p{font-size:12.5px;color:rgba(255,255,255,.28)}

/* ══════════ RESPONSIVE ══════════ */
/* Tight nav at 1200px */
@media(max-width:1200px){
  .nav-item>a{font-size:13px;padding:7px 9px}
  .hdr-cta{padding:10px 16px;font-size:13px}
}
/* Switch to hamburger below 960px */
@media(max-width:960px){
  .hdr-inner{grid-template-columns:auto 1fr auto!important}
  .nav{display:none!important}
  .hdr-cta{display:none!important}
  .hamburger{display:flex!important}
  .hero{height:260px}
  .h-h1{font-size:26px}
  .h-p{font-size:13px}
  .doc-grid{grid-template-columns:1fr;gap:0}
  .doc-vis{height:380px;margin-bottom:32px}
  .tabs{grid-template-columns:1fr 1fr;gap:10px}
  .spec-pan{grid-template-columns:1fr}
  .sp-img{height:240px}
  .sg1{grid-template-columns:1fr 1fr}
  .sg2{width:100%}
  .test-card{padding:26px}
  .test-slide{min-width:100%;padding:0}
  .ins-slide{min-width:100%}
  .blog-slide{min-width:100%}
  .cta-sec{padding:44px 24px;border-radius:14px}
  .cta-grid{grid-template-columns:1fr;gap:40px}
  .cta-h2{font-size:28px;margin-bottom:28px}
  .ftr-top{grid-template-columns:1fr 1fr;gap:28px}
  .ftr{padding:40px 0 24px}
  .wrap,.ftr-inner{padding:0 24px}
  .fab-stack{bottom:18px;right:18px}
}
@media(max-width:560px){
  .doc-vis{height:320px}
  .tabs{grid-template-columns:1fr 1fr}
  .sg1{grid-template-columns:1fr}
  .sg2{grid-template-columns:1fr;width:100%}
  .ftr-top{grid-template-columns:1fr}
  .stat-row{grid-template-columns:1fr}
  .hero{height:240px}
  .h-h1{font-size:22px}
  .wrap,.ftr-inner{padding:0 18px}
  .cta-sec{padding:36px 20px}
}

/* ══ DESKTOP: ensure nav shows and hamburger hides above 960px ══ */
@media(min-width:961px){
  .nav{display:flex!important}
  .hdr-cta{display:inline-flex!important}
  .hamburger{display:none!important}
  .mobile-nav{display:none!important}
  .hdr-inner{grid-template-columns:auto 1fr auto!important}
}

/* ══ PREVENT FLASH OF DROPDOWN ON LOAD ══ */
.nav-dropdown{transition-delay:0s}
.nav-item:not(:hover):not(:focus-within)>.nav-dropdown{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* ══════════════════════════════════════════════════════════
   INNER / SERVICE PAGES (About Us, Knee/Hip/Shoulder, etc.)
══════════════════════════════════════════════════════════ */

/* ── Page hero (sits below fixed header) ── */
.pg-hero{
  margin-top:94px;background:linear-gradient(120deg,#0c2340 0%,#154a8a 55%,#1b5ca8 100%);
  padding:54px 0;position:relative;overflow:hidden;
  min-height:260px;display:flex;align-items:center;
}
.admin-bar .pg-hero{margin-top:126px}
@media screen and (max-width:782px){.admin-bar .pg-hero{margin-top:140px}}
.pg-hero::after{
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 85% 20%,rgba(35,195,221,.18),transparent 55%);
  pointer-events:none;
}
.pg-hero-img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  object-position:center;z-index:0;
}
.pg-hero-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,rgba(8,24,52,.93) 0%,rgba(12,35,72,.88) 22%,rgba(18,49,96,.72) 42%,rgba(27,92,168,.45) 62%,rgba(27,92,168,.18) 80%,transparent 95%);
}
.pg-hero .wrap{position:relative;z-index:2;width:100%}
.pg-crumb{display:flex;align-items:center;gap:8px;font-size:13px;color:rgba(255,255,255,.6);margin-bottom:14px;position:relative;z-index:1}
.pg-crumb a{color:rgba(255,255,255,.6);text-decoration:none;transition:color .15s}
.pg-crumb a:hover{color:#fff}
.pg-crumb svg{width:11px;height:11px;flex-shrink:0;opacity:.6}
.pg-h1{font-size:36px;font-weight:800;color:#fff;line-height:1.18;letter-spacing:-.4px;max-width:760px;position:relative;z-index:1}

/* ── Body content wrapper ── */
.pg-body{padding:54px 0 10px}
.pg-grid{display:grid;grid-template-columns:1fr 320px;gap:54px;align-items:start}
.pg-main{max-width:760px}
.pg-main>p{font-size:15px;line-height:1.85;color:#3a4f66;margin-bottom:26px}
.pg-main h2{font-size:25px;font-weight:800;color:#1a2e4a;letter-spacing:-.3px;margin:42px 0 16px}
.pg-main h2:first-of-type{margin-top:0}
.pg-main p{font-size:15px;line-height:1.85;color:#3a4f66;margin-bottom:18px}
.pg-main ul{margin:0 0 22px;padding:0;list-style:none}
.pg-main ul li{
  position:relative;padding-left:28px;margin-bottom:13px;
  font-size:14.5px;line-height:1.75;color:#3a4f66;
}
.pg-main ul li::before{
  content:'';position:absolute;left:0;top:7px;width:16px;height:16px;border-radius:50%;
  background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);
}
.pg-main ul li::after{
  content:'';position:absolute;left:5.5px;top:11.5px;width:6px;height:3px;
  border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);
}
.pg-main ul li strong{color:#1a2e4a}

/* ── Sidebar card (sticky) ── */
.pg-side{position:sticky;top:118px}
.pg-card{background:#eef5ff;border-radius:18px;padding:28px 26px;margin-bottom:22px}
.pg-card h4{font-size:13px;font-weight:700;color:var(--blue);letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px}
.pg-card-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.pg-card-row:last-child{margin-bottom:0}
.pg-card-ico{width:38px;height:38px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blue)}
.pg-card-ico svg{width:18px;height:18px}
.pg-card-txt{font-size:13.5px;color:#3a4f66;line-height:1.55}
.pg-card-txt strong{display:block;color:#1a2e4a;font-size:14px;margin-bottom:2px}
.pg-cta-card{
  background:linear-gradient(135deg,#0c2340 0%,#1b5ca8 100%);border-radius:18px;
  padding:30px 26px;text-align:center;
}
.pg-cta-card h4{color:#fff;font-size:18px;font-weight:700;margin-bottom:8px}
.pg-cta-card p{color:rgba(255,255,255,.75);font-size:13.5px;line-height:1.6;margin-bottom:20px}
.pg-cta-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  background:#fff;color:#0c2340;padding:13px;border-radius:13px;font-size:14px;font-weight:700;
  text-decoration:none;transition:.2s;
}
.pg-cta-btn:hover{background:#eef5ff;transform:translateY(-1px)}
.pg-cta-btn svg{width:14px;height:14px}

/* ── Why choose Dr Reddy — checklist box ── */
.pg-why{
  background:#eef5ff;border-radius:18px;padding:32px 36px;margin:38px 0;
}
.pg-why h3{font-size:21px;font-weight:800;color:#1a2e4a;margin-bottom:14px}
.pg-why p{font-size:14.5px;line-height:1.8;color:#3a4f66;margin:0}

/* ── FAQ accordion ── */
.pg-faq{margin-top:50px}
.pg-faq-h2{font-size:28px;font-weight:800;color:#1a2e4a;letter-spacing:-.3px;margin-bottom:22px}
.faq-item{border-bottom:1px solid #e4edf8}
.faq-item:first-child{border-top:1px solid #e4edf8}
.faq-q{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  width:100%;background:none;border:none;cursor:pointer;text-align:left;
  padding:19px 4px;font-size:15px;font-weight:700;color:#1a2e4a;
}
.faq-q-ico{
  width:28px;height:28px;border-radius:50%;background:#eef5ff;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;color:var(--blue);transition:.25s;
}
.faq-q-ico svg{width:11px;height:11px;transition:transform .25s}
.faq-item.open .faq-q-ico{background:linear-gradient(298deg, #23C3DD 7.96%, #124F9F 52.24%);color:#fff}
.faq-item.open .faq-q-ico svg{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a-inner{padding:0 30px 20px 4px;font-size:14.5px;line-height:1.78;color:#4a6272}

/* ── CTA bottom strip reused on inner pages ── */
.pg-cta-strip{
  background:linear-gradient(120deg,#0c2340 0%,#1b5ca8 100%);border-radius:20px;
  padding:46px 50px;margin:54px auto 0;max-width:var(--max-w);
  display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;
}
.pg-cta-strip h3{color:#fff;font-size:24px;font-weight:800;letter-spacing:-.3px;max-width:520px}
.pg-cta-strip p{color:rgba(255,255,255,.7);font-size:14px;margin-top:6px}

/* ── About page: credentials / presentations list ── */
.pg-cred{background:#f8fbff;border-left:3px solid var(--blue);border-radius:0 12px 12px 0;padding:18px 22px;margin-bottom:14px}
.pg-cred strong{display:block;color:#1a2e4a;font-size:14.5px;margin-bottom:3px}
.pg-cred em{color:#6a8098;font-size:13px;font-style:normal}

/* ── Responsive ── */
@media(max-width:980px){
  .pg-grid{grid-template-columns:1fr}
  .pg-side{position:static;display:grid;grid-template-columns:1fr 1fr;gap:18px}
}
@media(max-width:680px){
  .pg-hero{padding:40px 0;min-height:200px}
  .pg-h1{font-size:27px}
  .pg-body{padding:38px 0}
  .pg-main h2{font-size:21px}
  .pg-side{grid-template-columns:1fr}
  .pg-why{padding:24px 22px}
  .pg-cta-strip{padding:34px 24px;flex-direction:column;text-align:center}
}

/* ══════════════════════════════════════════════════════════
   SPECIALTIES & SERVICES — LANDING PAGE
══════════════════════════════════════════════════════════ */
.spc-sec{padding:54px 0 10px}
.spc-intro{
  font-size:15.5px;line-height:1.8;color:#3a4f66;max-width:760px;
  margin-bottom:46px;
}
.spc-group{margin-bottom:48px}
.spc-group:last-child{margin-bottom:0}
.spc-group-h2{
  font-size:22px;font-weight:800;color:#1a2e4a;letter-spacing:-.3px;
  margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #eef5ff;
}
.spc-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:22px;
}
.spc-card{
  display:flex;flex-direction:column;background:#fff;border-radius:16px;
  overflow:hidden;text-decoration:none;box-shadow:0 2px 14px rgba(12,35,64,.07);
  transition:transform .25s,box-shadow .25s;
}
.spc-card:hover{transform:translateY(-4px);box-shadow:0 10px 32px rgba(12,35,64,.14)}
.spc-card-img{position:relative;aspect-ratio:16/9;overflow:hidden;flex-shrink:0;background:#3a5060}
.spc-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.spc-card:hover .spc-card-img img{transform:scale(1.06)}
.spc-card-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,20,48,.25) 0%,transparent 60%)}
.spc-card-body{padding:22px 24px;display:flex;flex-direction:column;flex:1}
.spc-card-body h3{font-size:18px;font-weight:700;color:#1a2e4a;margin-bottom:8px;letter-spacing:-.2px}
.spc-card-body p{font-size:13.8px;line-height:1.7;color:#5a7090;flex:1;margin-bottom:16px}
.spc-card-link{
  display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;
  color:var(--blue);transition:gap .15s;
}
.spc-card:hover .spc-card-link{gap:14px}
.spc-card-link svg{width:14px;height:14px;flex-shrink:0}

@media(max-width:780px){
  .spc-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .spc-sec{padding:38px 0 10px}
  .spc-intro{margin-bottom:34px;font-size:14.5px}
  .spc-group{margin-bottom:36px}
  .spc-group-h2{font-size:19px}
}
