/* Azurcasa v3 · manual de marca: Montserrat, #8E2787 / #F77EEF / #3A3A3A / #D3D3D3 / blanco, degradado del isologo.
   Tokens y contrastes: _revision/especificacion.json (RD-01…RD-35). */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fuentes/montserrat-latin.woff2?v=1) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fuentes/montserrat-latin-ext.woff2?v=1) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Montserrat Respaldo';src:local('Arial'),local('ArialMT');font-weight:100 599;size-adjust:110.94%;ascent-override:87.25%;descent-override:22.62%;line-gap-override:0%}
@font-face{font-family:'Montserrat Respaldo';src:local('Arial Bold'),local('Arial-BoldMT');font-weight:600 900;size-adjust:108.81%;ascent-override:88.96%;descent-override:23.07%;line-gap-override:0%}

:root{
  --morado:#8E2787; --rosa:#F77EEF; --blanco:#FFFFFF; --gris-osc:#3A3A3A; --gris-cl:#D3D3D3;
  --gris-txt:#636363; --morado-o:#741F6E; --sup:#F4F4F4; --borde-campo:#898989; --error:#8A1530; --error-f:#FCE8EC;
  --degradado:linear-gradient(90deg,#F77EEF 0%,#8E2787 100%);
  --degradado-placa:linear-gradient(160deg,#A63E9F 0%,#8E2787 75%);
  --brillo:rgba(255,255,255,.14);
  --brillo-diag:linear-gradient(118deg,transparent 0 62%,var(--brillo) 62% 100%);
  --fuente:'Montserrat','Montserrat Respaldo',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --foco:#8E2787; --r-foto:8px; --r-caja:12px; --r-pildora:999px;
  --sombra:0 18px 40px -24px rgba(58,58,58,.35); --wrap:1200px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
body{margin:0;font-family:var(--fuente);font-size:16px;line-height:1.7;color:var(--gris-osc);background:var(--blanco);-webkit-font-smoothing:antialiased;font-variant-numeric:lining-nums}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,p,ul,ol,figure,blockquote,fieldset{margin:0}
ul,ol{padding:0;list-style:none}
fieldset{border:0;padding:0;min-width:0}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--rosa);color:var(--gris-osc)}
:focus-visible{outline:3px solid var(--foco);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
@media (min-width:768px){.wrap{padding:0 32px}}
.saltar{position:absolute;left:-999px;top:8px;background:var(--gris-osc);color:#fff;padding:10px 16px;border-radius:8px;z-index:100}
.saltar:focus{left:12px}
.ico{width:20px;height:20px;flex-shrink:0}
.ico-m{width:24px;height:24px;flex-shrink:0;color:var(--morado)}
.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mt-10{margin-top:40px}.mt-12{margin-top:48px}
.w-full{width:100%;justify-content:center}

/* tipografía */
.h1{font-weight:700;color:var(--morado);font-size:clamp(1.9rem,.9rem + 2.8vw,3.4rem);line-height:1.08;letter-spacing:-.02em;text-wrap:balance}
.h1 .fino{font-weight:400;color:var(--gris-osc);display:inline}
@media (min-width:1024px){.h1 .fino{display:block}}
.h1-s{font-size:clamp(1.75rem,1.05rem + 2.4vw,2.75rem)}
.h2{font-weight:700;color:var(--morado);font-size:clamp(1.6rem,1.1rem + 1.6vw,2.4rem);line-height:1.15;letter-spacing:-.015em;text-wrap:balance}
.h3,h3{font-weight:700;color:var(--gris-osc);font-size:1.125rem;line-height:1.35}
.lead{font-size:1.0625rem;line-height:1.65;max-width:38rem}
@media (min-width:768px){.lead{font-size:1.125rem}}
.txt{max-width:38rem}
.txt-s,.meta,.nota{font-size:.875rem;color:var(--gris-txt)}
.nota{margin-top:12px}
.cita{font-weight:300;color:var(--morado);font-size:clamp(1.5rem,1.1rem + 1.4vw,2.1rem);line-height:1.25;max-width:32rem}
.cita-c{display:flex;gap:16px;align-items:flex-start;justify-content:center;text-align:center;margin-left:auto;margin-right:auto}
.cita-c .dest{width:24px;height:24px;margin-top:8px;flex-shrink:0}
:where(p) a:where(:not(.btn):not(.enlace)),li a.txt-a{color:var(--morado);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* botones (píldora del manual, mayúscula espaciada por CSS) */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 26px;border-radius:var(--r-pildora);border:1.5px solid transparent;font:700 .875rem/1.2 var(--fuente);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;text-align:center}
.btn-1,.btn-wa{background:var(--morado);border-color:var(--morado);color:#fff}
.btn-1:hover,.btn-wa:hover{background:var(--morado-o);border-color:var(--morado-o)}
.btn-2{background:#fff;color:var(--morado);border-color:var(--morado)}
.btn-2:hover{background:var(--morado);color:#fff}
.btn-claro{background:#fff;color:var(--morado);border-color:#fff}
.btn-claro:hover{background:var(--sup);border-color:var(--sup)}
.btn-sm{min-height:40px;padding:9px 18px;font-size:.75rem}
@media (pointer:coarse){.btn-sm{min-height:44px}}
.acc{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.acc-l{display:flex;flex-wrap:wrap;gap:12px 28px}
.enlace{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--morado);text-decoration:none;border-bottom:2px solid var(--morado);padding-bottom:2px;line-height:1.35}
.enlace:hover{color:var(--gris-osc);border-color:var(--gris-osc)}
.enlace .ico{width:18px;height:18px}
.garantia{display:inline-flex;align-items:flex-start;gap:10px;margin-top:20px;color:var(--gris-osc);font-size:.9375rem;line-height:1.45;text-decoration:none}
.garantia .ico{color:var(--morado);width:22px;height:22px;margin-top:1px}
.garantia span{text-decoration:underline;text-decoration-color:var(--gris-cl);text-underline-offset:3px}
.garantia:hover span{text-decoration-color:var(--morado)}
.garantia-clara,.garantia-clara .ico{color:#fff}
.garantia-clara span{text-decoration-color:#fff}

/* cabecera */
.nav{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--gris-cl)}
.nav-in{display:flex;align-items:center;gap:24px;height:68px}
.nav-logo{display:block;flex-shrink:0}
.logo{height:40px;width:auto}
.nav-p{display:none}
.nav-links{display:flex;gap:4px;align-items:center}
.nav-links>li>a{position:relative;display:block;padding:10px 12px;text-decoration:none;font-weight:500;font-size:.9375rem;color:var(--gris-osc)}
.nav-links>li>a:hover{color:var(--morado)}
.nav-links>li>a[aria-current]{color:var(--morado);font-weight:700}
.nav-links>li>a[aria-current]::after{content:'';position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--morado)}
.dd{position:relative;display:flex;align-items:center}
.dd-btn{background:none;border:0;padding:6px;margin-left:-8px;border-radius:6px;cursor:pointer;color:var(--gris-osc);display:grid;place-items:center}
.dd-btn .ico{width:18px;height:18px;transition:transform .2s}
.dd-btn[aria-expanded=true] .ico{transform:rotate(180deg)}
.dd-panel{position:absolute;top:100%;left:-12px;width:560px;display:none;grid-template-columns:1fr 1fr;gap:24px;padding:24px;background:#fff;border-radius:var(--r-caja);box-shadow:var(--sombra);border:1px solid var(--gris-cl);z-index:60}
.dd.abierto .dd-panel{display:grid}
@media (hover:hover) and (pointer:fine){.dd:hover .dd-panel,.dd:focus-within .dd-panel{display:grid}}
.dd-t{font-weight:700;font-size:.8125rem;color:var(--gris-txt);margin-bottom:8px}
.dd-panel a{display:block;padding:6px 0;text-decoration:none;font-size:.9375rem;line-height:1.35}
.dd-panel a:hover{color:var(--morado);text-decoration:underline}
.nav-acc{margin-left:auto;display:flex;align-items:center;gap:12px}
.nav-tel{display:none;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:.9375rem}
.nav-tel .ico{color:var(--morado)}
.nav-acc .btn-sm{display:none}
.burger{background:none;border:0;padding:10px;border-radius:10px;cursor:pointer;color:var(--gris-osc)}
.burger .ico{width:28px;height:28px}
@media (min-width:640px){.nav-acc .btn-sm{display:inline-flex}}
@media (min-width:1024px){.nav-p{display:block;margin-left:16px}.burger{display:none}.nav-in{height:76px}.logo{height:44px}}
@media (min-width:1240px){.nav-tel{display:inline-flex}}
.mm{position:fixed;inset:0;z-index:70;background:#fff;overflow:auto;display:flex;flex-direction:column}
.mm[hidden]{display:none}
.mm-cab{display:flex;align-items:center;justify-content:space-between;height:68px;flex-shrink:0}
.mm-x{background:none;border:0;padding:10px;cursor:pointer;color:var(--gris-osc)}.mm-x .ico{width:28px;height:28px}
.mm nav{flex:1}
.mm-l a{display:block;padding:14px 0;font-weight:700;font-size:1.25rem;text-decoration:none;border-bottom:1px solid var(--gris-cl);color:var(--gris-osc)}
.mm-t{margin-top:28px;font-weight:700;color:var(--gris-txt);font-size:.875rem}
.mm-s{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-top:6px}
.mm-s a{display:block;padding:10px 0;font-size:.9375rem;text-decoration:none}
.mm-pie{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--gris-cl);padding:12px 0 calc(12px + env(safe-area-inset-bottom));margin-top:24px}

/* secciones */
.sec{padding:64px 0}
@media (min-width:1024px){.sec{padding:96px 0}}
.sec-0{padding-top:0}
.sec-top{padding-top:40px}
.sec-sup{background:var(--sup)}
.sec-f{border-top:1px solid var(--gris-cl)}
.cab{display:grid;gap:16px}
@media (min-width:1024px){.cab{grid-template-columns:1fr 1fr;align-items:end;gap:48px}.cab .lead{justify-self:end}}
.cab-t{padding:40px 0 48px}
@media (min-width:1024px){.cab-t{padding:56px 0 64px}}
.cab-t-g{display:grid;gap:40px;align-items:center}
@media (min-width:1024px){.cab-t-g{grid-template-columns:1.15fr .85fr;gap:64px}}

/* banners (pedido del Word): foto real a sangre que se funde a blanco; el texto nunca va sobre la foto */
.banner{position:relative;background:#fff}
.banner-f{display:block;position:relative;aspect-ratio:16/9;overflow:hidden}
.banner-int .banner-f{aspect-ratio:2/1}
.banner-f img{width:100%;height:100%;object-fit:cover}
.banner-f::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,0) 55%,#fff 100%)}
.banner>.ref{position:absolute;left:12px;top:12px;z-index:2}
.banner-t{padding-top:8px;padding-bottom:56px;position:relative}
@media (min-width:1024px){
  .banner{display:flex;align-items:center;min-height:clamp(480px,40vw,600px)}
  .banner-int{min-height:clamp(400px,32vw,500px)}
  .banner .banner-f{position:absolute;top:0;bottom:0;left:50%;right:0;aspect-ratio:auto}
  .banner-f::after{background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,0) 24%),linear-gradient(180deg,rgba(255,255,255,0) 82%,#fff 100%)}
  .banner>.ref{left:calc(50% + 16px)}
  .banner-t{padding:56px 32px 72px;width:100%}
  .banner-t>*{max-width:min(34rem,calc(50vw - 3.5rem))}
}

/* franja de cifras */
.franja-cifras{border-top:1px solid var(--gris-cl);border-bottom:1px solid var(--gris-cl);padding:28px 0}
.cifras{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
@media (min-width:768px){.cifras{grid-template-columns:repeat(4,1fr)}}
.cifras b{display:block;font-weight:300;font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem);line-height:1.05;color:var(--morado);font-variant-numeric:lining-nums tabular-nums}
.cifras span{display:block;margin-top:6px;font-size:.875rem;color:var(--gris-txt);line-height:1.4}
.cifras a{color:var(--morado);text-decoration:underline;text-underline-offset:3px}

/* fotos */
.foto{position:relative;margin:0}
.foto img{border-radius:var(--r-foto);width:100%;object-fit:cover}
.foto figcaption{font-size:.875rem;color:var(--gris-txt);margin-top:8px}
.ref{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.9);color:var(--gris-osc);font:700 .6875rem/1.2 var(--fuente);padding:5px 9px;border-radius:var(--r-pildora);z-index:1}

/* cartelitos con transición (pedido del Word) */
.serv-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cartel-g{grid-column:span 2}
.cartel{display:block;position:relative;border:1px solid var(--gris-cl);border-radius:var(--r-caja);overflow:hidden;background:#fff;text-decoration:none;color:var(--gris-osc)}
.cartel-f{position:relative;aspect-ratio:1/1;overflow:hidden}
.cartel-g .cartel-f{aspect-ratio:16/10}
.cartel-f img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.cartel-t{padding:14px 16px 16px;position:relative}
.cartel-t h2,.cartel-t h3{font-weight:700;font-size:1.0625rem;line-height:1.3;color:inherit}
.cartel-t p{font-size:.875rem;color:var(--gris-txt);margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45}
.cartel-ver{display:none}
.cartel-sin .cartel-f{background:var(--sup);display:grid;place-items:center}
.dest-g{width:64px;height:64px;fill:var(--morado);opacity:.28}
@media (min-width:1024px){
  .serv-g{grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
  .serv-g>.cartel{grid-column:span 3;--ar:4/5}
  .serv-g>.cartel-g{grid-column:span 6;--ar:16/10}
  .serv-g-todos>.cartel{grid-column:span 4;--ar:4/3}
  .serv-g-todos>.cartel-g{grid-column:span 6;--ar:16/10}
}
@media (min-width:1024px) and (hover:hover) and (pointer:fine){
  .serv-g>.cartel,.blog-g>.cartel{border:0;aspect-ratio:var(--ar,4/3)}
  .serv-g>.cartel .cartel-f,.blog-g>.cartel .cartel-f{position:absolute;inset:0;aspect-ratio:auto}
  .serv-g>.cartel .cartel-t,.blog-g>.cartel .cartel-t{position:absolute;left:12px;right:12px;bottom:12px;border-radius:var(--r-foto);background:#fff;isolation:isolate;padding:14px 18px}
  .serv-g>.cartel .cartel-t::before,.blog-g>.cartel .cartel-t::before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--degradado-placa);opacity:0;transition:opacity .3s}
  .serv-g>.cartel .cartel-mas,.blog-g>.cartel .cartel-mas{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
  .cartel-mas>div{overflow:hidden}
  .serv-g>.cartel .cartel-t p,.blog-g>.cartel .cartel-t p{-webkit-line-clamp:unset;display:block}
  .cartel:is(:hover,:focus-visible) .cartel-t::before{opacity:1}
  .cartel:is(:hover,:focus-visible) .cartel-t,.cartel:is(:hover,:focus-visible) .cartel-t p{color:#fff}
  .cartel:is(:hover,:focus-visible) .cartel-mas{grid-template-rows:1fr}
  .cartel:is(:hover,:focus-visible) .cartel-f img{transform:scale(1.03)}
  .serv-g>.cartel .cartel-ver,.blog-g>.cartel .cartel-ver{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:700 .75rem/1 var(--fuente);letter-spacing:.08em;text-transform:uppercase}
  .cartel-ver .ico{width:16px;height:16px}
}
.blog-g{display:grid;gap:24px}
@media (min-width:768px){.blog-g{grid-template-columns:1fr 1fr}.blog-g>.cartel{--ar:4/3}}

/* antes y después (pestañas en semicírculo, plantilla Antes/Ahora del manual) */
.ad-wrap{display:grid;gap:48px}
.ad{margin:0;display:grid;gap:16px}
.ad-g{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ad-c{position:relative;overflow:hidden;border-radius:var(--r-foto)}
.ad-c img{width:100%;object-fit:cover;aspect-ratio:4/5}
.ad-h .ad-c img{aspect-ratio:16/10}
.ad-et{position:absolute;left:50%;bottom:0;transform:translateX(-50%);min-width:116px;height:40px;padding:13px 18px 0;border-radius:58px 58px 0 0;background:var(--gris-cl);color:var(--gris-osc);font:700 .75rem/1 var(--fuente);letter-spacing:.14em;text-transform:uppercase;text-align:center}
.ad-et-d{background:var(--morado);color:#fff}
.ad figcaption{display:grid;gap:4px}
.ad figcaption span{color:var(--gris-txt)}
@media (min-width:1024px){.ad{grid-template-columns:2fr 1fr;align-items:center;gap:48px}.ad-inv{grid-template-columns:1fr 2fr}.ad-inv .ad-g{order:2}}

/* reseñas */
.res-g{display:grid;gap:20px}
@media (min-width:768px){.res-g{grid-template-columns:repeat(3,1fr)}}
.res-lista{display:grid;gap:16px}
@media (min-width:768px){.res-lista{grid-template-columns:1fr 1fr}}
@media (min-width:1024px){.res-lista{grid-template-columns:repeat(3,1fr)}}
.res{margin:0;background:#fff;border:1px solid var(--gris-cl);border-radius:var(--r-caja);padding:24px;display:flex;flex-direction:column;gap:10px}
.estrellas{display:inline-flex;gap:2px}
.estrellas svg{width:16px;height:16px;fill:var(--gris-cl)}
.estrellas .e-on{fill:var(--morado)}
.res-f{font-size:.875rem;color:var(--gris-txt)}
.res blockquote p{font-size:1.0625rem;line-height:1.6}
.res figcaption{font-weight:700;margin-top:auto}
.pag{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pag button{min-width:44px;min-height:44px;padding:0 14px;border-radius:var(--r-pildora);border:1.5px solid var(--gris-cl);background:#fff;font-weight:700;cursor:pointer}
.pag button[aria-current=page]{background:var(--morado);border-color:var(--morado);color:#fff}
.pag button:hover:not([aria-current]){border-color:var(--morado);color:var(--morado)}
.pag .pag-sep{padding:0 4px;color:var(--gris-txt)}
.estrellas-in{display:flex;flex-wrap:wrap;gap:8px}
.estrellas-in legend{font-weight:700;font-size:.875rem;margin-bottom:8px;width:100%}
.estrellas-in label{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1.5px solid var(--borde-campo);border-radius:var(--r-pildora);cursor:pointer;font-size:.9375rem;min-height:44px}
.estrellas-in input{accent-color:var(--morado);width:18px;height:18px}
.estrellas-in label:has(input:checked){border-color:var(--morado);color:var(--morado);font-weight:700}

/* cotizador */
.cz{display:grid;gap:24px}
@media (min-width:1024px){.cz{grid-template-columns:1.5fr 1fr;gap:40px;align-items:start}}
.cz-items{background:#fff;border:1px solid var(--gris-cl);border-radius:var(--r-caja);padding:8px 24px 16px;display:grid;gap:8px}
@media (min-width:768px){.cz-items{grid-template-columns:1fr 1fr;column-gap:40px}.cz-g:first-child{grid-row:span 2}}
.cz-g legend{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.125rem;color:var(--gris-osc);padding:16px 0 4px}
.cz-f{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--gris-cl)}
.cz-g li:last-child{border-bottom:0}
.cz-ct{display:flex;align-items:center;gap:6px}
.cz-b{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:#fff;border:1.5px solid var(--borde-campo);color:var(--gris-osc)}
.cz-mas{background:var(--morado);border-color:var(--morado);color:#fff}
.cz-mas:hover{background:var(--morado-o)}
.cz-menos:hover{border-color:var(--morado);color:var(--morado)}
.cz-b .ico{width:18px;height:18px}
.cz-v{min-width:26px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.cz-v.on{color:var(--morado)}
.cz-res{--foco:#fff;background:var(--brillo-diag),var(--morado);color:#fff;border-radius:var(--r-caja);padding:26px 24px}
@media (min-width:1024px){.cz-res{position:sticky;top:100px}}
.cz-rt{font-weight:700;font-size:1.375rem}
.cz-lista{margin-top:14px;display:grid;gap:8px}
.cz-lista li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:8px}
.cz-vacio{border:0!important}
.cz-xs{display:grid;gap:8px;margin-top:18px}
.cz-x{display:flex;gap:10px;align-items:center;cursor:pointer;min-height:32px}
.cz-x input{width:20px;height:20px;accent-color:#fff}
.cz-res .campo label{color:#fff}
.cz-res .campo input{background:#fff;border-color:#fff;color:var(--gris-osc)}
.cz-res .nota{color:#fff}
.cz-res .nota a{color:#fff;text-decoration:underline}

/* pasos (línea de tiempo) */
.met-g{display:grid;gap:48px}
@media (min-width:1024px){.met-g{grid-template-columns:1.1fr .9fr;gap:72px;align-items:start}}
.pasos{display:grid;gap:24px}
.pasos li{position:relative;display:grid;grid-template-columns:40px 1fr;gap:16px;align-items:start}
.pasos.linea li:not(:last-child)::before{content:'';position:absolute;left:19px;top:44px;bottom:-24px;width:2px;background:var(--gris-cl)}
.paso-n{width:40px;height:40px;border-radius:50%;background:var(--morado);color:#fff;display:grid;place-items:center;font:700 1rem/1 var(--fuente);position:relative;z-index:1}
.pasos h3{font-weight:700;font-size:1.0625rem}
.pasos p{margin-top:4px}
.pasos p+p{margin-top:8px}
.pm{border-top:2px solid var(--morado);padding-top:20px}
.pm-t{font-weight:700;font-size:.9375rem;color:var(--gris-osc)}
.proceso-mini{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-top:16px}
.proceso-mini li{display:flex;align-items:center;gap:10px;font-weight:700;font-size:.9375rem;line-height:1.3}
.pm-n{width:32px;height:32px;border-radius:50%;background:var(--morado);color:#fff;display:grid;place-items:center;font-size:.875rem;flex-shrink:0}
.tambien ul{display:grid;gap:8px;margin-top:10px}
.tambien a{color:var(--morado);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.inc-g{display:grid;gap:48px}
@media (min-width:1024px){.inc-g{grid-template-columns:1.4fr .9fr;gap:72px;align-items:start}}

/* videos */
.vid-g{display:grid;grid-auto-flow:column;grid-auto-columns:72%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.vid-g>.vid{scroll-snap-align:start}
@media (min-width:768px){.vid-g{grid-auto-flow:row;grid-template-columns:1fr 1fr;overflow:visible}.vid-g .vid-g1{grid-column:span 2}}
.vid-g2{grid-template-columns:1fr 1fr}
.vid{position:relative;margin:0}
.vid video{border-radius:var(--r-foto);width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--gris-cl)}
.vid-g1 video{aspect-ratio:3/4}
.vid-play{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;border:0;background:rgba(255,255,255,.94);color:var(--morado);display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 24px -10px rgba(0,0,0,.5)}
.vid-play[hidden]{display:none}
.vid-play .ico{width:30px;height:30px;margin-left:3px}
.vid figcaption{font-size:.8125rem;color:var(--gris-txt);margin-top:8px;line-height:1.35}
.gal{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (min-width:1024px){.gal{grid-template-columns:repeat(4,1fr);gap:16px}}
.gal .foto img,.gal .vid video{aspect-ratio:4/5;object-fit:cover}

/* historia, cifras, caso */
.his-g{display:grid;gap:40px;align-items:center}
@media (min-width:1024px){.his-g{grid-template-columns:.85fr 1.15fr;gap:72px}}
.his-f img{aspect-ratio:4/5;max-height:560px}
.cols-2{display:grid;gap:24px}
@media (min-width:1024px){.cols-2{grid-template-columns:1fr 1fr;gap:56px}}
.caso{margin:0}
.caso p{font-size:1.125rem;line-height:1.6}
.caso figcaption{margin-top:16px;color:var(--gris-txt);font-weight:700;font-size:.875rem}
.placa-caso{--foco:#fff;background:var(--brillo-diag),var(--morado);color:#fff;border-radius:var(--r-caja);padding:32px}
.placa-t{font-weight:700;font-size:1rem}
.caso-placa{margin:12px 0 0}
.caso-placa p{font-size:1.0625rem;line-height:1.6}
.caso-placa figcaption{margin-top:14px;font-weight:700;font-size:.875rem;color:#fff}

/* cobertura */
.pildoras{display:flex;flex-wrap:wrap;gap:10px}
.pildora{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 18px;border:1.5px solid var(--morado);border-radius:var(--r-pildora);color:var(--morado);font-weight:700;text-decoration:none}
.pildora:hover{background:var(--morado);color:#fff}
.pildora .ico{width:16px;height:16px}
.comunas{columns:2;column-gap:24px}
@media (min-width:768px){.comunas{columns:4}}
.comunas li{padding:3px 0;break-inside:avoid;font-size:.9375rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--gris-cl);border-radius:var(--r-pildora);text-decoration:none;font-size:.9375rem}
.chips a:hover{border-color:var(--morado);color:var(--morado)}

/* franquicia */
.fr-inc{display:grid;gap:28px}
@media (min-width:768px){.fr-inc{grid-template-columns:1fr 1fr;gap:40px 56px}}
.fr-inc li{border-top:2px solid var(--morado);padding-top:18px}
.franq-f{padding:40px 0}
.franq-g{display:grid;gap:20px;align-items:center}
@media (min-width:1024px){.franq-g{grid-template-columns:1fr auto;gap:48px}}
.h-franq{font-weight:700;color:var(--morado);font-size:clamp(1.25rem,1rem + .8vw,1.6rem);line-height:1.25}

/* listas, cajas, tecnología, artículo */
.lista{display:grid;gap:12px}
.lista li{display:grid;grid-template-columns:16px 1fr;gap:12px;align-items:start}
.dest{width:14px;height:14px;fill:var(--morado);margin-top:6px}
.lista-2{grid-template-columns:1fr}
@media (min-width:768px){.lista-2{grid-template-columns:1fr 1fr;gap:14px 40px}}
.caja{background:var(--sup);border-radius:var(--r-caja);padding:28px 26px}
.sedes{display:grid;gap:20px}
@media (min-width:768px){.sedes{grid-template-columns:repeat(2,1fr)}}
.sede{border:1px solid var(--gris-cl);border-radius:var(--r-caja);padding:24px}
.sede a{font-weight:700;color:var(--morado)}
.tec-f{background:radial-gradient(75% 65% at 50% 42%,#FFFFFF 0%,#FFFFFF 38%,#D3D3D3 100%);border-radius:var(--r-caja);padding:32px}
.tec-f img{margin:0 auto;max-height:440px;width:auto;mix-blend-mode:multiply}
.art{max-width:720px}
.art .txt{max-width:65ch}
.art-f img{aspect-ratio:16/9}
.h-art{font-weight:700;font-size:1.25rem;line-height:1.3;color:var(--gris-osc);margin-top:40px}

/* FAQ */
.faq-grid{display:grid;gap:32px}
@media (min-width:1024px){.faq-grid{grid-template-columns:1fr 1.6fr;gap:72px}.faq-izq{position:sticky;top:100px;align-self:start}}
.faq-i{border-bottom:1px solid var(--gris-cl)}
.faq-i summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;cursor:pointer;font-weight:700;font-size:1.0625rem;list-style:none}
.faq-i summary::-webkit-details-marker{display:none}
.faq-ico{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--morado);color:var(--morado);display:grid;place-items:center;flex-shrink:0;transition:transform .25s}
.faq-ico .ico{width:18px;height:18px}
.faq-i[open] .faq-ico{transform:rotate(45deg)}
.faq-r{padding:0 0 20px;max-width:44rem}

/* bloque de contacto con el arco del manual */
.arco{position:relative;overflow:hidden;isolation:isolate;--sagita:clamp(72px,9vw,132px);padding-top:calc(var(--sagita) + 48px)}
.arco::before{content:'';position:absolute;z-index:-1;left:50%;top:0;width:max(980px,215%);aspect-ratio:1;border-radius:50%;background:var(--degradado);transform:translate(-50%,calc(-100% + var(--sagita)))}
.arco-dest{position:absolute;left:50%;top:calc(var(--sagita)*.26);width:36px;height:auto;transform:translateX(-50%);color:#fff;fill:#fff}
.cta-g{display:grid;gap:40px}
@media (min-width:1024px){.cta-g{grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}}
.datos{display:grid;gap:16px}
.datos li{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start}
.datos li>.ico{color:var(--morado);margin-top:3px}
.datos li>div{grid-column:2}
.datos li:not(:has(>.ico))>div{grid-column:1/-1}
.datos span{display:block;font-size:.8125rem;color:var(--gris-txt)}
.datos a,.datos b{font-weight:700;color:var(--gris-osc);text-decoration:none}
.datos a:hover{color:var(--morado);text-decoration:underline}
.form{background:#fff;color:var(--gris-osc);border:1px solid var(--gris-cl);border-radius:var(--r-caja);padding:26px 24px}
.form-g{display:grid;gap:14px}
@media (min-width:640px){.form-g{grid-template-columns:1fr 1fr}.campo-a{grid-column:span 2}}
.campo{display:grid;gap:6px}
.campo label{font-weight:700;font-size:.875rem}
.campo input,.campo select,.campo textarea{width:100%;border:1.5px solid var(--borde-campo);border-radius:var(--r-caja);padding:12px 14px;background:#fff;min-height:48px}
.campo input::placeholder,.campo textarea::placeholder{color:var(--gris-txt);opacity:1}
.campo input:focus-visible,.campo select:focus-visible,.campo textarea:focus-visible{outline:2px solid var(--foco);outline-offset:2px;border-color:var(--morado)}
[aria-invalid=true]{border:2px solid var(--error)!important}
.consent{display:grid;grid-template-columns:22px 1fr;gap:10px;margin:18px 0;font-size:.875rem;cursor:pointer;line-height:1.5}
.consent input{width:20px;height:20px;margin-top:2px;accent-color:var(--morado)}
.consent a{color:var(--morado)}
.form-err{background:var(--error-f);color:var(--error);border-radius:10px;padding:10px 14px;margin-bottom:14px;font-weight:700;font-size:.875rem}
.form .garantia{margin-top:14px}

/* migas */
.migas ol{display:flex;flex-wrap:wrap;gap:6px;font-size:.875rem;color:var(--gris-txt)}
.migas li+li::before{content:'/';margin-right:6px;color:var(--gris-cl)}
.migas a{text-decoration:none}.migas a:hover{color:var(--morado);text-decoration:underline}

/* pie */
.pie{--foco:#fff;background:var(--gris-osc);color:var(--gris-cl);padding:64px 0 110px;font-size:.9375rem}
@media (min-width:1024px){.pie{padding-bottom:40px}}
.pie .logo{height:40px}
.pie-grid{display:grid;gap:36px}
@media (min-width:1024px){.pie-grid{grid-template-columns:1.25fr 1fr 1fr 1.2fr}}
.pie-marca p{margin-top:14px;max-width:22rem}
.pie-t{font-weight:700;color:#fff;margin-bottom:12px}
.pie b{color:#fff}
.pie ul{display:grid;gap:6px}
.pie a{color:#fff;text-decoration:none}
.pie p a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:3px}
.pie a:hover{color:var(--rosa);text-decoration:underline}
.pie-cols{grid-template-columns:1fr 1fr;column-gap:16px}
@media (min-width:1024px){.pie-cols{grid-template-columns:1fr}}
.pie-redes{display:flex!important;flex-wrap:wrap;gap:8px!important;margin-top:16px}
.pie-redes a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid rgba(255,255,255,.3);border-radius:var(--r-pildora);font-size:.8125rem}
.pie-legal{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:6px;font-size:.8125rem}
@media (min-width:768px){.pie-legal{grid-template-columns:1fr auto}}
@media (pointer:coarse){.pie ul a,.pie p a,.migas a,.datos a,.sede a,.enlace{display:inline-flex;align-items:center;min-height:44px}}

/* barra fija del celular */
.barra-m{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:auto 1fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--gris-cl);transition:transform .2s,visibility .2s}
.barra-m.oculta,.barra-m.escribiendo{transform:translateY(110%);visibility:hidden}
.barra-m a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 14px;white-space:nowrap;border-radius:var(--r-pildora);text-decoration:none;font-weight:700;font-size:.9375rem}
.bm-tel{border:1.5px solid var(--gris-osc);color:var(--gris-osc)}
.bm-wa{background:var(--morado);color:#fff}
@media (min-width:1024px){.barra-m{display:none}}
