/* BEILITE Martillos Hidráulicos — maquetación v1 (Gato Fusión) */
@font-face{font-family:"Myriad";src:url(../fonts/myriad-light.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Myriad";src:url(../fonts/myriad-regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Myriad";src:url(../fonts/myriad-semibold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Myriad";src:url(../fonts/myriad-bold.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --navy:#051827;
  --navy-2:#0b2233;
  --orange:#E0601F;
  --orange-2:#c9531a;
  --gray:#6d7075;
  --gray-2:#8a8d91;
  --gray-bg:#e6e6e6;
  --light:#f3f3f3;
  --ink:#111;
  --text:#2a2a2a;
  --muted:#5b5b5b;
  --wrap:1560px;
  --gut:clamp(16px,4vw,48px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{overflow-x:clip;margin:0;font-family:"Myriad","Myriad Pro","Segoe UI",Arial,sans-serif;font-weight:400;color:var(--text);background:#fff;line-height:1.35;font-size:clamp(16px,1.05vw,19px)}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{margin:0;line-height:1.05;font-weight:700;color:var(--ink)}
p{margin:0 0 1em}
.wrap{width:100%;max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut)}
.o{color:var(--orange)}
.eyebrow{display:block;font-weight:400;letter-spacing:.32em;text-transform:uppercase;font-size:clamp(13px,1vw,17px);color:#444;margin-bottom:.35em}
.h2{font-size:clamp(30px,2.9vw,52px)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ico{width:1em;height:1em;display:inline-block;vertical-align:-.12em;fill:currentColor;flex:none}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:stretch;font-weight:700;border:0;cursor:pointer;background:var(--orange);color:#fff;font-size:clamp(15px,1.15vw,21px);transition:background .2s,color .2s,transform .2s}
.btn span{padding:.55em 1.1em;display:flex;align-items:center}
.btn i{display:flex;align-items:center;justify-content:center;padding:0 .75em;border-left:2px solid rgba(255,255,255,.9);font-style:normal}
.btn i svg{width:1.25em;height:1.25em}
.btn .wi{padding:0;width:1.3em;height:1.3em;display:inline-flex;margin-right:.45em}
.btn .wi svg{width:100%;height:100%}
.btn:hover{background:var(--orange-2)}
.btn--line{background:transparent;border:1.5px solid #fff}
.btn--line i{border-left:1.5px solid #fff}
.btn--line:hover{background:#fff;color:var(--orange)}
.btn--line:hover i{border-color:var(--orange)}
.btn--sm{font-size:12px}
.btn--sm span{padding:.45em .9em}
.btn--sm i{padding:0 .5em;border-left-width:1.5px}

/* ---------- Header ---------- */
.hdr{position:relative;z-index:50;background:var(--navy);color:#fff}
.hdr__top{display:flex;align-items:center;justify-content:space-between;min-height:clamp(64px,5.8vw,112px);gap:24px}
.hdr__logo img{height:clamp(44px,4.1vw,80px);width:auto}
.hdr__links{display:flex;gap:clamp(14px,1.6vw,30px);font-weight:600;font-size:clamp(14px,1.2vw,22px)}
.hdr__links a{display:flex;align-items:center;gap:.35em;transition:color .2s}
.hdr__links a:hover{color:var(--orange)}
.hdr__links .ico{width:1.1em;height:1.1em}
.hdr__strip{height:clamp(28px,4vw,76px);border-top:1px solid rgba(255,255,255,.55);background:linear-gradient(180deg,#0a1a29 0%,#16324b 100%)}
.nav{background:#fff;color:var(--ink);box-shadow:0 1px 0 rgba(0,0,0,.06)}
.nav__list{display:flex;justify-content:center;gap:clamp(40px,6.5vw,130px);list-style:none;margin:0;padding:0}
.nav__list>li{position:relative}
.nav__list>li>a{display:block;padding:clamp(12px,1vw,18px) 0;font-weight:600;font-size:clamp(15px,1.25vw,23px);transition:color .2s}
.nav__list>li>a:hover,.nav__list>li:hover>a,.nav__list>li>a.is-on{color:var(--orange)}
.drop{position:absolute;left:-32px;top:100%;min-width:320px;background:#fff;padding:18px 32px 20px 52px;box-shadow:0 18px 40px rgba(0,0,0,.18);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}
.nav__list>li:hover .drop,.nav__list>li:focus-within .drop{opacity:1;visibility:visible;transform:none}
.drop b{display:flex;align-items:center;gap:6px;font-size:clamp(17px,1.25vw,23px);margin-bottom:6px;color:var(--ink)}
.drop a{display:block;position:relative;font-weight:300;font-size:clamp(16px,1.2vw,22px);padding:3px 0;color:#444}
.drop a::before{content:"";position:absolute;left:-52px;top:2px;bottom:2px;width:12px;background:var(--orange);opacity:0;transition:.15s}
.drop a:hover{font-weight:600;color:var(--ink)}
.drop a:hover::before{opacity:1}
.burger{display:none;background:none;border:0;color:#fff;padding:8px;cursor:pointer}
.burger svg{width:30px;height:30px}

/* Header compacto (páginas internas) */
.hdr--in .hdr__top{border-bottom:1px solid rgba(255,255,255,.5)}
.hdr--in .hdr__links{gap:22px}
.hdr--in .hdr__links a span{display:none}
.hdr--in .hdr__links .ico{width:22px;height:22px}
.hdr--over{position:absolute;inset:0 0 auto 0;background:transparent}
.hdr--over .hdr__top{border-bottom:0}

/* Menú móvil */
.hdr-fix{position:fixed;inset:0 0 auto 0;z-index:90;background:var(--navy);color:#fff;box-shadow:0 4px 18px rgba(0,0,0,.25);transform:translateY(-105%);transition:transform .3s ease;visibility:hidden}
.hdr-fix.is-on{transform:none;visibility:visible}
.hdr-fix .hdr__top{min-height:clamp(58px,4.4vw,80px)}
.hdr-fix .hdr__logo img{height:clamp(38px,3vw,56px)}
.hdr-fix .hdr__links{font-size:clamp(14px,1vw,18px)}
.mnav{position:fixed;inset:0;z-index:100;background:var(--navy);color:#fff;padding:22px var(--gut);transform:translateX(100%);transition:transform .3s;overflow:auto;display:flex;flex-direction:column;gap:6px}
.mnav.is-open{transform:none}
.mnav__close{align-self:flex-end;background:none;border:0;color:#fff;cursor:pointer;padding:6px}
.mnav__close svg{width:30px;height:30px}
.mnav a{font-size:20px;font-weight:600;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.mnav .sub{padding-left:16px;font-weight:300;font-size:18px}
.mnav .sm{font-weight:400;font-size:17px;display:flex;gap:10px;align-items:center}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;color:#fff;background:#051827 url(../img/hero.jpg) center bottom/cover no-repeat;min-height:clamp(460px,45vw,870px);display:flex;align-items:center}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(5,24,39,.2),rgba(5,24,39,.45) 45%,rgba(5,24,39,.72))}
.hero__in{position:relative;z-index:2}
.hero__in{display:flex;justify-content:flex-end;width:100%}
.hero__box{width:min(44vw,860px);margin-right:clamp(-40px,-1.6vw,0px)}
.hero h1{color:#fff;font-size:clamp(38px,3.9vw,80px);line-height:1.02;margin-bottom:clamp(20px,2.2vw,42px);text-shadow:0 2px 20px rgba(0,30,60,.25)}
.hero__card{background:var(--orange);padding:clamp(20px,1.6vw,30px) clamp(22px,1.7vw,32px);max-width:620px}
.hero__card p{font-weight:300;font-size:clamp(19px,1.95vw,37px);line-height:1.17;margin-bottom:.6em}

/* ---------- Serie ---------- */
.serie{padding:clamp(40px,4vw,70px) 0 clamp(50px,6vw,110px);text-align:center}
.serie .h2{font-size:clamp(30px,2.6vw,50px);max-width:760px;margin:0 auto}
.serie__pill{display:inline-block;background:var(--orange);color:#fff;font-weight:300;font-size:clamp(15px,1.3vw,24px);line-height:1.6;padding:.35em 2.2em;margin:clamp(22px,2.3vw,42px) 0 clamp(36px,3.5vw,68px)}
.serie__pill b{font-weight:700}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.9vw,56px);text-align:left}
/* Series: banda gris con 3 tarjetas; el botón despliega el carrusel de modelos de esa serie */
.serie:has(.series){padding-bottom:0}
.series{display:grid;grid-template-columns:clamp(64px,7.6vw,146px) minmax(0,1fr);background:#767a80;text-align:left}
.series__side{background:var(--navy);display:flex;align-items:center;justify-content:center;padding:clamp(30px,3vw,60px) 0}
.series__side h3{writing-mode:vertical-rl;transform:rotate(180deg);color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(22px,2.3vw,46px);line-height:1;white-space:nowrap;padding-top:1.2em;border-top:clamp(4px,.3vw,6px) solid var(--orange);margin:0}
.series__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.8vw,56px);padding:clamp(28px,2.6vw,50px) clamp(20px,5.4vw,104px)}
.sx{order:var(--o);display:flex;border-left:clamp(6px,.45vw,9px) solid var(--orange);box-shadow:0 12px 30px rgba(0,0,0,.18)}
.sx__panel{position:relative;flex:1;display:flex;flex-direction:column;min-height:clamp(340px,27vw,520px);background:#03101b center bottom/100% auto no-repeat;color:#fff;padding:clamp(18px,1.6vw,30px) clamp(16px,1.4vw,26px) clamp(16px,1.4vw,26px)}
.sx__panel::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#03101b 0,rgba(3,16,27,.9) 22%,rgba(3,16,27,.35) 34%,rgba(3,16,27,0) 44%)}
.sx ul{text-shadow:0 1px 6px rgba(3,16,27,.7)}
.sx__panel>*{position:relative}
.sx h3{color:#fff;text-transform:uppercase;letter-spacing:.1em;font-size:clamp(22px,1.95vw,38px);line-height:1.05;margin:0}
.sx ul{margin:clamp(14px,1.3vw,26px) 0 0;padding-left:1.05em;font-weight:300;font-size:clamp(14px,1.12vw,20px);line-height:1.25}
.sx li{margin-bottom:.15em}
.sx__btn{align-self:flex-end;margin-top:auto;display:inline-flex;align-items:stretch;background:var(--orange);color:#fff;font-weight:700;font-size:clamp(15px,1.15vw,22px);border:0;cursor:pointer;transition:background .2s}
.sx__btn span{padding:.6em 1.1em;white-space:nowrap}
.sx__btn i{display:flex;align-items:center;justify-content:center;width:2.9em;border-left:2px solid rgba(255,255,255,.85)}
.sx__btn svg{width:1.2em;height:1.2em;transition:transform .25s}
.sx__btn:hover{background:var(--orange-2)}
.sx__btn:hover svg{transform:translateX(4px)}
.sx__btn[aria-expanded=true] svg{transform:rotate(90deg)}
.sx.is-on{outline:4px solid var(--orange);outline-offset:-4px}
.sxm{order:var(--o);grid-column:1/-1;background:var(--light);box-shadow:0 12px 30px rgba(0,0,0,.18);animation:sxm .35s ease}
@keyframes sxm{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.sxm[hidden]{display:none}
.sxm__head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:clamp(16px,1.4vw,26px) clamp(20px,1.8vw,34px) 0}
.sxm__head h4{text-transform:uppercase;letter-spacing:.06em;font-size:clamp(18px,1.4vw,26px);margin:0}
.sxm__head h4 span{color:var(--orange);margin-left:.4em}
.sxm__head a{display:inline-flex;align-items:center;gap:.5em;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.sxm__head a svg{width:1.1em;height:1.1em}
.sxm__head a:hover{color:var(--orange)}
@media (min-width:1101px){.sx{order:0}.sxm{order:1}}
@media (max-width:1100px){.series__grid{grid-template-columns:minmax(0,1fr);max-width:620px}.sx__panel{min-height:380px}}
@media (max-width:700px){.series{grid-template-columns:minmax(0,1fr)}.series__side{padding:18px var(--gut)}.series__side h3{writing-mode:horizontal-tb;transform:none;padding:0 0 .4em;border-top:0;border-bottom:4px solid var(--orange);font-size:24px}.series__grid{padding:22px var(--gut)}}
/* Series: una fila por serie (bloque de color + carrusel de modelos) */
.srow{display:grid;grid-template-columns:clamp(230px,20vw,380px) minmax(0,1fr);text-align:left;background:var(--light);box-shadow:0 10px 30px rgba(0,0,0,.06)}
.srow+.srow{margin-top:clamp(18px,1.8vw,32px)}
.srow__lead{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:clamp(24px,2.2vw,42px) clamp(22px,2vw,38px);display:flex;flex-direction:column}
.srow--m .srow__lead{background:var(--gray)}
.srow--g .srow__lead{background:var(--orange)}
.srow__lead h3{color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(22px,1.8vw,34px);line-height:1.1}
.srow__lead h3::after{content:"";display:block;width:2.2em;height:4px;background:var(--orange);margin-top:.45em}
.srow--g .srow__lead h3::after{background:var(--navy)}
.srow__rng{display:block;margin-top:.7em;font-size:clamp(17px,1.25vw,24px)}
.srow__lead ul{margin:.8em 0 0;padding-left:1.1em;font-weight:300;font-size:clamp(14px,.9vw,17px);line-height:1.3}
.srow__lead li{margin-bottom:.3em}
.srow__lead li::marker{color:var(--orange)}
.srow--g .srow__lead li::marker{color:var(--navy)}
.srow__all{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.5em;margin-top:1.2em;font-weight:700;font-size:clamp(14px,.95vw,17px);color:#fff;text-decoration:underline;text-underline-offset:3px}
.srow__all svg{width:1.1em;height:1.1em;transition:transform .2s}
.srow__all:hover svg{transform:translateX(4px)}
.srow__mark{margin-top:auto;padding-top:24px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(38px,3.4vw,66px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.3);white-space:nowrap}
.srow__car{position:relative;min-width:0;display:flex;align-items:center;padding:clamp(18px,1.6vw,30px) clamp(8px,.8vw,14px)}
.srow__track{flex:1;min-width:0;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*clamp(12px,1.2vw,22px))/4);gap:clamp(12px,1.2vw,22px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 2px}
.srow__track::-webkit-scrollbar{display:none}
.srow__track .pcard{scroll-snap-align:start;background:#fff}
.srow__nav{flex:0 0 auto;width:clamp(34px,2.4vw,44px);aspect-ratio:1;display:flex;align-items:center;justify-content:center;color:var(--ink);transition:color .2s,opacity .2s}
.srow__nav:hover{color:var(--orange)}
.srow__nav svg{width:70%;height:70%}
.srow__nav[disabled]{opacity:.25;cursor:default}
/* Series disponibles: banda horizontal (navy + gris claro) */
.sband{display:grid;grid-template-columns:clamp(220px,19vw,360px) 1fr;text-align:left;background:var(--light);box-shadow:0 10px 30px rgba(0,0,0,.06)}
.sband__lead{position:relative;overflow:hidden;background:var(--navy);color:#fff;padding:clamp(26px,2.6vw,50px) clamp(22px,2.2vw,42px);display:flex;flex-direction:column}
.sband__lead h3{color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(22px,1.9vw,36px);line-height:1.15}
.sband__lead h3::after{content:"";display:block;width:2.4em;height:4px;background:var(--orange);margin-top:.5em}
.sband__mark{margin-top:auto;padding-top:30px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:clamp(38px,3.6vw,70px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.28);white-space:nowrap}
.sband__items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.sitem{display:flex;flex-direction:column;padding:clamp(20px,1.9vw,36px) clamp(16px,1.6vw,30px);color:var(--ink);transition:background .25s}
.sitem+.sitem{border-left:1px solid #d2d2d2}
.sitem:hover{background:#e6e6e6}
.sitem ul{margin:0 0 clamp(14px,1.3vw,22px);padding-left:1.1em;font-weight:300;font-size:clamp(14px,.95vw,18px);line-height:1.3;flex:1}
.sitem li{margin-bottom:.3em}
.sitem li::marker{color:var(--orange)}
.sitem__img{aspect-ratio:4/3;overflow:hidden;background:var(--navy);border-top:4px solid var(--navy)}
.sitem--m .sitem__img{border-color:var(--gray)}
.sitem--g .sitem__img{border-color:var(--orange)}
.sitem__img img{width:100%;height:100%;object-fit:cover;object-position:center 100%;transition:transform .6s}
.sitem:hover .sitem__img img{transform:scale(1.05)}
.sitem__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:clamp(12px,1vw,18px)}
.sitem__foot small{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(13px,.85vw,16px);color:#555}
.sitem__foot b{display:block;font-size:clamp(19px,1.45vw,28px);line-height:1.1}
.sitem__foot i{flex:0 0 auto;width:clamp(38px,2.7vw,50px);aspect-ratio:1;background:var(--orange);display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}
.sitem__foot i svg{width:48%;height:48%;color:#fff}
.sitem:hover .sitem__foot i{background:var(--orange-2);transform:translateX(4px)}
.scard{position:relative;display:flex;flex-direction:column;background:var(--light);color:var(--ink);overflow:hidden;transition:box-shadow .25s,transform .25s}
.scard:hover{box-shadow:0 14px 34px rgba(0,0,0,.16);transform:translateY(-4px)}
.scard__head{background:var(--navy);color:#fff;font-size:clamp(20px,1.7vw,32px);letter-spacing:.08em;text-transform:uppercase;padding:.7em .9em .6em}
.scard--m .scard__head{background:var(--gray)}
.scard--g .scard__head{background:var(--orange)}
.scard__row{display:flex;flex:1}
.scard__tag{flex:0 0 clamp(44px,3.6vw,66px);background:#dcdcdc;display:flex;align-items:center;justify-content:center}
.scard__tag span{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:700;letter-spacing:.06em;font-size:clamp(16px,1.35vw,26px);white-space:nowrap;color:var(--ink)}
.scard__body{position:relative;flex:1;display:flex;flex-direction:column;padding:0 0 clamp(18px,1.6vw,30px)}
.scard__img{aspect-ratio:4/3;overflow:hidden;background:var(--navy)}
.scard__img img{width:100%;height:100%;object-fit:cover;object-position:center 88%;transition:transform .6s}
.scard:hover .scard__img img{transform:scale(1.05)}
.scard ul{margin:clamp(14px,1.3vw,24px) 0 0;padding:0 clamp(64px,5vw,96px) 0 clamp(26px,2vw,40px);font-weight:300;font-size:clamp(15px,1.1vw,20px);line-height:1.3}
.scard li{margin-bottom:.35em}
.scard li::marker{color:var(--orange)}
.scard__go{position:absolute;right:clamp(14px,1.2vw,22px);bottom:clamp(14px,1.2vw,22px);width:clamp(40px,3vw,56px);aspect-ratio:1;background:var(--orange);display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}
.scard__go svg{width:48%;height:48%;color:#fff}
.scard:hover .scard__go{background:var(--orange-2);transform:translateX(4px)}

/* ---------- Por qué ---------- */
.why{padding:clamp(20px,2vw,40px) 0 clamp(50px,5vw,100px)}
.why__in{max-width:1330px;margin:0 auto}
.why .h2{font-size:clamp(32px,2.9vw,54px);margin-bottom:.55em}
.why__cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2vw,44px);font-size:clamp(17px,1.4vw,26px);line-height:1.25}
.why__cols p:last-child{font-weight:300}
.why__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,2vw,44px);margin-top:.9em}
.why__grid{align-items:stretch}
.video{position:relative;background:#111;overflow:hidden;min-height:100%}
.video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.video__btn{position:absolute;inset:0;border:0;padding:0;background:rgba(0,0,0,.15);cursor:pointer;transition:background .2s;z-index:1}
.video__btn:hover{background:rgba(0,0,0,0)}
.video.is-playing .video__btn{display:none}
.video__play{position:absolute;inset:0;margin:auto;width:25%;aspect-ratio:1;border:5px solid rgba(255,255,255,.85);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .2s}
.video__play svg{width:46%;height:46%;margin-left:10%;color:rgba(255,255,255,.9)}
.video__btn:hover .video__play{transform:scale(1.07)}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,.6vw,12px)}
.stat{aspect-ratio:1;padding:clamp(14px,1.4vw,28px);display:flex;flex-direction:column;justify-content:space-between;font-weight:700;text-transform:uppercase;font-size:clamp(13px,1.25vw,24px);line-height:1.2}
.stat big{font-size:clamp(46px,4.9vw,94px);line-height:.9;letter-spacing:-.01em}
.stat--o{background:var(--orange);color:#fff}
.stat--n{background:var(--navy);color:#fff}
.stat--g{background:var(--gray-2);color:#fff}
.stat--l{background:var(--light);color:var(--ink)}
.stat--l big{color:var(--orange);display:flex;align-items:flex-end;gap:.18em}
.stat--l big small{font-size:clamp(13px,1.25vw,24px);color:var(--ink);line-height:1.4}
.why__foot{text-align:center;font-size:clamp(18px,1.6vw,30px);line-height:1.15;margin:clamp(30px,2.6vw,50px) auto 0;max-width:1100px}
.why__foot b{color:var(--orange)}

/* ---------- VS ---------- */
.vs{--split:38.85%;background:linear-gradient(90deg,var(--navy) var(--split),transparent var(--split)),linear-gradient(0deg,rgba(224,96,31,.9),rgba(224,96,31,.9)),url(../img/vs-bg.jpg) right center/61.15% auto no-repeat,var(--orange);color:#fff;padding:clamp(40px,3.8vw,72px) 0 clamp(50px,5vw,100px)}
.vs .eyebrow{color:#fff;font-weight:300}
.vs__title{font-size:clamp(36px,3.3vw,64px);margin-bottom:clamp(30px,3.4vw,64px);color:#fff}
@supports (-webkit-background-clip:text){
  .vs__title{background:linear-gradient(90deg,#fff 38.85vw,var(--navy) 38.85vw) fixed;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
}
.vs__cols{display:grid;grid-template-columns:calc(38.85vw - var(--gut) - max(0px,(100vw - var(--wrap) - var(--gut)*2)/2)) 1fr;gap:0}
.vs__cols>div:last-child{padding-left:clamp(20px,3vw,58px)}
.vs h3{color:#fff;display:flex;align-items:center;gap:.5em;font-size:clamp(19px,1.55vw,30px);margin-bottom:.8em}
.vs h3 svg{width:1.05em;height:1.05em}
.vs__bad{list-style:none;margin:0;padding:0 1em 0 0;font-weight:300;font-size:clamp(15px,1.15vw,21px)}
.vs__bad li{position:relative;padding-left:1.4em;margin-bottom:1.25em}
.vs__bad li::before{content:"";position:absolute;left:.3em;top:.45em;width:.35em;height:.35em;border-radius:50%;background:#fff}
.vs__good{list-style:none;margin:0;padding:0;font-weight:300;font-size:clamp(16px,1.45vw,28px);line-height:1.2}
.vs__good li{position:relative;padding-left:1.8em;margin-bottom:.95em}
.vs__good li svg{position:absolute;left:0;top:.28em;width:.8em;height:.8em}
.vs__good b{font-weight:700}

/* ---------- Garantías ---------- */
.gar{padding:clamp(50px,6vw,120px) 0 clamp(40px,4vw,80px)}
.gar h2{color:var(--orange);font-size:clamp(30px,2.6vw,50px);margin-bottom:.9em}
.gar__cols>*,.why__grid>*,.about__grid>*{min-width:0}
.gar__cols{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,4vw,80px);align-items:start}
.gar__txt{font-size:clamp(17px,1.3vw,25px);line-height:1.22;max-width:700px}
.gar__txt h3{color:var(--orange);font-size:clamp(19px,1.35vw,26px);font-weight:600;margin:1.6em 0 1em}
.gar__txt ul{list-style:none;margin:0;padding:0}
.gar__txt li{position:relative;padding-left:1em;margin-bottom:.95em}
.gar__txt li::before{content:"";position:absolute;left:0;top:.5em;width:.42em;height:.42em;border-radius:50%;background:var(--orange)}
.gar__claim{color:var(--orange);font-weight:600;text-align:center;font-size:clamp(19px,1.45vw,28px);margin-top:1.8em}
.certs{position:relative;display:flex;align-items:center;gap:10px}
.certs__stage{position:relative;flex:1;height:clamp(300px,24vw,400px);overflow:hidden}
.cert{--d:0;position:absolute;left:50%;top:0;width:36%;margin:0;text-align:center;transform:translateX(calc(-50% + var(--d) * 92%)) scale(.78);transition:transform .45s ease,opacity .45s ease;opacity:.5;font-weight:300;font-size:clamp(12px,.85vw,15px);color:#555;cursor:pointer}
.cert img{margin:0 auto 12px;height:clamp(190px,15.5vw,260px);width:auto;max-width:100%;object-fit:contain;box-shadow:0 6px 18px rgba(0,0,0,.12);background:#fff}
.cert figcaption{line-height:1.2}
.cert.is-on{transform:translateX(-50%) scale(1);opacity:1;font-weight:600;font-size:clamp(14px,1vw,18px);color:var(--ink);cursor:default;z-index:2}
.cert.is-far{opacity:0;pointer-events:none}
.arrow{background:none;border:0;color:var(--orange);cursor:pointer;padding:6px;flex:none}
.arrow svg{width:28px;height:40px}
.gar__logos{display:flex;justify-content:center;align-items:center;gap:clamp(24px,3.5vw,70px);margin-top:clamp(24px,2.4vw,46px)}
.gar__logos img{height:clamp(44px,3.6vw,70px);width:auto;mix-blend-mode:multiply}

/* ---------- Pilares ---------- */
.pil{background:var(--navy);color:#fff;padding:clamp(40px,4.5vw,90px) 0 clamp(50px,4.5vw,90px)}
.pil__grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:clamp(18px,2.2vw,44px);max-width:1370px;margin:0 auto}
.pil h2{color:#fff;font-size:clamp(30px,2.5vw,48px);margin-bottom:.8em}
.pil__txt{font-weight:300;font-size:clamp(16px,1.3vw,25px);line-height:1.22}
.pil__txt b{font-weight:700;display:block;margin-bottom:1em}
.pbox{border:1px solid rgba(255,255,255,.7);padding:clamp(16px,1.5vw,30px) 12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:clamp(10px,1.2vw,24px);font-weight:600;font-size:clamp(16px,1.3vw,25px);line-height:1.22;}
.pbox img{width:clamp(70px,5.1vw,100px);height:auto}

/* ---------- Acerca ---------- */
.about{padding:clamp(50px,6vw,120px) 0 0;position:relative}
.about__grid{display:grid;grid-template-columns:54% 1fr;align-items:start}
.about__img{aspect-ratio:1078/660;background:url(../img/acerca.jpg) center/cover}
.about__txt{padding:clamp(20px,2.7vw,54px) var(--gut) 0 clamp(24px,2.7vw,54px);max-width:720px;font-size:clamp(16px,1.3vw,25px);line-height:1.22}
.about__txt h2{color:var(--orange);font-size:clamp(30px,2.6vw,50px);margin:.1em 0 .6em}
.about__txt .lead{font-size:clamp(18px,1.4vw,27px);margin-bottom:1.6em}
.about__cards{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,3.9vw,78px);margin-top:clamp(-120px,-5.5vw,-40px);position:relative;padding-bottom:clamp(50px,6.5vw,130px)}
.acard{background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.14);text-align:center;padding:clamp(18px,2.1vw,40px) clamp(14px,1.4vw,28px) clamp(20px,2.5vw,48px);font-size:clamp(16px,1.3vw,25px);line-height:1.22;transition:transform .25s}
.acard h3{color:var(--orange);font-size:clamp(24px,2.2vw,42px);margin-bottom:.45em}
.acard:hover{transform:translateY(-6px)}

/* ---------- Banda ---------- */
.band{background:linear-gradient(0deg,rgba(224,96,31,.86),rgba(224,96,31,.86)),url(../img/banda-naranja.jpg) center/cover;color:#fff;text-align:center;padding:clamp(40px,3.8vw,74px) var(--gut);font-weight:300;font-size:clamp(20px,2vw,38px);line-height:1.25}
.band b{font-weight:700}

/* ---------- Blog ---------- */
.bsec{padding:clamp(40px,4.5vw,86px) 0 clamp(40px,4.5vw,90px);text-align:center}
.bsec .h2{font-size:clamp(30px,2.6vw,50px);margin-bottom:clamp(30px,3.5vw,68px)}
.blog__vp{overflow:hidden}
.blog__track{display:flex;gap:clamp(20px,3.6vw,72px);transition:transform .45s ease}
.post{flex:0 0 calc((100% - 2*clamp(20px,3.6vw,72px))/3);background:var(--gray-bg);padding:clamp(14px,1.35vw,26px);text-align:left;display:flex;flex-direction:column}
.post__img{aspect-ratio:446/268;overflow:hidden;margin-bottom:.9em}
.post__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post:hover .post__img img{transform:scale(1.05)}
.post h3{font-size:clamp(20px,1.6vw,31px);line-height:1.1;padding-bottom:.6em;border-bottom:1px solid #777;margin-bottom:.7em}
.post p{font-weight:300;font-size:clamp(16px,1.3vw,25px);line-height:1.22;flex:1}
.post__foot{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.post .btn{font-size:clamp(15px,1.3vw,25px)}
.post__pdf{display:inline-flex;align-items:center;gap:.3em;color:var(--orange);font-weight:700;font-size:clamp(14px,1vw,18px);transition:color .2s}
.post__pdf:hover{color:var(--navy)}
.bnav{display:flex;align-items:center;justify-content:center;gap:clamp(6px,.8vw,14px);margin-top:clamp(30px,4vw,80px)}
.bnav .dots{margin-top:0}
.bnav__b{width:28px;height:28px;padding:6px;border:0;background:none;color:#777;cursor:pointer;transition:color .2s}
.bnav__b svg{width:100%;height:100%;display:block}
.bnav__b:hover{color:var(--orange)}
.bnav__b:disabled{opacity:.3;cursor:default;color:#777}
.bfilter{border-bottom:1px solid #e3e3e3}
.bfilter__in{position:relative;padding:14px 0}
.bfilter__btn{display:inline-flex;align-items:center;gap:.55em;background:var(--navy);color:#fff;border:0;padding:.6em 1.1em;font-weight:700;font-size:clamp(15px,1.05vw,19px);cursor:pointer;transition:background .2s}
.bfilter__btn:hover,.bfilter__btn[aria-expanded=true]{background:var(--orange)}
.bfilter__btn svg:last-child{width:.8em;height:.5em;transition:transform .25s}
.bfilter__btn[aria-expanded=true] svg:last-child{transform:rotate(180deg)}
.bfilter__pop{position:absolute;left:0;top:calc(100% - 6px);z-index:20;width:min(420px,100%);background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.18);border-top:4px solid var(--orange);padding:16px}
.bfilter__pop[hidden]{display:none}
.bfilter__cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.bfilter__cats a{padding:.4em .9em;background:var(--gray-bg);font-weight:600;transition:background .2s,color .2s}
.bfilter__cats a small{color:#888;font-weight:400}
.bfilter__cats a:hover,.bfilter__cats a.is-on{background:var(--orange);color:#fff}
.bfilter__cats a:hover small,.bfilter__cats a.is-on small{color:#fff}
.bfilter__q{display:flex;border:1px solid #bbb}
.bfilter__q input{flex:1;min-width:0;border:0;padding:.6em .8em;outline:0}
.bfilter__q button{border:0;background:var(--navy);color:#fff;padding:0 .9em;cursor:pointer}
.dots{display:flex;justify-content:center;gap:12px;margin-top:clamp(30px,4vw,80px)}
.dots button{width:20px;height:20px;border-radius:50%;border:0;background:#e3e3e3;cursor:pointer;padding:0}
.dots button.is-on{background:var(--orange)}
.blog__all{display:flex;justify-content:center;margin-top:clamp(20px,2vw,36px)}
.post h3 a:hover{color:var(--orange)}
.bloglist{padding:clamp(30px,3.5vw,70px) 0 clamp(50px,5vw,100px)}
.bloglist__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,56px);text-align:left}
.bloglist__grid .post{flex:none}
.pagination{margin-top:clamp(30px,3vw,56px)}
.pagination .nav-links{display:flex;justify-content:center;gap:8px}
.pagination .page-numbers{min-width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--gray-bg);font-weight:600}
.pagination .page-numbers.current,.pagination a.page-numbers:hover{background:var(--orange);color:#fff}
.article{padding-top:clamp(24px,2.6vw,50px)}
.article__in{max-width:980px}
.article__img{margin:0 0 clamp(20px,2vw,36px)}
.article__img img{width:100%;height:auto}
.entry{font-weight:300;font-size:clamp(16px,1.15vw,20px);line-height:1.55}
.entry h2{font-size:clamp(21px,1.5vw,28px);color:var(--ink);margin:1.6em 0 .5em;line-height:1.2}
.entry h3{font-size:clamp(18px,1.25vw,23px);margin:1.4em 0 .4em}
.entry strong,.entry b{font-weight:700}
.entry ul,.entry ol{padding-left:1.3em;margin:0 0 1em}
.entry li{margin-bottom:.4em}
.entry li::marker{color:var(--orange)}
.entry figure{margin:1.6em 0}
.entry img{height:auto}
.entry a{color:var(--orange);text-decoration:underline}
.article__foot{display:flex;flex-wrap:wrap;gap:14px;margin:clamp(24px,2.6vw,48px) 0 clamp(30px,3vw,60px);padding-top:clamp(20px,2vw,32px);border-top:1px solid #ddd}
.bsec--rel{background:var(--light)}
.bsec--prod{text-align:left}
.bsec--prod .h2{text-align:center}
.bsec--prod .pcard{background:#fff}
.bsec--prod .pcard .btn{align-self:center;margin-top:auto}

/* ---------- Newsletter ---------- */
.news{background:#f5f5f5;padding:clamp(30px,2.8vw,56px) 0}
.news__in{display:flex;align-items:center;justify-content:space-between;gap:30px}
.news h2{font-size:clamp(22px,1.6vw,31px)}
.news p{font-weight:300;font-size:clamp(16px,1.3vw,24px);margin:0}
.news form{flex:0 1 710px;display:flex;background:var(--gray-bg)}
.news input{flex:1;border:0;background:transparent;padding:.8em 1.2em;font-weight:300;font-size:clamp(16px,1.3vw,24px);outline:0;min-width:0}
.news button{border:0;background:none;padding:0 1.2em;cursor:pointer;color:#333}
.news button svg{width:36px;height:20px}

/* ---------- Contacto ---------- */
.contact{position:relative;background:#0a1219 url(../img/contacto-bg.jpg) center/cover;color:#fff}
.contact::before{content:"";position:absolute;inset:0;background:rgba(5,24,39,.74)}
.contact__grid{position:relative;display:grid;grid-template-columns:40.9% 49.9% 1fr;grid-template-rows:clamp(60px,9vw,175px) auto clamp(60px,9vw,175px)}
.contact__grid::before,.contact__grid::after{content:"";position:absolute;pointer-events:none;border-color:rgba(255,255,255,.6);border-style:solid}
.contact__grid::before{inset:clamp(60px,9vw,175px) 0;border-width:1px 0}
.contact__grid::after{top:0;bottom:0;left:40.9%;right:9.2%;border-width:0 1px}
.contact__lead{grid-column:1;grid-row:2;padding:clamp(24px,2.5vw,50px) clamp(20px,4vw,40px) clamp(24px,2.5vw,50px) max(var(--gut),10.8%)}
.contact__lead h2{color:#fff;font-size:clamp(32px,2.6vw,50px);margin-bottom:.5em}
.contact__form{grid-column:2;grid-row:2;background:var(--orange);padding:clamp(24px,2.5vw,50px) clamp(20px,7.5vw,150px) clamp(24px,2.5vw,50px)}
.contact__form h3{color:#fff;font-size:clamp(20px,1.4vw,27px)}
.contact__form .sub{font-weight:300;font-size:clamp(16px,1.3vw,25px);margin:.1em 0 1em}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:.35em 20px}
.fgrid .full{grid-column:1/-1}
.fgrid label{display:block;font-weight:300;font-size:clamp(14px,.95vw,18px)}
.fgrid input,.fgrid select,.fgrid textarea{width:100%;border:0;background:#fff;color:#333;padding:.45em .6em;font-weight:600;font-size:clamp(15px,.95vw,18px);border-radius:0;outline:0}
.fgrid select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 14'%3E%3Cpath d='M1 1l11 11L23 1' fill='none' stroke='%23555' stroke-width='2'/%3E%3C/svg%3E") right 14px center/22px no-repeat}
.fgrid textarea{min-height:5.4em;resize:vertical}
.fgrid input:focus,.fgrid select:focus,.fgrid textarea:focus{box-shadow:inset 0 0 0 2px var(--navy)}
.form__foot{display:flex;justify-content:flex-end;margin-top:1.2em}
.form__msg{margin-top:.8em;font-weight:600;min-height:1.2em}

/* ---------- Footer ---------- */
.ftr{background:var(--navy);color:#fff;padding:clamp(40px,4vw,80px) 0 clamp(30px,2.8vw,56px)}
.ftr__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.4fr;gap:30px;align-items:start}
.ftr__logo img{width:clamp(200px,21vw,420px)}
.ftr__pro{display:flex;flex-direction:column;gap:6px;margin-top:clamp(18px,1.8vw,34px);font-weight:300;font-size:clamp(14px,1vw,18px)}
.ftr__pro img{width:clamp(150px,13vw,240px);height:auto}
.ftr__pro-txt{font-weight:700;letter-spacing:.04em;color:#1f9a8f;font-size:clamp(22px,1.8vw,34px);line-height:1}
.ftr ul{list-style:none;margin:0;padding:0;font-weight:300;font-size:clamp(16px,1.3vw,25px);line-height:1.5}
.ftr ul a:hover{color:var(--orange)}
.ftr__c{text-align:right;font-weight:300;font-size:clamp(16px,1.3vw,25px);line-height:1.3}
.ftr__c h4{color:#fff;font-size:clamp(18px,1.3vw,25px);margin-bottom:.5em}
.ftr__soc{display:flex;justify-content:flex-end;gap:12px;margin-bottom:.4em}
.ftr__soc a{width:clamp(36px,2.6vw,52px);height:clamp(36px,2.6vw,52px);display:block;transition:color .2s}
.ftr__soc a svg{width:100%;height:100%}
.ftr__soc a:hover{color:var(--orange)}
.ftr__c p{margin:0 0 .4em;text-wrap:balance}
.ftr__c p .ico{margin-right:.45em}
.ftr__c a:hover{color:var(--orange)}
/* deja libres las columnas de los botones flotantes (subir / WhatsApp) */
.ftr .wrap{padding-left:max(var(--gut),calc(clamp(14px,2.5vw,40px) + clamp(48px,3.4vw,62px) + 16px));padding-right:max(var(--gut),calc(clamp(14px,2.5vw,40px) + clamp(56px,4vw,78px) + 16px))}
.ftr__copy{text-align:center;font-weight:300;font-size:clamp(15px,1.15vw,22px);margin-top:clamp(40px,5vw,100px)}

.wa{position:fixed;right:clamp(14px,2.5vw,40px);bottom:clamp(14px,2.5vw,40px);z-index:60;width:clamp(56px,4vw,78px);aspect-ratio:1;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.28);transition:transform .2s}
.wa svg{width:58%;height:58%}
.wa:hover{transform:scale(1.08)}

/* Volver arriba */
.totop{position:fixed;left:clamp(14px,2.5vw,40px);bottom:clamp(14px,2.5vw,40px);z-index:60;width:clamp(48px,3.4vw,62px);aspect-ratio:1;border-radius:50%;background:rgba(5,24,39,.55);border:1.5px solid rgba(255,255,255,.6);color:#fff;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s,transform .3s,visibility .3s,background .2s}
.totop svg{width:42%;height:42%;margin-top:-6%}
.totop.is-on{opacity:1;visibility:visible;transform:none}
.totop:hover{background:rgba(224,96,31,.85);border-color:transparent}

/* ---------- Modal ---------- */
.modal{position:fixed;inset:0;z-index:120;background:rgba(3,10,18,.85);display:none;align-items:center;justify-content:center;padding:var(--gut)}
.modal.is-open{display:flex}
.modal__box{background:#fff;max-width:1200px;width:100%;max-height:90vh;overflow:auto;position:relative;padding:clamp(20px,2.5vw,40px)}
.modal__x{position:absolute;right:10px;top:10px;background:none;border:0;cursor:pointer;padding:6px;color:#333}
.modal__x svg{width:28px;height:28px}
.modal--video .modal__box{background:#000;padding:0;aspect-ratio:16/9;max-width:1100px;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center}
.modal--video .modal__x{color:#fff}

/* ---------- Catálogo ---------- */
.cat-hero{position:relative;background:#333 url(../img/catalogo-header.jpg) left center/cover;color:#fff;padding-top:clamp(64px,5.8vw,112px)}
.cat-hero::before{content:"";position:absolute;inset:0;background:rgba(5,24,39,.78)}
.cat-hero__in{position:relative;display:flex;justify-content:flex-end;padding-top:clamp(24px,2.2vw,40px);padding-bottom:clamp(20px,1.6vw,30px)}
.cat-hero h1{color:#fff;text-align:right;font-size:clamp(28px,2.8vw,54px);line-height:1.05}
.crumbs{font-size:clamp(11px,.72vw,14px);letter-spacing:.08em;text-transform:uppercase;color:#555;display:flex;gap:.6em;flex-wrap:wrap}
.crumbs a:hover{color:var(--orange)}
.cat-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding-top:14px;padding-bottom:14px}
.cat-intro p{text-align:right;font-weight:300;font-size:clamp(15px,1.15vw,22px);max-width:1050px;margin:0}
.cat{display:grid;grid-template-columns:clamp(240px,22.5vw,440px) 1fr;border-top:1px solid #333}
.filters{border-right:1px solid #333;border-bottom:1px solid #333;padding:clamp(14px,1.2vw,22px) clamp(16px,1.9vw,38px) 30px max(var(--gut),4.4vw);align-self:start;position:sticky;top:0}
.fsec{border-bottom:1px solid #777;padding:clamp(12px,1vw,18px) 0 clamp(16px,1.6vw,28px)}
.fsec:last-child{border-bottom:0}
.fsec>button{background:none;border:0;padding:0;display:flex;align-items:center;gap:8px;font-weight:700;font-size:clamp(14px,.85vw,16px);cursor:pointer;margin-bottom:12px;color:var(--ink)}
.fsec>button svg{width:12px;height:12px;transition:transform .2s}
.fsec.is-closed>button svg{transform:rotate(180deg)}
.fsec.is-closed .fsec__body{display:none}
.ficons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-width:290px}
.ficon{border:1px solid #bbb;background:#fff;aspect-ratio:65/53;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;padding:6px 4px;font-size:clamp(9px,.62vw,12px);font-weight:300;color:#666;transition:.15s}
.ficon i{width:78%;flex:1;background:#666;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.ficon:hover{border-color:var(--orange)}
.ficon.is-on{background:var(--gray);border-color:var(--gray);color:#fff}
.ficon.is-on i{background:#fff}
.range{padding-top:4px}
.range__lbl{font-weight:300;font-size:14px;margin-bottom:4px}
.range__vals{display:flex;justify-content:space-between;max-width:290px;font-size:12px}
.range__vals output{border:1px solid #aaa;padding:0 6px;min-width:34px;text-align:center}
.range__track{position:relative;height:22px;max-width:290px}
.range__track::before{content:"";position:absolute;left:0;right:0;top:9px;height:5px;background:#d6d6d6}
.range__fill{position:absolute;top:9px;height:5px;background:var(--orange)}
.range input{position:absolute;inset:0;width:100%;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none}
.range input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--orange);cursor:pointer}
.range input::-moz-range-thumb{pointer-events:auto;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--orange);cursor:pointer}
.fclear{background:none;border:0;padding:0;color:var(--orange);font-weight:600;cursor:pointer;font-size:14px;margin-top:10px;text-decoration:underline}
.results{padding:clamp(14px,1.2vw,22px) max(var(--gut),4.4vw) 40px clamp(20px,5.9vw,118px)}
.results__bar{display:none;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:14px}
.pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,26px)}
.pcard{background:var(--gray-bg);padding:clamp(10px,.8vw,16px) clamp(10px,.8vw,16px) 10px;display:flex;flex-direction:column;font-size:clamp(10px,.58vw,12px)}
.pcard__img{height:clamp(130px,11vw,210px);display:flex;align-items:flex-end;justify-content:center;margin-bottom:8px}
.pcard__img img{max-height:100%;width:auto;transition:transform .3s;mix-blend-mode:multiply}
.pcard:hover .pcard__img img{transform:translateY(-4px) scale(1.03)}
.pcard h3{font-size:clamp(17px,1.3vw,25px);border-left:3px solid var(--orange);padding-left:6px;line-height:1;margin-bottom:4px}
.pcard dl{margin:0 0 10px}
.pcard dl div{display:flex;justify-content:space-between;align-items:baseline;padding:.45em 0;border-bottom:1px solid #aaa;font-weight:300;color:#444}
.pcard dd{margin:0;font-weight:700;color:var(--ink);font-size:1.35em}
.pcard .btn{align-self:center;margin-bottom:10px}
.pcard__cmp{display:flex;justify-content:space-between;align-items:center;font-weight:300;color:#444}
.pcard__cmp label{display:flex;align-items:center;gap:5px;cursor:pointer}
.pcard__cmp input{accent-color:var(--gray);margin:0;width:13px;height:13px}
.pcard__cmp a{display:none;font-weight:400;color:#222}
.pcard__cmp a:hover{color:var(--orange)}
.pcard.is-cmp .pcard__cmp a{display:inline}
.more{display:flex;justify-content:center;margin-top:clamp(24px,2.6vw,50px)}
.more button{background:none;border:0;cursor:pointer;font-weight:300;font-size:clamp(16px,1.1vw,21px);display:flex;align-items:center;gap:8px}
.more button svg{width:12px;height:12px}
.more button:hover{color:var(--orange)}
.empty{grid-column:1/-1;padding:40px 0;text-align:center;color:#666}
.fbtn{display:none}
.cmpbar{position:fixed;left:50%;bottom:16px;transform:translate(-50%,150%);z-index:70;background:var(--navy);color:#fff;padding:10px 12px 10px 20px;display:flex;gap:16px;align-items:center;box-shadow:0 8px 24px rgba(0,0,0,.3);transition:transform .3s;font-size:15px}
.cmpbar.is-on{transform:translate(-50%,0)}
.cmpbar button.link{background:none;border:0;color:#bbb;cursor:pointer;text-decoration:underline}
.cmptable{width:100%;border-collapse:collapse;font-size:15px}
.cmptable th,.cmptable td{padding:8px 10px;border-bottom:1px solid #ddd;text-align:center}
.cmptable th:first-child,.cmptable td:first-child{text-align:left;font-weight:600;color:#444}
.cmptable thead th{background:var(--navy);color:#fff;font-size:18px}
.cmptable thead img{height:110px;width:auto;margin:6px auto}
.cmptable tbody tr:nth-child(even){background:#f4f4f4}

/* ---------- Producto ---------- */
.p-hero{background:var(--navy);color:#fff}
.p-hero__in{padding-top:clamp(20px,1.8vw,34px);padding-bottom:12px}
.p-hero__back{display:inline-flex;align-items:center;gap:.5em;color:#fff;opacity:.85;font-size:clamp(14px,1vw,17px);margin-bottom:clamp(6px,.6vw,12px);transition:opacity .2s,color .2s}
.p-hero__back:hover{opacity:1;color:var(--orange)}
.p-hero__back i{display:inline-flex;width:1.1em;height:1.1em;transform:rotate(180deg)}
.p-hero__back svg{width:100%;height:100%}
.p-hero h1{color:#fff;font-size:clamp(40px,3.4vw,66px)}
.p-hero__sub{font-weight:400;font-size:clamp(16px,1.2vw,22px);margin-top:4px}
.p-hero .crumbs{justify-content:flex-end;color:#9aa3ab;margin-top:12px}
.prod{display:grid;grid-template-columns:67% 1fr}
.prod>*,.buy__body>*{min-width:0}
.prod__main{padding:clamp(18px,1.6vw,30px) clamp(20px,3.5vw,68px) clamp(30px,3vw,60px) 0}
.prod__main>p{font-weight:300;font-size:clamp(16px,1.2vw,23px);line-height:1.3;max-width:1000px}
.prod h2{font-size:clamp(22px,1.6vw,31px);border-left:3px solid var(--orange);padding-left:6px;margin:clamp(20px,1.8vw,34px) 0 clamp(12px,1vw,18px)}
.spec{width:100%;border-collapse:collapse;text-align:center;font-size:clamp(13px,.9vw,17px);margin-bottom:clamp(20px,1.8vw,34px)}
.spec th{background:var(--orange);color:#fff;font-weight:600;padding:.8em .4em;line-height:1.15;width:16.66%}
.spec--n th{background:var(--navy)}
.spec td{padding:.45em .4em}
.spec tr.u td{font-weight:700;background:#fff}
.spec tr.v td{background:#e9e9e9;font-weight:300}
.spec .sub{font-size:.7em}
.dl{display:flex;justify-content:flex-end}
.dl a{color:var(--orange);text-decoration:underline;font-weight:300;font-size:clamp(13px,.9vw,17px)}
.dl a .ico{margin-right:.3em}
.prod__side{border-left:1px solid #333;padding:clamp(14px,1.4vw,26px) 0 20px clamp(16px,1.6vw,30px);display:flex;flex-direction:column}
.prod__tag{text-align:right;font-size:clamp(12px,.9vw,16px);padding-right:6px;border-right:3px solid var(--orange);align-self:flex-end;line-height:1}
.gal{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}
.gal__img{flex:1;display:flex;justify-content:center;align-items:flex-end;height:clamp(260px,22vw,420px);position:relative}
.gal__img::after{content:"";position:absolute;bottom:-4px;left:50%;width:55%;height:14px;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(0,0,0,.28),rgba(0,0,0,0) 70%)}
.gal__img{perspective:1400px}
.gal__img img{position:absolute;bottom:0;left:0;right:0;margin:0 auto;max-height:100%;width:auto;max-width:100%;object-fit:contain;z-index:1;opacity:0;transform-origin:50% 60%;transition:opacity .45s ease,transform .6s cubic-bezier(.25,.7,.3,1)}
.gal__img img.is-on{opacity:1}
.gal__dots{display:flex;justify-content:center;gap:8px;margin:14px 0 4px}
.gal__dots button{width:10px;height:10px;border-radius:50%;border:0;padding:0;background:#d4d4d4;cursor:pointer}
.gal__dots button.is-on{background:var(--orange)}
.gal .arrow{color:#222}
.gal .arrow svg{width:22px;height:30px}
.prod__seals{align-self:flex-end;height:clamp(18px,1.4vw,26px);width:auto;margin:10px 0}
.prod__note{text-align:right;font-weight:300;font-size:clamp(11px,.7vw,13px);color:#444}

.buy{background:var(--orange);color:#fff}
.buy__toggle{display:flex;align-items:center;gap:12px;background:none;border:0;color:#fff;font-weight:600;font-size:clamp(19px,1.4vw,27px);padding:clamp(12px,1vw,18px) 0;cursor:pointer}
.buy__toggle svg{width:14px;height:14px;transition:transform .2s}
.buy.is-closed .buy__toggle svg{transform:rotate(180deg)}
.buy.is-closed .buy__body{display:none}
.buy__body{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:clamp(20px,2vw,40px)}
.buy h2{color:var(--navy);font-size:clamp(20px,1.6vw,30px);margin-top:.4em}
.buy .lead{font-weight:300;font-size:clamp(15px,1.15vw,22px);line-height:1.2;margin-bottom:1.6em}
.buy .lead b{font-weight:600}
.buy p{font-weight:300;font-size:clamp(15px,1.15vw,22px);line-height:1.2}
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center;margin:1.4em 0 2em;max-width:700px}
.feats i{display:block;height:44px;margin:0 auto 6px;background:var(--navy);-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.feats b{display:block;color:var(--navy);font-size:clamp(13px,.9vw,17px)}
.feats span{font-weight:300;font-size:clamp(11px,.72vw,14px);line-height:1.2;display:block}
.buy h3{color:var(--navy);font-size:clamp(16px,1.15vw,22px)}
.buy .small{font-size:clamp(12px,.8vw,15px)}
.buy__map img{width:100%;height:auto}
.buy__cta{grid-column:1/-1;display:flex;justify-content:center}
.btn--navy{background:var(--navy)}
.btn--navy:hover{background:#0f2c44}
.btn--navy span{gap:.5em}

/* ---------- Páginas de texto ---------- */
.txtpage{padding:clamp(30px,4vw,70px) 0 clamp(50px,6vw,110px)}
.txtpage h1{font-size:clamp(30px,2.6vw,48px);margin-bottom:.8em}
.txtpage h2{font-size:clamp(18px,1.2vw,22px);color:var(--orange);margin:1.8em 0 .5em;letter-spacing:.03em}
.txtpage .body{max-width:960px;font-weight:300;line-height:1.5}

/* ---------- Animaciones ---------- */
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.rv.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .srow__track{grid-auto-columns:calc((100% - 2*clamp(12px,1.2vw,22px))/3)}
  .hdr__links{display:none}
  .burger{display:block}
  .nav,.hdr__strip{display:none}
  .hdr--in .hdr__links{display:flex}
  .hdr--in .burger{display:block}
  .pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .about__cards{grid-template-columns:repeat(2,1fr);margin-top:30px}
  .pil__grid{grid-template-columns:1fr 1fr}
  .pil__grid .pil__intro{grid-column:1/-1}
  .pil__grid .pil__txt2{grid-column:1/-1}
  .ftr__grid{grid-template-columns:1fr 1fr}
  .ftr__c{text-align:left}
  .ftr__soc{justify-content:flex-start}
  .ftr__c p{display:flex;gap:.45em}
  .ftr__c p .ico{margin:.15em 0 0}
}
@media (max-width:900px){
  .srow{grid-template-columns:1fr}
  .srow__mark{position:absolute;right:16px;bottom:14px;margin:0;padding:0;font-size:clamp(28px,8vw,44px)}
  .srow__lead{padding-bottom:20px}
  .srow__track{grid-auto-columns:68%}
  .srow__nav{display:none}
  .srow__car{padding:16px 12px}
  .sband{grid-template-columns:1fr}
  .sband__lead{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:16px}
  .sband__mark{margin:0;padding:0;font-size:clamp(30px,9vw,48px)}
  .sband__items{grid-template-columns:1fr}
  .sitem+.sitem{border-left:0;border-top:1px solid #d2d2d2}
  .sitem{display:grid;grid-template-columns:40% 1fr;grid-template-areas:"img ul" "img foot";column-gap:16px}
  .sitem ul{grid-area:ul;margin-bottom:10px}
  .sitem__img{grid-area:img;align-self:start}
  .sitem__foot{grid-area:foot;margin-top:0}
  .ftr .wrap{padding:0 var(--gut)}
  .ftr{padding-bottom:110px}
  .hero{align-items:flex-end;background-position:28% bottom;min-height:640px}
  .hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,24,39,0) 25%,rgba(5,24,39,.85) 75%)}
  .hero__in{position:relative;justify-content:flex-start}
  .hero__box{width:100%;margin:0 0 40px}
  .cards3{grid-template-columns:1fr;max-width:520px;margin:0 auto}
  .why__cols,.why__grid{grid-template-columns:1fr}
  .vs{background:var(--navy);padding-bottom:0}
  .vs__title{background:none;-webkit-text-fill-color:#fff}
  .vs__title span{color:var(--orange);-webkit-text-fill-color:var(--orange)}
  .vs__cols{grid-template-columns:1fr;margin:0 calc(var(--gut)*-1)}
  .vs__cols>div{padding:10px var(--gut) 30px}
  .vs__cols>div:last-child{background:linear-gradient(0deg,rgba(224,96,31,.9),rgba(224,96,31,.9)),url(../img/vs-bg.jpg) center/cover;padding:36px var(--gut) 30px}
  .gar__cols{grid-template-columns:1fr}
  .about__grid{grid-template-columns:1fr}
  .about__txt{padding:30px var(--gut) 0}
  .post{flex-basis:calc((100% - clamp(20px,3.6vw,72px))/2)}
  .bloglist__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .certs__stage{height:clamp(300px,60vw,400px)}
  .cert{width:44%}
  .video{aspect-ratio:1;min-height:0}
  .news__in{flex-direction:column;align-items:stretch}
  .news form{flex:none}
  .serie__pill{padding:.35em 1em}
  .contact__grid{grid-template-columns:1fr;grid-template-rows:auto}
  .contact__grid::before,.contact__grid::after{display:none}
  .contact__lead,.contact__form{grid-column:1;grid-row:auto;padding:40px var(--gut)}
  .cat{grid-template-columns:1fr}
  .filters{position:fixed;inset:0;z-index:110;max-height:none;overflow:auto;background:#fff;transform:translateX(-100%);transition:transform .3s;border:0;padding:20px var(--gut)}
  .filters.is-open{transform:none}
  .fbtn{display:inline-flex}
  .results{padding:18px var(--gut) 40px}
  .results__bar{display:flex}
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .prod{grid-template-columns:1fr}
  .prod__main{padding-right:0}
  .prod__side{border-left:0;border-top:1px solid #333;padding-left:0;order:-1}
  .buy__body{grid-template-columns:1fr}
  .cat-intro{flex-direction:column}
  .cat-intro p{text-align:left}
}
@media (max-width:600px){
  .post{flex-basis:100%}
  .bloglist__grid{grid-template-columns:1fr}
  .cert{width:62%}
  .cert img{height:clamp(170px,48vw,230px)}
  .about__cards{grid-template-columns:1fr}
  .pil__grid{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .ftr__grid{grid-template-columns:1fr}
  .spec{font-size:12px}
  .spec th{padding:.6em .2em}
  .tscroll{overflow-x:auto}
  .tscroll .spec{min-width:560px}
  .feats{grid-template-columns:1fr}
  .stat big{font-size:clamp(40px,12vw,60px)}
  .pgrid{gap:10px}
  .pcard{font-size:12px}
  .pcard dd{font-size:1.2em;white-space:nowrap;margin-left:auto}
  .pcard dl div{flex-wrap:wrap;column-gap:6px}
  .pcard dt{white-space:nowrap}
  .pcard .btn--sm{font-size:12px}
  .pcard__cmp{flex-direction:column;align-items:flex-start;gap:4px}
  .pcard__cmp input{width:16px;height:16px}
  /* banner: la foto arriba con el martillo visible y el texto debajo (sin taparlo) */
  .hero{min-height:0;padding-top:clamp(330px,100vw,430px);background:#051827 url(../img/hero.jpg) 36% 40px/auto clamp(380px,115vw,480px) no-repeat}
  .hero::before{background:linear-gradient(180deg,rgba(5,24,39,.15) 0,rgba(5,24,39,0) 25%,rgba(5,24,39,.85) 56%,#051827 64%)}
  /* textos que quedaban en 9–11 px */
  .crumbs{font-size:12px}
  .ficon{font-size:11px}
  .feats{gap:22px}
  .feats b{font-size:15px}
  .feats span{font-size:14px}
  .buy .small{font-size:14px}
  .prod__note{font-size:12px}
  .spec .sub{font-size:.85em}
  /* carrusel del blog: los botones primero/último no se encogen y los puntos son más chicos */
  .bnav{gap:4px}
  .bnav__b{flex:none;width:32px;height:32px}
  .bnav .dots{gap:8px}
  .bnav .dots button{width:12px;height:12px}
  /* barra de comparación a todo lo ancho */
  .cmpbar{width:calc(100% - 24px);padding:10px 12px;gap:10px;font-size:14px;justify-content:space-between}
}
