/* Encabezado, migas y pie ÚNICOS de advsysa.com (revisión de advsysa.com, paso 14: #9 #11 #47 #48 y las partes
   de encabezado y pie de #54 #82 #84).
   paso14-poner.mjs pone el menú entre <!-- cabecera-advsysa --> y <!-- /cabecera-advsysa -->, las migas entre
   <!-- migas-advsysa --> y <!-- /migas-advsysa --> y el pie entre <!-- pie-advsysa --> y <!-- /pie-advsysa -->, y
   enlaza esta hoja UNA vez, al final del <head> de cada página pública. Un cambio acá se ve en todo el sitio.

   Cada página trae sus propias reglas sueltas para «nav», «footer», «ul», «li», «a», «h2», «p», «img»…, y diez páginas
   cargan styles.css, que pinta el texto del pie con !important. Por eso TODO va con «html .adv-…» (gana por peso sin
   importar cuál hoja se carga primero) y con !important solo donde la regla de la página lo trae. Las clases propias
   son adv-cab*, adv-migas* y adv-pie*. Las de contacto-advsysa (la franja de arriba, la barra del teléfono y el
   renglón «Soporte 24/7» del menú plegado) las dibuja y las borra contacto-advsysa.js: acá solo se les da aspecto
   y nunca se escriben en el HTML.

   El menú sigue el mismo plegado que dejó el paso 4: por debajo de 1300 px se pliega en «Menú» (panel de 360 px entre
   900 y 1300 px, ancho completo hasta 900 px) y en el teléfono es UNA fila de 64 px: logo, «EN» y «Menú» (#66). */

html{scroll-padding-top:84px}

.adv-cab,.adv-migas,.adv-pie{--adv-fuente:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

/* ── Encabezado ─────────────────────────────────────────────────────────────────────────────────── */
/* Azul del sitio (#0d2137); el borde de abajo es sombra para que la fila de 64 px del teléfono mida 64. */
html .adv-cab{position:sticky;top:0;z-index:1000;display:block;box-sizing:border-box;width:100%;height:auto;
  min-height:0!important;margin:0;padding:0!important;border:0;background:#0d2137;box-shadow:0 1px 0 rgba(255,255,255,.14);
  color:#fff;font:500 15px/1.3 var(--adv-fuente);letter-spacing:0;text-align:left;text-transform:none}
/* flex-wrap: por si en algún ancho justo el menú no cupiera (medido: a 1300 px sobran ~60 px), baja a una segunda línea en
   vez de sacar una barra de desplazamiento horizontal. Con el menú plegado la lista no ocupa lugar en la fila. */
html .adv-cab .adv-cab-fila{position:static;display:flex;flex-wrap:wrap;align-items:center;gap:0 16px;box-sizing:border-box;
  width:100%;max-width:1280px;min-height:76px;margin:0 auto;padding:8px 32px}

/* El logo oficial, sin redibujar: la legibilidad sale del tamaño (54 px de alto) y del fondo azul oscuro. */
/* «order» explícito en los cuatro hijos de la fila (logo 0, EN 1, Menú 2, lista 3): el orden que se ve es el del HTML y
   del teclado. Sin esto, el «.lang-btn{order:2}» de las páginas copiadas de /cctv/ ponía «EN» después del menú. */
html .adv-cab .adv-cab-logo{order:0;display:flex;flex:0 0 auto;align-items:center;min-height:44px;margin:0 auto 0 0;padding:0;
  border:0;border-radius:6px;background:none;color:#fff;text-decoration:none}
html .adv-cab .adv-cab-logo img{display:block;width:auto;max-width:none;height:54px;margin:0;padding:0;border:0;
  background:none;object-fit:contain}

/* «EN»: lo trae cada página que tiene inglés (#langBtn o .lang-btn, el paso 21 lo deja donde corresponde). */
html .adv-cab :is([id="langBtn"],.lang-btn){order:1;position:static;display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 auto;box-sizing:border-box;min-width:44px;min-height:44px;margin:0;padding:0 12px;border:1.5px solid rgba(255,255,255,.6);
  border-radius:8px;background:transparent;color:#fff;font:700 14px/1 var(--adv-fuente);letter-spacing:.02em;
  text-decoration:none;text-transform:none;cursor:pointer;transform:none;opacity:1}
html .adv-cab :is([id="langBtn"],.lang-btn):hover{background:rgba(255,255,255,.12);color:#fff}

/* Botón «Menú»: solo se ve donde el menú está plegado (abajo, por debajo de 1300 px). */
html .adv-cab .atg-menu-toggle{display:none;flex:0 0 auto;align-items:center;justify-content:center;gap:8px;
  box-sizing:border-box;min-width:76px;min-height:44px;margin:0;padding:0 14px;border:0;border-radius:8px;
  background:#fff;color:#00566b;font:700 15px/1 var(--adv-fuente);letter-spacing:0;text-transform:none;cursor:pointer;order:2}
html .adv-cab .atg-menu-toggle svg{display:block;width:20px;height:20px;flex:none}
html .adv-cab .atg-menu-toggle[aria-expanded="true"]{background:#dff0f5}

/* Menú en una fila (1300 px o más): pocos destinos, el botón de cotizar al final. */
html .adv-cab .adv-cab-lista{order:3;position:static;display:flex;flex:0 0 auto;align-items:center;gap:4px;box-sizing:border-box;
  width:auto;margin:0;padding:0;list-style:none;background:none;box-shadow:none;transform:none;overflow:visible}
html .adv-cab .adv-cab-lista li{margin:0;padding:0;list-style:none;font:inherit;color:inherit}
html .adv-cab .adv-cab-lista a{display:inline-flex;align-items:center;box-sizing:border-box;min-height:44px;margin:0;
  padding:0 14px;border:0;border-bottom:3px solid transparent;border-radius:6px 6px 0 0;background:none;color:#fff;
  font:500 15px/1.2 var(--adv-fuente);letter-spacing:0;text-decoration:none;text-transform:none;white-space:nowrap;
  transition:background-color .14s,border-color .14s}
html .adv-cab .adv-cab-lista a:hover{background:rgba(255,255,255,.1);color:#fff}
/* «Marcas que instalamos»: en la fila de una línea se ve solo «Marcas» (así cabe aunque la aplicación sume su enlace «Noticias»);
   « que instalamos» sigue ahí para quien usa lector de pantalla o dice el nombre por voz, y el panel plegado lo muestra completo. */
html .adv-cab .adv-cab-lista .adv-cab-mas{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* La página donde estás: texto en negrita Y raya cian (no solo color). aria-current="page" = esta página;
   "true" = una página de esta sección (por ejemplo CCTV dentro de «Ver soluciones»). */
html .adv-cab .adv-cab-lista a[aria-current]{border-bottom-color:#009fc8;font-weight:700}
html .adv-cab .adv-cab-lista a.adv-cab-cta{min-height:46px;margin-left:12px;padding:0 20px;border:0;border-radius:8px;
  background:#00566b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.32);color:#fff;font-weight:700}
html .adv-cab .adv-cab-lista a.adv-cab-cta:hover{background:#006f8a;color:#fff}

/* Foco del teclado sobre el azul oscuro: aro blanco, sin el halo blanco de styles.css. */
html .adv-cab :is(a,button):focus-visible{outline:3px solid #fff!important;outline-offset:3px!important;box-shadow:none!important}

/* ── Menú plegado en «Menú» (por debajo de 1300 px) ───────────────────────────────────────────────── */
@media (max-width:1299.98px){
  html .adv-cab .adv-cab-fila{min-height:72px;padding:8px 20px;gap:0 12px;flex-wrap:nowrap}
  html .adv-cab .adv-cab-logo img{height:50px}
  html .adv-cab .atg-menu-toggle{display:inline-flex!important;margin:0}
  /* El panel cuelga del encabezado: 360 px pegado a la derecha; con !important donde la página y
     contacto-advsysa.css lo traen (mismo conjunto de propiedades, más peso). */
  html .adv-cab .adv-cab-lista{position:absolute!important;top:100%;right:0;left:auto;z-index:2;display:none!important;
    flex-direction:column;align-items:stretch;gap:2px!important;width:360px;max-width:100%;
    max-height:calc(100dvh - 84px - var(--adv-arriba,0px) - var(--adv-abajo,0px));margin:0!important;
    padding:10px 12px 14px!important;overflow-y:auto;background:#fff;color:#18283a;border-radius:0 0 12px 12px;
    box-shadow:0 12px 24px rgba(9,25,47,.28);transform:none!important;visibility:visible!important}
  html .adv-cab .adv-cab-lista.atg-menu-open{display:flex!important}
  html .adv-cab .adv-cab-lista li{width:100%;margin:0!important}
  html .adv-cab .adv-cab-lista a{display:flex!important;align-items:center;width:100%;min-height:48px;margin:0;
    padding:12px 14px!important;border:0;border-left:4px solid transparent;border-radius:8px;background:none;
    color:#18283a;font-size:16px;font-weight:600;white-space:normal}
  /* «Marcas que instalamos» cuelga de «Ver soluciones»: en el panel va sangrada y con el nombre completo (la lista sigue
     siendo plana, sin submenú: la aplicación necesita una sola <ul> para sumar «Noticias» por su cuenta). */
  html .adv-cab .adv-cab-lista a.adv-cab-sub{padding-left:32px!important;font-size:15px;font-weight:500}
  html .adv-cab .adv-cab-lista .adv-cab-mas{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;
    clip-path:none;white-space:inherit}
  html .adv-cab .adv-cab-lista a:hover{background:#eef5f9;color:#00566b}
  html .adv-cab .adv-cab-lista a[aria-current]{border-left-color:#00566b;background:#e6f2f6;color:#00566b;font-weight:700}
  html .adv-cab .adv-cab-lista a.adv-cab-cta{justify-content:center;min-height:52px;margin:8px 0 0;border-left:0;
    background:#00566b;color:#fff;font-weight:700}
  html .adv-cab .adv-cab-lista a.adv-cab-cta:hover{background:#006f8a;color:#fff}
  /* El renglón «Soporte 24/7» lo suma contacto-advsysa.js al final del menú plegado: aquí solo se le da una raya arriba
     (nunca se toca su «display», que es de contacto-advsysa.css). El !important es porque «li{margin:0!important}» de arriba y de
     contacto-advsysa.css también lo traen. */
  html .adv-cab .adv-cab-lista .adv-solo-movil{margin-top:6px!important;padding-top:6px;border-top:1px solid #dbe6ee}
  /* Dentro del panel blanco el foco es petróleo y queda DENTRO del renglón (el panel recorta lo de afuera). */
  html .adv-cab .adv-cab-lista a:focus-visible{outline:3px solid #00566b!important;outline-offset:-3px!important}
  html .adv-cab .adv-cab-lista a.adv-cab-cta:focus-visible{outline-color:#fff!important}
}
@media (max-width:900px){
  html .adv-cab .adv-cab-lista{left:0;right:0;width:100%;border-radius:0}
}
@media (max-width:767.98px){
  html .adv-cab .adv-cab-fila{min-height:64px;padding:8px 12px 8px 16px;gap:8px}
  html .adv-cab .adv-cab-logo img{height:48px}
}

/* ── Migas: «Inicio / Soluciones / CCTV y monitoreo» ──────────────────────────────────────────────── */
/* Es un <nav>, y varias páginas le dan estilo a toda etiqueta nav (pegajoso, azul): se anula acá. */
html .adv-migas{position:static!important;top:auto;z-index:auto;display:block;box-sizing:border-box;width:100%;height:auto;
  margin:0;padding:0;border:0;background:#0d2137;box-shadow:0 1px 0 rgba(255,255,255,.1);color:#c6d3e3;
  font:500 14px/1.4 var(--adv-fuente);letter-spacing:0;text-transform:none}
html .adv-migas ol{display:flex;flex-wrap:wrap;align-items:center;gap:0 6px;box-sizing:border-box;max-width:1280px;
  margin:0 auto;padding:6px 32px;list-style:none}
html .adv-migas li{display:flex;align-items:center;margin:0;padding:0;list-style:none;color:#c6d3e3;font:inherit}
html .adv-migas li+li::before{content:"/";content:"/" / "";margin-right:6px;color:#8aa0b5}
html .adv-migas a{display:inline-flex;align-items:center;min-height:32px;padding:0 4px;border-radius:4px;background:none;
  color:#e8f0f7;font:inherit;text-decoration:underline;text-underline-offset:3px}
html .adv-migas a:hover{color:#fff;text-decoration-thickness:2px}
html .adv-migas [aria-current]{color:#fff;font-weight:700}
html .adv-migas a:focus-visible{outline:3px solid #fff!important;outline-offset:2px!important;box-shadow:none!important}
@media (max-width:767.98px){html .adv-migas ol{padding:4px 16px}}

/* ── Pie ────────────────────────────────────────────────────────────────────────────────────────── */
html .adv-pie{display:block;position:static;box-sizing:border-box;width:100%;margin:0;padding:0;border:0;
  border-top:1px solid rgba(255,255,255,.1);background:#09192f;color:#c6d3e3;font:400 15px/1.5 var(--adv-fuente);
  letter-spacing:0;text-align:left;text-transform:none}
html .adv-pie .adv-pie-in{box-sizing:border-box;max-width:1280px;margin:0 auto;padding:48px 32px 84px}
html .adv-pie .adv-pie-cols{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:36px 40px;margin:0;padding:0}
html .adv-pie .adv-pie-cols>div{min-width:0}

/* styles.css pinta p, a y li del pie con !important: acá igual, con más peso. */
html .adv-pie p,html .adv-pie li,html .adv-pie a,html .adv-pie address,html .adv-pie span{color:#c6d3e3!important}
html .adv-pie a span{color:inherit!important}
html .adv-pie h2{margin:0 0 8px;padding:0;color:#fff;font:700 15px/1.3 var(--adv-fuente);letter-spacing:.01em;text-transform:none}
html .adv-pie ul+h2{margin-top:22px}
html .adv-pie ul{margin:0;padding:0;list-style:none}
html .adv-pie li{margin:0;padding:0;list-style:none;font:inherit}
html .adv-pie li a{display:inline-flex;align-items:center;box-sizing:border-box;min-height:36px;padding:2px 0;
  font:inherit;text-decoration:none;background:none;border:0}
/* Teléfonos y WhatsApp son lo principal: 44 px de alto y letra blanca. */
html .adv-pie a.adv-pie-llamar{min-height:44px;color:#fff!important;font-weight:600}
html .adv-pie a:hover,html .adv-pie a:focus-visible{color:#fff!important;text-decoration:underline;text-underline-offset:4px}
html .adv-pie a:focus-visible{outline:3px solid #fff!important;outline-offset:3px!important;box-shadow:none!important}

html .adv-pie .adv-pie-logo{display:inline-flex;align-items:center;min-height:44px;margin:0 0 12px;padding:0;border:0;background:none}
html .adv-pie .adv-pie-logo img{display:block;width:auto;max-width:none;height:56px;margin:0;padding:0;border:0;background:none}
html .adv-pie .adv-pie-lema{margin:0 0 14px;padding:0;max-width:34ch;font:inherit}
html .adv-pie .adv-pie-lema a{font-weight:600;text-decoration:underline;text-underline-offset:3px;color:#fff!important}
html .adv-pie .adv-pie-dir{margin:0 0 6px;padding:0;font:inherit;font-style:normal}
html .adv-pie .adv-pie-dir a{display:inline-flex;align-items:center;min-height:36px;margin-top:4px;padding:2px 0;
  font-weight:600;text-decoration:underline;text-underline-offset:3px;color:#fff!important}
html .adv-pie .adv-pie-redes{margin:0;padding:0;font:inherit}
html .adv-pie .adv-pie-redes a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:2px 0;
  font-weight:600;text-decoration:none;color:#fff!important}
html .adv-pie .adv-pie-redes svg{display:block;width:20px;height:20px;flex:none}

/* La línea de ayuda (#84) y la de derechos. */
html .adv-pie .adv-pie-ayuda{margin:32px 0 0;padding:20px 0;border-top:1px solid rgba(255,255,255,.14);
  color:#fff!important;font:400 16px/1.5 var(--adv-fuente)}
html .adv-pie .adv-pie-ayuda a{display:inline;min-height:0;padding:0 1px;color:#fff!important;font-weight:600;
  text-decoration:underline;text-underline-offset:3px}
html .adv-pie .adv-pie-final{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 24px;
  margin:0;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.14);font-size:15px}
html .adv-pie .adv-pie-final a{display:inline-flex;align-items:center;min-height:32px;padding:0;font-weight:600;text-decoration:none;color:#fff!important}

@media (max-width:1023.98px){
  html .adv-pie .adv-pie-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  html .adv-pie .adv-pie-marca{grid-column:1/-1}
}
@media (max-width:599.98px){
  html .adv-pie .adv-pie-in{padding:36px 16px 20px}
  html .adv-pie .adv-pie-cols{grid-template-columns:minmax(0,1fr);gap:28px}
}

/* ── Movimiento reducido, contraste forzado e impresión ─────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  html .adv-cab *,html .adv-pie *{transition:none!important;animation:none!important}
}
@media (forced-colors:active){
  html .adv-cab .adv-cab-lista a.adv-cab-cta,html .adv-cab .atg-menu-toggle{border:2px solid ButtonText}
}
@media print{html .adv-cab,html .adv-migas,html .adv-pie{display:none!important}}
/* Paso 35 (#67) · pie más compacto en teléfono (mismos enlaces y textos, menos alto). */
@media (max-width:599.98px){
  html .adv-pie .adv-pie-in{padding:28px 16px 12px}
  html .adv-pie .adv-pie-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
  html .adv-pie .adv-pie-marca,html .adv-pie .adv-pie-cols>.adv-pie-col:last-child{grid-column:1/-1}
  html .adv-pie h2{margin-bottom:2px}
  html .adv-pie ul+h2{margin-top:12px}
  html .adv-pie li a{line-height:1.3;padding:3px 0}
  html .adv-pie .adv-pie-logo{margin-bottom:4px}
  html .adv-pie .adv-pie-logo img{height:48px}
  html .adv-pie .adv-pie-lema{margin-bottom:8px}
  html .adv-pie .adv-pie-cols>.adv-pie-col:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto 1fr;grid-auto-flow:column;column-gap:16px}
  html .adv-pie .adv-pie-cols>.adv-pie-col:last-child h2{margin-top:0}
  html .adv-pie .adv-pie-ayuda{margin-top:16px;padding:14px 0}
  html .adv-pie .adv-pie-final{padding-top:8px}
}
