/* Modelo 25 · Neon Night — clases .nn */
.pmc-m-neon-night { min-height: 100vh; margin: 0; background-color: #0b0716; background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 28px 28px; color: #f5f3ff; }
.nn-glow { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.nn-glow span { position: absolute; border-radius: 50%; filter: blur(90px); opacity: .4; }
.nn-glow span:first-child { left: -5rem; top: -4rem; width: 20rem; height: 20rem; background: var(--pmc-primary); }
.nn-glow span:last-child { right: -7rem; top: 14rem; width: 19rem; height: 19rem; background: var(--pmc-secondary); opacity: .28; }
.nn { position: relative; z-index: 1; --k-ink: #f5f3ff; --k-muted: #c4bddb; --k-line: rgba(255,255,255,.12); --k-accent: var(--pmc-secondary-ink); --k-panel: rgba(255,255,255,.05); --k-panel-border: 1px solid rgba(255,255,255,.14); --k-radius: 1.25rem; --k-pad: 1.1rem; --k-btn-r: 1.1rem; --k-gap: 1.1rem; --k-q-bg: rgba(255,255,255,.06); --k-q-ink: #f5f3ff; --k-q-border: 1px solid rgba(255,255,255,.18); --k-h: var(--pmc-display); --k-h2-s: 1.1rem; --k-photo-r: .9rem; }
.nn-head { display: flex; flex-direction: column; gap: .75rem; padding-top: .75rem; }
.nn-open { align-self: flex-start; background: transparent; border: 1px solid var(--pmc-secondary-ink); color: var(--pmc-secondary-ink); letter-spacing: .06em; text-transform: uppercase; font-size: .75rem; }
.nn-open.is-closed { background: transparent; border-color: #fca5a5; color: #fca5a5; }
.nn-name { font: 800 clamp(2.6rem, 13vw, 3.2rem)/.95 var(--pmc-display); text-transform: uppercase; color: #fff; text-shadow: 0 0 18px var(--pmc-primary), 0 0 42px color-mix(in srgb, var(--pmc-primary) 60%, transparent); }
.nn-tagline { color: #d6d0ea; font-size: 1.02rem; line-height: 1.45; }
.nn .k-main { min-height: 3.7rem; background: linear-gradient(90deg, var(--pmc-grad-a), var(--pmc-grad-b)); color: var(--pmc-on-both); font: 700 1.05rem var(--pmc-display); text-transform: uppercase; letter-spacing: .04em; box-shadow: 0 0 28px color-mix(in srgb, var(--pmc-primary) 55%, transparent); }
.nn .k-h2 { text-transform: uppercase; letter-spacing: .05em; }
.nn .k-items .k-item { align-items: center; margin-bottom: .55rem; padding: .85rem 1rem; border: 1px solid rgba(255,255,255,.14); border-left: 4px solid var(--pmc-primary); border-radius: .9rem; background: rgba(255,255,255,.04); }
.nn .k-items .k-item:last-child { margin-bottom: 0; padding-bottom: .85rem; }
.nn .k-items .k-item:nth-child(even) { border-left-color: var(--pmc-secondary); }
.nn .k-items { --k-panel: transparent; --k-panel-border: 0; --k-pad: 0; }
.nn .k-price { color: #fff; }
.nn .k-ask { color: #fff; border-color: rgba(255,255,255,.3); }
.nn .k-hours th { color: #d6d0ea; }
.nn .k-sbtn:first-child { border-color: var(--pmc-secondary-ink); color: var(--pmc-secondary-ink); }
.nn .k-links a { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.18); }
.nn-foot a { color: #c4bddb; }
