:root{
  --ink:#171717; --ink-2:#222; --muted:#6b6b6b; --line:#e6e6e6; --bg:#fff; --bg-soft:#f5f5f5;
  --dark:#111; --accent:#2563eb;
  --font:'Poppins',system-ui,sans-serif;
  --radius:12px; --radius-pill:999px;
  --gutter:clamp(16px,4vw,48px);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip-link{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:8px 14px;z-index:200}
.skip-link:focus{left:8px;top:8px}
.container{width:100%;max-width:1400px;margin-inline:auto;padding-inline:var(--gutter)}

.announce{background:var(--dark);color:#fff;text-align:center;font-size:11px;font-weight:500;letter-spacing:.04em;padding:9px var(--gutter)}

.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.header__in{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1400px;margin:auto;padding:14px var(--gutter)}
.logo img{height:26px;width:auto}
.nav{display:flex;gap:32px;font-size:14px;font-weight:500}
.nav a:hover{opacity:.6}
.header__actions{display:flex;gap:6px}
.icon-btn{background:none;border:0;padding:8px;color:inherit;position:relative;line-height:0}
.menu-toggle{display:none}
.cart-count{position:absolute;top:0;right:0;min-width:18px;height:18px;border-radius:9px;background:var(--dark);color:#fff;font-size:11px;line-height:18px;text-align:center}

.btn{display:inline-block;background:var(--dark);color:#fff;border:1px solid var(--dark);border-radius:var(--radius-pill);padding:12px 28px;font-size:13px;font-weight:500;letter-spacing:.03em;transition:.2s}
.btn:hover{background:#333}
.btn--light{background:#fff;color:var(--dark);border-color:#fff}
.btn--light:hover{background:#eee}
.btn--outline{background:none;color:var(--dark)}
.btn--outline:hover{background:var(--dark);color:#fff}
.btn--block{width:100%;text-align:center}
.btn:disabled{opacity:.4;cursor:not-allowed}

.hero{position:relative;height:min(78vh,760px);min-height:420px;overflow:hidden;background:#222;color:#fff}
.hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent 55%)}
.hero__copy{position:absolute;left:var(--gutter);bottom:clamp(28px,6vw,72px);max-width:720px}
.hero h1{font-size:clamp(34px,6vw,72px);line-height:1.05;font-weight:600;text-transform:uppercase;margin-bottom:24px}

.features{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-block:64px;text-align:center}
.feature img{margin:0 auto 16px;height:64px;width:64px;object-fit:contain}
.feature h3{font-size:18px;font-weight:600;margin-bottom:8px}
.feature p{color:var(--muted);font-size:14px;max-width:320px;margin:auto}

.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.modules img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}

.section{padding-block:72px}
.section__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:32px}
h2{font-size:clamp(28px,4vw,52px);line-height:1.1;font-weight:600;color:var(--ink-2)}
.link{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}

.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{display:flex;flex-direction:column}
.card__img{background:var(--bg-soft);border-radius:var(--radius);aspect-ratio:1;overflow:hidden}
.card__img img{width:100%;height:100%;object-fit:cover}
.swatches{display:flex;gap:6px;margin:12px 0 4px}
.swatch{width:16px;height:16px;border-radius:50%;border:1px solid var(--line)}
.rating{font-size:12px;color:var(--muted)}
.rating b{color:var(--ink)}
.card h3{font-size:15px;font-weight:500;margin:4px 0}
.price{font-weight:600}
.price small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.card .btn{margin-top:12px;padding:10px 16px;width:100%;text-align:center}

.titanium{display:grid;grid-template-columns:1fr 1fr;background:var(--bg-soft)}
.titanium img{width:100%;height:100%;object-fit:cover;min-height:360px}
.titanium__copy{padding:clamp(28px,6vw,96px);display:flex;flex-direction:column;justify-content:center;gap:16px;align-items:flex-start}
.titanium .price{font-size:24px}

.collections{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.collection img{aspect-ratio:1;width:100%;object-fit:cover;border-radius:var(--radius);margin-bottom:12px}
.collection h3{font-size:18px;font-weight:600}
.collection p{color:var(--muted);font-size:14px}
.collection:hover img{opacity:.9}

.carousel{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px}
.carousel figure{flex:0 0 min(420px,80%);scroll-snap-align:start;position:relative}
.carousel img{aspect-ratio:4/5;width:100%;object-fit:cover;border-radius:var(--radius)}
.carousel figcaption{position:absolute;left:16px;bottom:16px;background:#fff;border-radius:var(--radius-pill);padding:6px 16px;font-size:13px;font-weight:500}

.story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);align-items:center;padding-block:72px}
.story img{border-radius:var(--radius);width:100%;aspect-ratio:4/3;object-fit:cover}
.story h2{margin-bottom:16px}
.story p{color:var(--muted);margin-bottom:16px}

.reviews{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-bottom:24px}
blockquote{background:var(--bg-soft);border-radius:var(--radius);padding:32px}
.stars{color:#f5a623;letter-spacing:2px;margin-bottom:12px}
blockquote p{font-size:18px;margin-bottom:12px}
cite{font-size:13px;color:var(--muted);font-style:normal}

.posts{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.post img{aspect-ratio:16/9;width:100%;object-fit:cover;border-radius:var(--radius);margin-bottom:14px}
.post time{font-size:12px;color:var(--muted)}
.post h3{font-size:20px;font-weight:600;margin:4px 0}
.post p{color:var(--muted);font-size:14px}

.footer{background:var(--dark);color:#cfcfcf;margin-top:72px;font-size:14px}
.footer__in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.4fr;gap:32px;padding-block:56px}
.footer__logo{margin-bottom:14px;height:24px;width:auto}
.footer h4{color:#fff;font-size:14px;margin-bottom:12px}
.footer a{display:block;padding:3px 0}
.footer a:hover{color:#fff}
.newsletter input{width:100%;padding:11px 16px;border-radius:var(--radius-pill);border:1px solid #444;background:#1c1c1c;color:#fff;margin:10px 0;font:inherit}
.footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #2a2a2a;padding-block:20px;font-size:12px;color:#888}

.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:90}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:#fff;z-index:100;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s}
.drawer.open{transform:none}
.drawer__head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}
.drawer__body{flex:1;overflow:auto;padding:16px 20px}
.drawer__foot{padding:16px 20px;border-top:1px solid var(--line)}
.totals{display:flex;justify-content:space-between;font-weight:600;margin-bottom:6px}
.hint{font-size:12px;color:var(--muted);margin-bottom:12px}
.empty{color:var(--muted);text-align:center;margin-top:40px}
.line{display:grid;grid-template-columns:64px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.line img{width:64px;height:64px;object-fit:cover;border-radius:8px;background:var(--bg-soft)}
.line h4{font-size:14px;font-weight:500}
.line small{color:var(--muted)}
.qty{display:flex;align-items:center;gap:8px;margin-top:4px}
.qty button{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);background:#fff}

@media (max-width:900px){
  .menu-toggle{display:block}
  .nav{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;gap:0;border-bottom:1px solid var(--line);display:none}
  .nav.open{display:flex}
  .nav a{padding:14px var(--gutter);border-top:1px solid var(--line)}
  .header__in{position:relative}
  .features,.modules,.reviews,.posts,.titanium,.story{grid-template-columns:1fr}
  .grid,.collections{grid-template-columns:repeat(2,1fr)}
  .footer__in{grid-template-columns:1fr 1fr}
  .section{padding-block:48px}
}
@media (max-width:520px){
  .footer__in{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .drawer{transition:none}
}

/* Acceso de vuelta a VAQENO (Revomax forma parte de VAQENO) */
.vq-back{background:#0d0f12;border-bottom:1px solid #222;padding:7px var(--gutter);font-size:12px;font-weight:600}
.vq-back a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:6px;opacity:.9}
.vq-back a:hover{opacity:1;color:#ff5a00}
