@font-face{font-family:'Schibsted Grotesk';src:url(fonts/schibsted-grotesk.woff2) format('woff2');font-weight:400 900;font-style:normal;font-display:swap}

:root{
--lienzo:#EDECED;--blanco:#FFFFFF;--roto:#F7F7F7;--linea:#D6D5D6;
--tinta:#0F1015;--texto:#1B1C21;--gris:#55565C;
--coral:#E8472A;
--fuente:'Schibsted Grotesk',system-ui,-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
--gutter:clamp(20px,5vw,64px);--pad:clamp(72px,9vw,140px);
--ease-out:cubic-bezier(0.23,1,0.32,1)
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;background:var(--lienzo)}
html.menu-abierto{overflow:hidden}
body{margin:0;background:var(--lienzo);color:var(--texto);font-family:var(--fuente);font-size:18px;line-height:1.5;letter-spacing:-.01em;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3,p,ul,ol,figure,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
h1,h2,h3{font-weight:800;color:var(--tinta);letter-spacing:-.047em;text-wrap:balance}
p{text-wrap:pretty}
::selection{background:var(--coral);color:var(--tinta)}
:focus-visible{outline:3px solid var(--tinta);outline-offset:3px;border-radius:4px}
.saltar{position:absolute;left:-9999px;top:12px;z-index:100;padding:12px 18px;border-radius:999px;background:var(--tinta);color:var(--blanco)}
.saltar:focus{left:12px}

.cont{width:min(100% - 2*var(--gutter),1320px);margin-inline:auto}
.sec{padding-top:var(--pad)}
main>.sec:last-child{padding-bottom:var(--pad)}
.acciones{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:clamp(28px,3vw,40px)}

.titulo{font-size:clamp(3rem,1.2rem + 6.4vw,8rem);line-height:.86;text-transform:uppercase;color:var(--coral)}
.gigante-pag{font-size:clamp(3rem,1rem + 7vw,8.5rem);line-height:.88;text-transform:uppercase;color:var(--coral)}
.sub{margin-top:14px;font-size:clamp(1.05rem,.9rem + .6vw,1.6rem);font-weight:500;line-height:1.1;letter-spacing:-.03em;text-transform:uppercase;color:var(--tinta)}
.cuerpo-grande{max-width:40rem;font-size:clamp(1.12rem,1rem + .5vw,1.5rem);line-height:1.4;color:var(--texto)}
.sub+.cuerpo-grande,.titulo+.cuerpo-grande,.gigante-pag+.cuerpo-grande{margin-top:clamp(24px,3vw,40px)}
.cuerpo-grande+.cuerpo-grande{margin-top:1em}
.remate,.mt-contactos{margin-top:clamp(28px,3vw,44px)}

.cab{position:relative;z-index:40;background:var(--lienzo);border-bottom:1px solid var(--linea)}
.cab .cont{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}
.marca{display:inline-flex;align-items:center;min-height:44px;font-size:1.1rem;font-weight:800;letter-spacing:-.047em;text-transform:uppercase;color:var(--tinta);text-decoration:none}
.nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,34px)}
.nav a:not(.btn){display:inline-flex;align-items:center;min-height:44px;font-size:1rem;font-weight:500;letter-spacing:-.02em;color:var(--tinta);text-decoration:none;transition:color 160ms ease}
.nav a[aria-current="page"]{color:var(--coral)}
.menu-boton{display:none}
.panel{display:none}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 28px;border:0;border-radius:999px;background:var(--tinta);color:var(--blanco);font-family:var(--fuente);font-size:1.02rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;text-align:center;text-decoration:none;cursor:pointer;transition:transform 160ms var(--ease-out),background-color 200ms ease,color 200ms ease;-webkit-tap-highlight-color:transparent}
.btn:active{transform:scale(.97)}
.btn svg{flex:none;width:18px;height:18px;transition:transform 220ms var(--ease-out)}
.btn-peq{min-height:46px;padding:0 20px;font-size:.95rem}
.btn-ancho{width:100%}
.enlace{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:800;letter-spacing:-.03em;text-transform:uppercase;color:var(--tinta);text-decoration:none;border-bottom:2px solid currentColor;transition:color 180ms ease}
.enlace svg{flex:none;width:18px;height:18px;transition:transform 220ms var(--ease-out)}

.heroe{position:relative;display:flex;min-height:clamp(640px,calc(100svh - 73px),920px);overflow:hidden}
.heroe-txt{display:flex;flex-direction:column;padding-block:clamp(28px,4vw,56px) clamp(36px,5vw,72px)}
.roles{display:flex;flex-wrap:wrap;gap:8px clamp(28px,8vw,150px);font-size:clamp(.88rem,.8rem + .3vw,1.12rem);font-weight:500;letter-spacing:-.03em;text-transform:uppercase;color:var(--tinta)}
.gigante{position:relative;z-index:1;margin-top:auto;padding-top:clamp(28px,4vw,56px);font-size:clamp(4.1rem,1rem + 12.6vw,12.6rem);line-height:.8;text-transform:uppercase;color:var(--coral)}
.linea{display:block;overflow:hidden;padding-top:.16em;margin-top:-.16em;padding-bottom:.02em}
.linea>span{display:block}
.l2{padding-left:.38em}
.heroe-pie{position:relative;z-index:3;display:grid;gap:20px;max-width:30rem;margin-top:clamp(28px,3.5vw,48px)}
.lema{font-size:clamp(1.2rem,1rem + .75vw,1.7rem);font-weight:700;line-height:1.02;letter-spacing:-.04em;text-transform:uppercase;color:var(--tinta)}
.redes{display:flex;gap:4px}
.redes a{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:999px;color:var(--tinta);transition:background-color 180ms ease}
.redes svg{width:28px;height:28px}
.recorte{position:absolute;right:0;bottom:0;z-index:2;width:auto;max-width:none;height:min(76%,700px);transform:scaleX(-1);pointer-events:none}
@media (max-width:899px){
.heroe{display:block;min-height:0}
.heroe-txt{padding-bottom:0}
.l2{padding-left:.16em}
.recorte{position:relative;width:min(94vw,540px);height:auto;margin:16px 0 0 auto}
}

.heroe-pag{padding-block:clamp(32px,5vw,72px) 0}
.bio{display:grid;gap:clamp(40px,6vw,96px);grid-template-columns:minmax(0,1fr);align-items:start}
@media (min-width:960px){.bio{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.bio.centrado{align-items:center}}
.bio .titulo{margin-bottom:clamp(8px,1vw,14px)}
.retrato{overflow:hidden;aspect-ratio:4/5;border-radius:clamp(28px,4vw,56px);background:var(--roto)}
.retrato.apaisado{aspect-ratio:5/4}
.retrato img{width:100%;height:100%;object-fit:cover}
.mosaico{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,1.2vw,16px)}
.mosaico>div{overflow:hidden;aspect-ratio:1/1;border-radius:clamp(18px,2.4vw,32px);background:var(--roto)}
.mosaico img{width:100%;height:100%;object-fit:cover}
@media (max-width:959px){.mosaico{max-width:520px}}
@media (max-width:959px){.retrato{max-width:520px}}
.datos-fila{display:flex;align-items:center;gap:18px;min-height:64px;margin-top:18px;font-size:clamp(1.05rem,.95rem + .4vw,1.35rem);font-weight:700;line-height:1.05;letter-spacing:-.04em;color:var(--tinta)}
.datos-fila svg{flex:none;width:44px;height:44px}

.cabeza{display:grid;gap:20px 48px;grid-template-columns:minmax(0,1fr);align-items:end;margin-bottom:clamp(40px,5vw,72px)}
@media (min-width:960px){.cabeza.partida{grid-template-columns:minmax(0,1fr) auto}}

.tarjetas{display:grid;gap:clamp(14px,1.6vw,24px);grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.tarjetas.t2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:600px) and (max-width:899px){.tarjetas.t4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.tarjetas.t3{grid-template-columns:repeat(3,minmax(0,1fr))}.tarjetas.t4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.tarjeta{display:flex;flex-direction:column;gap:14px;min-width:0;padding:clamp(24px,3vw,40px);border-radius:22px;background:var(--blanco)}
.tarjeta h3{font-size:clamp(1.3rem,1.1rem + .7vw,1.8rem);line-height:1;text-transform:uppercase}
.tarjeta p{color:var(--gris)}
.num-coral{font-size:clamp(3rem,2rem + 3vw,5.4rem);font-weight:800;line-height:.8;letter-spacing:-.06em;color:var(--coral)}
.frase{font-size:clamp(1.35rem,1.1rem + .9vw,2rem);font-weight:700;line-height:1.08;letter-spacing:-.04em}
.tarjeta p.frase{color:var(--tinta)}
.tarjeta .foto-tarjeta{overflow:hidden;aspect-ratio:1/1;margin-bottom:6px;border-radius:14px;background:var(--roto)}
.foto-tarjeta img{width:100%;height:100%;object-fit:cover}
.tarjeta .datos-caso,.datos-caso{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:4px;font-size:.92rem;font-weight:700;letter-spacing:-.02em;text-transform:uppercase;color:var(--tinta)}
.datos-caso span{color:var(--coral)}

.lista li{position:relative;padding:10px 0 10px 28px;border-top:1px solid #E6E6E6}
.lista li::before{content:'';position:absolute;left:2px;top:18px;width:12px;height:7px;border-left:2px solid var(--coral);border-bottom:2px solid var(--coral);transform:rotate(-45deg)}
.lista.no li{color:var(--gris)}
.lista.no li::before{content:' D7';top:7px;left:1px;width:auto;height:auto;border:0;transform:none;font-size:1.25rem;font-weight:700;line-height:1;color:var(--gris)}

.muro{display:grid;gap:clamp(28px,5vw,72px) clamp(14px,3vw,44px);grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:900px){.muro{grid-template-columns:repeat(4,minmax(0,1fr))}}
.foto-muro{overflow:hidden;aspect-ratio:3/4;background:var(--roto)}
.foto-muro img{width:100%;height:100%;object-fit:cover;transition:transform 700ms var(--ease-out)}
.muro figcaption{margin-top:16px;text-align:center}
.muro strong{display:block;font-size:clamp(1rem,.85rem + .55vw,1.45rem);font-weight:800;line-height:1;letter-spacing:-.047em;text-transform:uppercase;color:var(--tinta)}
.muro figcaption span{display:block;margin-top:6px;font-size:.95rem;color:var(--gris)}

.numeros{display:grid;gap:36px 64px;grid-template-columns:minmax(0,1fr);align-items:center;padding-bottom:clamp(40px,5vw,64px);border-bottom:2px solid var(--tinta)}
@media (min-width:960px){.numeros{grid-template-columns:minmax(0,1fr) auto}}
.perfil{display:flex;align-items:center;gap:clamp(18px,2.5vw,32px)}
.redondo{flex:none;overflow:hidden;width:clamp(96px,10vw,140px);aspect-ratio:1/1;border-radius:50%;background:var(--roto)}
.redondo.grande{width:clamp(180px,20vw,280px)}
.redondo img{width:100%;height:100%;object-fit:cover}
.perfil ul{font-size:clamp(1.1rem,.95rem + .6vw,1.55rem);font-weight:800;line-height:1.12;letter-spacing:-.047em;text-transform:uppercase;color:var(--tinta)}
.perfil ul a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}

.planes-t .vip{background:var(--coral)}
.tarjeta .plan-nombre,.plan-nombre{font-size:1.3rem;font-weight:800;letter-spacing:-.04em;text-transform:uppercase;color:var(--tinta)}
.tarjeta .plan-nota,.plan-nota{margin-top:2px;font-size:.95rem;font-weight:700;color:var(--tinta)}
.tarjeta .precio,.precio{font-size:clamp(3.4rem,2.4rem + 3vw,5.8rem);font-weight:800;line-height:.85;letter-spacing:-.06em;color:var(--tinta)}
.precio small{margin-left:6px;font-size:1rem;font-weight:600;letter-spacing:-.02em;color:var(--gris)}
.vip .precio small,.planes-t .vip .lista li{color:var(--tinta)}
.planes-t .vip .lista li{border-top-color:rgba(15,16,21,.18)}
.planes-t .vip .lista li::before{border-color:var(--tinta)}
.tarjeta .btn{margin-top:auto}
.aviso-planes{margin-top:18px;font-size:.95rem;color:var(--gris)}

.pilares>li{display:grid;gap:12px clamp(24px,4vw,64px);grid-template-columns:minmax(0,1fr);padding-block:clamp(32px,4vw,56px);border-top:2px solid var(--tinta)}
@media (min-width:900px){.pilares>li{grid-template-columns:minmax(0,3fr) minmax(0,5fr) minmax(0,4fr);align-items:start}}
.pilares .num-coral{font-size:clamp(5rem,3rem + 7vw,11rem)}
.pilares h3{margin-bottom:12px;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.6rem);line-height:.95;text-transform:uppercase}
.pilares p{font-size:clamp(1.05rem,1rem + .3vw,1.25rem);color:var(--gris)}

.cita{font-size:clamp(1.9rem,1.2rem + 2.6vw,3.6rem);font-weight:800;line-height:.95;letter-spacing:-.047em;text-transform:uppercase;color:var(--tinta)}
.cita::before{content:'«';color:var(--coral)}
.cita::after{content:'»';color:var(--coral)}

.contactos{border-bottom:2px solid var(--tinta)}
.contactos a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:88px;padding-block:14px;border-top:2px solid var(--tinta);text-decoration:none;transition:color 180ms ease}
.contactos span{display:block;font-size:.95rem;font-weight:500;letter-spacing:-.02em;color:var(--gris)}
.contactos strong{display:block;font-size:clamp(1.3rem,1rem + 1.3vw,2.2rem);font-weight:800;line-height:1;letter-spacing:-.047em;text-transform:uppercase;overflow-wrap:anywhere}
.contactos svg{flex:none;width:28px;height:28px;transition:transform 220ms var(--ease-out)}

.tabla-env{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:22px;background:var(--blanco)}
.tabla{width:100%;min-width:680px;border-collapse:collapse;font-size:1rem}
.tabla th,.tabla td{padding:18px 22px;text-align:left;vertical-align:top;border-top:1px solid #EAEAEA}
.tabla thead th,.tabla thead td{padding-top:26px;border-top:0;font-size:1.15rem;font-weight:800;letter-spacing:-.04em;text-transform:uppercase;color:var(--tinta)}
.tabla thead .vip{color:var(--coral)}
.tabla tbody th{font-weight:600;color:var(--gris)}
.tabla tbody th,.tabla thead td:first-child{position:sticky;left:0;z-index:1;background:var(--blanco)}
@media (max-width:700px){.tabla tbody th,.tabla thead td:first-child{min-width:130px;max-width:130px;padding-inline:14px}}
.desliza{display:none;margin-bottom:12px;font-size:.95rem;color:var(--gris)}
@media (max-width:760px){.desliza{display:block}}

.preguntas{display:grid;gap:10px}
.preguntas details{border-radius:18px;background:var(--blanco)}
.preguntas summary{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:18px 24px;list-style:none;cursor:pointer;font-size:clamp(1.05rem,.95rem + .45vw,1.35rem);font-weight:700;letter-spacing:-.03em;color:var(--tinta)}
.preguntas summary::-webkit-details-marker{display:none}
.preguntas summary i{position:relative;flex:none;width:18px;height:18px;color:var(--coral)}
.preguntas summary i::before,.preguntas summary i::after{content:'';position:absolute;left:0;right:0;top:50%;height:2.5px;margin-top:-1.25px;background:currentColor;transition:transform 220ms var(--ease-out)}
.preguntas summary i::after{transform:rotate(90deg)}
.preguntas details[open] summary i::after{transform:rotate(0deg)}
.preguntas details p{max-width:48rem;padding:0 24px 24px;color:var(--gris)}

.cierre-foto{position:relative;overflow:hidden;margin-top:var(--pad);color:var(--blanco)}
.cierre-foto>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cierre-foto::after{content:'';position:absolute;inset:0;background:rgba(15,16,21,.34)}
.cierre-foto .cont{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-height:clamp(520px,58vw,760px);padding-block:clamp(48px,6vw,88px)}
.cierre-foto h2{font-size:clamp(3.2rem,.6rem + 10.4vw,11rem);line-height:.84;text-align:center;text-transform:uppercase;color:var(--blanco)}
.tarjeta-contacto{display:grid;justify-items:center;gap:12px;align-self:flex-end;width:min(100%,24rem);padding:28px 32px;border-radius:28px;background:var(--lienzo);color:var(--tinta);text-align:center}
.tarjeta-contacto strong{font-size:1.5rem;font-weight:800;letter-spacing:-.047em;text-transform:uppercase}
.tarjeta-contacto .tel{display:inline-flex;align-items:center;min-height:44px;font-size:1.1rem;font-weight:700;text-decoration:none}
.tarjeta-contacto .btn{margin-top:6px}
@media (max-width:700px){.tarjeta-contacto{align-self:stretch;width:auto}}

.formulario{padding:clamp(24px,3.5vw,44px);border-radius:28px;background:var(--blanco)}
.formulario h2{margin-bottom:24px;font-size:clamp(1.8rem,1.3rem + 1.4vw,2.6rem);line-height:.9;text-transform:uppercase}
.campo{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;border:0}
.campo+.campo{margin-top:22px}
.campo label,.campo legend{padding:0;font-size:.98rem;font-weight:700;letter-spacing:-.02em;color:var(--tinta)}
.campo legend{margin-bottom:8px}
.campo small{font-weight:500;color:var(--gris)}
.campo input[type="text"],.campo select,.campo textarea{width:100%;min-height:56px;padding:14px 18px;font:inherit;font-size:17px;color:var(--tinta);background:var(--lienzo);border:2px solid transparent;border-radius:14px;transition:border-color 160ms ease}
.campo select{appearance:none;-webkit-appearance:none;padding-right:48px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%230F1015' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center}
.campo textarea{min-height:120px;resize:vertical}
.campo input[type="text"]:focus-visible,.campo select:focus-visible,.campo textarea:focus-visible{outline:3px solid var(--tinta);outline-offset:1px}
.opciones{display:grid;gap:8px}
.opcion{position:relative;display:block}
.opcion input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.opcion span{display:flex;align-items:center;gap:14px;min-height:56px;padding:10px 18px;background:var(--lienzo);border:2px solid transparent;border-radius:14px;font-weight:500;transition:border-color 160ms ease,background-color 160ms ease}
.opcion span::before{content:'';flex:none;width:20px;height:20px;border:2px solid var(--gris);border-radius:50%}
.opcion input:checked+span{background:var(--blanco);border-color:var(--tinta)}
.opcion input:checked+span::before{border-color:var(--coral);background:radial-gradient(circle,var(--coral) 0 5px,transparent 5.5px)}
.opcion input:focus-visible+span{outline:3px solid var(--tinta);outline-offset:2px}
.error{min-height:1.5em;margin-top:16px;font-size:.95rem;font-weight:600;color:#B42318}
.formulario .btn{margin-top:8px}
.nota-form{margin-top:14px;font-size:.9rem;text-align:center;color:var(--gris)}

.pie{padding-block:clamp(56px,7vw,88px) 12px;background:var(--tinta);color:#C9CACE}
.pie-rejilla{display:grid;gap:40px;grid-template-columns:minmax(0,1fr)}
@media (min-width:820px){.pie-rejilla{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}}
.pie .marca{font-size:clamp(2.2rem,1rem + 4vw,4.6rem);line-height:.85;color:var(--blanco)}
.pie p{margin-top:14px}
.pie h3{margin-bottom:8px;font-size:.9rem;font-weight:700;letter-spacing:-.02em;text-transform:uppercase;color:var(--blanco)}
.pie ul a{display:inline-flex;align-items:center;min-height:44px;color:#C9CACE;text-decoration:none;transition:color 160ms ease}
.pie .btn{background:var(--coral);color:var(--tinta)}
.pie :focus-visible{outline-color:var(--blanco)}
.pie-final{margin-top:48px;padding-top:16px;border-top:1px solid #2A2B31;font-size:.85rem;text-align:center;color:#9A9BA1}
.pie-final p{margin:0}
.pie-final a{display:inline-flex;align-items:center;min-height:44px;color:#9A9BA1}

.flota{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:30;transform:translateY(calc(100% + 28px));transition:transform 320ms var(--ease-out)}
.flota.visible{transform:none}
.flota .btn{width:100%}
@media (min-width:960px){.flota{display:none}}

.js .entra{opacity:0;transform:translateY(16px);transition:opacity 700ms var(--ease-out),transform 700ms var(--ease-out)}
.js .entra.dentro{opacity:1;transform:none}
.js .d1{transition-delay:70ms}.js .d2{transition-delay:140ms}.js .d3{transition-delay:210ms}.js .d4{transition-delay:280ms}
.js .linea>span{animation:subir 900ms var(--ease-out) both}
.js .l2>span{animation-delay:100ms}
.js .recorte{animation:aparecer 1000ms var(--ease-out) 220ms both}
@keyframes subir{from{transform:translateY(105%)}to{transform:none}}
@keyframes aparecer{from{opacity:0;transform:scaleX(-1) translateY(32px)}to{opacity:1;transform:scaleX(-1)}}

@media (hover:hover) and (pointer:fine){
.nav a:not(.btn):hover{color:var(--coral)}
.btn:hover{background:var(--coral);color:var(--tinta)}
.btn:hover svg,.enlace:hover svg,.contactos a:hover svg{transform:translateX(4px)}
.enlace:hover,.contactos a:hover{color:var(--coral)}
.redes a:hover{background:var(--blanco)}
.muro figure:hover img{transform:scale(1.04)}
.planes-t .vip .btn:hover,.pie .btn:hover{background:var(--blanco);color:var(--tinta)}
.pie ul a:hover{color:var(--blanco)}
}

@media (max-width:1079px){
.cab .nav{display:none}
.menu-boton{position:relative;z-index:60;display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 4px;background:none;border:0;font:inherit;font-weight:800;letter-spacing:-.03em;text-transform:uppercase;color:var(--tinta);cursor:pointer}
.menu-boton i{position:relative;display:block;width:24px;height:10px}
.menu-boton i::before,.menu-boton i::after{content:'';position:absolute;left:0;right:0;height:2px;background:currentColor;transition:transform 240ms var(--ease-out)}
.menu-boton i::before{top:0}
.menu-boton i::after{bottom:0}
.menu-boton[aria-expanded="true"] i::before{transform:translateY(4px) rotate(45deg)}
.menu-boton[aria-expanded="true"] i::after{transform:translateY(-4px) rotate(-45deg)}
.panel{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;overflow-y:auto;padding:96px var(--gutter) 28px;background:var(--coral);clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path 380ms var(--ease-out),visibility 0s 380ms}
.panel.abierto{clip-path:inset(0);visibility:visible;transition:clip-path 460ms var(--ease-out),visibility 0s}
.panel a:not(.btn){display:flex;align-items:center;min-height:64px;font-size:clamp(2.3rem,10vw,4rem);font-weight:800;line-height:.9;letter-spacing:-.047em;text-transform:uppercase;color:var(--tinta);text-decoration:none}
.panel a[aria-current="page"]{color:var(--blanco)}
.panel .btn{margin-top:auto;padding-top:0}
}
@media (max-width:599px){.cab .btn-escritorio{display:none}}

@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*::before,*::after{transition-duration:1ms!important;animation-duration:1ms!important}
}
