/* MeteoPaint · efectos de la web (20-oct-2026): tormenta, 3D, aparición y menú */
.mp-con-tormenta{position:relative;isolation:isolate;overflow:hidden}
.mp-con-tormenta>*{position:relative;z-index:1}
.mp-con-tormenta>.mp-tormenta,.mp-con-tormenta>.mp-destello{position:absolute;inset:0;z-index:0;pointer-events:none}
.mp-tormenta{width:100%;height:100%;mix-blend-mode:screen}
.mp-destello{background:radial-gradient(ellipse at 50% 0%,rgba(205,225,255,.85),rgba(120,160,255,.25) 45%,transparent 75%);opacity:0;transition:opacity .07s linear}

/* Tarjetas 3D con brillo que sigue al ratón */
.mp-3d{transform-style:preserve-3d;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s;will-change:transform;position:relative}
.mp-3d:hover{box-shadow:0 22px 50px -18px rgba(0,180,255,.45)}
.mp-3d::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .25s;background:radial-gradient(420px circle at var(--brillo-x,50%) var(--brillo-y,50%),rgba(130,210,255,.16),transparent 45%)}
.mp-3d:hover::after{opacity:1}

/* Aparecer al desplazarse */
.mp-aparece{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.mp-aparece.mp-visto{opacity:1;transform:none}

/* Galería de capturas reales */
.mp-galeria{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-top:22px}
.mp-galeria figure{margin:0;border-radius:16px;overflow:hidden;background:#0b1626;border:1px solid rgba(120,180,255,.18)}
.mp-galeria img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.mp-galeria figcaption{padding:12px 14px 14px;font-size:14px;line-height:1.45;color:#b9cde3}
.mp-galeria figcaption b{display:block;color:#eaf4ff;font-size:15px;margin-bottom:3px}
.mp-galeria figure:first-child{grid-column:1/-1}
@media(min-width:900px){.mp-galeria figure:first-child img{aspect-ratio:21/9}}

/* Menú: fijo con cristal, enlace activo y ☰ en móvil */
header.top,header.mp-top{position:sticky;top:0;z-index:50;transition:background .3s,box-shadow .3s,backdrop-filter .3s}
header.mp-pegado{background:rgba(6,14,26,.78)!important;backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);box-shadow:0 8px 30px -12px rgba(0,0,0,.6)}
nav.menu a,nav.mp-nav a{position:relative}
nav.menu a.mp-activo,nav.mp-nav a.mp-activo{color:#7fe3ff}
nav.menu a::after,nav.mp-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:linear-gradient(90deg,#00c8ff,#e83fd0);transform:scaleX(0);transition:transform .25s}
nav.menu a:hover::after,nav.mp-nav a:hover::after,nav.menu a.mp-activo::after,nav.mp-nav a.mp-activo::after{transform:scaleX(1)}
.mp-hamburguesa{display:none;width:42px;height:42px;border-radius:10px;border:1px solid rgba(140,190,240,.35);background:rgba(10,22,38,.7);cursor:pointer;padding:10px 9px;flex-direction:column;justify-content:space-between}
.mp-hamburguesa span{display:block;height:2px;border-radius:2px;background:#e6f4ff;transition:transform .25s,opacity .25s}
.mp-menu-abierto .mp-hamburguesa span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.mp-menu-abierto .mp-hamburguesa span:nth-child(2){opacity:0}
.mp-menu-abierto .mp-hamburguesa span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media(max-width:820px){
 .mp-hamburguesa{display:flex}
 header.top nav.menu,header.mp-top nav.mp-nav{position:absolute;left:12px;right:12px;top:calc(100% + 6px);display:none!important;flex-direction:column;gap:2px;padding:10px;border-radius:14px;background:rgba(8,16,30,.96);backdrop-filter:blur(14px);border:1px solid rgba(120,180,255,.2);box-shadow:0 20px 40px rgba(0,0,0,.5)}
 .mp-menu-abierto nav.menu,.mp-menu-abierto nav.mp-nav{display:flex!important}
 header.top nav.menu a,header.mp-top nav.mp-nav a{display:block!important;padding:12px 10px;border-radius:8px;font-size:15px}
 header.top nav.menu a:hover,header.mp-top nav.mp-nav a:hover{background:rgba(0,180,255,.1)}
}
@media(prefers-reduced-motion:reduce){.mp-aparece{opacity:1;transform:none}.mp-3d{transition:none}}
