/* hieloscubidsa.com — réplica del WordPress (Astra + Elementor) sin código del original.
   Medidas tomadas del sitio en vivo (estilos calculados). Cortes: tablet ≤1024 px,
   cabecera móvil ≤921 px (Astra), móvil ≤767 px (Elementor). */

@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(/fuentes/nunito-700.woff2) format('woff2')}
@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(/fuentes/source-sans-pro-400.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(/fuentes/jost-400.woff2) format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400;font-display:swap;src:url(/fuentes/roboto-400.woff2) format('woff2')}

:root{
  --azul:#0093cb;        /* ast-global-color-0 */
  --azul-osc:#00425c;    /* ast-global-color-1 */
  --texto:#585858;       /* ast-global-color-3 */
  --claro:#f6f8f5;       /* ast-global-color-4 */
  --marino:#222d80;
  --tinta:#171e35;
  --verde-wa:#25d366;
  --banda:#0077b0;       /* banda de la cabecera */
  --titulos:'Nunito',sans-serif;
}

[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}
html{font-size:106.25%;-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Source Sans Pro',sans-serif;font-size:17px;line-height:1.7;color:var(--texto);background:#fff;overflow-x:hidden}
h1,h2,h3,h4,h5,h6{font-family:var(--titulos);font-weight:700;color:#000;line-height:1.3;margin:0}
p{margin:0}
img{max-width:100%;height:auto;border:0}
a{color:var(--azul);text-decoration:none}
a:hover,a:focus{color:var(--azul)}
a:focus-visible,button:focus-visible{outline:thin dotted;outline-offset:2px}
svg{display:block}
.oculto{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.saltar{position:absolute;left:-9999px;top:0;z-index:100001;background:#fff;color:#000;padding:10px 16px}
.saltar:focus{left:10px;top:10px}

/* ---------- Botones (Elementor) ---------- */
.boton,.contacto-form button{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  padding:15px 40px;font-family:'Source Sans Pro',sans-serif;font-size:16px;font-weight:400;line-height:1;
  letter-spacing:3px;text-transform:uppercase;color:#fff;background:var(--azul);border:0;border-radius:0;
  cursor:pointer;transition:background .3s,color .3s}
.boton:hover,.boton:focus,.contacto-form button:hover,.contacto-form button:focus{color:#fff;background:var(--azul-osc)}
.boton svg{width:1em;height:1em;fill:currentColor}

/* ---------- Cabecera ----------
   Banda azul en todas las páginas (en el WP era transparente sobre la foto y el menú
   blanco apenas se leía). #0077b0: el azul corporativo oscurecido hasta un contraste
   de 4,9:1 con el blanco. */
.cabecera{position:relative;z-index:99;background:var(--banda)}
.cab-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1240px;height:102px;margin:0 auto;padding:0 20px}
.logo{justify-self:start;display:block;line-height:0}
.logo img{width:88px;height:88px}
.menu ul{display:flex;list-style:none;margin:0;padding:0}
.menu a{position:relative;display:block;padding:0 17px;font-size:17px;line-height:80px;text-transform:uppercase;color:#fff}
.menu a::after{content:'';position:absolute;left:17px;right:17px;bottom:24px;height:2px;background:#fff;transform:scaleX(0);transition:transform .2s}
.menu a:hover,.menu a:focus,.menu a[aria-current]{color:#fff}
.menu a:hover::after,.menu a:focus::after,.menu a[aria-current]::after{transform:none}
.cab-der{justify-self:end;display:flex;align-items:center}
.social{display:block;padding:0;margin:0 6px}
.social svg{width:18px;height:18px;fill:#fff;transition:opacity .2s}
.social:hover svg,.social:focus svg{opacity:.75}
.boton-llamar{display:inline-block;margin-left:14px;padding:15px 40px;font-size:15px;line-height:15px;letter-spacing:3px;
  text-transform:uppercase;color:#fff;border:1px solid #fff;background:transparent;transition:all .2s linear}
.boton-llamar:hover,.boton-llamar:focus{color:var(--banda);background:#fff;border-color:#fff}
.menu-abrir{display:none}

/* Cajón del menú móvil (Astra «off-canvas» por la derecha) */
.cajon{position:fixed;inset:0;z-index:100000}
.cajon-fondo{position:absolute;inset:0;background:rgba(0,0,0,.4);opacity:0;transition:opacity .2s ease-in-out}
.cajon-panel{position:absolute;top:0;right:0;bottom:0;width:90%;background:#fff;color:#3a3a3a;overflow-y:auto;
  box-shadow:0 0 2rem rgba(0,0,0,.1);transform:translateX(100%);transition:transform .2s ease-in}
.cajon.abierto .cajon-fondo{opacity:1}
.cajon.abierto .cajon-panel{transform:none}
.cajon-cerrar{display:flex;margin-left:auto;padding:14.4px;background:none;border:0;color:#3a3a3a;cursor:pointer}
.cajon-cerrar svg{width:17px;height:17px;fill:currentColor}
.cajon ul{list-style:none;margin:0;padding:0;border-top:1px solid #eaeaea}
.cajon li a{display:block;padding:11px 20px;font-size:17px;line-height:29px;text-transform:uppercase;color:#000;border-bottom:1px solid #eaeaea}
.cajon li a[aria-current]{color:var(--azul)}
.cajon .boton-llamar{margin:35px 40px;color:#000;border-color:#000}
.cajon .boton-llamar:hover,.cajon .boton-llamar:focus{color:#fff;background:var(--banda);border-color:var(--banda)}

@media (max-width:921px){
  .cab-in{grid-template-columns:auto 1fr;height:96px;padding:0 20px}
  .logo img{width:77px;height:77px}
  .menu,.cab-der{display:none}
  .menu-abrir{display:flex;justify-self:end;align-items:center;justify-content:center;width:46px;height:46px;padding:0;
    background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.5);cursor:pointer}
  .menu-abrir svg{width:20px;height:20px;fill:#fff}
}

/* ---------- Secciones con fondo ---------- */
.hero,.cta{position:relative;overflow:hidden}
.fondo{position:absolute;inset:0}
.fondo img{width:100%;height:100%;object-fit:cover}
.capa{position:absolute;inset:0}
.hero{display:flex}
.hero-in{position:relative;width:100%;max-width:1140px;margin:0 auto;padding:10px}

/* Portada */
.hero-inicio{min-height:max(500px,calc(100vh - 102px));align-items:flex-start}
.hero-inicio .hero-in{padding-top:128px;text-align:center}
.letras{margin:0 0 5px;line-height:0}
.letras img{width:39%}
.hero-sub{margin:0 0 5px;font-family:var(--titulos);font-weight:700;font-size:35px;line-height:1.3;letter-spacing:6.3px;
  text-transform:uppercase;color:var(--tinta)}
.hero-boton{padding-top:25px}

/* Interiores */
.hero-interior{min-height:498px;align-items:center}
.hero-titulo{margin:0 0 20px;font-size:70px;line-height:1.4;letter-spacing:8.5px;text-transform:uppercase;color:var(--marino);text-align:center}
.hero-alquiler .hero-titulo{font-size:55px}
.hero-sobre .hero-titulo{color:var(--azul-osc)}

/* ---------- Columnas ---------- */
.dos-col{display:flex;max-width:1140px;margin:0 auto}
.col{flex:0 0 50%;max-width:50%;padding:10px}
.col-img img{display:block;width:100%}

/* ---------- Productos ---------- */
.productos{display:flow-root;margin-top:100px}
.titulo-seccion{max-width:1140px;margin:0 auto;padding:20px;font-size:36px;text-transform:uppercase;text-align:center}
.rejilla{display:flex;max-width:1140px;margin:20px auto}
.tarjeta{flex:0 0 calc(25% - 10px);margin:0 5px;padding:10px;box-shadow:0 0 10px rgba(0,0,0,.5);background:#fff}
.tarjeta.interior{padding:20px}
.tarjeta img{display:block;width:100%;border-radius:2px}
.tarjeta.alto-fijo img{height:288px;object-fit:cover}
.tarjeta.filtro img{filter:brightness(95%)}
.tarjeta h3{margin:30px 0 10px;font-size:24px;line-height:1.2}
.tarjeta p{margin-right:20px}
.tarjeta.linea-extra p::after{content:'\a0';display:block}
.tarjeta.sin-marco{flex-basis:25%;margin:0;padding:20px;box-shadow:none;background:none;display:flex;flex-direction:column;justify-content:center}
.tarjeta.sin-marco h3{margin-top:20px}

.productos-alquiler{margin-top:90px}
.rejilla-congeladores{margin:20px auto 100px}
.tarjeta-congelador{flex:0 0 25%;padding:20px}
.tarjeta-congelador img{display:block;width:100%;height:261px;object-fit:cover;border-radius:2px}
.tarjeta-congelador h3{margin-top:30px;font-size:24px;line-height:1.2}

/* ---------- Sobre (portada) ---------- */
.sobre{margin-top:100px;padding-bottom:100px;border-bottom:1px solid var(--azul)}
.sobre .dos-col{align-items:flex-start}
.sobre-texto{flex-basis:calc(50% - 60px);max-width:calc(50% - 60px);margin-right:60px;padding:20px;align-self:center}
.sobre-texto h2{margin-bottom:20px;font-size:36px;text-transform:uppercase}
.sobre-texto .boton{margin-top:20px}
.sobre-logo{padding:20px;text-align:center}
.sobre-logo img{width:62%}

/* ---------- Reseñas de Google ---------- */
.resenas{display:grid;grid-template-columns:200px 1fr;gap:20px;align-items:center;max-width:1140px;margin:80px auto 100px;padding:0 20px}
.resenas-resumen{text-align:center}
.resenas-resumen h2{font-size:22px;text-transform:uppercase;letter-spacing:1px}
.resenas-resumen p{font-size:15px}
.resenas-resumen strong{font-weight:700;color:#000}
.resenas-google{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-family:'Roboto',sans-serif;font-size:18px;color:#555}
.resenas-google svg{width:18px;height:18px;fill:#4285f4}
.estrellas{display:flex;justify-content:center;gap:2px;margin:4px 0}
.estrellas svg{width:20px;height:20px;fill:#f6bb06}
.resenas-lista{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.resena{margin:0;padding:20px;background:#fff;border:1px solid #e5e5e5;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.resena-cab{display:flex;align-items:center;gap:10px}
.resena-ini{flex:0 0 40px;height:40px;border-radius:50%;background:var(--azul);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.resena figcaption{flex:1;line-height:1.3;font-size:15px}
.resena figcaption strong{display:block;color:#000;font-weight:700}
.resena figcaption span{font-size:13px;color:#8c8c8c}
.resena-g svg{width:18px;height:18px;fill:#4285f4}
.resena .estrellas{justify-content:flex-start;margin:12px 0 8px}
.resena .estrellas svg{width:17px;height:17px}
.resena blockquote{margin:0;font-size:16px;line-height:1.5;color:#333}

/* ---------- Llamada a la acción ---------- */
.cta{padding:50px 0;text-align:center}
.cta-in{position:relative;max-width:575px;margin:0 auto;padding:10px}
.cta h2{margin-bottom:15px;font-size:40px;line-height:1.3;letter-spacing:4.92px;text-transform:uppercase;color:var(--marino)}
.cta p{margin-bottom:15px;color:#000}
.cta-boton{padding-top:25px}
.cta-sobre h2{color:var(--azul-osc)}

/* ---------- Bloques de texto + imagen (servicios, alquiler) ---------- */
.bloque-1{margin-top:120px}
.bloque-2{margin:120px 0}
.bloque-alquiler{margin:140px 0 40px}
.col-texto{display:flex;flex-direction:column;justify-content:center}
.col-texto > * + *{margin-top:20px}
.col-texto h2{font-size:32px}
.texto-der{padding:50px 20px 50px 110px}
.texto-izq{padding:50px 110px 50px 20px}

/* ---------- Sobre nosotros ---------- */
.mision{padding:100px 50px}
.mision .dos-col{align-items:center}
.mision .col-img{padding:20px}
.mision-texto{padding:50px 50px 50px 78px}
.mision-texto h2{margin-bottom:20px;font-size:36px;text-transform:uppercase}
.mision-texto strong{font-weight:700}

/* ---------- Contacto ---------- */
.contacto{padding:120px 0;background:#fff}
.contacto h2{font-size:37px}
.form-caja{margin-top:35px;padding:50px;box-shadow:0 4px 51px rgba(5,5,5,.04)}
.campo{padding:10px 0}
.campo input[type=text],.campo input[type=email],.campo input[type=tel],.campo textarea{
  display:block;width:100%;padding:12.75px;font:17px/28.9px 'Source Sans Pro',sans-serif;color:#666;background:#fafafa;
  border:1px solid #989898;border-radius:2px}
.campo textarea{height:120px;resize:vertical}
.campo input:focus,.campo textarea:focus{outline:thin dotted;border-color:#585858}
.campo ::placeholder{color:#757575;opacity:1}
.campo-check{display:flex;align-items:flex-start}
.campo-check input{flex:0 0 auto;width:13px;height:13px;margin:7px 10px 0 3px}
.campo-check label{line-height:1.5}
.contacto-form button{margin-top:112px}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-estado{margin-bottom:20px;padding:14px 18px;border-left:4px solid;font-size:16px;line-height:1.5}
.form-estado.ok{background:#eaf7ee;border-color:#2e9e57;color:#1d5f35}
.form-estado.error{background:#fdeeee;border-color:#c0392b;color:#7d2219}
.contacto-datos{padding:10px 10px 10px 70px}
.dato{margin-top:50px}
.dato h3{margin:0 0 4px;font-family:'Roboto',sans-serif;font-size:16px;font-weight:400;line-height:1.3;text-transform:uppercase;color:var(--texto)}
.dato p{font-family:'Jost',sans-serif;font-size:25px;line-height:1.4;color:var(--azul-osc)}
.dato a{color:inherit;transition:color .2s}
.dato a:hover{color:var(--azul)}
.redes{display:flex;gap:5px;margin-top:20px}
.red{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:10%;transition:opacity .3s}
.red:hover{opacity:.9}
.red svg{width:23px;height:23px;fill:#fff}
.red-instagram{background:#d506a0}
.red-google{background:#4285f4}

/* ---------- Páginas legales ---------- */
.legal{max-width:1240px;margin:0 auto;padding:68px 20px}
.legal-in{padding:90.78px 113.39px;background:var(--claro)}
.legal h1{margin-bottom:25px;font-size:30px;line-height:1.2}
.legal h2{margin-bottom:20px;font-size:40px}
.legal h3{margin-bottom:15px;font-size:32px}
.legal ul,.legal ol{margin:0 0 1.5em 1.2em;padding:0}
.legal .actualizado{margin:-15px 0 30px;font-size:15px;color:#8c8c8c}
.datos-legales{display:grid;grid-template-columns:max-content 1fr;gap:6px 24px;margin:0 0 1.5em;padding:20px 24px;background:#fff;border-left:3px solid var(--azul)}
.datos-legales dt{font-weight:700;color:#000}
.datos-legales dd{margin:0}
.legal h2{margin-top:1.1em}
.legal .actualizado + h2,.legal .actualizado + p + h2{margin-top:0}
.legal table + p{margin-top:0}
.legal p + p{margin-top:1em}
.legal table{width:100%;margin:1em 0;border-collapse:collapse;font-size:15px}
.legal th,.legal td{padding:8px 10px;border:1px solid #ddd;text-align:left;vertical-align:top}
.no-encontrada p{margin-bottom:20px}
.no-encontrada .boton{margin:0 10px 10px 0}

/* ---------- Logos UE y pie ---------- */
.ue{background:#fff}
.ue-in{display:flex;max-width:1140px;margin:0 auto;padding:10px 0}
.ue-logo{flex:1 1 0;padding:10px;line-height:0}
.ue-logo:nth-child(1){padding-left:160px}
.ue-logo:nth-child(2){padding-left:85px;padding-right:85px}
.ue-logo:nth-child(3){padding-right:160px}
.ue-logo img{width:100%}
.pie-in{display:flex;justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding:35px 20px;font-size:15px;color:#000}
.pie ul{display:flex;list-style:none;margin:0;padding:0}
.pie a{display:block;padding:0 15px 0 7.5px;color:#000}
.pie li:first-child a{padding-left:0}
.pie a:hover{color:var(--azul)}

/* ---------- WhatsApp (como Joinchat en el original) ---------- */
.wa{position:fixed;right:20px;bottom:20px;z-index:1000;animation:wa-entra .4s ease-out 3s both}
.wa-boton{position:relative;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;
  background:var(--verde-wa);box-shadow:0 1px 6px rgba(0,0,0,.25),0 2px 32px rgba(0,0,0,.16);transition:transform .2s}
.wa-boton:hover{transform:scale(1.06)}
.wa-boton svg{width:36px;height:36px;fill:#fff}
.wa-aviso{position:absolute;top:-3px;right:-3px;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ff3b30;color:#fff;
  font:700 12px/20px 'Source Sans Pro',sans-serif;text-align:center;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.wa-caja{position:absolute;right:0;bottom:76px;width:300px;max-width:calc(100vw - 40px);border-radius:16px;overflow:hidden;background:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.2),0 8px 40px rgba(0,0,0,.16);transform-origin:right bottom;animation:wa-caja .25s ease-out both}
.wa-cab{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--verde-wa);color:#fff;
  font-family:var(--titulos);font-weight:700;font-size:16px;line-height:1.2}
.wa-cerrar{display:flex;padding:4px;background:none;border:0;color:#fff;cursor:pointer;opacity:.85}
.wa-cerrar:hover{opacity:1}
.wa-cerrar svg{width:18px;height:18px;fill:currentColor}
.wa-cuerpo{padding:20px 16px;background:#efeae2}
.wa-burbuja{position:relative;display:inline-block;max-width:90%;padding:8px 12px;border-radius:0 8px 8px 8px;background:#fff;color:#303030;
  font-size:15px;line-height:1.45;box-shadow:0 1px .5px rgba(0,0,0,.13)}
.wa-burbuja::before{content:'';position:absolute;top:0;left:-8px;border-top:8px solid #fff;border-left:8px solid transparent}
.wa-abrir{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 16px 16px;padding:10px 20px;border-radius:20px;
  background:var(--verde-wa);color:#fff;font-weight:700;font-size:16px;line-height:1.2}
.wa-abrir:hover,.wa-abrir:focus{color:#fff;background:#1ebe5b}
.wa-abrir svg{width:18px;height:18px;fill:currentColor}
@keyframes wa-entra{from{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:none}}
@keyframes wa-caja{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}

/* ---------- Animaciones de entrada (Elementor) ---------- */
.anim [data-anim]{opacity:0}
.anim [data-anim].visto{opacity:1;animation:.9s both}
.anim [data-anim=fadeIn].visto{animation-name:fadeIn}
.anim [data-anim=fadeInUp].visto{animation-name:fadeInUp}
.anim [data-anim=fadeInDown].visto{animation-name:fadeInDown}
.anim [data-anim=fadeInLeft].visto{animation-name:fadeInLeft}
.anim [data-anim=fadeInRight].visto{animation-name:fadeInRight}
.anim [data-anim=rotateInUpRight].visto{animation-name:rotateInUpRight}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}
@keyframes fadeInDown{from{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}
@keyframes fadeInLeft{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}
@keyframes fadeInRight{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}
@keyframes rotateInUpRight{from{transform-origin:right bottom;transform:rotate3d(0,0,1,-90deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){
  .anim [data-anim]{opacity:1}
  .anim [data-anim].visto,.wa,.wa-caja{animation:none}
  .cajon-panel,.cajon-fondo{transition:none}
}

/* ---------- Tablet (≤1024) ---------- */
@media (max-width:1024px){
  .hero-inicio{min-height:498px}
  .hero-inicio .hero-in{padding-top:63px}
  .hero-sub{letter-spacing:4px}
  .hero-interior{min-height:298px}
  .hero-titulo,.hero-alquiler .hero-titulo{margin:0;font-size:50px;letter-spacing:7px}
  .titulo-seccion{font-size:30px}
  .rejilla{margin:70px auto}
  .tarjeta p{margin-right:0}
  .tarjeta.alto-fijo img{width:82%;height:182px;margin:0 auto}
  .rejilla-congeladores{margin:70px auto}
  .sobre-texto{flex-basis:50%;max-width:50%;margin-right:0;padding:0 20px}
  .sobre-texto h2,.mision-texto h2{font-size:30px}
  .cta{padding:80px 0 160px}
  .cta h2{font-size:35px}
  .bloque-1{margin-top:100px}
  .bloque-2{margin:100px 0 0}
  .bloque-alquiler{margin:100px 0 0}
  .texto-der,.texto-izq{padding:0 30px 0 20px}
  .mision{padding:80px 20px}
  .mision-texto{padding:0 20px}
  .contacto{padding:100px 20px}
  .contacto h2{font-size:30px}
  .form-caja{padding:30px}
  .contacto-datos{padding-left:50px}
  .dato h3{font-size:15px}
  .dato p{font-size:22px}
  .legal-in{padding:60px 50px}
  .resenas{grid-template-columns:1fr}
}
@media (max-width:921px){
  h3,.col-texto h2{font-size:25px}
  .tarjeta h3,.tarjeta-congelador h3{font-size:20px}
  .legal h2{font-size:30px}
  .legal h3{font-size:25px}
  .ue-logo:nth-child(1){padding-left:60px}
  .ue-logo:nth-child(2){padding-left:30px;padding-right:30px}
  .ue-logo:nth-child(3){padding-right:60px}
}

/* ---------- Móvil (≤767) ---------- */
@media (max-width:767px){
  .hero-inicio{min-height:404px}
  .hero-inicio .hero-in{padding:50px 0 40px}
  .letras img{width:66%}
  .hero-sub{font-size:20px;letter-spacing:2px}
  .hero-boton .boton,.cta .boton{font-size:14px}
  .hero-interior{min-height:220px}
  .hero-titulo{font-size:35px;letter-spacing:3px}
  .hero-alquiler .hero-titulo{font-size:20px;letter-spacing:3px}
  .titulo-seccion{letter-spacing:3px}
  .productos{margin-top:80px}
  .rejilla{flex-wrap:wrap;margin:40px auto}
  .tarjeta{flex-basis:calc(50% - 20px);margin:10px}
  .tarjeta.sin-marco{display:none}
  .tarjeta.alto-fijo img{width:100%;height:159px}
  .rejilla-congeladores{flex-direction:column;margin:20px auto 70px}
  .tarjeta-congelador{padding:20px}
  .tarjeta-congelador img{width:82%;height:300px;margin:0 auto}
  .dos-col,.sobre .dos-col,.mision .dos-col{flex-direction:column;align-items:stretch}
  .col,.sobre-texto{flex-basis:auto;max-width:none}
  .sobre{margin:50px 0;padding:0 10px}
  .sobre-texto{padding:20px 10px 10px;text-align:left}
  .sobre-texto h2{letter-spacing:3px;text-align:center}
  .sobre-texto .boton{display:flex;width:max-content;margin:20px auto 0}
  .sobre-logo{padding:10px 10px 50px}
  .resenas{margin:80px auto 60px;padding:0 10px}
  .resenas-lista{grid-template-columns:1fr}
  .cta{padding:50px 20px 120px}
  .cta h2{font-size:35px;letter-spacing:3px}
  .bloque-1,.bloque-2{margin:40px 0 0;padding:0 10px}
  .bloque-alquiler{margin:50px 0 0;padding:0 10px}
  .texto-der,.texto-izq{padding:20px 10px 10px}
  .productos-alquiler{margin-top:100px}
  .bloque-2 .dos-col,.bloque-alquiler .dos-col{flex-direction:column-reverse}   /* en móvil, la foto primero */
  .mision{padding:50px 10px}
  .mision-texto{padding:20px 10px 10px}
  .mision-texto h2{letter-spacing:3px}
  .contacto{padding:50px 10px}
  .form-caja{margin-top:35px}
  .contacto-datos{margin-top:40px;padding:10px}
  .dato h3{font-size:16px}
  .legal{padding:30px 0}
  .legal-in{padding:1.5em 1em}
  .legal h2{font-size:26px}
  .legal h3{font-size:22px}
  .datos-legales{grid-template-columns:1fr;gap:0}
  .datos-legales dd{margin-bottom:8px}
  .ue-in{flex-direction:column}
  .ue-logo,.ue-logo:nth-child(n){padding:10px 50px;text-align:center}
  .ue-logo img{max-width:300px}
  .pie-in{flex-direction:column;gap:12px;text-align:center}
  .pie ul{flex-direction:column;gap:6px}
  .pie a,.pie li:first-child a{padding:0}
  .wa{right:16px;bottom:16px}
}
@media (max-width:544px){
  h3,.col-texto h2{font-size:22px}
  .tarjeta h3,.tarjeta-congelador h3{font-size:18px}
}
