/* Diapositivas de la propuesta · 1280×720 · sistema visual de catalogo.nebucor.com.mx */
.sl { width: 1280px; height: 720px; position: relative; overflow: hidden; font-family: 'Instrument Sans', sans-serif; box-sizing: border-box; }
.sl *, .sl *::before, .sl *::after { box-sizing: border-box; }
.sl-dark { color: #FFFFFF; background: radial-gradient(120% 100% at 55% 0%, #1747B8 0%, #0B2470 34%, #061650 56%, #000A26 100%); }
.sl-light { color: #08122F; background: radial-gradient(700px 520px at 100% 0%, rgba(47,127,232,0.16), rgba(47,127,232,0) 70%), radial-gradient(620px 460px at 0% 100%, rgba(213,159,63,0.12), rgba(213,159,63,0) 70%), linear-gradient(180deg, #F8FAFD 0%, #EDF2FA 100%); }
.sl .abs { position: absolute; }

.sl .flare { position: absolute; border-radius: 50%; background: radial-gradient(closest-side, rgba(170,215,255,0.5), rgba(47,127,232,0.16) 55%, rgba(47,127,232,0) 78%); }
.sl .beam { position: absolute; top: -260px; height: 1300px; transform: rotate(20deg); background: linear-gradient(90deg, rgba(47,127,232,0) 0%, rgba(80,150,255,0.22) 100%); }
.sl .beamline { position: absolute; top: -260px; width: 2px; height: 1300px; transform: rotate(20deg); background: linear-gradient(180deg, rgba(220,240,255,0.8), rgba(127,208,247,0.06) 72%); box-shadow: 0 0 16px rgba(127,208,247,0.6); }
.sl .glow { position: absolute; border-radius: 50%; background: radial-gradient(closest-side, rgba(47,127,232,0.58), rgba(47,127,232,0.16) 55%, rgba(47,127,232,0) 76%); }
.sl .glowcore { position: absolute; border-radius: 50%; background: radial-gradient(closest-side, rgba(160,215,255,0.42), rgba(127,208,247,0) 75%); filter: blur(6px); }
.sl .pedestal { position: absolute; border-radius: 50%; background: radial-gradient(ellipse at 50% 45%, rgba(140,200,255,0.44) 0%, rgba(30,90,210,0.30) 42%, rgba(0,13,45,0) 72%); box-shadow: inset 0 2px 0 rgba(200,232,255,0.55); }
.sl .contact { position: absolute; border-radius: 50%; background: radial-gradient(closest-side, rgba(0,4,18,0.85), rgba(0,4,18,0)); filter: blur(4px); }
.sl .spark { position: absolute; border-radius: 50%; background: radial-gradient(circle, rgba(220,240,255,0.95), rgba(127,208,247,0) 70%); }
.sl .vignette { position: absolute; left: 0; top: 0; width: 1280px; height: 720px; background: radial-gradient(140% 120% at 45% 40%, rgba(0,0,0,0) 55%, rgba(0,3,15,0.58) 100%); }
.sl .dots { position: absolute; left: 0; top: 0; width: 1280px; height: 720px; background-image: radial-gradient(rgba(18,58,158,0.11) 1px, rgba(0,0,0,0) 1.3px); background-size: 22px 22px; }
.sl .grain { position: absolute; left: 0; top: 0; opacity: 0.09; mix-blend-mode: overlay; }

.sl .prod { display: block; filter: drop-shadow(0 20px 24px rgba(0,4,18,0.58)) drop-shadow(0 0 32px rgba(127,208,247,0.28)); }
.sl .reflejo { display: block; transform: scaleY(-1); opacity: 0.22; }

.sl .mono { font-family: 'JetBrains Mono', monospace; font-weight: 700; }
.sl .eyebrow { display: flex; align-items: center; gap: 12px; font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 3.5px; font-weight: 700; }
.sl .eyebrow i { display: block; width: 30px; height: 2px; }
.sl-dark .eyebrow { color: #EFCB7C; text-shadow: 0 0 14px rgba(239,203,124,0.45); }
.sl-dark .eyebrow i { background: linear-gradient(90deg, #FFE7A8, #D59F3F); box-shadow: 0 0 10px rgba(239,203,124,0.7); }
.sl-light .eyebrow { color: #C68A26; }
.sl-light .eyebrow i { background: linear-gradient(90deg, #E8B657, #C8902F); }

.sl .h { font-family: 'Archivo', sans-serif; font-weight: 900; font-stretch: 86%; line-height: 0.96; }
.sl .tw { background: linear-gradient(176deg, #FFFFFF 38%, #C7DBF5 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sl .tg { font-style: italic; padding-right: 0.12em; background: linear-gradient(180deg, #FFF1C6 0%, #EFCB7C 48%, #C8902F 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sl .tn { background: linear-gradient(176deg, #000D2D 40%, #123A9E 120%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sl .tgl { font-style: italic; padding-right: 0.12em; background: linear-gradient(180deg, #EBBE62 0%, #D59F3F 50%, #A87418 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }

.sl .page { font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 2.5px; font-weight: 700; }
.sl-dark .page { color: rgba(255,255,255,0.45); }
.sl-light .page { color: #8492AC; }

.sl .glass { background: linear-gradient(160deg, rgba(255,255,255,0.10), rgba(255,255,255,0.03)); border: 1px solid rgba(255,255,255,0.15); box-shadow: inset 0 1px 0 rgba(255,255,255,0.17), 0 18px 36px rgba(0,4,18,0.32); }
.sl .card-l { background: linear-gradient(180deg, #FFFFFF, #F7FAFE); box-shadow: inset 0 1px 0 #FFFFFF, 0 0 0 1px rgba(214,222,236,0.9), 0 8px 20px rgba(7,26,87,0.07); }
.sl .card-d { background: radial-gradient(120% 90% at 50% 0%, #2A63E0 0%, #0E2F86 36%, #071A57 62%, #000A26 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.25), inset 0 0 0 1px rgba(127,208,247,0.12), 0 2px 4px rgba(7,26,87,0.12), 0 24px 48px rgba(7,26,87,0.28), 0 60px 100px rgba(7,26,87,0.16); color: #FFFFFF; }
.sl .gold { color: #1A1200; background: linear-gradient(160deg, #FFF3CF 0%, #EFCB7C 30%, #D59F3F 62%, #F3D48E 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.8), inset 0 -3px 8px rgba(120,80,10,0.25), 0 12px 30px rgba(213,159,63,0.42), 0 0 0 1px rgba(255,236,190,0.4); }
.sl .tile { border-radius: 12px; display: flex; align-items: center; justify-content: center; background: radial-gradient(120% 120% at 30% 15%, #2A63E0, #071A57 72%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.3), 0 8px 18px rgba(18,58,158,0.32); }
.sl .disc { border-radius: 50%; background: radial-gradient(circle at 34% 28%, #FFFFFF 0%, #EEF3FA 55%, #D3DEEE 100%); box-shadow: inset 0 -3px 6px rgba(18,58,158,0.10), 0 0 0 1px rgba(214,222,236,0.9), 0 8px 18px rgba(7,26,87,0.14); display: flex; align-items: center; justify-content: center; }
.sl .dotg { width: 6px; height: 6px; border-radius: 3px; background: #EFCB7C; box-shadow: 0 0 8px rgba(239,203,124,0.9); flex: none; }
