/* ============================================================
   ATRYS HEADER - CSS del diseno original, copiado VERBATIM del
   bloque HTML de la plantilla 20 (lineas 11-1231). No editar a
   mano: los ajustes del cliente salen de los controles del widget
   "Atrys - Header", que emiten sus reglas con !important.
   ============================================================ */
/* ============================================================
   ATRYS HEADER — v2 Corporate Redesign
   ============================================================
   Paleta oficial:
     #034AAC  azul principal   → CTAs, botones, estados activos nav
     #05ADF0  azul secundario  → degradados, acentos
     #09A88E  teal             → íconos servicio, chips, quick links, badges
     #022E6B  oscuro           → hover CTA, títulos premium
     #333333  texto            → nav links, body
     #8A909E  texto claro      → descripciones, placeholders
     #E8EBF3  borde            → bordes generales
     #EEF1FB  fondo claro      → hover nav, fondo badges acción
     #E6FAF7  fondo teal claro → badges servicio, chips
     #C2EDE7  borde teal claro → borde chips
   ============================================================ */
/* ── RESET ── */
#at-header, #at-header *,
#at-search,  #at-search  *,
#at-overlay,
#at-mega,    #at-mega    *,
#at-drawer,  #at-drawer  * {
  box-sizing: border-box !important;
  margin:  0 !important;
  padding: 0 !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
}
#at-header a, #at-drawer a, #at-search a, #at-mega a {
  text-decoration: none !important;
  color: inherit !important;
  box-shadow: none !important;
}
#at-header button, #at-drawer button, #at-search button {
  font-family: inherit !important;
  cursor: pointer !important;
  border: none !important;
  background: none !important;
}
#at-header svg, #at-drawer svg, #at-search svg, #at-mega svg { display: block !important; }
#at-header ul, #at-drawer ul { list-style: none !important; }
/* ── WRAPPER ── */
#at-header .at-w, #at-search .at-w, #at-mega .at-w {
  width: 100% !important;
  max-width: 1700px !important;
  margin-left:  auto !important;
  margin-right: auto !important;
  padding-left:  clamp(20px, 2.5vw, 48px) !important;
  padding-right: clamp(20px, 2.5vw, 48px) !important;
  box-sizing: border-box !important;
}
@media screen and (max-width: 2399px) { #at-header .at-w, #at-search .at-w, #at-mega .at-w { max-width: 1500px !important; } }
@media screen and (max-width: 1366px) { #at-header .at-w, #at-search .at-w, #at-mega .at-w { max-width: 1400px !important; } }
@media screen and (max-width: 1024px) {
  #at-header .at-w, #at-search .at-w, #at-mega .at-w {
    max-width: 100% !important;
    padding-left:  calc(24px + env(safe-area-inset-left,0px)) !important;
    padding-right: calc(24px + env(safe-area-inset-right,0px)) !important;
  }
}
@media screen and (max-width: 480px) {
  #at-header .at-w, #at-search .at-w, #at-mega .at-w {
    padding-left:  calc(18px + env(safe-area-inset-left,0px)) !important;
    padding-right: calc(18px + env(safe-area-inset-right,0px)) !important;
  }
}
/* ═══════════════════════════════════════════════════════════
   HEADER SHELL
═══════════════════════════════════════════════════════════ */
#at-header {
  width: 100% !important;
  background: #ffffff !important;
  border-bottom: 1px solid #E8EBF3 !important;
  font-family: 'Archivo', 'Segoe UI', system-ui, -apple-system, sans-serif !important;
  z-index: 1000 !important;
  transition: background .3s ease, box-shadow .3s ease, border-color .3s ease !important;
}
/* Barra degradado superior — REGLA: siempre igual en header, mega y search */
#at-header::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #034AAC 0%, #05ADF0 50%, #09A88E 100%) !important;
  z-index: 2 !important;
}
/* Scrolled: frosted glass premium */
#at-header.at-scrolled {
  background: rgba(255,255,255,0.97) !important;
  backdrop-filter: blur(16px) saturate(1.4) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.4) !important;
  border-bottom-color: rgba(232,235,243,0.8) !important;
  box-shadow:
    0 2px 8px rgba(3,74,172,.06),
    0 8px 32px rgba(3,74,172,.08) !important;
}
/* ── ROW (96 px) ── */
#at-header .at-row {
  display:     flex !important;
  align-items: center !important;
  height:      96px !important;
  position:    relative !important;
  z-index:     1 !important;
  gap:         0 !important;
}
/* ═══════════════════════════════════════════════════════════
   LOGO
═══════════════════════════════════════════════════════════ */
#at-header .at-logo {
  flex-shrink: 0 !important;
  display:     flex !important;
  align-items: center !important;
  margin-right: 40px !important;
  position:    relative !important;
}
#at-header .at-logo img {
  height:    38px !important;
  width:     auto !important;
  display:   block !important;
  max-width: none !important;
  border:    none !important;
  transition: opacity .2s !important;
}
#at-header .at-logo:hover img { opacity: .88 !important; }
/* ═══════════════════════════════════════════════════════════
   DESKTOP NAV
═══════════════════════════════════════════════════════════ */
#at-header .at-nav {
  display:     flex !important;
  align-items: center !important;
  gap:         2px !important;
  flex:        1 !important;
}
#at-header .at-nav li { position: relative !important; }
/* Nav link base */
#at-header .at-nav > li > a {
  display:       inline-flex !important;
  align-items:   center !important;
  gap:           5px !important;
  padding:       9px 14px !important;
  font-family:   'Archivo', sans-serif !important;
  font-size:     1.05rem !important;
  line-height:   1.5rem !important;
  font-weight:   500 !important;
  color:         #333333 !important;
  border-radius: 8px !important;
  white-space:   nowrap !important;
  background:    transparent !important;
  transition:    color .15s ease, background .15s ease !important;
  letter-spacing: 0 !important;
  position:      relative !important;
}
/* Indicador activo: subrayado azul */
#at-header .at-nav > li > a.at-active::after {
  content: '' !important;
  position: absolute !important;
  bottom: 4px !important;
  left: 14px !important;
  right: 14px !important;
  height: 2px !important;
  border-radius: 2px !important;
  background: #034AAC !important;
}
/* Hover / activo background */
#at-header .at-nav > li > a:hover,
#at-header .at-nav > li:hover > a,
#at-header .at-nav > li.at-mega-open > a {
  color:      #034AAC !important;
  background: #EEF1FB !important;
}
#at-header .at-nav > li > a.at-active {
  color:       #034AAC !important;
  font-weight: 600 !important;
  background:  transparent !important;
}
#at-header .at-nav > li > a.at-active:hover { background: #EEF1FB !important; }
/* Caret */
#at-header .at-caret {
  width: 15px !important; height: 15px !important;
  stroke: currentColor !important; fill: none !important; stroke-width: 2 !important;
  stroke-linecap: round !important; stroke-linejoin: round !important;
  transition: transform .22s ease !important;
  flex-shrink: 0 !important;
}
#at-header .at-nav > li:hover > a .at-caret,
#at-header .at-nav > li.at-mega-open > a .at-caret { transform: rotate(180deg) !important; }
/* Standard dropdown — mantiene por si se reutiliza */
#at-header .at-dd {
  position:   absolute !important;
  top:        calc(100% + 6px) !important;
  left:       0 !important;
  min-width:  240px !important;
  background: #fff !important;
  border:     1px solid #E8EBF3 !important;
  border-radius: 12px !important;
  box-shadow:
    0 4px 16px rgba(3,46,107,.06),
    0 16px 48px rgba(3,74,172,.10) !important;
  padding:    8px !important;
  z-index:    10 !important;
  opacity:    0 !important; visibility: hidden !important;
  pointer-events: none !important;
  transform:  translateY(8px) !important;
  transition: opacity .18s, visibility .18s, transform .18s !important;
}
#at-header .at-dd::before {
  content: '' !important;
  position: absolute !important;
  top: -12px !important; left: 0 !important; right: 0 !important; height: 12px !important;
}
#at-header .at-nav > li:hover .at-dd {
  opacity: 1 !important; visibility: visible !important;
  pointer-events: auto !important; transform: translateY(0) !important;
}
#at-header .at-dd a {
  display:     flex !important;
  align-items: center !important;
  gap:         10px !important;
  padding:     10px 14px !important;
  font-size:   13.5px !important;
  color:       #444 !important;
  border-radius: 8px !important;
  background:  transparent !important;
  transition:  background .13s, color .13s !important;
  line-height: 1.4 !important;
}
#at-header .at-dd a:hover { background: #EEF1FB !important; color: #034AAC !important; }
#at-header .at-dot {
  width: 6px !important; height: 6px !important;
  border-radius: 50% !important; background: #09A88E !important;
  flex-shrink: 0 !important; display: inline-block !important;
}
/* ═══════════════════════════════════════════════════════════
   ACTIONS
═══════════════════════════════════════════════════════════ */
#at-header .at-actions {
  display:     flex !important;
  align-items: center !important;
  gap:         8px !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
}
/* Botón lupa */
#at-header .at-lupa {
  width:  40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: #EEF1FB !important;
  display: grid !important;
  place-items: center !important;
  color: #034AAC !important;
  transition: background .15s, transform .15s !important;
  flex-shrink: 0 !important;
}
#at-header .at-lupa:hover {
  background: #dce6f8 !important;
  transform: scale(1.05) !important;
}
#at-header .at-lupa svg {
  width: 17px !important; height: 17px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
}
/* Selector de país */
#at-header .at-country { position: relative !important; }
#at-header .at-country-btn {
  display:     inline-flex !important;
  align-items: center !important;
  gap:         6px !important;
  height:      40px !important;
  padding:     0 14px !important;
  border-radius: 20px !important;
  background:  #EEF1FB !important;
  color:       #034AAC !important;
  font-size:   13px !important;
  font-weight: 600 !important;
  font-family: 'Archivo', sans-serif !important;
  transition:  background .15s !important;
  border: 1.5px solid transparent !important;
}
#at-header .at-country-btn:hover {
  background: #dce6f8 !important;
  border-color: rgba(3,74,172,.15) !important;
}
#at-header .at-country-btn .at-flag { font-size: 16px !important; line-height: 1 !important; }
#at-header .at-country-btn .at-caret { width: 13px !important; height: 13px !important; }
/* Dropdown de país */
#at-header .at-country-dd {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  right: 0 !important; left: auto !important;
  min-width: 192px !important;
  background: #fff !important;
  border: 1px solid #E8EBF3 !important;
  border-radius: 14px !important;
  box-shadow:
    0 4px 16px rgba(3,46,107,.06),
    0 16px 48px rgba(3,74,172,.12) !important;
  padding: 8px !important;
  z-index: 10 !important;
  opacity: 0 !important; visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
  transition: opacity .18s, visibility .18s, transform .18s !important;
}
#at-header .at-country.at-country-open .at-country-dd {
  opacity: 1 !important; visibility: visible !important;
  pointer-events: auto !important; transform: translateY(0) !important;
}
#at-header .at-country.at-country-open .at-country-btn .at-caret { transform: rotate(180deg) !important; }
#at-header .at-country-dd a {
  display:     flex !important;
  align-items: center !important;
  gap:         10px !important;
  padding:     9px 12px !important;
  font-size:   13.5px !important;
  font-weight: 500 !important;
  color:       #444 !important;
  border-radius: 8px !important;
  background:  transparent !important;
  transition:  background .13s, color .13s !important;
  line-height: 1.3 !important;
}
#at-header .at-country-dd a:hover { background: #EEF1FB !important; color: #034AAC !important; }
#at-header .at-country-dd a.at-active {
  color:       #034AAC !important;
  font-weight: 700 !important;
  background:  #EEF1FB !important;
}
#at-header .at-country-dd .at-flag { font-size: 16px !important; line-height: 1 !important; }
/* Botón CTA — gradiente azul, solo para acciones */
#at-header .at-cta {
  display:       inline-flex !important;
  align-items:   center !important;
  justify-content: center !important;
  padding:       10px 22px !important;
  font-size:     0.9375rem !important;
  font-weight:   700 !important;
  color:         #fff !important;
  background:    linear-gradient(130deg, #034AAC 0%, #0566D6 100%) !important;
  border:        1.5px solid transparent !important;
  border-radius: 8px !important;
  white-space:   nowrap !important;
  line-height:   1 !important;
  font-family:   'Archivo', sans-serif !important;
  letter-spacing: .01em !important;
  box-shadow:
    0 2px 8px rgba(3,74,172,.20),
    0 6px 20px rgba(3,74,172,.22) !important;
  transition: filter .15s, transform .12s, box-shadow .15s !important;
}
#at-header .at-cta:hover {
  filter: brightness(1.08) !important;
  transform: translateY(-1px) !important;
  box-shadow:
    0 4px 12px rgba(3,74,172,.25),
    0 10px 28px rgba(3,74,172,.28) !important;
}
#at-header .at-cta:active { transform: translateY(0) !important; }
/* ── HAMBURGER ── */
#at-header .at-burger {
  display:  none !important;
  width:    44px !important;
  height:   44px !important;
  border-radius: 10px !important;
  background: #EEF1FB !important;
  place-items: center !important;
  position:  relative !important;
  margin-left: auto !important;
  transition: background .15s !important;
}
#at-header .at-burger:hover { background: #dce6f8 !important; }
#at-header .at-burger span {
  position: absolute !important;
  left: 11px !important; right: 11px !important;
  height: 2px !important;
  border-radius: 2px !important;
  background: #034AAC !important;
  transition: transform .28s cubic-bezier(.4,0,.2,1), opacity .2s !important;
}
#at-header .at-burger span:nth-child(1) { top: 15px !important; }
#at-header .at-burger span:nth-child(2) { top: 21px !important; }
#at-header .at-burger span:nth-child(3) { top: 27px !important; }
html.at-open #at-header .at-burger span:nth-child(1) { transform: translateY(6px) rotate(45deg) !important; }
html.at-open #at-header .at-burger span:nth-child(2) { opacity: 0 !important; }
html.at-open #at-header .at-burger span:nth-child(3) { transform: translateY(-6px) rotate(-45deg) !important; }
/* ═══════════════════════════════════════════════════════════
   MEGA MENU — Servicios Chile
   REGLA: íconos teal, hover: borde teal + sombra teal + ícono blanco
═══════════════════════════════════════════════════════════ */
#at-mega {
  position:   absolute !important;
  top:        100% !important;
  left:       0 !important;
  right:      0 !important;
  width:      100% !important;
  background: #fff !important;
  border-bottom: 1px solid #E8EBF3 !important;
  box-shadow:
    0 8px 32px rgba(3,46,107,.08),
    0 24px 64px rgba(3,46,107,.06) !important;
  z-index:    999 !important;
  opacity:    0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform:  translateY(-6px) !important;
  transition: opacity .2s ease, visibility .2s, transform .2s ease !important;
  padding-top:    0 !important;
  padding-bottom: 0 !important;
}
/* Barra degradado superior — idéntica al header */
#at-mega::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #034AAC 0%, #05ADF0 50%, #09A88E 100%) !important;
  z-index: 1 !important;
}
#at-mega.at-mega-show {
  opacity:    1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform:  translateY(0) !important;
}
/* Forzar padding de tarjetas — sobreescribe el reset global */
#at-mega .at-mcard { padding: 32px 24px !important; }
#at-mega .at-mcard-icon { padding: 0 !important; }
#at-mega .at-mcard-body { padding: 0 !important; }
#at-mega .at-mcard-title { padding: 0 !important; }
#at-mega .at-mcard-desc  { padding: 0 !important; }
#at-mega .at-mcard-link  { padding: 0 !important; }
/* Mega top row */
#at-mega .at-mega-top {
  display:        flex !important;
  align-items:    center !important;
  justify-content: space-between !important;
  margin-top:     48px !important;
  margin-bottom:  28px !important;
  padding-bottom: 18px !important;
  border-bottom:  1px solid #F2F5FB !important;
}
#at-mega .at-mega-eyebrow {
  font-size:      10.5px !important;
  font-weight:    700 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color:          #09A88E !important;
  font-family:    'Archivo', sans-serif !important;
}
#at-mega .at-mega-all {
  display:     inline-flex !important;
  align-items: center !important;
  gap:         6px !important;
  font-size:   0.8125rem !important;
  font-weight: 600 !important;
  color:       #034AAC !important;
  transition:  gap .15s, color .15s !important;
  font-family: 'Archivo', sans-serif !important;
}
#at-mega .at-mega-all:hover { gap: 10px !important; color: #022E6B !important; }
#at-mega .at-mega-all svg {
  width: 14px !important; height: 14px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
}
/* Grid del mega menú — 8 tarjetas: 4 columnas en desktop grande,
   3 en desktop medio, 2 en el resto antes de pasar a mobile */
#at-mega .at-mega-grid {
  display:               grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap:                   18px !important;
  align-items:           stretch !important;
  margin-bottom:         48px !important;
}
@media screen and (max-width: 1500px) {
  #at-mega .at-mega-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
@media screen and (max-width: 1100px) {
  #at-mega .at-mega-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
/* ── Tarjeta de servicio ── */
#at-mega .at-mcard {
  display:        flex !important;
  flex-direction: row !important;
  align-items:    flex-start !important;
  gap:            14px !important;
  border-radius:  14px !important;
  border:         1.5px solid #E8EBF3 !important;
  background:     #FAFBFF !important;
  padding:        32px 24px !important;
  height:         100% !important;
  box-sizing:     border-box !important;
  cursor:         pointer !important;
  position:       relative !important;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease,
    transform .18s ease !important;
  overflow: hidden !important;
}
/* Acento de color lateral izquierdo (invisible por default) */
#at-mega .at-mcard::after {
  content:  '' !important;
  position: absolute !important;
  left:     0 !important; top: 20% !important; bottom: 20% !important;
  width:    3px !important;
  border-radius: 0 3px 3px 0 !important;
  background: #09A88E !important;
  opacity:  0 !important;
  transform: scaleY(0.6) !important;
  transition: opacity .18s, transform .18s !important;
}
#at-mega .at-mcard:hover {
  border-color: #09A88E !important;
  background:   #fff !important;
  box-shadow:
    0 4px 16px rgba(9,168,142,.10),
    0 12px 32px rgba(9,168,142,.08) !important;
  transform: translateY(-2px) !important;
}
#at-mega .at-mcard:hover::after {
  opacity: 1 !important;
  transform: scaleY(1) !important;
}
/* Ícono badge — fondo teal claro, ícono teal → hover: bg teal, ícono blanco */
#at-mega .at-mcard-icon {
  width:         48px !important;
  height:        48px !important;
  min-width:     48px !important;
  border-radius: 13px !important;
  background:    #E6FAF7 !important;
  display:       flex !important;
  align-items:   center !important;
  justify-content: center !important;
  flex-shrink:   0 !important;
  margin-top:    2px !important;
  transition:    background .18s ease, box-shadow .18s ease !important;
}
#at-mega .at-mcard:hover .at-mcard-icon {
  background: #09A88E !important;
  box-shadow: 0 4px 12px rgba(9,168,142,.30) !important;
}
#at-mega .at-mcard-icon svg {
  width: 22px !important; height: 22px !important;
  stroke: #09A88E !important; fill: none !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important; stroke-linejoin: round !important;
  transition: stroke .18s !important;
  flex-shrink: 0 !important;
}
#at-mega .at-mcard:hover .at-mcard-icon svg { stroke: #fff !important; }
/* Ícono de fill (Teleneumología) */
#at-mega .at-mcard-icon svg .at-fill-icon {
  fill:   #09A88E !important;
  stroke: none !important;
  transition: fill .18s !important;
}
#at-mega .at-mcard:hover .at-mcard-icon svg .at-fill-icon { fill: #fff !important; }
/* Cuerpo de tarjeta — "Ver servicio" anclado al fondo */
#at-mega .at-mcard-body {
  flex:      1 !important;
  min-width: 0 !important;
  display:   flex !important;
  flex-direction: column !important;
}
#at-mega .at-mcard-title {
  font-size:   0.875rem !important;
  font-weight: 700 !important;
  color:       #1B2433 !important;
  line-height: 1.35 !important;
  font-family: 'Archivo', sans-serif !important;
  margin-bottom: 8px !important;
  transition:  color .18s !important;
}
#at-mega .at-mcard:hover .at-mcard-title { color: #034AAC !important; }
#at-mega .at-mcard-desc {
  font-size:   0.75rem !important;
  color:       #8A909E !important;
  line-height: 1.6 !important;
  font-family: 'Archivo', sans-serif !important;
  flex:        1 !important;
}
#at-mega .at-mcard-link {
  font-size:   0.75rem !important;
  font-weight: 600 !important;
  color:       #09A88E !important;
  margin-top:  14px !important;
  display:     inline-flex !important;
  align-items: center !important;
  gap:         4px !important;
  transition:  gap .15s !important;
  font-family: 'Archivo', sans-serif !important;
}
#at-mega .at-mcard-link svg {
  width: 12px !important; height: 12px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2.2 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
}
#at-mega .at-mcard:hover .at-mcard-link { gap: 8px !important; }
/* ═══════════════════════════════════════════════════════════
   SEARCH PANEL
   REGLA: chips y quick links usan teal; botón Buscar usa azul
═══════════════════════════════════════════════════════════ */
#at-search {
  position:   fixed !important;
  top:        96px !important;
  left:       0 !important; right: 0 !important;
  width:      100% !important;
  z-index:    999 !important;
  background: #fff !important;
  border-bottom: 1px solid #E8EBF3 !important;
  box-shadow:
    0 8px 32px rgba(3,74,172,.08),
    0 24px 64px rgba(3,74,172,.06) !important;
  padding-top:    30px !important;
  padding-bottom: 32px !important;
  font-family: 'Archivo', sans-serif !important;
  opacity:    0 !important; visibility: hidden !important;
  transform:  translateY(-8px) !important;
  transition: opacity .2s ease, transform .2s ease, visibility .2s !important;
  pointer-events: none !important;
}
/* Barra degradado — idéntica al header */
#at-search::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #034AAC 0%, #05ADF0 50%, #09A88E 100%) !important;
  z-index: 1 !important;
}
html.at-search-open #at-search {
  opacity: 1 !important; visibility: visible !important;
  transform: translateY(0) !important; pointer-events: auto !important;
}
/* Header del panel de búsqueda */
#at-search .at-sh {
  display:         flex !important;
  justify-content: space-between !important;
  align-items:     flex-start !important;
  margin-bottom:   20px !important;
}
#at-search .at-sh h3 {
  font-size:   1.125rem !important;
  font-weight: 700 !important;
  color:       #022E6B !important;
  line-height: 1.3 !important;
  letter-spacing: -.01em !important;
}
#at-search .at-sh p {
  font-size:  13px !important;
  color:      #8A909E !important;
  margin-top: 3px !important;
  line-height: 1.4 !important;
}
#at-search .at-sclose {
  width:  38px !important; height: 38px !important;
  border-radius: 50% !important;
  background: #EEF1FB !important;
  display: grid !important; place-items: center !important;
  color: #444 !important;
  flex-shrink: 0 !important;
  transition: background .15s, color .15s !important;
}
#at-search .at-sclose:hover { background: #dce6f8 !important; color: #034AAC !important; }
#at-search .at-sclose svg {
  width: 16px !important; height: 16px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important;
}
/* Formulario de búsqueda */
#at-search form {
  display:     flex !important;
  align-items: center !important;
  gap:         10px !important;
  border:      1.5px solid #E8EBF3 !important;
  border-radius: 10px !important;
  padding:     8px 8px 8px 18px !important;
  background:  #fff !important;
  box-shadow:  0 2px 12px rgba(3,74,172,.05) !important;
  transition:  border-color .15s, box-shadow .15s !important;
}
#at-search form:focus-within {
  border-color: #034AAC !important;
  box-shadow: 0 0 0 3px rgba(3,74,172,.08), 0 2px 12px rgba(3,74,172,.06) !important;
}
#at-search .at-si {
  width: 19px !important; height: 19px !important;
  stroke: #8A909E !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important;
  flex-shrink: 0 !important;
}
#at-search input[type=search] {
  flex:       1 !important;
  border:     none !important; outline: none !important;
  box-shadow: none !important;
  height:     40px !important;
  font-size:  15px !important;
  color:      #1B2433 !important;
  background: transparent !important;
  font-family: inherit !important;
  -webkit-appearance: none !important;
  font-weight: 400 !important;
}
#at-search input[type=search]::placeholder { color: #B2BAC8 !important; }
#at-search input[type=search]::-webkit-search-cancel-button { display: none !important; }
/* Botón Buscar — azul (CTA) */
#at-search button[type=submit] {
  height:      40px !important;
  padding:     0 22px !important;
  background:  linear-gradient(130deg, #034AAC 0%, #0566D6 100%) !important;
  color:       #fff !important;
  border-radius: 7px !important;
  font-size:   13.5px !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
  transition:  filter .15s !important;
  font-family: inherit !important;
  box-shadow:  0 2px 8px rgba(3,74,172,.20) !important;
  letter-spacing: .01em !important;
}
#at-search button[type=submit]:hover { filter: brightness(1.08) !important; }
/* Columnas chips / quick links */
#at-search .at-scols {
  display:               grid !important;
  grid-template-columns: 1.4fr 1fr !important;
  gap:                   48px !important;
  margin-top:            26px !important;
}
#at-search .at-scols.at-hidden { display: none !important; }
#at-search .at-slabel {
  display:         block !important;
  font-size:       10px !important;
  font-weight:     700 !important;
  letter-spacing:  .12em !important;
  text-transform:  uppercase !important;
  color:           #B2BAC8 !important;
  margin-bottom:   12px !important;
  font-family:     'Archivo', sans-serif !important;
}
/* Chips de servicio — teal (REGLA: nunca azul en componentes de servicio) */
#at-search .at-chips {
  display:   flex !important;
  flex-wrap: wrap !important;
  gap:       8px !important;
}
#at-search .at-chip {
  display:     inline-flex !important;
  align-items: center !important;
  gap:         7px !important;
  padding:     8px 14px !important;
  background:  #E6FAF7 !important;
  border:      1.5px solid #C2EDE7 !important;
  border-radius: 8px !important;
  font-size:   13px !important;
  font-weight: 500 !important;
  color:       #1B2433 !important;
  font-family: 'Archivo', sans-serif !important;
  transition:
    background .14s ease,
    border-color .14s ease,
    color .14s ease,
    transform .14s ease !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
#at-search .at-chip:hover {
  background:   #09A88E !important;
  border-color: #09A88E !important;
  color:        #fff !important;
  transform:    translateY(-1px) !important;
}
#at-search .at-chip svg {
  width: 14px !important; height: 14px !important;
  stroke: #09A88E !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
  flex-shrink: 0 !important;
}
#at-search .at-chip:hover svg { stroke: #fff !important; }
/* Fill-path SVGs (Teleneumología) */
#at-search .at-chip:hover svg path[fill] { fill: #fff !important; stroke: none !important; }
/* Accesos rápidos — teal (REGLA: igual que chips, nunca azul) */
#at-search .at-qlinks { display: grid !important; gap: 2px !important; }
#at-search .at-qlinks a {
  display:     flex !important;
  align-items: center !important;
  gap:         12px !important;
  padding:     9px 10px !important;
  border-radius: 9px !important;
  font-size:   13.5px !important;
  color:       #333 !important;
  font-weight: 500 !important;
  background:  transparent !important;
  font-family: 'Archivo', sans-serif !important;
  transition:  background .13s, color .13s !important;
}
#at-search .at-qlinks a:hover { background: #E6FAF7 !important; color: #09A88E !important; }
/* Ícono del acceso rápido — teal */
#at-search .at-qic {
  width:  34px !important; height: 34px !important;
  border-radius: 9px !important;
  background: #E6FAF7 !important;
  color: #09A88E !important;
  display: grid !important; place-items: center !important;
  flex-shrink: 0 !important;
  transition: background .13s !important;
}
#at-search .at-qlinks a:hover .at-qic { background: #09A88E !important; color: #fff !important; }
#at-search .at-qic svg {
  width: 15px !important; height: 15px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
}
/* Resultados de búsqueda — badge teal */
#at-search .at-sres { display: none !important; margin-top: 20px !important; }
#at-search .at-sres.at-show { display: block !important; }
#at-search .at-sres-item {
  display:     flex !important;
  align-items: center !important;
  gap:         14px !important;
  padding:     10px 12px !important;
  border-radius: 10px !important;
  background:  transparent !important;
  transition:  background .12s !important;
  cursor: pointer !important;
}
#at-search .at-sres-item:hover { background: #F4FBF9 !important; }
#at-search .at-sres-ic {
  width:         42px !important; height: 42px !important;
  border-radius: 11px !important;
  background:    #E6FAF7 !important;
  color:         #09A88E !important;
  display:       grid !important; place-items: center !important;
  flex-shrink:   0 !important;
}
#at-search .at-sres-ic svg {
  width: 19px !important; height: 19px !important;
  stroke: #09A88E !important; fill: none !important;
  stroke-width: 1.8 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
}
#at-search .at-sres-tx { flex: 1 !important; }
#at-search .at-sres-tx strong {
  display:     block !important;
  font-size:   14.5px !important;
  color:       #022E6B !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  font-family: 'Archivo', sans-serif !important;
}
#at-search .at-sres-tx small {
  font-size: 12px !important;
  color:     #8A909E !important;
  line-height: 1.4 !important;
  display: block !important;
  margin-top: 2px !important;
}
#at-search .at-sres-arr { color: #C4CAD4 !important; flex-shrink: 0 !important; }
#at-search .at-sres-arr svg {
  width: 15px !important; height: 15px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important; stroke-linejoin: round !important;
}
#at-search .at-sres-item:hover .at-sres-arr { color: #034AAC !important; }
#at-search .at-sempty {
  padding:   16px 12px !important;
  font-size: 13.5px !important;
  color:     #8A909E !important;
  line-height: 1.5 !important;
  font-family: 'Archivo', sans-serif !important;
}
#at-search .at-sempty a {
  color:           #034AAC !important;
  font-weight:     600 !important;
  text-decoration: underline !important;
}
@media screen and (max-width: 820px) {
  #at-search .at-scols { grid-template-columns: 1fr !important; gap: 24px !important; }
}
/* ═══════════════════════════════════════════════════════════
   OVERLAY
═══════════════════════════════════════════════════════════ */
#at-overlay {
  display: none !important;
  position: fixed !important; inset: 0 !important;
  z-index:    990 !important;
  background: rgba(2,46,107,.42) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .3s ease !important;
}
html.at-open #at-overlay { display: block !important; opacity: 1 !important; pointer-events: auto !important; }
/* ═══════════════════════════════════════════════════════════
   DRAWER MOBILE
═══════════════════════════════════════════════════════════ */
#at-drawer {
  position:   fixed !important;
  top: 0 !important; right: 0 !important; bottom: 0 !important;
  z-index:    1002 !important;
  width:      min(360px, 92vw) !important;
  background: #fff !important;
  display:    flex !important;
  flex-direction: column !important;
  transform:  translateX(102%) !important;
  transition: transform .34s cubic-bezier(.4,0,.2,1) !important;
  box-shadow: -16px 0 48px rgba(3,46,107,.16) !important;
  font-family: 'Archivo', sans-serif !important;
}
html.at-open #at-drawer { transform: translateX(0) !important; }
/* Barra degradado superior */
#at-drawer::before {
  content: '' !important; display: block !important;
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #034AAC 0%, #05ADF0 50%, #09A88E 100%) !important;
  z-index: 1 !important;
}
/* Header del drawer */
#at-drawer .at-dh {
  display:     flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 18px 22px !important;
  padding-left:  calc(22px + env(safe-area-inset-left,0px)) !important;
  padding-right: calc(22px + env(safe-area-inset-right,0px)) !important;
  border-bottom: 1px solid #E8EBF3 !important;
  flex-shrink: 0 !important;
  background: #F8FAFF !important;
}
#at-drawer .at-dh img {
  height: 34px !important; width: auto !important; display: block !important;
}
#at-drawer .at-dclose {
  width:  40px !important; height: 40px !important;
  border-radius: 50% !important;
  background: #EEF1FB !important;
  display: grid !important; place-items: center !important;
  color: #444 !important;
  transition: background .15s, color .15s !important;
}
#at-drawer .at-dclose:hover { background: #dce6f8 !important; color: #034AAC !important; }
#at-drawer .at-dclose svg {
  width: 17px !important; height: 17px !important;
  stroke: currentColor !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important;
}
/* Buscador mobile */
#at-drawer .at-ds {
  padding: 14px 16px !important;
  padding-left:  calc(16px + env(safe-area-inset-left,0px)) !important;
  padding-right: calc(16px + env(safe-area-inset-right,0px)) !important;
  border-bottom: 1px solid #E8EBF3 !important;
  flex-shrink: 0 !important;
  background: #fff !important;
  overflow: hidden !important;
}
#at-drawer .at-ds form {
  display:     flex !important;
  align-items: center !important;
  gap:         8px !important;
  background:  #F0F3FA !important;
  border:      1.5px solid #E8EBF3 !important;
  border-radius: 10px !important;
  padding:     10px 14px !important;
  transition:  border-color .15s, box-shadow .15s !important;
  width:       100% !important;
  box-sizing:  border-box !important;
  overflow:    hidden !important;
  min-width:   0 !important;
}
#at-drawer .at-ds form:focus-within {
  border-color: #034AAC !important;
  box-shadow: 0 0 0 3px rgba(3,74,172,.08) !important;
  background: #fff !important;
}
#at-drawer .at-ds svg {
  width: 15px !important; height: 15px !important;
  stroke: #8A909E !important; fill: none !important;
  stroke-width: 2 !important; flex-shrink: 0 !important;
}
#at-drawer .at-ds input {
  flex:       1 !important;
  min-width:  0 !important;
  border:     none !important; outline: none !important;
  background: transparent !important;
  font-size:  14px !important;
  color:      #1B2433 !important;
  font-family: inherit !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  width: 100% !important;
}
#at-drawer .at-ds input::placeholder { color: #B2BAC8 !important; }
/* Resultados mobile — badge teal */
#at-drawer .at-dres {
  display: none !important; flex: 1 !important; min-height: 0 !important;
  overflow-y: auto !important; -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important; padding: 8px 10px !important;
}
#at-drawer .at-dres.at-show { display: block !important; }
#at-drawer .at-dres-item {
  display:     flex !important;
  align-items: center !important;
  gap:         12px !important;
  padding:     10px 8px !important;
  border-radius: 10px !important;
  border-bottom: 1px solid #F0F2F6 !important;
  background: transparent !important;
  transition: background .12s !important;
}
#at-drawer .at-dres-item:hover { background: #E6FAF7 !important; }
#at-drawer .at-dric {
  width:  36px !important; height: 36px !important;
  border-radius: 9px !important;
  background: #E6FAF7 !important; color: #09A88E !important;
  display: grid !important; place-items: center !important; flex-shrink: 0 !important;
}
#at-drawer .at-dric svg {
  width: 16px !important; height: 16px !important;
  stroke: #09A88E !important; fill: none !important;
  stroke-width: 1.8 !important; stroke-linecap: round !important;
}
#at-drawer .at-drtx strong {
  display:     block !important;
  font-size:   14px !important;
  color:       #022E6B !important;
  font-weight: 600 !important;
  font-family: 'Archivo', sans-serif !important;
}
#at-drawer .at-drtx small {
  font-size: 12px !important; color: #8A909E !important;
  font-family: 'Archivo', sans-serif !important;
}
#at-drawer .at-dempty {
  padding:   14px 8px !important;
  font-size: 13.5px !important;
  color:     #8A909E !important;
  line-height: 1.5 !important;
}
#at-drawer .at-dempty a { color: #034AAC !important; font-weight: 600 !important; text-decoration: underline !important; }
/* Navegación mobile */
#at-drawer > nav {
  flex: 1 !important; min-height: 0 !important;
  display: flex !important; flex-direction: column !important; overflow: hidden !important;
}
#at-drawer .at-dnav {
  flex: 1 !important; min-height: 0 !important;
  overflow-y: auto !important; -webkit-overflow-scrolling: touch !important;
  overscroll-behavior: contain !important; padding: 4px 0 !important;
}
/* Links de nivel 1 — tipografía uniforme */
#at-drawer .at-dnav > li > a,
#at-drawer .at-dnav details > summary {
  display:     flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding:     14px 22px !important;
  font-size:   1rem !important;
  font-weight: 500 !important;
  color:       #333333 !important;
  border-bottom: 1px solid #F0F2F6 !important;
  cursor:      pointer !important;
  transition:  background .13s, color .13s, border-left-color .13s !important;
  list-style:  none !important;
  gap:         10px !important;
  line-height: 1.4 !important;
  background:  none !important;
  border-left: 3px solid transparent !important;
  font-family: 'Archivo', sans-serif !important;
  letter-spacing: 0 !important;
}
#at-drawer .at-dnav details > summary::-webkit-details-marker { display: none !important; }
#at-drawer .at-dnav > li > a:hover,
#at-drawer .at-dnav details > summary:hover {
  background:        #EEF1FB !important;
  color:             #034AAC !important;
  border-left-color: #034AAC !important;
}
#at-drawer .at-dnav .at-dchev svg {
  width: 16px !important; height: 16px !important;
  stroke: #AAB2C0 !important; fill: none !important;
  stroke-width: 2 !important; stroke-linecap: round !important;
  transition: transform .22s, stroke .22s !important;
}
#at-drawer .at-dnav details[open] > summary .at-dchev svg {
  transform: rotate(90deg) !important;
  stroke:    #034AAC !important;
}
#at-drawer .at-dnav details[open] > summary {
  color:             #034AAC !important;
  background:        #EEF1FB !important;
  border-left-color: #034AAC !important;
}
#at-drawer .at-dnav > li > a.at-active {
  color:             #034AAC !important;
  background:        #EEF1FB !important;
  border-left-color: #034AAC !important;
}
/* Sub-items — tipografía uniforme, dot teal */
#at-drawer .at-dsub {
  background:  #F8FAFF !important;
  border-bottom: 1px solid #F0F2F6 !important;
  box-shadow:  inset 0 2px 6px rgba(3,74,172,.03) !important;
}
#at-drawer .at-dsub a {
  display:     flex !important;
  align-items: center !important;
  gap:         11px !important;
  padding:     12px 22px 12px 36px !important;
  font-size:   1rem !important;
  font-weight: 500 !important;
  color:       #333333 !important;
  background:  transparent !important;
  border-bottom: 1px solid #EDF0F7 !important;
  transition:  background .12s, color .12s, padding-left .12s !important;
  line-height: 1.4 !important;
  font-family: 'Archivo', sans-serif !important;
  letter-spacing: 0 !important;
}
#at-drawer .at-dsub li:last-child a { border-bottom: none !important; }
#at-drawer .at-dsub a:hover {
  background:   #EEF1FB !important;
  color:        #034AAC !important;
  padding-left: 40px !important;
}
#at-drawer .at-dsub a.at-active {
  color:       #034AAC !important;
  font-weight: 700 !important;
  background:  #EEF1FB !important;
}
/* Dot teal — identidad de servicio */
#at-drawer .at-dsub .at-dot {
  width:  7px !important; height: 7px !important;
  border-radius: 50% !important;
  background:  #09A88E !important;
  flex-shrink: 0 !important;
  display:     inline-block !important;
}
/* Flags */
#at-drawer .at-dnav .at-flag,
#at-header .at-dd .at-flag {
  font-size: 16px !important; line-height: 1 !important; flex-shrink: 0 !important;
}
/* Footer del drawer */
#at-drawer .at-df {
  position: relative !important;
  padding: 16px 18px !important;
  padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  border-top: 1px solid #E8EBF3 !important;
  display: flex !important; flex-direction: column !important;
  gap: 10px !important;
  flex-shrink: 0 !important;
  background: #F8FAFF !important;
}
#at-drawer .at-df::before {
  content: '' !important; position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, #034AAC 0%, #05ADF0 50%, #09A88E 100%) !important;
  opacity: .3 !important;
}
/* CTA mobile — gradiente, único componente con azul sólido */
#at-drawer .at-df .at-cta {
  display:     flex !important;
  align-items: center !important;
  justify-content: center !important;
  width:       100% !important;
  font-size:   14.5px !important;
  font-weight: 700 !important;
  padding:     13px 20px !important;
  border-radius: 9px !important;
  background:  linear-gradient(130deg, #034AAC 0%, #0566D6 100%) !important;
  color:       #fff !important;
  border:      none !important;
  line-height: 1 !important;
  font-family: 'Archivo', sans-serif !important;
  letter-spacing: .01em !important;
  box-shadow:
    0 4px 12px rgba(3,74,172,.25),
    0 8px 24px rgba(3,74,172,.20) !important;
  transition:  filter .15s, transform .15s !important;
}
#at-drawer .at-df .at-cta:hover  { filter: brightness(1.08) !important; }
#at-drawer .at-df .at-cta:active { transform: scale(.98) !important; }
/* ═══════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════ */
/* Laptop (1025–1440px): bajar tamaños para no cansar la vista */
@media screen and (max-width: 1440px) and (min-width: 1025px) {
  #at-header .at-nav > li > a {
    font-size: 0.9rem !important;
    padding: 8px 12px !important;
  }
  #at-header .at-cta {
    font-size: 0.85rem !important;
    padding: 9px 18px !important;
  }
  #at-header .at-country-btn {
    font-size: 12px !important;
    height: 36px !important;
  }
  #at-header .at-lupa {
    width: 36px !important;
    height: 36px !important;
  }
  #at-header .at-row { height: 88px !important; }
  #at-mega .at-mcard-title { font-size: 0.825rem !important; }
  #at-mega .at-mcard-desc  { font-size: 0.7rem !important; }
  #at-mega .at-mcard { padding: 26px 20px !important; }
}
@media screen and (max-width: 1024px) {
  #at-header .at-nav     { display: none !important; }
  #at-header .at-actions { display: none !important; }
  #at-header .at-burger  { display: grid !important; }
  #at-header .at-logo    { margin-right: 0 !important; }
  #at-mega               { display: none !important; }
}
