/* Original style.css is unchanged. Shared dropdown and new Spec-styled popups. */
.nav-dropdown{position:relative}
.dd-menu{display:none;position:absolute;top:calc(100% + 10px);left:0;background:#fff;border-radius:10px;box-shadow:0 8px 32px rgba(21,73,199,.18);min-width:190px;z-index:9999;padding:8px 0;list-style:none;margin:0}
.dd-menu.open{display:block}
.dd-menu li{list-style:none}
.dd-menu li a{display:block;padding:11px 20px;color:#1e293b;font-size:.9rem;white-space:nowrap;text-decoration:none;font-weight:500}
.dd-menu li a:hover,.dd-menu li a.active{background:#f0f4ff;color:#1549C7}
.dd-toggle{cursor:pointer;display:flex;align-items:center;gap:4px;border:0;background:transparent;font-family:inherit}
.dd-arrow{font-size:.6em;transition:transform .2s}
.dd-toggle[aria-expanded="true"] .dd-arrow{transform:rotate(180deg)}
/* Same existing mobile menu, activated earlier to accommodate the two menu additions. */
@media(max-width:1100px){
.nav-menu{display:none;position:fixed;inset:0;background:rgba(255,255,255,.98);backdrop-filter:blur(20px);flex-direction:column;justify-content:center;align-items:center;gap:6px;z-index:999;overflow-y:auto;padding:76px 0 30px}
.nav-menu.open{display:flex}.nav-link{font-size:19px;padding:12px 24px}.nav-cta{font-size:15px;margin-top:10px}.nav-toggle{display:flex;z-index:1001}
.dd-menu{position:static;box-shadow:none;min-width:0;padding:0}.dd-menu li a{text-align:center;padding:8px 20px}
}
@media(max-width:1100px) and (max-height:700px){.nav-menu{justify-content:flex-start}.nav-link{padding:8px 20px}}
.spec-modal{border:0;border-radius:26px;padding:0;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;overflow:auto;background:#fff;color:#1e293b;box-shadow:0 32px 100px rgba(21,73,199,.3);font-family:Inter,sans-serif}
.spec-modal::backdrop{background:rgba(15,23,42,.65);backdrop-filter:blur(7px)}
.spec-modal-content{padding:38px 32px 26px;text-align:center;border-top:7px solid #7C3AED;background:radial-gradient(ellipse at top left,#eef2ff,transparent 65%)}
.spec-modal-close{position:absolute;right:13px;top:17px;width:34px;height:34px;border:0;border-radius:50%;background:#eef2ff;color:#1549C7;font-size:25px;cursor:pointer}
.spec-modal-eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;color:#1549C7}
.spec-modal-provider{height:85px;display:flex;align-items:center;justify-content:center;margin:16px 0}
.spec-modal-provider img{max-width:180px;max-height:80px;object-fit:contain}
.spec-modal-symbol{width:72px;height:72px;border-radius:22px;background:linear-gradient(135deg,#1549C7,#7C3AED);color:#fff;display:grid;place-items:center;font-size:32px}
.spec-modal-tag{display:inline-block;padding:5px 13px;border-radius:50px;background:#ede9fe;color:#6d28d9;font-size:12px;font-weight:600}
.spec-modal h2{font-size:28px;line-height:1.2;margin:20px 0 14px}.spec-modal p{font-size:15px;line-height:1.7;color:#64748b;margin-bottom:22px}
.spec-modal-call{width:100%;justify-content:center;font-size:20px}.spec-modal p.spec-modal-hours{font-size:12px;margin:16px 0}
.spec-modal-dismiss{background:none;border:0;font:inherit;font-size:13px;color:#64748b;text-decoration:underline;cursor:pointer;padding:8px}
.spec-modal button:focus-visible,.spec-modal a:focus-visible{outline:3px solid #7C3AED;outline-offset:3px}
@media(max-width:480px){.spec-modal-content{padding:32px 20px 18px}.spec-modal h2{font-size:25px}}

/* ===== Mobile responsiveness fixes (homepage hero + small screens) ===== */
@media (max-width: 900px) {
  .hero { padding: 90px 0 60px; }
  .hero-inner { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .hero-text, .hero-visual { min-width: 0; }
  .hero-visual { align-items: stretch; width: 100%; }
  .hero-card { width: 100%; }
  .hero-sub { max-width: none; }
}
@media (max-width: 560px) {
  .hero { padding: 80px 0 48px; }
  .hero-text h1 { font-size: clamp(1.9rem, 8.5vw, 2.4rem); line-height: 1.2; }
  .hero-sub { font-size: 1rem; margin-bottom: 26px; }
  .hero-cta-row { flex-direction: column; align-items: stretch; }
  .hero-cta-row .btn { width: 100%; justify-content: center; text-align: center; }
  .hero-visual { gap: 12px; }
  .hero-card { padding: 18px 20px; gap: 14px; }
  .values-grid { grid-template-columns: minmax(0, 1fr); }
  .value-card p { max-width: none; }
}
@media (max-width: 900px) {
  .two-col > *, .contact-layout > *, .about-grid > *, .provider-layout > *, .why-layout > * { min-width: 0; }
}
@media (max-width: 400px) {
  .about-visual-grid { gap: 12px; }
  .about-visual-grid > * { min-width: 0; padding-left: 14px; padding-right: 14px; }
  .contact-detail-card { min-width: 0; overflow-wrap: anywhere; }
}

/* ── Sticky call button (added) ── */
.sticky-call{position:fixed;right:24px;bottom:24px;z-index:998;pointer-events:none}
.sticky-call-btn{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 26px;border-radius:50px;background:var(--gradient);color:#fff;font-family:var(--font-head);font-size:16px;font-weight:700;letter-spacing:.2px;white-space:nowrap;text-decoration:none;box-shadow:0 8px 28px rgba(21,73,199,.32);animation:stickyCallPulse 2.4s ease-in-out infinite;transform-origin:center}
.sticky-call-btn:hover{animation-play-state:paused;box-shadow:0 10px 34px rgba(124,58,237,.38)}
.sticky-call-btn:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.sticky-call-btn svg{flex-shrink:0}
@keyframes stickyCallPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
@media (max-width:768px){
  .sticky-call{left:0;right:0;bottom:0;display:flex;justify-content:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--text);box-shadow:0 -6px 24px rgba(11,21,38,.18);pointer-events:auto}
  .sticky-call-btn{width:100%;max-width:340px;padding:12px 20px;background:#fff;color:var(--blue);font-size:19px;box-shadow:0 4px 18px rgba(21,73,199,.25);animation-name:stickyCallPulseSm}
  body.has-sticky-call{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
}
@keyframes stickyCallPulseSm{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@media (prefers-reduced-motion:reduce){.sticky-call-btn{animation:none}}
