@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(assets/fonts/inter-latin-ext.woff2) 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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(assets/fonts/inter-latin.woff2) 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}
:root{--negro:#000;--naranja:#ff6700;--blanco:#fff;--mar:#0a3550;--mar2:#1b6a8f;--espuma:#e9f2f6;--f:'Acumin Variable Concept','Acumin Pro',Inter,system-ui,sans-serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{font:400 1.05rem/1.6 var(--f);color:var(--negro);background:var(--blanco)}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--naranja);outline-offset:3px}
.w{width:min(1120px,100% - 40px);margin-inline:auto}
h1,h2,h3{line-height:1.08;letter-spacing:-.02em}
h2{font-size:clamp(2rem,5vw,3.2rem);font-weight:800;margin-bottom:.45em}
h3{font-size:1.3rem;font-weight:700;margin-bottom:.4em}
p{max-width:62ch;margin-bottom:1em}
.btn{display:inline-block;padding:.85em 1.5em;font:700 1rem var(--f);text-decoration:none;border:2px solid var(--naranja);background:var(--naranja);color:var(--negro);border-radius:999px;cursor:pointer}
.btn:hover{background:var(--negro);color:var(--naranja)}
.btn.o{background:transparent;color:var(--blanco);border-color:var(--blanco)}
.btn.o:hover{background:var(--blanco);color:var(--negro)}
.b{display:flex;gap:12px;flex-wrap:wrap;margin-top:1.2em}
/* cabecera */
.lg{display:block;height:28px;width:147px}
header{position:fixed;inset:0 0 auto;z-index:40;transition:background .3s}
header.s,header.o{background:var(--negro)}
header .w{width:min(1280px,100% - 40px);display:flex;align-items:center;gap:30px;height:72px}
nav{display:flex;gap:22px;font-weight:500;color:var(--blanco);align-items:center}
nav a{text-decoration:none;text-shadow:0 1px 8px rgba(0,0,0,.5);padding:.3em 0}
nav a:hover,nav a[aria-current]{color:var(--naranja)}
.dd{position:relative}
.sub{display:none;position:absolute;top:100%;left:-16px;min-width:200px;background:var(--negro);padding:10px 16px;flex-direction:column}
.dd:hover .sub,.dd:focus-within .sub{display:flex}
.sub a{padding:.5em 0;text-shadow:none}
#lang{margin-left:auto;background:none;border:1px solid #fff8;color:var(--blanco);border-radius:6px;padding:.3em .7em;font:500 .9rem var(--f);cursor:pointer}
header .btn{padding:.5em 1.1em;font-size:.95rem}
#bg{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;color:#fff;font-size:1.7rem}
@media(max-width:1100px){#bg{display:block}header .w{gap:8px}header .btn{display:none}
nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--negro);flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 20px;max-height:calc(100svh - 72px);overflow:auto}
header.o nav{display:flex}nav a{padding:.8em 0;border-bottom:1px solid #222;text-shadow:none}
.sub{display:flex;position:static;padding:0 0 0 16px;min-width:0}.sub a{font-size:.95rem;color:#bbb}}
/* portada */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--blanco);overflow:hidden;background:var(--mar)}
.hero.sm{min-height:62svh}
.sl{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s;background:center/cover}
.slide.on{opacity:1}
.slide video{width:100%;height:100%;object-fit:cover}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,.15) 40%,rgba(0,0,0,.45))}
.hero .w{padding:130px 0 160px;position:relative;z-index:2}
.hero.sm .w{padding:120px 0 130px}
.hero h1{font-size:clamp(2.8rem,8vw,6.5rem);font-weight:800;max-width:14ch;margin-inline:auto;text-shadow:0 2px 24px rgba(0,0,0,.45)}
.hero.sm h1{font-size:clamp(2.6rem,7vw,5rem);max-width:18ch}
.hero p{font-size:1.25rem;margin:1em auto 0;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.hero .b{justify-content:center}
.pl{position:absolute;right:16px;bottom:120px;font-size:.8rem;color:#fffa}
.dots{position:absolute;left:50%;bottom:108px;transform:translateX(-50%);z-index:3;display:flex;gap:10px}
.dots button{width:11px;height:11px;border-radius:50%;border:0;background:#fff7;padding:0;cursor:pointer}
.dots button.on{background:var(--naranja)}
.ola{z-index:3;position:absolute;left:0;bottom:-1px;width:200%;height:90px;animation:ola 16s linear infinite}
.ola.a{bottom:14px;animation-duration:24s}
@keyframes ola{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.ola{animation:none}html{scroll-behavior:auto}}
/* secciones */
section{padding:84px 0}
section.bn,section.bm{color:var(--blanco)}
.bn{background:var(--negro)}.bm{background:var(--mar)}.be{background:var(--espuma)}
.lead{font-size:1.35rem;font-weight:500;max-width:46ch}
.lead2{font-size:1.5rem;font-weight:800;margin-top:1em}
.dos{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;margin-top:34px}
.dos:first-child{margin-top:0}
.dos.rev>:first-child{order:2}
.stack{display:grid;gap:16px}
.pr{font-weight:800;font-size:1.2rem;color:var(--mar2)}
.ph{min-height:240px;display:grid;place-items:center;text-align:center;padding:20px;color:var(--mar);background:var(--espuma);border:2px dashed var(--mar2);font-weight:500;border-radius:6px}
.be .ph{background:#fff}.ph.tall{min-height:380px}
.lead+.ph{margin-top:30px}
.rows{display:grid;margin-top:20px}
.row{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;padding:26px 0;border-top:2px solid var(--negro);text-decoration:none}
.row:last-child{border-bottom:2px solid var(--negro)}
.row h3{font-size:1.6rem;margin:0}.row p{margin:0}
.row:hover h3{color:var(--naranja)}
#precios p{color:#ddd}
table{width:100%;max-width:560px;border-collapse:collapse;margin:28px 0 16px}
th,td{text-align:left;padding:.7em .4em;border-bottom:1px solid #333}
th{font-weight:500;color:#bbb;font-size:.95rem}
td:first-child{font-size:1.2rem}
td:nth-child(2){font-size:1.6rem;font-weight:800;color:var(--naranja)}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gal .ph{min-height:200px}
.alq{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 24px}
.alq div{background:var(--espuma);padding:20px;border-radius:14px}
.alq b{display:block;font-size:1.9rem;font-weight:800}
.inc{font-weight:700}
details{border-bottom:1px solid #9bbccb;max-width:760px}
summary{cursor:pointer;padding:1em 0;font-weight:700;font-size:1.1rem;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";float:right;color:var(--mar2);font-size:1.4rem;line-height:1}
details[open] summary::after{content:"–"}
details p{padding-bottom:1em}
.dosn{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:34px}
.num{display:block;font-size:3.4rem;font-weight:800;color:var(--naranja);line-height:1}
.dosn p{color:#ddd}
.val{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
.val div{background:var(--espuma);border-top:6px solid var(--naranja);padding:26px 24px;border-radius:0 0 14px 14px}
.val p{margin:0}
.oc{display:grid;grid-template-columns:1fr 1fr;gap:20px 48px;margin-top:30px}
.oc div{border-top:6px solid var(--naranja);padding-top:16px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:34px 0 36px}
[role=tab]{font:700 1rem var(--f);padding:.7em 1.3em;border-radius:999px;border:2px solid var(--negro);background:none;cursor:pointer}
[role=tab][aria-selected=true]{background:var(--negro);color:#fff}
[hidden]{display:none!important}
.vid{width:100%;max-width:380px;height:640px;border:0;border-radius:14px;background:var(--espuma);margin-inline:auto;display:block}
.nota2{margin-top:10px}
.cierre{margin-top:44px;padding-top:30px;border-top:2px solid var(--negro)}
.cierre p{font-size:1.25rem;font-weight:500}
.fm{display:grid;gap:14px;max-width:640px;margin-top:24px}
.fm label{font-weight:700;display:grid;gap:6px}
input,textarea,select{font:inherit;padding:.8em 1em;border:2px solid #b7c9d2;border-radius:10px;background:#fff;color:#000;width:100%}
.fm .btn{justify-self:start}
.fm .st{min-height:1.4em;margin:0}
.hp{display:none}
.cols{display:grid;grid-template-columns:1fr 1.2fr;gap:44px;margin-top:28px}
.cols li{list-style:none;margin-bottom:.8em}
.cols small{display:block;color:#b9d3e0;font-size:.9rem}
iframe{width:100%;height:340px;border:0;border-radius:14px;background:var(--espuma)}
.vid{height:640px}
footer{background:var(--negro);color:#bbb;padding:40px 0 90px;font-size:.9rem}
footer .w{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between}
footer .lg{height:34px;width:178px}
.fl{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:16px;max-width:360px}
footer a{text-decoration:none}footer a:hover{color:var(--naranja)}
.wa{position:fixed;right:16px;bottom:16px;z-index:30;box-shadow:0 6px 20px rgba(0,0,0,.35)}
@media(max-width:820px){section{padding:60px 0}.dos,.dosn,.cols,.oc,.row{grid-template-columns:1fr}.dos.rev>:first-child{order:0}.val,.gal,.alq{grid-template-columns:1fr 1fr}.ph.tall{min-height:240px}}
@media(max-width:520px){.val,.gal,.alq{grid-template-columns:1fr}}
.bloque{margin-top:56px}.sb{font-size:clamp(1.5rem,3.4vw,2.2rem);font-weight:800;margin-bottom:.5em}.bloque .oc{margin-top:20px}
.foto{width:100%;height:auto;border-radius:6px;display:block}
.vp{position:relative;display:block;width:100%;max-width:380px;aspect-ratio:3/4;margin-inline:auto;border-radius:14px;overflow:hidden;background:var(--mar);text-decoration:none;color:#fff}
.vp img{width:100%;height:100%;object-fit:cover}
.vp:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.6))}
.pl2{position:absolute;z-index:2;left:50%;top:44%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:var(--naranja);color:#000;display:grid;place-items:center;font-size:1.6rem;padding-left:5px}
.vl{position:absolute;z-index:2;left:16px;right:16px;bottom:16px;font-weight:700}
.vp:hover .pl2{background:#fff}
iframe.yt{height:auto;aspect-ratio:16/9;max-width:760px;margin-top:14px}
.cols3{display:grid;grid-template-columns:1fr 1.1fr 1.2fr;gap:32px;margin-top:28px;align-items:start}
.cols3 ul{padding:0}.cols3 li{list-style:none;margin-bottom:.8em;overflow-wrap:anywhere}
.cols3 small{display:block;color:#b9d3e0;font-size:.9rem}
.cols3 .ph{background:transparent;color:#fff;border-color:#9bbccb}
.cols3 iframe{height:420px}
@media(max-width:980px){.cols3{grid-template-columns:1fr}}
.dev{width:100%;font-size:.75rem;color:#888;margin:0}
.rt{font-size:1.4rem;margin-bottom:0}.rt b{font-size:2.2rem;font-weight:800}
.st5{color:var(--naranja);letter-spacing:.12em;font-size:1.1rem}
.rvc{margin-top:30px;max-width:760px}
.rvs{display:grid}
.rv{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .8s,visibility .8s;background:#fff;border-top:6px solid var(--naranja);border-radius:0 0 14px 14px;padding:28px 28px 22px;margin:0}
.rv.on{opacity:1;visibility:visible}
.js-no .rv:first-child,.rvs:not(.go) .rv:first-child{opacity:1;visibility:visible}
.rv blockquote p{margin:.6em 0 0;font-size:1.15rem;max-width:none}
.rv figcaption{margin-top:14px;font-weight:700}
.rvd{display:flex;gap:10px;justify-content:center;margin-top:16px}
.rvd button{width:11px;height:11px;border-radius:50%;border:0;background:#9bbccb;padding:0;cursor:pointer}
.rvd button.on{background:var(--naranja)}
@media(prefers-reduced-motion:reduce){.rv{transition:none}}
.legal{max-width:820px}.legal h3{margin-top:1.6em}.legal p,.legal li{max-width:70ch}
.legal ul{padding-left:1.2em;margin-bottom:1em}.legal li{margin-bottom:.5em}
.legal a{color:var(--mar2);text-decoration:underline}
.lgl{width:100%;margin:0;font-size:.85rem}
.hero.lh .pl,.hero.lh .dots{display:none}.hero.lh{min-height:40svh}
.emb{position:relative}
.emb-ph{display:none;background:var(--espuma);color:var(--negro);border-radius:14px;padding:28px;text-align:center;min-height:200px;align-content:center;justify-items:center}
.emb:not(.ok) iframe{display:none}
.emb:not(.ok) .emb-ph{display:grid}
.emb.ok .emb-ph{display:none}
.cols3 .emb-ph{min-height:420px}
#ckb{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:720px;margin-inline:auto;background:#000;color:#fff;border:2px solid var(--naranja);border-radius:14px;padding:18px 20px;box-shadow:0 10px 30px rgba(0,0,0,.4)}
#ckb p{margin:0 0 .4em;max-width:none;font-size:.95rem}
#ckb a{color:var(--naranja)}
#ckb .b{margin-top:.6em}
#ckb .btn{padding:.55em 1.2em}
.btn.o2{background:transparent;color:#fff;border-color:#fff}
.btn.o2:hover{background:#fff;color:#000}
.rec{padding:44px 0}
.recs{display:flex;gap:48px;flex-wrap:wrap;justify-content:center;align-items:center}
.rec1{display:flex;align-items:center;gap:20px;max-width:430px}
.rec1 img{height:70px;width:auto;flex:none}
.rec1 p{margin:0;font-weight:500}
@media(max-width:820px){.rec1{flex-direction:column;text-align:center}}
.eqg{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:26px;margin-top:30px}.eqg.g2{grid-template-columns:repeat(auto-fit,minmax(200px,260px));justify-content:center}
.pe{text-align:center}.pe .fo{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;display:block;margin-bottom:14px}.pe h3{margin:0 0 2px}.pe .rol{color:#ff6700;font-weight:600;margin:0 0 8px}
.sf{display:grid;place-items:center;background:var(--espuma);color:var(--mar);font-weight:700;border:2px dashed var(--mar2)}.pe .sf span{font-size:3rem}
.ex{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:30px}.ex figure{margin:0;width:84px;text-align:center;outline:0}
.ex .fx{width:84px;height:84px;border-radius:50%;object-fit:cover;filter:grayscale(1);opacity:.55;transition:filter .25s,opacity .25s,transform .25s}.ex .sf{display:grid}.ex .sf span{font-size:1.4rem}
.ex figure:hover .fx,.ex figure:focus .fx{filter:none;opacity:1;transform:scale(1.1);box-shadow:0 0 0 3px #ff6700,0 6px 18px rgba(255,103,0,.35)}
.ex figcaption{font-size:.8rem;margin-top:8px;line-height:1.2}
.pe .fo.sf{display:grid;place-items:center}
.pe img.fo{height:auto}.ex img.fx{height:84px}
.pb{align-items:start}.rg{text-align:center}.rg h3{margin:0 0 16px}.rg .cheque{width:100%;height:auto;border-radius:20px;box-shadow:0 18px 40px rgba(0,0,0,.35);margin-bottom:16px}.rg p{margin:0 0 16px}
#oferta{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:20px}
#oferta[hidden]{display:none}
#oferta .of{position:relative;max-width:min(440px,100%);max-height:100%;animation:ofin .35s ease-out}
#oferta img{display:block;width:100%;height:auto;max-height:calc(100vh - 40px);object-fit:contain;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
#oferta .ofx{position:absolute;top:-14px;right:-14px;width:40px;height:40px;border-radius:50%;border:2px solid #fff;background:#ff6700;color:#fff;font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
#oferta .ofx:hover,#oferta .ofx:focus-visible{background:#fff;color:#ff6700}
@keyframes ofin{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:820px){#oferta .ofx{top:-10px;right:-6px}}
.gal .gf{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:6px;display:block}
.cols3 .cf{height:420px;object-fit:cover;object-position:50% 30%}
@media(max-width:980px){.cols3 .cf{height:auto;aspect-ratio:1/1}}
