/* CRV Soluciones Integrales · estilos del sitio
   Idea de diseño: precisión técnica. Grafito profundo y blanco, el rojo de la marca como señal,
   y las facetas angulares del logo (la casa) como único motivo decorativo.
   Para cambiar colores, editar las variables de :root. */

@font-face{font-family:"Carlito";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/carlito-400.woff") format("woff")}
@font-face{font-family:"Carlito";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/carlito-700.woff") format("woff")}
/* Respaldo con las medidas de Carlito: mientras descarga la tipografía el texto no "salta". */
@font-face{font-family:"Carlito Respaldo";font-weight:400;src:local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:90.9%;ascent-override:104.7%;descent-override:29.6%;line-gap-override:0%}
@font-face{font-family:"Carlito Respaldo";font-weight:700;src:local("Arial Bold"),local("Arial"),local("Liberation Sans Bold"),local("Helvetica Bold");size-adjust:85.5%;ascent-override:111.3%;descent-override:31.5%;line-gap-override:0%}

:root{
  --noche:#12151a;
  --carbon:#1b2027;
  --carbon-2:#262c35;
  --acero:#9aa3af;
  --claro:#cdd3db;
  --hielo:#f3f5f7;
  --linea:#e1e5ea;
  --texto:#3b424b;
  --titulo:#12151a;
  --rojo:#be1e2d;
  --rojo-prof:#8a0d19;
  --rojo-vivo:#ff5c6a;      /* rojo para texto sobre fondos oscuros (contraste 6:1) */
  --ancho:76rem;
  --corte:clamp(1.1rem,3vw,2.6rem);   /* tamaño del recorte angular */
  --fondo:#fff;                        /* color del fondo donde se apoya cada tarjeta (para el recorte) */
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:5.5rem}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font:400 1.0625rem/1.65 "Carlito","Carlito Respaldo","Lato","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;color:var(--texto);background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p,dl,dd,figure,blockquote{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--rojo);outline-offset:3px}
.oscura :focus-visible,.pie :focus-visible,.cta :focus-visible,.portada :focus-visible{outline-color:#fff}

.contenedor{width:min(100% - 2.5rem,var(--ancho));margin-inline:auto}
.salto{position:absolute;left:-999px;top:0;background:var(--noche);color:#fff;padding:.7rem 1rem;z-index:100}
.salto:focus{left:0}

/* ---------- tipografía ---------- */
h1,h2,h3{color:var(--titulo);font-weight:700;letter-spacing:-.015em}
h1{font-size:clamp(2.3rem,5.4vw,3.7rem);line-height:1.06;letter-spacing:-.022em;text-wrap:balance}
h2{font-size:clamp(1.75rem,3.5vw,2.65rem);line-height:1.12}
h3{font-size:1.25rem;line-height:1.25}
.oscura h2,.oscura h3,.portada h1,.portada h2,.cta h2,.pie h2,.pie h3{color:#fff}
.rojo-vivo{color:var(--rojo-vivo)}
.intro{max-width:42rem;margin-top:1rem;font-size:1.15rem}

/* ---------- botones ---------- */
.boton{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:.7rem 1.7rem;background:var(--rojo);color:#fff;font-weight:700;font-size:1.1rem;line-height:1.2;text-decoration:none;border:2px solid var(--rojo);transition:background-color .15s,border-color .15s}
.boton:hover,.boton:active{background:var(--rojo-prof);border-color:var(--rojo-prof)}
.boton--chico{min-height:2.75rem;padding:.45rem 1.25rem;font-size:1rem}
.boton--claro{background:#fff;border-color:#fff;color:var(--rojo)}
.boton--claro:hover,.boton--claro:active{background:var(--hielo);border-color:var(--hielo);color:var(--rojo-prof)}
.enlace{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:700;color:#fff;text-decoration:underline;text-decoration-color:var(--rojo-vivo);text-decoration-thickness:2px;text-underline-offset:.3em}
.enlace:hover{text-decoration-color:#fff}
.acciones{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.75rem;margin-top:2rem}

/* ---------- encabezado ---------- */
.cabecera{position:relative;z-index:40;background:#fff;border-bottom:1px solid var(--linea)}
.cabecera__fila{display:flex;align-items:center;gap:1.5rem;min-height:4.5rem}
.logo{display:block;line-height:0;margin-right:auto}
.logo img{width:132px;height:auto}
.nav-escritorio{display:none}
.cabecera__wa{display:none}
.menu-movil{position:static}
.menu-movil summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.6rem;min-height:2.75rem;padding:.4rem .2rem;font-weight:700;color:var(--titulo)}
.menu-movil summary::-webkit-details-marker{display:none}
.menu-movil summary i{position:relative;width:1.4rem;height:2px;background:currentColor}
.menu-movil summary i::before,.menu-movil summary i::after{content:"";position:absolute;left:0;width:100%;height:2px;background:currentColor}
.menu-movil summary i::before{top:-.4rem}
.menu-movil summary i::after{top:.4rem}
.menu-movil[open] summary i{background:transparent}
.menu-movil[open] summary i::before{top:0;transform:rotate(45deg)}
.menu-movil[open] summary i::after{top:0;transform:rotate(-45deg)}
.menu-movil nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--linea);padding:.5rem 1.25rem 1.25rem}
.menu-movil a{display:block;padding:.95rem 0;border-bottom:1px solid var(--linea);font-weight:700;color:var(--titulo);text-decoration:none}
.menu-movil .menu-movil__sub a{font-weight:400;padding-left:1rem;color:var(--texto)}
.menu-movil .boton{display:flex;justify-content:center;margin-top:1rem;color:#fff;border:2px solid var(--rojo)}

@media (min-width:60rem){
  .cabecera{position:sticky;top:0}
  .menu-movil{display:none}
  .cabecera__wa{display:inline-flex}
  .nav-escritorio{display:block}
  .nav-escritorio>ul{display:flex;align-items:center;gap:.25rem}
  .nav-escritorio a{display:inline-flex;align-items:center;min-height:4.5rem;padding:0 .9rem;font-weight:700;color:var(--titulo);text-decoration:none}
  .nav-escritorio a:hover{color:var(--rojo)}
  .nav__item{position:relative}
  .nav__item .sub{position:absolute;left:0;top:100%;min-width:20rem;display:none;background:#fff;border:1px solid var(--linea);border-top:3px solid var(--rojo);padding:.4rem 0}
  .nav__item:hover .sub,.nav__item:focus-within .sub{display:block}
  .nav__item .sub a{display:flex;min-height:0;padding:.7rem 1.1rem;font-weight:400;color:var(--texto)}
  .nav__item .sub a:hover{background:var(--hielo);color:var(--rojo)}
}

/* ---------- portada (inicio y servicios) ---------- */
.portada{position:relative;background:var(--noche);color:var(--claro);overflow:hidden}
.portada::before{content:"";position:absolute;inset:0;background:
  linear-gradient(112deg,rgba(255,255,255,.035) 0 46%,transparent 46%),
  linear-gradient(112deg,transparent 0 78%,rgba(190,30,45,.16) 78% 78.35%,transparent 78.35%)}
.portada__grilla{position:relative;display:grid;gap:2.5rem;padding-block:clamp(2.5rem,6vw,5rem) clamp(2.5rem,5vw,4rem)}
.portada__texto{position:relative;z-index:2;align-self:center}
.portada .lead{max-width:38rem;margin-top:1.5rem;font-size:clamp(1.1rem,2vw,1.28rem);line-height:1.6;color:var(--claro)}
.portada .para-quien{margin-top:1.5rem;color:var(--acero);font-size:1rem}
@media (min-width:60rem){
  .portada__grilla{grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center}
}

/* mosaico de fotos en paralelogramos (inicio) */
.mosaico{display:none;position:relative;aspect-ratio:1/1.02;--sesgo:2.4rem}
.mosaico figure{position:absolute;overflow:hidden;clip-path:polygon(var(--sesgo) 0,100% 0,calc(100% - var(--sesgo)) 100%,0 100%);background:var(--carbon)}
.mosaico img{width:100%;height:100%;object-fit:cover}
.mosaico__a{top:0;left:12%;width:88%;height:48%}
.mosaico__b{top:51%;left:0;width:60%;height:49%}
.mosaico__c{top:51%;left:61.5%;width:38.5%;height:49%}
.mosaico::before{content:"";position:absolute;left:5%;top:-6%;width:.7rem;height:112%;background:var(--rojo);transform:skewX(-11deg);transform-origin:top;opacity:.95}
@media (min-width:60rem){.mosaico{display:block}}
.foto-movil{display:block;position:relative;overflow:hidden;aspect-ratio:16/10;background:var(--carbon)}
.foto-movil img{width:100%;height:100%;object-fit:cover}
@media (min-width:60rem){.foto-movil{display:none}}

/* foto de portada de servicio */
.portada-foto{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--carbon)}
.portada-foto img{width:100%;height:100%;object-fit:cover}
.portada-foto::after{content:"";position:absolute;top:0;right:0;width:calc(var(--corte)*1.4);height:calc(var(--corte)*1.4);background:linear-gradient(225deg,var(--noche) 50%,transparent 50%)}
@media (min-width:60rem){.portada-foto{margin-right:-1.25rem}}

/* cifras en la portada */
.cifras{position:relative;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--carbon-2);margin-top:clamp(1.5rem,4vw,3rem)}
.cifra{padding:1.25rem clamp(.5rem,2vw,1.75rem) 1.5rem 0}
.cifra+.cifra{padding-left:clamp(.75rem,2.5vw,2rem);border-left:1px solid var(--carbon-2)}
.cifra b{display:block;font-size:clamp(2.3rem,6.5vw,3.8rem);line-height:1;color:#fff;font-weight:700;letter-spacing:-.02em}
.cifra span{display:block;margin-top:.45rem;color:var(--claro);font-size:clamp(.9rem,2.3vw,1.05rem);line-height:1.3}

/* migas de pan */
.migas{margin-bottom:1.25rem;font-size:.95rem}
.migas ol{display:flex;flex-wrap:wrap;gap:.25rem .5rem}
.migas li+li::before{content:"/";margin-right:.5rem;color:var(--acero)}
.migas a{display:inline-block;padding-block:.65rem;margin-block:-.65rem;color:var(--claro);text-decoration:underline;text-decoration-color:var(--carbon-2);text-underline-offset:.25em}
.migas a:hover{text-decoration-color:var(--rojo-vivo)}
.migas [aria-current]{color:var(--acero)}

/* ---------- secciones ---------- */
.seccion{padding-block:clamp(3.5rem,8vw,6.5rem)}
.seccion--hielo{background:var(--hielo);--fondo:var(--hielo)}
.oscura{position:relative;background:var(--noche);color:var(--claro);--fondo:var(--noche)}
.inclinada{clip-path:polygon(0 var(--corte),100% 0,100% 100%,0 100%);margin-top:calc(var(--corte)*-1);padding-top:calc(clamp(3.5rem,8vw,6.5rem) + var(--corte))}
.seccion__cabecera{max-width:46rem}
.seccion__cabecera h2+.intro{margin-top:1rem}

/* ---------- sin / con ---------- */
.contraste{display:grid;gap:0;align-items:stretch}
.sin{background:var(--hielo);padding:clamp(1.75rem,4vw,3rem)}
.sin h2{font-size:clamp(1.4rem,2.6vw,1.9rem);max-width:30rem}
.sin ul{margin-top:1.25rem}
.sin li{position:relative;padding:.75rem 0 .75rem 2.2rem;border-top:1px solid var(--linea);color:var(--titulo);font-size:1.12rem}
.sin li::before,.sin li::after{content:"";position:absolute;left:.15rem;top:50%;width:1.05rem;height:2px;background:var(--rojo);transform:translateY(-50%) rotate(45deg)}
.sin li::after{transform:translateY(-50%) rotate(-45deg)}
.con{position:relative;background:var(--rojo);color:#fff;padding:clamp(1.75rem,4vw,3rem);display:flex;flex-direction:column;justify-content:center;--fondo:#fff}
.con::after{content:"";position:absolute;top:0;right:0;width:calc(var(--corte)*1.5);height:calc(var(--corte)*1.5);background:linear-gradient(225deg,#fff 50%,transparent 50%)}
.con__rotulo{font-weight:700;font-size:1.05rem}
.con__grande{font-size:clamp(3rem,8vw,5.2rem);line-height:1;font-weight:700;letter-spacing:-.025em;margin:.35rem 0 .75rem}
.con p:last-child{font-size:1.12rem}
@media (min-width:52rem){.contraste{grid-template-columns:1.3fr 1fr}}

/* ---------- tarjetas de servicios ---------- */
.tarjetas{display:grid;gap:1.5rem;margin-top:2.75rem}
@media (min-width:40rem){.tarjetas{grid-template-columns:repeat(2,1fr)}}
@media (min-width:64rem){.tarjetas{grid-template-columns:repeat(3,1fr)}}
.tarjeta{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea)}
.tarjeta__foto{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--carbon)}
.tarjeta__foto img{width:100%;height:100%;object-fit:cover}
.tarjeta::after{content:"";position:absolute;top:-1px;right:-1px;width:var(--corte);height:var(--corte);background:linear-gradient(225deg,var(--fondo) 50%,transparent 50%);pointer-events:none}
.tarjeta__cuerpo{display:flex;flex-direction:column;flex:1;padding:1.4rem 1.5rem 1.6rem}
.tarjeta h3{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .6rem}
.tarjeta h3 svg{flex:none;width:1.55rem;height:1.55rem;fill:none;stroke:var(--rojo);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tarjeta p{margin-top:.6rem;font-size:1.04rem;line-height:1.55}
.tarjeta__enlace{margin-top:auto;padding-top:1rem}
.tarjeta__enlace a{display:inline-block;padding-block:.55rem;margin-block:-.55rem;font-weight:700;color:var(--rojo);text-decoration:underline;text-decoration-color:var(--rojo);text-decoration-thickness:2px;text-underline-offset:.3em}
.tarjeta__enlace a::after{content:"";position:absolute;inset:0}
.tarjeta:focus-within{outline:3px solid var(--rojo);outline-offset:2px}
.tarjeta:hover .tarjeta__enlace a{color:var(--rojo-prof)}
.sello-logo{display:block;width:8rem;height:auto;margin-top:.6rem}

/* foto doble en diagonal (climatización) */
.doble{position:absolute;inset:0}
.doble span{position:absolute;inset:0;overflow:hidden}
.doble span img{width:100%;height:100%;object-fit:cover}
.doble span:first-child{clip-path:polygon(0 0,60% 0,40% 100%,0 100%)}
.doble span:last-child{clip-path:polygon(60.8% 0,100% 0,100% 100%,40.8% 100%)}
.doble span:last-child img{transform:translateX(33%) scale(1.04);transform-origin:30% 40%}

.complementarios{margin-top:1.5rem;padding:1.2rem 1.5rem;background:#fff;border:1px solid var(--linea);border-left:4px solid var(--rojo);color:var(--titulo)}

/* ---------- proceso ---------- */
.pasos{display:grid;gap:0;margin-top:2.75rem;counter-reset:paso}
.paso{position:relative;padding:0 0 2rem 4.25rem}
.paso::before{content:"";position:absolute;left:1.35rem;top:2.8rem;bottom:0;width:2px;background:var(--carbon-2)}
.paso:last-child::before{display:none}
.paso__n{position:absolute;left:0;top:-.2rem;width:2.8rem;height:2.8rem;display:flex;align-items:center;justify-content:center;background:var(--rojo);color:#fff;font-weight:700;font-size:1.25rem}
.paso h3{font-size:1.3rem}
.paso p{margin-top:.4rem;color:var(--claro)}
@media (min-width:56rem){
  .pasos{grid-template-columns:repeat(4,1fr);gap:1.75rem}
  .paso{padding:4rem 0 0}
  .paso::before{left:2.8rem;right:-1.75rem;top:1.35rem;bottom:auto;width:auto;height:2px}
  .paso__n{top:0}
}
.compromiso{display:grid;gap:.9rem 2rem;margin-top:2.75rem;padding-top:1.75rem;border-top:1px solid var(--carbon-2)}
.compromiso li{display:flex;align-items:center;gap:.7rem;font-weight:700;color:#fff;font-size:1.1rem}
.compromiso svg{flex:none;width:1.5rem;height:1.5rem;fill:none;stroke:var(--rojo-vivo);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media (min-width:44rem){.compromiso{grid-template-columns:repeat(3,auto);justify-content:start}}

/* ---------- zona de trabajo ---------- */
.zona{display:grid;gap:2rem;align-items:start}
.zona__lista{display:grid;grid-template-columns:repeat(2,1fr);gap:0 1.5rem}
.zona__lista li{position:relative;padding:.75rem 0 .75rem 1.5rem;border-top:1px solid var(--linea);color:var(--titulo);font-size:1.1rem}
.zona__lista li::before{content:"";position:absolute;left:.1rem;top:1.25rem;width:.55rem;height:.55rem;background:var(--rojo);transform:rotate(45deg)}
@media (min-width:52rem){.zona{grid-template-columns:.85fr 1.15fr;gap:4rem}}
@media (min-width:64rem){.zona__lista{grid-template-columns:repeat(3,1fr)}}

/* ---------- servicio: qué incluye ---------- */
.incluye{display:grid;gap:2rem}
.incluye__lista li{position:relative;padding:.95rem 0 .95rem 2.2rem;border-top:1px solid var(--linea);color:var(--titulo);font-size:1.1rem;font-weight:700}
.incluye__lista li:last-child{border-bottom:1px solid var(--linea)}
.incluye__lista li::before{content:"";position:absolute;left:.2rem;top:1.25rem;width:.6rem;height:1rem;border-right:2.5px solid var(--rojo);border-bottom:2.5px solid var(--rojo);transform:rotate(40deg)}
.incluye__lista small{display:block;margin-top:.15rem;color:var(--texto);font-size:1rem;font-weight:400}
.nota{margin-top:1.5rem;padding:1.1rem 1.4rem;background:var(--hielo);border-left:4px solid var(--rojo);color:var(--titulo)}
.subseccion+.subseccion{margin-top:clamp(3rem,6vw,4.5rem)}
.subseccion h2{margin-bottom:1.25rem}
@media (min-width:56rem){.incluye{grid-template-columns:.9fr 1.1fr;gap:4rem}}

/* ---------- galería ---------- */
.galeria{display:grid;gap:1.5rem;margin-top:2.5rem}
@media (min-width:36rem){.galeria{grid-template-columns:repeat(2,1fr)}}
@media (min-width:62rem){.galeria{grid-template-columns:repeat(3,1fr)}}
.galeria figure{position:relative;background:#fff;border:1px solid var(--linea)}
.galeria .tarjeta__foto{aspect-ratio:4/3}
.galeria figcaption{padding:.9rem 1.1rem 1.1rem;font-size:1rem;line-height:1.45;color:var(--texto)}
.galeria figure::after{content:"";position:absolute;top:-1px;right:-1px;width:calc(var(--corte)*.8);height:calc(var(--corte)*.8);background:linear-gradient(225deg,var(--fondo) 50%,transparent 50%)}

/* ---------- preguntas frecuentes ---------- */
.preguntas{max-width:52rem;margin-top:2rem;border-bottom:1px solid var(--linea)}
.pregunta{border-top:1px solid var(--linea)}
.pregunta summary{position:relative;list-style:none;cursor:pointer;padding:1.2rem 3rem 1.2rem 0;font-weight:700;font-size:1.15rem;line-height:1.35;color:var(--titulo)}
.pregunta summary::-webkit-details-marker{display:none}
.pregunta summary::before,.pregunta summary::after{content:"";position:absolute;right:.3rem;top:50%;width:1.1rem;height:2px;background:var(--rojo);transition:transform .2s}
.pregunta summary::after{transform:rotate(90deg)}
.pregunta[open] summary::after{transform:rotate(0)}
.pregunta p{padding:0 3rem 1.4rem 0;max-width:46rem}
@media (prefers-reduced-motion:reduce){.pregunta summary::before,.pregunta summary::after{transition:none}}

/* ---------- servicios relacionados ---------- */
.relacionados{display:grid;gap:1.25rem;margin-top:2.25rem}
@media (min-width:48rem){.relacionados{grid-template-columns:repeat(3,1fr)}}
.relacionado{position:relative;padding:1.4rem 1.5rem 1.5rem;background:#fff;border:1px solid var(--linea)}
.relacionado h3{display:flex;align-items:center;gap:.6rem;font-size:1.15rem}
.relacionado svg{flex:none;width:1.4rem;height:1.4rem;fill:none;stroke:var(--rojo);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.relacionado p{margin-top:.5rem;font-size:1rem;line-height:1.5}
.relacionado a{display:inline-block;padding-block:.65rem;margin-block:-.65rem;text-decoration:none;color:inherit}
.relacionado a::after{content:"";position:absolute;inset:0}
.relacionado:hover h3{color:var(--rojo)}
.relacionado:focus-within{outline:3px solid var(--rojo);outline-offset:2px}

/* ---------- bloque de contacto ---------- */
.cta{position:relative;background:var(--rojo);color:#fff;overflow:hidden;clip-path:polygon(0 var(--corte),100% 0,100% 100%,0 100%);margin-top:calc(var(--corte)*-1);padding:calc(clamp(3.5rem,8vw,6rem) + var(--corte)) 0 clamp(3rem,7vw,5rem)}
.cta::before{content:"";position:absolute;right:0;bottom:0;width:min(52%,34rem);height:80%;background:var(--rojo-prof);clip-path:polygon(100% 0,100% 100%,0 100%);opacity:.6}
.cta::after{content:"";position:absolute;right:0;bottom:0;width:min(32%,20rem);height:48%;background:var(--noche);clip-path:polygon(100% 0,100% 100%,0 100%);opacity:.55}
.cta .contenedor{position:relative;z-index:2}
.cta h2{max-width:36rem;font-size:clamp(1.9rem,4.6vw,3.2rem);margin-bottom:1.75rem}
.datos{display:grid;gap:1.1rem 3rem;margin-top:2.75rem}
.datos dt{font-size:1rem;opacity:.92}
.datos dd{margin-top:.1rem;font-weight:700;font-size:clamp(1.15rem,2.4vw,1.45rem)}
.datos a{display:inline-block;padding-block:.7rem;margin-block:-.7rem;text-decoration:none}
.datos a:hover{text-decoration:underline}
@media (min-width:48rem){.datos{grid-template-columns:repeat(3,auto);justify-content:start}}

/* ---------- pie ---------- */
.pie{background:var(--noche);color:var(--claro);padding-top:clamp(3rem,6vw,4.5rem)}
.pie__grilla{display:grid;gap:2.25rem}
.pie img{width:150px;height:auto}
.pie__texto{max-width:22rem;margin-top:1rem;color:var(--acero);font-size:1rem;line-height:1.55}
.pie h2{font-size:1.05rem;letter-spacing:0;margin-bottom:.75rem}
.pie li a,.pie p a{display:inline-block;padding:.65rem 0;color:var(--claro);text-decoration:none}
.pie li a:hover,.pie p a:hover{color:#fff;text-decoration:underline}
.pie__datos p{padding:0}
.pie__base{margin-top:2.5rem;padding-block:1.25rem;border-top:1px solid var(--carbon-2);color:var(--acero);font-size:.95rem}
@media (min-width:52rem){.pie__grilla{grid-template-columns:1.3fr 1fr 1fr;gap:3rem}}

/* ---------- barra de contacto fija (solo celular) ---------- */
.barra-fija{display:none}
@media (max-width:59.99rem){
  body{padding-bottom:calc(4.25rem + env(safe-area-inset-bottom))}
  .barra-fija{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:1.5fr 1fr;gap:.6rem;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #d9d9d9}
  .barra-fija a{display:flex;align-items:center;justify-content:center;min-height:3rem;font-weight:700;font-size:1.05rem;text-decoration:none}
  .barra-fija__wa{background:var(--rojo);color:#fff}
  .barra-fija__wa:active{background:var(--rojo-prof)}
  .barra-fija__tel{border:2px solid var(--noche);color:var(--noche)}
}

/* ---------- preparado para pendientes ---------- */
.foto-equipo{width:100%;max-width:44rem;height:auto}
.seccion--cita{background:var(--hielo)}
.cita{margin-top:2rem;max-width:44rem}
.cita blockquote{padding-left:1.4rem;border-left:4px solid var(--rojo)}
.cita blockquote p{font-size:clamp(1.3rem,3vw,1.75rem);line-height:1.4;color:var(--titulo)}
.cita figcaption{margin-top:1rem;padding-left:1.4rem;font-weight:700;color:var(--titulo)}

@media print{
  .barra-fija,.salto,.menu-movil,.nav-escritorio{display:none}
  .inclinada,.cta{clip-path:none;margin-top:0}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
