:root {
  --bg:#06070a; --bg-2:#0a0d12; --surface:#0d1118; --surface-2:#121823;
  --text:#f6fbff; --muted:#98a7b8; --line:rgba(255,255,255,.09);
  --cyan:#20f6ff; --pink:#ff2bd6; --lime:#b7ff2a; --violet:#8b5cf6;
  --danger:#ff4d6d; --radius:22px; --shadow:0 24px 70px rgba(0,0,0,.42);
  --max:1240px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:
radial-gradient(circle at 12% 10%,rgba(32,246,255,.11),transparent 24rem),
radial-gradient(circle at 90% 18%,rgba(255,43,214,.10),transparent 26rem),
linear-gradient(180deg,#050609,#080b10 45%,#05070a);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;min-height:100vh;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.25;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 80%);z-index:-1}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%} button,input,textarea,select{font:inherit} button{cursor:pointer}
.header{position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(5,7,10,.78);backdrop-filter:blur(18px)}
.header-inner{max-width:var(--max);margin:auto;padding:.72rem 1.2rem;display:flex;align-items:center;gap:1rem}.brand{display:flex;align-items:center;gap:.8rem;min-width:0}.brand img{width:58px;height:58px;border-radius:50%;object-fit:cover;filter:contrast(1.05);box-shadow:0 0 0 1px rgba(32,246,255,.34),0 0 28px rgba(32,246,255,.16)}.brand-text{font-weight:950;text-transform:uppercase;letter-spacing:.045em;line-height:1.02;font-size:.97rem}.brand-text small{display:block;color:var(--cyan);font-size:.66rem;letter-spacing:.15em;margin-top:.25rem}.nav{margin-left:auto;display:flex;align-items:center;gap:.18rem}.nav a{padding:.65rem .72rem;border-radius:12px;color:#c8d3df;font-size:.89rem;font-weight:750;transition:.2s}.nav a:hover,.nav a.active{color:white;background:rgba(32,246,255,.08);box-shadow:inset 0 0 0 1px rgba(32,246,255,.16)}.menu-toggle{display:none;margin-left:auto;width:44px;height:42px;border:1px solid var(--line);border-radius:12px;background:#10151d;color:white;align-items:center;justify-content:center;flex-direction:column;gap:4px}.menu-toggle span{width:20px;height:2px;background:white;border-radius:5px}
.page{max-width:var(--max);margin:auto;padding:0 1.2rem}.hero{min-height:690px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:3.6rem;padding:4.8rem 0 4rem}.eyebrow{display:inline-flex;gap:.55rem;align-items:center;padding:.42rem .7rem;border-radius:999px;border:1px solid rgba(183,255,42,.32);background:rgba(183,255,42,.07);color:#dfff9b;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.eyebrow:before{content:"";width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 16px var(--lime)}.hero h1{margin:1rem 0 1.1rem;font-size:clamp(3rem,7vw,6.7rem);line-height:.88;letter-spacing:-.065em;font-weight:1000;text-transform:uppercase}.hero h1 .stroke{display:block;color:transparent;-webkit-text-stroke:1.6px rgba(255,255,255,.72)}.hero h1 .neon{display:block;background:linear-gradient(90deg,var(--cyan),#8bfaff 38%,var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(32,246,255,.17))}.hero-copy{max-width:650px;color:var(--muted);font-size:1.08rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}.btn{border:0;border-radius:14px;padding:.92rem 1.15rem;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;transition:transform .18s,box-shadow .18s,border-color .18s;background:#171d26;color:white}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(110deg,var(--cyan),#62f8ff);color:#001116;box-shadow:0 10px 35px rgba(32,246,255,.22)}.btn-pink{background:linear-gradient(110deg,var(--pink),#ff79e8);color:#190016;box-shadow:0 10px 35px rgba(255,43,214,.2)}.btn-outline{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.15);color:#eaf5ff}.btn-small{padding:.68rem .86rem;font-size:.84rem}.hero-card{position:relative;min-height:570px;border-radius:36px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(19,27,38,.88),rgba(7,9,13,.95));overflow:hidden;box-shadow:var(--shadow)}.hero-card:before,.hero-card:after{content:"";position:absolute;border-radius:50%;filter:blur(5px)}.hero-card:before{width:220px;height:220px;background:rgba(32,246,255,.16);top:-80px;right:-60px}.hero-card:after{width:240px;height:240px;background:rgba(255,43,214,.13);bottom:-100px;left:-50px}.hero-slideshow{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;opacity:0;transform:scale(1.035);transition:opacity .8s,transform 1.2s}.hero-slide.active{opacity:1;transform:scale(1)}.hero-slide img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.05) brightness(.78)}.hero-card-overlay{position:absolute;inset:auto 1.15rem 1.15rem;background:rgba(4,7,10,.75);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1rem;z-index:2}.hero-card-overlay strong{display:block;font-size:1.05rem}.hero-card-overlay span{color:var(--muted);font-size:.86rem}.hero-metric{position:absolute;z-index:3;top:1.1rem;left:1.1rem;padding:.55rem .72rem;border:1px solid rgba(32,246,255,.3);background:rgba(4,8,12,.72);border-radius:13px;color:var(--cyan);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em;box-shadow:0 0 28px rgba(32,246,255,.11)}
.section{padding:5rem 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.8rem}.section-kicker{color:var(--cyan);font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;font-weight:900}.section-title{font-size:clamp(2rem,4vw,3.6rem);line-height:.98;margin:.25rem 0 .5rem;letter-spacing:-.045em}.section-desc{color:var(--muted);max-width:650px;margin:0}.glass-panel{border:1px solid var(--line);background:linear-gradient(145deg,rgba(17,23,32,.86),rgba(9,12,17,.78));border-radius:var(--radius);box-shadow:var(--shadow)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.step{padding:1.35rem;position:relative;overflow:hidden}.step-no{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(32,246,255,.09);color:var(--cyan);font-weight:950;border:1px solid rgba(32,246,255,.22);box-shadow:0 0 30px rgba(32,246,255,.08)}.step h3{margin:1rem 0 .35rem;font-size:1rem}.step p{margin:0;color:var(--muted);font-size:.9rem}.step:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:rgba(255,43,214,.07);right:-35px;bottom:-35px}
.products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.product-card{border:1px solid var(--line);background:linear-gradient(155deg,rgba(17,24,33,.94),rgba(8,11,16,.94));border-radius:20px;overflow:hidden;transition:.25s;min-width:0;box-shadow:0 14px 40px rgba(0,0,0,.24)}.product-card:hover{transform:translateY(-6px);border-color:rgba(32,246,255,.33);box-shadow:0 20px 55px rgba(0,0,0,.4),0 0 30px rgba(32,246,255,.07)}.product-image{position:relative;aspect-ratio:4/4.55;overflow:hidden;background:#080b0f;cursor:zoom-in}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .42s cubic-bezier(.2,.7,.2,1),filter .25s;transform-origin:center}.product-image:hover img{transform:scale(1.045)}.product-image.is-zoomed{cursor:zoom-out}.product-image.is-zoomed img{transform:scale(1.65);filter:saturate(1.08)}.zoom-hint{position:absolute;right:.6rem;bottom:.6rem;padding:.33rem .48rem;border-radius:8px;background:rgba(2,5,8,.7);backdrop-filter:blur(8px);font-size:.68rem;color:white;border:1px solid rgba(255,255,255,.12);pointer-events:none}.product-badge{position:absolute;top:.65rem;left:.65rem;z-index:2;padding:.34rem .52rem;border-radius:8px;background:linear-gradient(90deg,var(--pink),#ff72e7);color:white;font-size:.67rem;text-transform:uppercase;letter-spacing:.09em;font-weight:950;box-shadow:0 0 22px rgba(255,43,214,.22)}.product-info{padding:1rem}.product-cat{color:var(--cyan);font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-name{font-size:1rem;line-height:1.25;margin:.4rem 0 .55rem;min-height:2.5em}.product-price{font-size:1.12rem;font-weight:950;color:#eaffaf}.product-sizes{display:flex;flex-wrap:wrap;gap:.35rem;margin:.75rem 0}.size-tag{font-size:.68rem;padding:.28rem .4rem;border-radius:7px;border:1px solid rgba(255,255,255,.1);color:#c8d3df;background:rgba(255,255,255,.025)}.product-actions{display:flex;gap:.5rem;margin-top:.8rem}.product-actions .btn{width:100%}
.catalog-toolbar{padding:1rem;display:flex;gap:.75rem;align-items:center;margin-bottom:1.2rem;position:sticky;top:84px;z-index:30;background:rgba(9,12,17,.92);backdrop-filter:blur(15px)}.search-box{position:relative;flex:1}.search-input{width:100%;border:1px solid var(--line);background:#080c12;color:white;padding:.82rem .95rem;border-radius:12px;outline:0}.search-input:focus{border-color:rgba(32,246,255,.5);box-shadow:0 0 0 3px rgba(32,246,255,.07)}.filters{display:flex;flex-wrap:wrap;gap:.45rem}.filter-btn{border:1px solid var(--line);background:#0c1118;color:#b9c6d3;padding:.68rem .76rem;border-radius:11px;font-weight:800;font-size:.78rem}.filter-btn.active,.filter-btn:hover{color:#001013;background:var(--cyan);border-color:var(--cyan)}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.feature{padding:1.45rem}.feature-icon{font-size:1.55rem}.feature h3{margin:.8rem 0 .35rem}.feature p{margin:0;color:var(--muted)}.feature:nth-child(1){box-shadow:inset 0 1px 0 rgba(32,246,255,.14)}.feature:nth-child(2){box-shadow:inset 0 1px 0 rgba(255,43,214,.14)}.feature:nth-child(3){box-shadow:inset 0 1px 0 rgba(183,255,42,.14)}
.quote-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:1rem}.quote-copy,.quote-form{padding:1.6rem}.quote-copy ul{padding-left:1.1rem;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.form-group{margin-bottom:.82rem}.form-label{display:block;font-size:.78rem;font-weight:850;margin-bottom:.35rem;color:#dce7f0}.form-input,.form-textarea{width:100%;border:1px solid var(--line);background:#080c11;color:white;border-radius:11px;padding:.78rem .84rem;outline:0}.form-textarea{min-height:110px;resize:vertical}.form-input:focus,.form-textarea:focus{border-color:rgba(255,43,214,.45);box-shadow:0 0 0 3px rgba(255,43,214,.06)}
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.contact-card{padding:1.15rem}.contact-card span{display:block;color:var(--muted);font-size:.78rem}.contact-card strong,.contact-card a{display:block;margin-top:.3rem;font-size:.92rem;word-break:break-word}.footer{margin-top:4rem;border-top:1px solid var(--line);background:#05070a}.footer-inner{max-width:var(--max);margin:auto;padding:2.4rem 1.2rem;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2rem}.footer-brand{display:flex;align-items:center;gap:.8rem}.footer-brand img{width:66px;height:66px;object-fit:cover;border-radius:50%}.footer h4{margin:.2rem 0 .8rem}.footer p,.footer a,.footer li{color:var(--muted);font-size:.86rem}.footer ul{padding:0;list-style:none;margin:0;display:grid;gap:.45rem}.footer-bottom{max-width:var(--max);margin:auto;padding:1rem 1.2rem;border-top:1px solid var(--line);color:#748393;font-size:.78rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.modal-overlay{position:fixed;inset:0;z-index:1400;background:rgba(0,0,0,.78);backdrop-filter:blur(13px);display:none;align-items:center;justify-content:center;padding:1rem}.modal-overlay.active{display:flex}.modal{width:min(930px,100%);max-height:min(92vh,850px);overflow:auto;border:1px solid rgba(32,246,255,.2);background:linear-gradient(145deg,#111722,#090d13);border-radius:24px;box-shadow:0 35px 100px rgba(0,0,0,.7),0 0 55px rgba(32,246,255,.08);display:grid;grid-template-columns:.95fr 1.05fr;position:relative}.modal-close{position:absolute;right:.8rem;top:.8rem;z-index:5;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(4,6,9,.78);color:white;font-size:1.5rem}.modal-image{min-height:550px;overflow:hidden;background:#06090d;cursor:zoom-in;position:relative}.modal-image img{width:100%;height:100%;object-fit:cover;transition:transform .42s}.modal-image.is-zoomed{cursor:zoom-out}.modal-image.is-zoomed img{transform:scale(1.55)}.modal-content{padding:2rem}.modal-title{font-size:1.8rem;line-height:1.06;margin:.35rem 0 .65rem}.modal-price{font-size:1.3rem;color:var(--lime);font-weight:950}.modal-description{color:var(--muted)}.size-selector{margin:1.1rem 0}.size-selector-label{display:block;font-size:.8rem;font-weight:850;margin-bottom:.45rem}.size-options{display:flex;flex-wrap:wrap;gap:.45rem}.size-option{border:1px solid var(--line);background:#0b1017;color:#d9e4ee;border-radius:9px;padding:.52rem .68rem;font-weight:850}.size-option.active{background:var(--cyan);color:#001013;border-color:var(--cyan)}.quantity-selector{display:flex;align-items:center;gap:.8rem;margin:1.1rem 0}.qty-btn{width:38px;height:38px;border:1px solid var(--line);background:#101722;color:white;border-radius:10px;font-size:1.2rem}.qty-value{min-width:32px;text-align:center;font-weight:950}.modal-actions{display:grid;gap:.55rem;margin-top:1rem}.modal-actions .btn-whatsapp{background:linear-gradient(100deg,var(--lime),#d5ff74);color:#071000}.modal-zoom-note{position:absolute;left:.7rem;bottom:.7rem;background:rgba(3,6,9,.72);border:1px solid var(--line);border-radius:9px;padding:.4rem .5rem;font-size:.72rem;pointer-events:none}
.empty-state{grid-column:1/-1;padding:3rem;text-align:center;border:1px dashed var(--line);border-radius:18px;color:var(--muted)}.spinner{width:35px;height:35px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--cyan);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[data-animate]{opacity:0;transform:translateY(22px);transition:opacity .6s,transform .6s}[data-animate].is-visible{opacity:1;transform:none}
.notice{border:1px solid rgba(183,255,42,.2);background:rgba(183,255,42,.05);border-radius:14px;padding:1rem;color:#dfeabb}.notice strong{color:var(--lime)}
@media(max-width:1000px){.hero{grid-template-columns:1fr;min-height:auto}.hero-card{min-height:480px}.products-grid{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:repeat(2,1fr)}.quote-wrap{grid-template-columns:1fr}.nav{display:none;position:absolute;left:1rem;right:1rem;top:76px;padding:.7rem;background:#0b1017;border:1px solid var(--line);border-radius:16px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.nav.active{display:flex}.menu-toggle{display:flex}.brand-text{font-size:.85rem}.catalog-toolbar{top:76px;flex-direction:column;align-items:stretch}}
@media(max-width:760px){.hero{padding:3rem 0 2rem;gap:2rem}.hero h1{font-size:clamp(2.7rem,15vw,4.5rem)}.hero-card{min-height:420px;border-radius:25px}.products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.product-info{padding:.8rem}.product-name{font-size:.9rem}.section{padding:3.5rem 0}.section-head{align-items:flex-start;flex-direction:column}.feature-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.modal{grid-template-columns:1fr;max-height:94vh}.modal-image{min-height:330px;height:42vh}.modal-content{padding:1.3rem}.catalog-toolbar{position:static}.form-row{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.page,.header-inner{padding-left:.8rem;padding-right:.8rem}.brand img{width:48px;height:48px}.brand-text small{display:none}.products-grid{grid-template-columns:1fr 1fr}.product-image{aspect-ratio:1/1.18}.product-actions .btn{font-size:.73rem;padding:.58rem .45rem}.steps{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}}

/* v4 - Catálogo dinámico: los productos insertados por JS deben ser visibles siempre. */
.product-card.catalog-enter{opacity:1!important;visibility:visible!important;transform:none!important;animation:catalogEnter .34s ease both}
.product-card.catalog-enter.catalog-enter-active{opacity:1!important;visibility:visible!important}
@keyframes catalogEnter{from{opacity:.15;transform:translateY(10px)}to{opacity:1;transform:none}}
.catalog-live-notice{position:fixed;right:18px;bottom:92px;z-index:9998;padding:.75rem 1rem;border-radius:999px;background:#0b1118;border:1px solid rgba(32,246,255,.45);box-shadow:0 0 24px rgba(32,246,255,.18);color:#dff;font-weight:800;font-size:.85rem;opacity:0;transform:translateY(8px);transition:.25s;pointer-events:none}
.catalog-live-notice.is-visible{opacity:1;transform:translateY(0)}
.product-card,.product-card *{visibility:visible}
.product-card .product-info{opacity:1!important}
.product-card .product-name,.product-card .product-price,.product-card .product-cat,.product-card .size-tag,.product-card .btn{opacity:1!important;visibility:visible!important}

/* v4.1 - Escaparate dinámico del home */
.hero-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:2rem;text-align:center;background:radial-gradient(circle at 50% 38%,rgba(32,246,255,.10),transparent 33%),linear-gradient(145deg,#0c1118,#07090d);z-index:1}
.hero-empty img{width:132px;height:132px;border-radius:50%;object-fit:cover;opacity:.9;box-shadow:0 0 0 1px rgba(32,246,255,.28),0 0 48px rgba(32,246,255,.13)}
.hero-empty strong{font-size:1.15rem}.hero-empty span{max-width:340px;color:var(--muted);font-size:.9rem}
.hero-product-link{display:block;color:inherit;text-decoration:none;transition:border-color .2s,background .2s,transform .2s}
.hero-product-link:hover{border-color:rgba(32,246,255,.28);background:rgba(4,7,10,.86);transform:translateY(-2px)}
.hero-dots{position:absolute;z-index:4;left:50%;bottom:.56rem;transform:translateX(-50%);display:flex;gap:.38rem;max-width:70%;overflow:hidden;pointer-events:none}
.hero-dot{width:6px;height:6px;flex:0 0 6px;border-radius:999px;background:rgba(255,255,255,.28);transition:width .25s,background .25s,box-shadow .25s}
.hero-dot.active{width:18px;background:var(--cyan);box-shadow:0 0 13px rgba(32,246,255,.65)}
.hero-slide{cursor:pointer}
.hero-slide img{background:#080b0f}
.hero-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 48%,rgba(2,5,8,.28) 75%,rgba(2,5,8,.58));pointer-events:none}

/* v4.2 - acceso discreto al panel */
.home-login-btn{display:inline-flex;align-items:center;justify-content:center;gap:.38rem;padding:.5rem .68rem;border-radius:10px;border:1px solid rgba(32,246,255,.22);background:rgba(32,246,255,.045);color:#c9faff;font-size:.74rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;transition:.2s;white-space:nowrap}
.home-login-btn:hover{color:#001116;background:var(--cyan);border-color:var(--cyan);box-shadow:0 0 22px rgba(32,246,255,.16);transform:translateY(-1px)}
@media(max-width:1000px){.home-login-btn{margin-left:auto}.menu-toggle{margin-left:0}}
@media(max-width:440px){.home-login-btn{padding:.46rem .55rem;font-size:.68rem}.home-login-btn span{display:none}}
