/* ══════════ BMM SECURITY · TEMA HIELO · la web de seguridad vive sobre el tercer lienzo de la marca (hielo D6F5FF); dos bloques navy: el divisor de la ruta y el plan. Mismo motor y misma capa de movimiento que las otras webs: cambian las superficies, no el movimiento ══════════ */
:root{--soft1:#9CC4D8;--navy3:#0D3254;--vidrio:rgba(255,255,255,.82);--borde:rgba(10,42,70,.10);--borde2:rgba(10,42,70,.18);--ease-drawer:cubic-bezier(.32,.72,0,1);--hielo:#D6F5FF;--hielo2:#E6F9FF}
html{background:var(--hielo)}
body{background:var(--hielo);color:var(--ink)}
/* ── navegación: cristal hielo, píldora navy del plan ── */
.nav.scrolled{background:rgba(214,245,255,.86);box-shadow:0 1px 0 var(--borde)}
.nav .links{background:rgba(10,42,70,.07)}
@media (min-width:981px){.nav.scrolled .wrap{background:rgba(255,255,255,.78);border-color:var(--borde2);box-shadow:0 24px 60px -30px rgba(10,42,70,.35)}}
.lang{background:#fff}
/* ── hero: hielo con la malla técnica navy → azul → turquesa y el radar ── */
.hero{background:var(--hielo)}
.hero::before{background:radial-gradient(ellipse 55% 48% at 72% 42%,rgba(255,255,255,.75),transparent 70%)}
.hero::after{background:linear-gradient(to bottom,rgba(214,245,255,0),var(--hielo))}
.hsub .eyebrow{color:var(--blue)}
.hero .display{color:var(--navy)} .hero .display .l2{color:var(--blue)} .hero .display .l3{color:transparent;-webkit-text-stroke:1.5px var(--navy)}
.hero .bajada{color:var(--grey)}
.hb-outline{background:transparent;border-color:var(--navy);color:var(--navy)}
.hero .dato{background:rgba(255,255,255,.7);border-color:var(--borde)} .hero .dato .v{color:var(--navy)} .hero .dato .k{color:var(--grey)}
.demo{background:var(--vidrio);border-color:#fff;box-shadow:0 40px 90px -44px rgba(10,42,70,.45),0 1px 0 #fff inset}
.demo-cab .rot{color:var(--blue)} .demo-cab .d-tool{color:var(--navy)}
.demo-prompt{background:var(--hielo2);border-color:var(--borde);color:var(--navy)} .demo-prompt .caret{background:var(--blue)}
.d-item{background:#fff;border-color:#D9EEF6;color:var(--ink)} .d-item .lay{color:var(--blue)}
.flot{background:#fff;border-color:transparent;box-shadow:0 18px 40px -22px rgba(10,42,70,.45)}
.sat{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 22px 50px -26px rgba(10,42,70,.7)}
.sat .rot{color:var(--cyan)} .sat b{color:#fff} .sat .k{color:var(--soft1)} .sat-b .rot{color:var(--soft1)} .sat-b b{color:var(--cyan)}
.marquee{background:rgba(255,255,255,.55);border-color:var(--borde)} .mq-item{color:var(--navy)}
/* haz de luz en el borde de la tarjeta del agente (Border Beam) · azul sobre blanco */
@property --haz{syntax:"<angle>";inherits:false;initial-value:0deg}
.tilt .demo{position:relative;isolation:isolate}
.tilt .demo::before{content:"";position:absolute;inset:-1px;border-radius:25px;padding:1.5px;background:conic-gradient(from var(--haz),transparent 0 72%,rgba(4,126,255,0) 76%,var(--blue) 88%,var(--cyan) 93%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:haz 6s linear infinite;pointer-events:none;z-index:-1}
@keyframes haz{to{--haz:360deg}}
@supports (animation-timeline:scroll()){
  .hero-grid{animation:hero-fuga linear both;animation-timeline:scroll();animation-range:0 70vh}
  @keyframes hero-fuga{to{transform:translate3d(0,-36px,0) scale(.94);opacity:.15}}
}
/* ── explorador ── */
.explorar{background:var(--hielo)}
.modo{background:#fff} .modo button[aria-selected="true"]{color:#fff} .modo-ind{background:var(--navy)}
.tile{background:#fff;border-color:#fff;color:var(--navy)}
.tile .t-ico{background:var(--hielo2)} .tile .t-c{color:var(--muted)}
.tile[aria-pressed="true"]{border-color:var(--blue);background:#fff} .tile[aria-pressed="true"] .t-check{background:var(--blue);color:#fff}
.tile-todos{background:var(--navy);color:#fff;border-color:var(--navy)} .tile-todos .t-c{color:var(--soft1)}
@media (hover:hover) and (pointer:fine){.tile:hover{border-color:rgba(4,126,255,.5);box-shadow:0 24px 50px -28px rgba(10,42,70,.45)}.tile-todos:hover{background:var(--navy2)}}
.tiles .tile.rv{transform:none;opacity:1;transition:border-color .2s var(--ease-out-quart),transform .5s var(--ease-out),box-shadow .5s var(--ease-out),background-color .2s}
.tiles .tile.rv::after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:var(--hielo);z-index:3;pointer-events:none;transform-origin:top;transition:transform .7s var(--ease-out);transition-delay:calc(var(--i,0)*60ms)}
.tiles .tile.rv.in::after{transform:scaleY(0)}
@media (hover:hover) and (pointer:fine){.tiles .tile.rv:hover{transform:translateY(-3px)}}
/* ── catálogo: tarjetas blancas sobre hielo ── */
.casos{background:linear-gradient(to bottom,var(--hielo),var(--hielo2) 20%,var(--hielo2) 80%,var(--hielo))}
.card{background:#fff;border-color:#fff}
.c-tool,.c-area{color:var(--blue)} .c-ind{color:var(--muted)} .c-ind .ico{background:var(--hielo2);border-radius:3px;padding:1px}
.c-apps .app{background:var(--hielo2);border-color:transparent}
.nov-tag{background:var(--hielo);color:var(--navy)}
.card .c-pie .c-roi .ret{color:var(--muted)}
@media (hover:hover) and (pointer:fine){.card:hover{border-color:rgba(4,126,255,.45);box-shadow:0 30px 60px -34px rgba(10,42,70,.5)}}
#lista.costura{filter:blur(2px);opacity:.7;transition:none}
#lista{transition:filter .22s var(--ease-out),opacity .22s var(--ease-out)}
/* ── lo nuevo: coverflow, tarjetas blancas y navy alternadas ── */
.novedades{background:var(--hielo)}
.nv-track{perspective:1200px;perspective-origin:50% 50%;scroll-padding-inline:max(28px,calc((100vw - var(--maxw)) / 2 + 28px))}
.nv-card{background:transparent!important;border:0;padding:0;box-shadow:none!important;display:flex;transform-style:preserve-3d}
.nv-in{display:flex;flex-direction:column;gap:12px;flex:1;min-width:0;background:var(--navy);border:1px solid var(--navy);border-radius:var(--r);padding:24px;backface-visibility:hidden;transition:transform .25s var(--ease-out-quart),opacity .25s var(--ease-out-quart),box-shadow .5s var(--ease-out)}
.nv-card:nth-child(even) .nv-in{background:#fff;border-color:#fff}
.nv-card:nth-child(even) .nv-ico{background:var(--hielo2)}
@media (hover:hover) and (pointer:fine){.nv-card:hover .nv-in{box-shadow:0 30px 60px -34px rgba(10,42,70,.5)}}
.novedades .nota{color:var(--muted)}
.flecha{background:#fff;border-color:#fff;color:var(--navy)} .flecha:hover{border-color:var(--blue)}
/* ── ruta (navy, único bloque oscuro junto al plan) y seller (claro) ── */
.r-divisor .eyebrow{color:var(--cyan)}
.seller{background:#fff;border-top:0}
.seller .cab .rot{color:var(--blue)} .seller .cab h2{color:var(--navy)} .seller .cab .sub{color:var(--grey)}
.ses-card{background:var(--hielo2);border-color:var(--hielo)}
.ses-card h3{color:var(--navy)} .ses-card p{color:var(--grey)}
.ses-card .f-num{-webkit-text-stroke:1.5px var(--navy);color:transparent}
.ses-cards .ses-card:nth-child(1) .f-num,.ses-cards .ses-card:nth-child(3) .f-num{color:var(--blue);-webkit-text-stroke:0} .ses-cards .ses-card:nth-child(2) .f-num{color:var(--rosa);-webkit-text-stroke:0} .ses-cards .ses-card:nth-child(4) .f-num{color:transparent;-webkit-text-stroke:1.5px var(--navy)}
.seller .btn.primario{background:var(--navy);border-color:var(--navy);color:#fff}
/* ── plan: hielo (tarjetas blancas, texto navy) ── */
.prog-cab{display:flex;align-items:center;gap:14px;margin-bottom:10px} .ms-prog{width:30px;height:30px;flex:none}
.carrito{background:var(--hielo);color:var(--ink);border-top:0}
.carrito .cab h2{color:var(--navy)} .carrito .cab .rot{color:var(--blue)} .carrito .cab .sub{color:var(--grey)}
.items{border-top-color:var(--line)} .items li{border-bottom-color:var(--line)} .items .t{color:var(--navy)} .items .s{color:var(--muted)} .items .i-v{color:var(--navy);font-weight:800}
.i-ico{background:#fff;border:1px solid var(--line2)}
.items button{border-color:var(--line);color:var(--muted);background:#fff} .items button:hover{color:var(--navy);border-color:var(--navy)}
.vacio{color:var(--muted);border-color:var(--line)} .vacio .btn{border-color:var(--navy);color:var(--navy);background:#fff}
.bucket .v{color:var(--navy)} .bucket .k{color:var(--muted)} .bucket.b-lic{border-color:var(--navy)} .bucket.b-azure{border-color:var(--blue)} .bucket.b-bmm{border-color:var(--cyan)}
.dos .col.fin h4{color:var(--rosa)} .dos .col.csp h4{color:var(--blue)} .dos ul{color:var(--grey)} .dos .cifra{color:var(--navy)}
.fin-sub{color:var(--grey)} .fin-sub b{color:var(--navy)}
.bmm{border-top-color:var(--line)} .bmm .rot{color:var(--blue)} .bmm-fila .talla,.bmm-fila .talla.ok{color:var(--navy)} .bmm-fila .n{color:var(--navy)} .bmm .d,.bmm-fila .d{color:var(--muted)} .bmm .nota{color:var(--muted)}
.carrito .nota{color:var(--muted)}
.carrito .panel{background:#fff;border-color:#fff;box-shadow:0 30px 60px -40px rgba(10,42,70,.35)} .panel .rot{color:var(--blue)} .panel h3{color:var(--navy)}
.campos label{color:var(--grey)} .campos input,.campos select{background:#fff;color:var(--ink);border-color:#B9D8E6}
.prog{border-top-color:var(--line2)} .prog .talla{-webkit-text-stroke:1.5px var(--navy);color:transparent} .prog .talla.ok{color:var(--navy);-webkit-text-stroke:0}
.prog .n{color:var(--navy)} .prog .d{color:var(--grey)} .prog .d b{color:var(--navy)} .prog .falta{color:#B8860B} .prog .inv{color:#0A8F7A} .prog .inv.pend{color:var(--muted)}
.prog.prog-sin{opacity:.5}
.quien{display:none}
.carrito .btn{border-color:var(--navy);background:#fff;color:var(--navy)} .carrito .btn.primario{background:var(--navy);color:#fff;border-color:var(--navy)}
.carrito .btn.grande{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 18px 40px -22px rgba(10,42,70,.6)} .carrito .btn.grande .num{color:#fff} .carrito .btn.grande:hover{background:var(--navy2);border-color:var(--navy2)}
.carrito .volver{color:var(--muted)} .carrito .volver:hover{color:var(--navy)}
.carrito .panel:hover,.carrito .resumen:hover{box-shadow:0 30px 60px -36px rgba(10,42,70,.45)}
/* ── ficha ── */
dialog.ficha::backdrop{background:rgba(10,42,70,.55)}
dialog.ficha a{color:var(--blue)}
@media (max-width:720px){
  dialog.ficha{width:100vw;max-width:100vw;max-height:94vh;margin:auto 0 0;border-radius:24px 24px 0 0;position:fixed;inset:auto 0 0 0;touch-action:pan-y}
  dialog.ficha[open]{animation:hoja-in .5s var(--ease-drawer) both}
  @keyframes hoja-in{from{transform:translate3d(0,100%,0)}to{transform:none}}
  dialog.ficha .cuerpo{max-height:94vh}
  dialog.ficha .f-cab{padding-top:34px;cursor:grab;touch-action:none}
  dialog.ficha .f-cab::before{content:"";position:absolute;top:10px;left:50%;width:44px;height:5px;border-radius:3px;background:var(--line);transform:translateX(-50%)}
  dialog.ficha.arrastre{transition:none}
  dialog.ficha.suelta{transition:transform .35s var(--ease-out)}
}
/* ── formulario: blanco sobre hielo ── */
.solicitud{background:#fff}
/* ── pie bajo la página, cortina, vuelo, confeti ── */
html.pie-fijo .pagina{position:relative;z-index:1;background:var(--hielo);box-shadow:0 40px 80px -30px rgba(10,42,70,.4)}
html.pie-fijo footer.pie-inst{position:sticky;bottom:0;z-index:0}
.cortina{position:fixed;inset:0;z-index:90;background:linear-gradient(to bottom,var(--blue) 0 5px,var(--hielo) 5px);transform:scaleY(0);transform-origin:bottom;pointer-events:none}
.cortina.sube{transition:transform .22s var(--ease-in-out);transform:scaleY(1)}
.cortina.baja{transform-origin:top;transition:transform .32s var(--ease-in-out);transform:scaleY(0)}
.vuelo{position:fixed;z-index:95;width:34px;height:34px;border-radius:10px;background:#fff;display:grid;place-items:center;box-shadow:0 14px 30px -12px rgba(10,42,70,.5);pointer-events:none;will-change:transform,opacity}
.vuelo img{width:22px;height:22px}
.confeti{position:fixed;inset:0;z-index:96;pointer-events:none}
.tilt,.demo{min-width:0;max-width:100%}
@media (max-width:560px){.demo-cab{flex-wrap:wrap}.demo-ind{max-width:100%;margin-left:0;flex-basis:100%}.demo-cab .d-tool{white-space:normal}}
@media (prefers-reduced-motion:reduce){.tilt .demo::before{animation:none;opacity:.35}.tiles .tile.rv::after{display:none}.nv-in{transform:none!important;opacity:1!important}.cortina{display:none}.vuelo,.confeti{display:none}.hero-grid{animation:none}}
/* v2.5 · buckets como tarjetas hielo (rótulo arriba, cifra abajo) */
.bucket,.bucket.b-lic,.bucket.b-azure,.bucket.b-bmm{border-color:#CFE6F0;background:#F2FBFF}
.fin-inv{border-top-color:#CFE6F0}
