/* SEDECO S.A. – hoja de estilos única */
@font-face{font-family:"Oswald";font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/oswald-latin.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/source-sans-3-latin.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/source-sans-3-latin-italic.woff2) format("woff2")}

:root{
  --rojo:#D62A00; --rojo-osc:#B32300; --granate:#540100; --granate-2:#3a0100;
  --texto:#2b2b2b; --suave:#5f5f5f; --fondo:#f6f4f2; --borde:#e6e1dc; --blanco:#fff;
  --radio:10px; --sombra:0 6px 24px rgba(40,10,0,.08);
  --ancho:1180px;
  --f-tit:"Oswald","Arial Narrow",Arial,sans-serif;
  --f-txt:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--f-txt);font-size:1.075rem;line-height:1.65;color:var(--texto);background:var(--blanco);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--rojo)}
a:hover{color:var(--granate)}
h1,h2,h3,h4{font-family:var(--f-tit);font-weight:600;line-height:1.15;color:var(--granate);margin:0 0 .6em;letter-spacing:.01em}
h1{font-size:clamp(2.1rem,5vw,3.6rem);text-transform:uppercase}
h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}
h3{font-size:1.35rem}
p{margin:0 0 1em}
ul{padding-left:1.2em}
:focus-visible{outline:3px solid var(--rojo);outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0;background:var(--granate);color:#fff;padding:.6em 1em;z-index:100}
.skip:focus{left:1rem}
.contenedor{width:min(var(--ancho),100% - 2.5rem);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Barra superior */
.topbar{background:var(--granate);color:#f4dcd5;font-size:.92rem}
.topbar .contenedor{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.4rem 0;flex-wrap:wrap}
.topbar a{color:#fff;text-decoration:none}
.topbar a:hover{text-decoration:underline;color:#fff}
.topbar .tb-datos{display:flex;gap:1.2rem;flex-wrap:wrap}
.ico{width:1em;height:1em;vertical-align:-.13em;margin-right:.35em;fill:currentColor}

/* Cabecera */
.cabecera{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 var(--borde)}
.cabecera .contenedor{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:78px}
.logo img{height:52px;width:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:.2rem;align-items:center}
.nav a{display:block;padding:.55rem .7rem;font-family:var(--f-tit);font-weight:500;text-transform:uppercase;letter-spacing:.03em;font-size:.95rem;color:var(--granate);text-decoration:none;border-radius:6px}
.nav a:hover,.nav a[aria-current="page"]{color:var(--rojo);background:#fbeee9}
.nav .btn-nav{background:var(--rojo);color:#fff;margin-left:.4rem}
.nav .btn-nav:hover,.nav .btn-nav[aria-current="page"]{background:var(--granate);color:#fff}
.menu-btn{display:none;background:none;border:2px solid var(--granate);border-radius:8px;padding:.45rem .6rem;color:var(--granate);font:600 .95rem var(--f-tit);text-transform:uppercase;cursor:pointer}
.menu-btn span{display:inline-block;width:20px;height:2px;background:currentColor;position:relative;vertical-align:middle;margin-right:.45rem}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:currentColor}
.menu-btn span::before{top:-6px}.menu-btn span::after{top:6px}
@media (max-width:1060px){
  .menu-btn{display:inline-block}
  .nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--borde);box-shadow:var(--sombra);display:none}
  .nav.abierto{display:block}
  .nav ul{flex-direction:column;align-items:stretch;padding:.6rem 1.25rem 1rem}
  .nav a{padding:.8rem .5rem;border-bottom:1px solid var(--borde);border-radius:0}
  .nav .btn-nav{margin:.6rem 0 0;text-align:center;border-radius:8px}
  .logo img{height:44px}
}
@media (max-width:560px){.topbar .tb-extra{display:none}.topbar{font-size:.86rem}.topbar .tb-datos{gap:.4rem .9rem}}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.8rem 1.4rem;border-radius:8px;font-family:var(--f-tit);font-weight:500;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;font-size:1rem;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s}
.btn-rojo{background:var(--rojo);color:#fff}
.btn-rojo:hover{background:var(--rojo-osc);color:#fff}
.btn-borde{border-color:#fff;color:#fff}
.btn-borde:hover{background:#fff;color:var(--granate)}
.btn-borde-osc{border-color:var(--granate);color:var(--granate)}
.btn-borde-osc:hover{background:var(--granate);color:#fff}
.botones{display:flex;flex-wrap:wrap;gap:.8rem}

/* Hero y cabeceras: foto clara con degradado translúcido color fuego */
.hero{position:relative;color:#fff;background:#e88a3c center/cover no-repeat;min-height:min(78vh,640px);display:flex;align-items:center}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(176,52,0,.66) 0%,rgba(214,74,8,.5) 28%,rgba(242,140,40,.22) 50%,rgba(242,140,40,0) 66%)}
.hero .contenedor{position:relative;padding:4rem 0}
.hero .antetitulo{font-family:var(--f-tit);text-transform:uppercase;letter-spacing:.18em;font-size:1rem;color:#ffe6c7;margin-bottom:.6rem;text-shadow:0 1px 6px rgba(70,15,0,.6)}
.hero h1{color:#fff;max-width:14ch;margin-bottom:.4em;text-shadow:0 2px 14px rgba(70,15,0,.55),0 1px 2px rgba(70,15,0,.5)}
.hero p.lead{font-size:1.25rem;max-width:40ch;color:#fff;margin-bottom:1.6rem;font-weight:600;text-shadow:0 1px 3px rgba(70,15,0,.75),0 0 14px rgba(70,15,0,.45)}
.hero .btn-borde{border-color:#fff;color:#fff;background:rgba(120,30,0,.18)}
.hero .btn-borde:hover{background:#fff;color:var(--rojo)}
@media (max-width:760px){.hero{background-position:72% center}.hero::before{background:linear-gradient(180deg,rgba(176,52,0,.5) 0%,rgba(214,74,8,.38) 55%,rgba(242,140,40,.1) 100%)}}
.cab-pagina{position:relative;color:#fff;background:#e88a3c center/cover no-repeat;padding:4.5rem 0 3.5rem}
.cab-pagina::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(176,52,0,.64) 0%,rgba(214,74,8,.46) 38%,rgba(242,140,40,.15) 68%,rgba(242,140,40,0) 85%)}
.cab-pagina .contenedor{position:relative}
.cab-pagina h1{color:#fff;font-size:clamp(1.9rem,4.4vw,3rem);max-width:22ch;text-shadow:0 2px 12px rgba(70,15,0,.55),0 1px 2px rgba(70,15,0,.5)}
.cab-pagina p{max-width:60ch;font-size:1.18rem;color:#fff;margin:0;font-weight:600;text-shadow:0 1px 3px rgba(70,15,0,.75),0 0 12px rgba(70,15,0,.45)}
.migas{font-size:.9rem;margin-bottom:.8rem;color:#ffe6c7;text-shadow:0 1px 3px rgba(70,15,0,.7)}
.migas a{color:#fff}
@media (max-width:760px){.cab-pagina::before{background:linear-gradient(180deg,rgba(176,52,0,.52),rgba(214,74,8,.36))}}

/* Bloques destacados con foto grande */
.destacado-sec{background:linear-gradient(180deg,#fff7ee,#fff)}
.destacado{display:grid;grid-template-columns:1.55fr 1fr;gap:2.8rem;align-items:center}
@media (max-width:900px){.destacado{grid-template-columns:1fr;gap:1.6rem}}
.destacado-img,.destacado-grande{margin:0}
.destacado-img img,.destacado-grande img{width:100%;border-radius:14px;box-shadow:0 14px 40px rgba(120,40,0,.18);aspect-ratio:16/9;object-fit:cover}
.destacado-img figcaption,.destacado-grande figcaption,.fotos-grandes figcaption{font-size:.95rem;color:var(--suave);margin-top:.6rem;font-style:italic}
.datos-clave{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.datos-clave div{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:1.1rem 1.2rem;border-left:4px solid #E8590C}
.datos-clave strong{display:block;font-family:var(--f-tit);font-size:1.6rem;color:var(--rojo);line-height:1.1}
.datos-clave span{font-size:.98rem;color:var(--suave)}
@media (max-width:900px){.datos-clave{grid-template-columns:repeat(2,1fr)}}
@media (max-width:460px){.datos-clave{grid-template-columns:1fr}}
.fotos-grandes{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2rem}
.fotos-grandes figure{margin:0}
.fotos-grandes img{width:100%;border-radius:12px;aspect-ratio:4/3;object-fit:cover;box-shadow:var(--sombra)}
@media (max-width:700px){.fotos-grandes{grid-template-columns:1fr}}

/* Secciones */
.seccion{padding:4.5rem 0}
.seccion.gris{background:var(--fondo)}
.seccion-tit{max-width:760px;margin-bottom:2.4rem}
.seccion-tit .antetitulo,.antetitulo-rojo{font-family:var(--f-tit);text-transform:uppercase;letter-spacing:.16em;color:var(--rojo);font-size:.95rem;margin-bottom:.3rem;display:block}
.seccion-tit p{color:var(--suave);font-size:1.15rem}

/* Valores */
.valores{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:-3.5rem;position:relative;z-index:2}
.valor{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:1.5rem 1.4rem;border-top:4px solid var(--rojo)}
.valor h3{text-transform:uppercase;font-size:1.2rem;margin-bottom:.4rem}
.valor p{margin:0;color:var(--suave);font-size:1rem}
.valor svg{width:34px;height:34px;fill:var(--rojo);margin-bottom:.6rem}
@media (max-width:900px){.valores{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.valores{grid-template-columns:1fr;margin-top:-2rem}}

/* Tarjetas */
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.4rem}
.tarjeta{background:#fff;border-radius:var(--radio);overflow:hidden;box-shadow:var(--sombra);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
a.tarjeta:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(40,10,0,.14);color:inherit}
.tarjeta img{aspect-ratio:4/3;object-fit:cover;width:100%}
.tarjeta .cuerpo{padding:1.2rem 1.3rem 1.4rem;display:flex;flex-direction:column;flex:1}
.tarjeta h3{margin-bottom:.4rem}
.tarjeta p{color:var(--suave);font-size:1rem;flex:1}
.tarjeta .mas{font-family:var(--f-tit);text-transform:uppercase;letter-spacing:.05em;color:var(--rojo);font-size:.95rem}

/* Bloques imagen + texto */
.bloque{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.bloque + .bloque{margin-top:4rem}
.bloque.invertido .bloque-img{order:2}
.bloque-img img{border-radius:var(--radio);box-shadow:var(--sombra);width:100%;aspect-ratio:4/3;object-fit:cover}
.bloque-img.vertical img{aspect-ratio:3/4;max-height:520px;margin-inline:auto;width:auto}
.bloque-img.contener img{object-fit:contain;background:#fff;padding:1rem}
.bloque-img figcaption{font-size:.9rem;color:var(--suave);margin-top:.5rem}
.bloque-img figure{margin:0}
@media (max-width:820px){.bloque{grid-template-columns:1fr;gap:1.5rem}.bloque.invertido .bloque-img{order:0}}

.lista-check{list-style:none;padding:0;margin:0 0 1.2em}
.lista-check li{position:relative;padding-left:1.8em;margin-bottom:.45em}
.lista-check li::before{content:"";position:absolute;left:0;top:.42em;width:1.05em;height:1.05em;border-radius:50%;background:var(--rojo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9.5 16.2 5.3 12l-1.4 1.4 5.6 5.6 11-11-1.4-1.4z'/%3E%3C/svg%3E") center/80% no-repeat}

/* Fichas de equipo (texto) */
.fichas{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem}
.ficha{background:#fff;border:1px solid var(--borde);border-radius:var(--radio);padding:1.4rem 1.4rem 1.1rem}
.seccion.gris .ficha{border-color:#fff}
.ficha h3{font-size:1.2rem;margin-bottom:.45rem}
.ficha p{font-size:1rem;color:var(--suave)}
.ficha .dato{display:inline-block;background:#fbeee9;color:var(--granate);font-weight:600;font-size:.88rem;border-radius:99px;padding:.15em .7em;margin:0 .3em .5em 0}
.ficha-img{display:grid;grid-template-columns:120px 1fr;gap:1rem;align-items:start}
.ficha-img img{width:120px;height:120px;object-fit:contain;background:#fff;border-radius:8px}
@media (max-width:420px){.ficha-img{grid-template-columns:1fr}}

/* Subtítulo de grupo */
.grupo-tit{display:flex;align-items:center;gap:1rem;margin:3rem 0 1.4rem}
.grupo-tit:first-child{margin-top:0}
.grupo-tit h2,.grupo-tit h3{margin:0;max-width:85%}
.grupo-tit::after{content:"";height:2px;background:var(--borde);flex:1}

/* Productos */
.productos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.2rem}
.producto{background:#fff;border:1px solid var(--borde);border-radius:var(--radio);padding:1.1rem;text-align:center}
.producto img{width:150px;height:150px;margin:0 auto .7rem;object-fit:contain}
.producto h4{font-size:1.08rem;margin-bottom:.35rem}
.producto p{font-size:.95rem;color:var(--suave);margin:0}

/* Banda destacada */
.banda{position:relative;color:#fff;background:#2a0b03 center/cover no-repeat;padding:5.5rem 0}
.banda::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(176,52,0,.5),rgba(214,74,8,.38))}
.banda .contenedor{position:relative;max-width:820px;text-align:center}
.banda h2{color:#fff;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.banda .antetitulo-rojo{color:#ffd2c2}
.banda p{font-size:1.2rem;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.banda .botones{justify-content:center;margin-top:1.4rem}

/* Galería */
.galeria{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}
.galeria figure{margin:0}
.galeria img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:var(--sombra)}
.galeria figcaption{font-size:.95rem;color:var(--suave);margin-top:.3rem}
@media (max-width:620px){.galeria{grid-template-columns:1fr}}

/* Llamada a la acción */
.cta{background:var(--rojo);color:#fff;padding:3rem 0}
.cta .contenedor{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.cta h2{color:#fff;margin:0 0 .2em}
.cta p{margin:0;color:#ffe3da;font-size:1.12rem}
.cta .btn-blanco{background:#fff;color:var(--rojo)}
.cta .btn-blanco:hover{background:var(--granate);color:#fff}

/* Contacto */
.contacto-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:2.5rem;align-items:start}
.contacto-grid>*{min-width:0}
@media (max-width:860px){.contacto-grid{grid-template-columns:1fr}}
.datos{list-style:none;padding:0;margin:0 0 1.5rem}
.datos li{display:flex;gap:.9rem;align-items:flex-start;padding:.9rem 0;border-bottom:1px solid var(--borde)}
.datos svg{flex:0 0 26px;width:26px;height:26px;fill:var(--rojo);margin-top:.15rem}
.datos strong{display:block;font-family:var(--f-tit);font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--granate);font-size:.95rem}
.datos a{color:var(--texto);text-decoration:none;font-size:1.2rem;font-weight:600}
.datos a:hover{color:var(--rojo)}
.datos .peq{font-size:.92rem;color:var(--suave)}
.mapa{position:relative;border-radius:var(--radio);overflow:hidden;background:#e9e4df;height:clamp(280px,40vw,400px);width:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:1.5rem}
.mapa iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapa p{font-size:.92rem;color:var(--suave);max-width:40ch;margin:.8rem auto 0}
.formulario{background:#fff;border-radius:var(--radio);box-shadow:var(--sombra);padding:2rem}
.formulario .fila{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:560px){.formulario .fila{grid-template-columns:1fr}.formulario{padding:1.4rem}}
.formulario label{display:block;font-weight:600;margin-bottom:.3rem;font-size:.98rem}
.formulario .campo{margin-bottom:1rem}
.formulario input,.formulario textarea,.formulario select{width:100%;padding:.75rem .85rem;border:1px solid #cfc7c0;border-radius:8px;font:inherit;font-size:1rem;background:#fff;color:var(--texto)}
.formulario input:focus,.formulario textarea:focus,.formulario select:focus{outline:none;border-color:var(--rojo);box-shadow:0 0 0 3px rgba(214,42,0,.18)}
.formulario textarea{min-height:140px;resize:vertical}
.formulario .nota{font-size:.88rem;color:var(--suave);margin:.8rem 0 0}

/* Legales */
.legal{max-width:820px}
.legal h2{font-size:1.5rem;margin-top:2rem}

/* Pie */
.pie{background:var(--granate-2);color:#e8cfc8;padding:3.5rem 0 0;font-size:.98rem}
.pie a{color:#fff;text-decoration:none}
.pie a:hover{text-decoration:underline;color:#fff}
.pie-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}
@media (max-width:820px){.pie-grid{grid-template-columns:1fr}}
.pie h2{color:#fff;font-size:1.1rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.8rem}
.pie ul{list-style:none;padding:0;margin:0}
.pie li{margin-bottom:.4rem}
.pie .logo-pie{height:46px;width:auto;margin-bottom:1rem}
.pie-legal{border-top:1px solid rgba(255,255,255,.12);margin-top:2.5rem;padding:1.2rem 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.9rem;color:#c9aaa2}
.pie-legal ul{display:flex;gap:1.2rem;flex-wrap:wrap}

/* Botón flotante de llamada (móvil) */
.llamar-movil{display:none}
@media (max-width:700px){
  .llamar-movil{display:flex;position:fixed;right:1rem;bottom:1rem;z-index:60;width:58px;height:58px;border-radius:50%;background:var(--rojo);color:#fff;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.3)}
  .llamar-movil svg{width:26px;height:26px;fill:#fff}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ===== Borrador dinámico (26/10/2026): cabecera compacta, aparición al hacer scroll, FAQ ===== */
.cabecera{transition:box-shadow .25s}
.cabecera .contenedor{transition:min-height .25s}
.logo img{transition:height .25s}
.cabecera.compacta{box-shadow:0 6px 20px rgba(40,10,0,.10)}

.cabecera.compacta .logo img{height:42px}
.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js [data-reveal].visto{opacity:1;transform:none}
.faq{max-width:900px}
.faq-item{background:#fff;border:1px solid var(--borde);border-radius:var(--radio);margin-bottom:.8rem;overflow:hidden;transition:box-shadow .2s,border-color .2s}
.seccion.gris .faq-item{border-color:#fff}
.faq-item[open]{box-shadow:var(--sombra);border-color:#f1d6cc}
.faq-item summary{cursor:pointer;list-style:none;padding:1.05rem 3.2rem 1.05rem 1.3rem;font-family:var(--f-tit);font-weight:500;font-size:1.15rem;color:var(--granate);position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"";position:absolute;right:1.2rem;top:50%;width:12px;height:12px;margin-top:-8px;border-right:2.5px solid var(--rojo);border-bottom:2.5px solid var(--rojo);transform:rotate(45deg);transition:transform .25s}
.faq-item[open] summary::after{transform:rotate(225deg);margin-top:-2px}
.faq-item summary:hover{color:var(--rojo)}
.faq-r{padding:0 1.3rem 1.1rem;color:var(--suave)}
.faq-r p{margin:0}
@media (prefers-reduced-motion:reduce){.js [data-reveal]{opacity:1;transform:none}}

/* ===== Fase 2 (26/10/2026): WhatsApp, submenú de equipos, páginas por aparato e ilustraciones animadas ===== */
:root{--frio:#1f7fd1;--frio-claro:#7cc4ff;--frio-osc:#0b2a4a;--wa:#1fa855;--wa-osc:#178a45}
.btn-wa{background:var(--wa);color:#fff;border-color:var(--wa)}
.btn-wa:hover{background:var(--wa-osc);border-color:var(--wa-osc);color:#fff}
.btn-wa .ico{width:1.15em;height:1.15em;margin:0}
.btn-frio{background:var(--frio);color:#fff}
.btn-frio:hover{background:var(--frio-osc);color:#fff}
.antetitulo-frio{display:inline-block;font-family:var(--f-tit);text-transform:uppercase;letter-spacing:.12em;font-size:.9rem;color:var(--frio);margin-bottom:.5rem}
.topbar .ico{fill:currentColor}

/* Botones flotantes: WhatsApp (siempre) + llamada (móvil) */
.flotantes{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:.7rem;pointer-events:none}
.flotantes a{pointer-events:auto}
.wa-flotante{display:flex;align-items:center;gap:.5rem;height:58px;padding:0 1.25rem 0 1rem;border-radius:99px;background:var(--wa);color:#fff;text-decoration:none;font:500 1.05rem var(--f-tit);text-transform:uppercase;letter-spacing:.05em;box-shadow:0 8px 24px rgba(0,0,0,.28);transition:transform .25s,background .25s,margin .3s}
.wa-flotante:hover,.wa-flotante:focus-visible{background:var(--wa-osc);color:#fff;transform:translateY(-3px)}
.wa-flotante .ico{width:28px;height:28px;margin:0;fill:#fff}
.flotantes .llamar-movil{position:relative;right:auto;bottom:auto}
@media (max-width:700px){
  .wa-flotante{width:58px;padding:0;justify-content:center}
  .wa-flotante span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .flotantes:has(.llamar-movil.oculto) .wa-flotante{transform:translateY(68px)}
}
@media print{.flotantes{display:none}}

/* Submenú "Equipos" */
.nav .con-sub{position:relative}
.nav .con-sub>a::after{content:"";display:inline-block;width:.42em;height:.42em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:.45em;vertical-align:.2em}
.nav .submenu{display:none;position:absolute;left:0;top:100%;min-width:290px;background:#fff;border-radius:10px;box-shadow:0 14px 40px rgba(40,10,0,.16);padding:.5rem;flex-direction:column;align-items:stretch;gap:0;z-index:70}
.nav .con-sub:hover>.submenu,.nav .con-sub:focus-within>.submenu{display:flex}
.nav .submenu a{text-transform:none;font-size:1rem;letter-spacing:0;padding:.5rem .7rem}
@media (max-width:1060px){
  .nav .submenu{display:flex;position:static;box-shadow:none;min-width:0;padding:0 0 .3rem 1rem;border-radius:0}
  .nav .submenu a{padding:.55rem .5rem;font-size:.98rem}
}

/* Pie con 4 columnas */
.pie-grid{grid-template-columns:1.2fr 1fr 1fr 1.1fr}
@media (max-width:1000px){.pie-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.pie-grid{grid-template-columns:1fr}}

/* Hero de página por aparato */
.hero-aparato{position:relative;overflow:hidden;color:#fff;padding:3.2rem 0 3rem;background:linear-gradient(120deg,#0b2a4a 0%,#14508a 55%,#1f7fd1 100%)}
.hero-aparato.ha-calor{background:linear-gradient(120deg,#3a0100 0%,#8a1a00 55%,#d64a08 100%)}
.hero-aparato::before{content:"";position:absolute;inset:-40% -10% auto auto;width:60vw;height:60vw;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,0) 60%);animation:haLuz 9s ease-in-out infinite alternate;pointer-events:none}
@keyframes haLuz{to{transform:translate(-8vw,6vw)}}
.ha-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;align-items:center}
.hero-aparato .migas,.hero-aparato .migas a{color:#dfeeff}
.ha-calor .migas,.ha-calor .migas a{color:#ffe0d2}
.hero-aparato h1{color:#fff;font-size:clamp(2rem,4.6vw,3.3rem);max-width:20ch;margin-bottom:.4em}
.ha-sub{font-size:1.2rem;max-width:52ch;color:#fff;opacity:.95;margin-bottom:1.5rem}
.hero-aparato .btn-blanco{background:#fff;color:var(--granate)}
.hero-aparato .btn-blanco:hover{background:var(--granate);color:#fff}
.ha-ilus{max-width:420px;width:100%;justify-self:center}
.ha-ilus svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 40px rgba(0,0,0,.28))}
@media (max-width:860px){.ha-grid{grid-template-columns:1fr;gap:1.5rem}.ha-ilus{max-width:300px;order:-1}.hero-aparato{padding:2rem 0 2.4rem}}

/* Bloques de las páginas por aparato */
.bloque-ilus{margin:0;max-width:440px;justify-self:center;width:100%}
.bloque-ilus svg{width:100%;height:auto;display:block}
.ventajas{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem}
@media (max-width:900px){.ventajas{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.ventajas{grid-template-columns:1fr}}
.ventaja{background:#fff;border:1px solid var(--borde);border-radius:14px;padding:1.2rem 1.2rem 1.3rem;box-shadow:var(--sombra);transition:transform .25s}
.ventaja:hover{transform:translateY(-4px)}
.ventaja strong{display:block;font-family:var(--f-tit);text-transform:uppercase;letter-spacing:.04em;color:var(--granate);font-size:1.1rem;margin-bottom:.3rem}
.ventaja span{color:var(--suave)}
.contacto-caja{background:#fff;border-radius:16px;padding:1.6rem;box-shadow:var(--sombra);border-top:4px solid var(--wa)}
.contacto-caja h3{margin-bottom:1rem}
.aparatos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem}
@media (max-width:1000px){.aparatos-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.aparatos-grid{grid-template-columns:1fr}}
.aparato-tarjeta{display:flex;align-items:center;gap:.8rem;padding:1rem 1.1rem;border-radius:14px;background:#fff;border:1px solid var(--borde);text-decoration:none;color:var(--granate);font-family:var(--f-tit);font-size:1.08rem;box-shadow:var(--sombra);transition:transform .25s,border-color .25s,box-shadow .25s}
.aparato-tarjeta:hover,.aparato-tarjeta:focus-visible{transform:translateY(-3px);border-color:var(--rojo);color:var(--rojo);box-shadow:0 14px 30px rgba(40,10,0,.14)}
.aparato-tarjeta .at-t{flex:1}
.aparato-tarjeta .mas{font-size:.9rem;text-transform:uppercase;color:var(--rojo)}
.at-ico svg{width:44px;height:44px;display:block}
.relacionados{background:var(--fondo)}

/* Ilustraciones animadas (nebulizador, evaporativo, deshumidificador, carpa, portátil, cañón) */
.ilus-sombra{fill:#0b2a4a;opacity:.1}
.ilus-cuerpo{fill:#fff;stroke:#b9c6d2;stroke-width:3}
.ilus-deposito{fill:#e3f1fd;stroke:#9cc9ef;stroke-width:2}
.neb-agua{fill:#7cc4ff;opacity:.75;animation:aguaNivel 4s ease-in-out infinite;transform-box:fill-box;transform-origin:bottom}
.ilus-rueda{fill:#20364d}
.ilus-aro{fill:#eef6ff;stroke:#5d6f80;stroke-width:4}
.ilus-rejilla{fill:none;stroke:#5d6f80;stroke-width:1.2;stroke-dasharray:2 5;opacity:.7}
.ilus-eje{fill:#20364d}
.neb-aspas{fill:var(--frio);transform-origin:107px 142px;animation:giro 1.4s linear infinite}
.neb-boquillas circle{fill:#20364d}
.neb-nube{animation:nube 3.2s ease-in-out infinite;transform-origin:140px 140px}
.ng{fill:#fff;stroke:#9cc9ef;stroke-width:.6;opacity:0;animation:neb 2.6s linear infinite}
.ng0{--dx:150px;--dy:-60px;animation-delay:0s}.ng1{--dx:160px;--dy:-20px;animation-delay:.3s}.ng2{--dx:150px;--dy:30px;animation-delay:.6s}.ng3{--dx:120px;--dy:60px;animation-delay:.9s}
.ng4{--dx:170px;--dy:5px;animation-delay:1.2s}.ng5{--dx:130px;--dy:-45px;animation-delay:1.5s}.ng6{--dx:140px;--dy:45px;animation-delay:1.8s}.ng7{--dx:165px;--dy:-35px;animation-delay:2.1s}
@keyframes neb{0%{opacity:0;transform:translate(0,0) scale(.6)}15%{opacity:.95}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.8)}}
@keyframes nube{0%,100%{opacity:.75;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.06)}}
@keyframes aguaNivel{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.86)}}
.evp-entrada path{stroke:#d9a441;stroke-width:3;stroke-linecap:round;stroke-dasharray:10 8;animation:fluye 1.2s linear infinite;opacity:.8}
.evp-salida path{fill:none;stroke:url(#evp-hero-aire);stroke:#7cc4ff;stroke-width:4;stroke-linecap:round;stroke-dasharray:26 14;animation:fluye 1s linear infinite}
.evp-salida .ef2{animation-delay:-.25s}.evp-salida .ef3{animation-delay:-.5s}.evp-salida .ef4{animation-delay:-.75s}
.evp-copos circle{fill:#fff;stroke:#7cc4ff;stroke-width:1;animation:flota 2.4s ease-in-out infinite}
.evp-copos circle:nth-child(2){animation-delay:.6s}.evp-copos circle:nth-child(3){animation-delay:1.2s}.evp-copos circle:nth-child(4){animation-delay:1.8s}
.evp-gotas path{fill:#7cc4ff;animation:gotea 1.8s ease-in infinite;transform-box:fill-box}
.evp-gotas .eg2{animation-delay:.6s}.evp-gotas .eg3{animation-delay:1.2s}
@keyframes fluye{to{stroke-dashoffset:-40}}
@keyframes flota{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-8px);opacity:1}}
@keyframes gotea{0%{transform:translateY(0);opacity:0}15%{opacity:1}100%{transform:translateY(95px);opacity:0}}
.ilus-txt{font:600 14px var(--f-tit);fill:#20364d}
.ilus-txt-led{fill:#7cc4ff;font-size:16px}
.dsh-agua{fill:#7cc4ff;animation:llena 5s ease-in-out infinite;transform-box:fill-box;transform-origin:bottom}
.dg{fill:#7cc4ff;opacity:0;animation:aspira 3s ease-in infinite}
.dg0{--dx:110px;--dy:50px}.dg1{--dx:80px;--dy:20px}.dg2{--dx:110px;--dy:-40px}.dg3{--dx:-90px;--dy:60px}.dg4{--dx:-110px;--dy:-10px}.dg5{--dx:-70px;--dy:-60px}
.dg1{animation-delay:.5s}.dg2{animation-delay:1s}.dg3{animation-delay:1.5s}.dg4{animation-delay:2s}.dg5{animation-delay:2.5s}
@keyframes aspira{0%{opacity:0;transform:none}20%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.4)}}
@keyframes llena{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
.crp-salida path{stroke:#7cc4ff;stroke-width:4;stroke-linecap:round;stroke-dasharray:6 6;animation:baja 1s linear infinite}
@keyframes baja{to{stroke-dashoffset:-12}}
.crp-mesas rect{fill:#b9c6d2}.crp-mesas path{stroke:#b9c6d2;stroke-width:3}
.ilus-carpa .neb-aspas{animation-duration:1s}
.prt-frio path{fill:none;stroke:#7cc4ff;stroke-width:4;stroke-linecap:round;animation:flota 2s ease-in-out infinite}
.prt-frio .pf2{animation-delay:.5s}.prt-frio .pf3{animation-delay:1s}
.prt-calor path{fill:none;stroke:#ff8a3d;stroke-width:3;stroke-linecap:round;animation:flota 1.6s ease-in-out infinite}
.cnn-aire path{fill:none;stroke:#ff8a3d;stroke-width:5;stroke-linecap:round;stroke-dasharray:26 14;animation:fluye .8s linear infinite}
.cnn-aire .ca2{animation-delay:-.27s}.cnn-aire .ca3{animation-delay:-.54s}
.cnn-boca{animation:llamaBoca 1.2s ease-in-out infinite alternate}
@keyframes llamaBoca{from{opacity:.8}to{opacity:1}}
@keyframes giro{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){
  .hero-aparato::before,.neb-aspas,.neb-nube,.ng,.neb-agua,.evp-entrada path,.evp-salida path,.evp-copos circle,.evp-gotas path,.dsh-agua,.dg,.crp-salida path,.prt-frio path,.prt-calor path,.cnn-aire path,.cnn-boca{animation:none!important}
  .ng{opacity:.6;transform:translate(calc(var(--dx)*.5),calc(var(--dy)*.5))}
  .dg{opacity:.7}
}

/* Iconos animados (compartidos: portada, equipos y páginas por aparato) */
.mi-caja{fill:#fff;stroke:#f1e2dc;stroke-width:1.5}
.mi-solido{fill:var(--granate)}
.mi-cristal{fill:#bfe2ff}
/* Ventilador */
.mi-aro{fill:none;stroke:var(--frio);stroke-width:2.5}
.mi-aspas path{fill:var(--frio)}
.mi-aspas{transform-origin:32px 32px;animation:giro 2.6s linear infinite}
.mi-eje{fill:var(--frio-osc)}
.servicio:hover .mi-aspas{animation-duration:.6s}
@keyframes giro{to{transform:rotate(360deg)}}
/* Seta */
.mi-brillo{fill:#ff8a3d;opacity:.35;animation:brilloSeta 2.4s ease-in-out infinite}
.mi-onda{fill:none;stroke:#ff6a1a;stroke-width:2.2;stroke-linecap:round;opacity:0;animation:onda 2.4s ease-in-out infinite}
.mi-onda.o2{animation-delay:.6s}.mi-onda.o3{animation-delay:1.2s}.mi-onda.o4{animation-delay:1.8s}
.servicio:hover .mi-onda,.servicio:hover .mi-brillo{animation-duration:1.2s}
@keyframes onda{0%{opacity:0;transform:translateY(6px)}40%{opacity:1}100%{opacity:0;transform:translateY(10px)}}
@keyframes brilloSeta{0%,100%{opacity:.25}50%{opacity:.7}}
/* Gotas que se evaporan */
.mi-gota{fill:#2a8ae0;animation:evapora 3s ease-in infinite;transform-box:fill-box;transform-origin:center bottom}
.mi-gota.g2{animation-delay:1s}.mi-gota.g3{animation-delay:2s}
.mi-vapor{fill:none;stroke:#9cc9ef;stroke-width:2;stroke-linecap:round;opacity:0;animation:vapor 3s ease-out infinite}
.mi-vapor.v2{animation-delay:1.5s}
.servicio:hover .mi-gota,.servicio:hover .mi-vapor{animation-duration:1.5s}
@keyframes evapora{0%{transform:scale(1) translateY(0);opacity:1}70%{transform:scale(.4) translateY(-4px);opacity:.6}100%{transform:scale(0) translateY(-10px);opacity:0}}
@keyframes vapor{0%{opacity:0;transform:translateY(8px)}30%{opacity:.9}100%{opacity:0;transform:translateY(-6px)}}
/* Icono nebulizador */
.mi-solido-frio{fill:var(--frio-osc)}
.mi-spray circle{fill:var(--frio);opacity:0;animation:spray 1.8s ease-out infinite}
.mi-spray .n1{--sx:22px;--sy:-12px}.mi-spray .n2{--sx:26px;--sy:-2px;animation-delay:.3s}.mi-spray .n3{--sx:22px;--sy:10px;animation-delay:.6s}
.mi-spray .n4{--sx:16px;--sy:-16px;animation-delay:.9s}.mi-spray .n5{--sx:24px;--sy:5px;animation-delay:1.2s}.mi-spray .n6{--sx:18px;--sy:14px;animation-delay:1.5s}
.servicio:hover .mi-spray circle,.aparato-tarjeta:hover .mi-spray circle{animation-duration:.9s}
@keyframes spray{0%{opacity:0;transform:translate(0,0) scale(.5)}20%{opacity:1}100%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(1.6)}}
/* Icono evaporativo */
.mi-panal{stroke:#e7b75d;stroke-width:1.6}
.mi-flujo{fill:none;stroke:var(--frio);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:8 6;animation:fluyeMi 1s linear infinite}
.mi-flujo.f2{animation-delay:-.3s}.mi-flujo.f3{animation-delay:-.6s}
.servicio:hover .mi-flujo,.aparato-tarjeta:hover .mi-flujo{animation-duration:.5s}
@keyframes fluyeMi{to{stroke-dashoffset:-14}}
.aparato-tarjeta:hover .mi-aspas{animation-duration:.6s}
@media (prefers-reduced-motion:reduce){.mi-aspas,.mi-brillo,.mi-onda,.mi-gota,.mi-vapor,.mi-spray circle,.mi-flujo{animation:none!important}.mi-onda,.mi-vapor{opacity:.7}}
@media (max-width:860px){.ha-ilus{max-width:210px}.ha-ilus svg{filter:drop-shadow(0 10px 22px rgba(0,0,0,.25))}}
.incluido{margin:1.2rem 0;padding:.9rem 1.1rem;border-left:4px solid var(--wa);background:#fff;border-radius:0 10px 10px 0;box-shadow:var(--sombra)}
.incluido strong{color:var(--granate)}

/* ===== Fotos reales (fase 3) ===== */
.ha-ilus.ha-ilus-foto{max-width:460px}
.ha-foto{margin:0}
.ha-foto img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;box-shadow:0 18px 44px rgba(0,0,0,.35);display:block}
.ha-foto figcaption{margin-top:.45rem;font-size:.75rem;color:rgba(255,255,255,.78);text-align:right}
.ha-foto figcaption a{color:#fff}
.credito{display:block;font-size:.78rem;font-style:normal;color:var(--suave);margin-top:.2rem}
.credito a{color:inherit;text-decoration:underline}
.bloque-img picture,.fotos-grandes picture{display:block;width:100%}
.servicio-foto picture{display:block;width:100%;height:100%}
.fotos-grandes.cuadradas img{aspect-ratio:1/1}
@media (max-width:860px){.ha-ilus.ha-ilus-foto{max-width:100%;order:0}}
.ha-foto .credito{color:rgba(255,255,255,.88);margin:0}

/* f4: galería de 3 fotos, nota de servicios, bloque de una columna */
.fotos-grandes.tres{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.fotos-grandes.tres{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.fotos-grandes.tres{grid-template-columns:1fr}}
.servicios-nota{margin:2rem auto 0;max-width:780px;text-align:center;font-size:1.05rem}
.bloque.una-col{grid-template-columns:1fr;max-width:860px}

/* f5: Coolmobile */
.cml-aire path{fill:none;stroke:#7cc4ff;stroke-width:4;stroke-linecap:round;stroke-dasharray:14 10;animation:fluye 1s linear infinite}
.cml-aire .cm2{animation-delay:-.33s}.cml-aire .cm3{animation-delay:-.66s}
.cml-copos circle{fill:#7cc4ff;animation:flota 2.4s ease-in-out infinite}
.cml-copos circle:nth-child(2){animation-delay:.6s}.cml-copos circle:nth-child(3){animation-delay:1.2s}.cml-copos circle:nth-child(4){animation-delay:1.8s}
.ilus-coolmobile .neb-aspas{animation-duration:1.1s}
.tarjeta-ilus{background:#e9f5ff;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden}
.tarjeta-ilus svg{height:100%;width:auto;max-width:100%;display:block}
@media (prefers-reduced-motion:reduce){.cml-aire path,.cml-copos circle{animation:none!important}}

/* f6: dibujos animados como acento pequeño en páginas con foto */
.tit-ilus{float:right;width:112px;margin:-.4rem 0 .6rem 1.2rem;filter:drop-shadow(0 6px 14px rgba(11,42,74,.12))}
.tit-ilus svg{width:100%;height:auto;display:block}
.tit-ilus .ilus-fondo{rx:22px}
.bloque-ilus.ilus-compacta{max-width:300px}
@media (max-width:700px){.tit-ilus{width:84px;margin:0 0 .4rem .8rem}.bloque-ilus.ilus-compacta{max-width:240px}}

/* f7: menú con desplegable en "Climatización de eventos" */
.nav .con-sub>a.en-rama{color:var(--rojo)}
.nav .sub-btn{display:none}
.nav .submenu{min-width:320px}
.nav .submenu li:nth-last-child(2){border-top:1px solid var(--borde);margin-top:.3rem;padding-top:.3rem}
@media (max-width:1060px){
  .nav .con-sub{display:grid;grid-template-columns:1fr auto;align-items:stretch}
  .nav .con-sub>a::after{display:none}
  .nav .sub-btn{display:flex;align-items:center;justify-content:center;width:48px;border:0;border-bottom:1px solid var(--borde);background:#fbeee9;color:var(--granate);cursor:pointer;border-radius:0}
  .nav .sub-btn::before{content:"";width:.55em;height:.55em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
  .nav .con-sub.abierto>.sub-btn::before{transform:translateY(2px) rotate(-135deg)}
  .nav .submenu{grid-column:1 / -1;min-width:0}
  .js .nav .con-sub:not(.abierto)>.submenu{display:none}
}
/* f7: ventilador helicoidal tubular */
.vnt-aspas{fill:var(--frio);transform-origin:64px 157px;animation:giro .9s linear infinite}
.vnt-flujo path{stroke:#7cc4ff;stroke-width:4;stroke-dasharray:8 14;animation:fluye 1s linear infinite}
.vnt-flujo .vf2{animation-delay:-.3s}.vnt-flujo .vf3{animation-delay:-.6s}
.vnt-entrada path{stroke:#9cc9ef;stroke-width:4;stroke-linecap:round;stroke-dasharray:6 10;animation:fluye 1.2s linear infinite}
.vnt-salida path{stroke:#7cc4ff;stroke-width:4;animation:flota 1.6s ease-in-out infinite}
.vnt-salida .vs2{animation-delay:.4s}.vnt-salida .vs3{animation-delay:.8s}
.mi-ventila .mi-flujo{animation:fluyeMi 1s linear infinite}
@media (prefers-reduced-motion:reduce){.vnt-aspas,.vnt-flujo path,.vnt-entrada path,.vnt-salida path,.mi-ventila .mi-flujo{animation:none!important}}
.mi-ventila .mi-panal{stroke:var(--frio-osc);stroke-width:2.4}
