/* Promotional gallery extends the approved V6; the scroll scenes stay independent. */
.hero-action-group{display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}
.promo-shortcut{display:inline-flex;align-items:center;gap:12px;color:#c1cee2;font-size:14px;min-height:44px;transition:color 160ms}
.promo-shortcut:hover{color:#fff}.promo-shortcut>span{color:#70aaff;font-size:20px}
.desktop-nav .nav-promos{display:flex;align-items:center;gap:7px;color:#b9d3ff}
.nav-promos>span{width:5px;height:5px;border-radius:50%;background:var(--blue)}
#promociones{scroll-margin-top:15px}
.promotions{position:relative;padding-block:110px 105px;border-top:1px solid var(--line);background:radial-gradient(ellipse at 15% 0,#0c26433b,transparent 48%)}
.promo-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}
.promo-heading h2{font-size:clamp(36px,4.6vw,68px);letter-spacing:-.055em;line-height:1.07;margin-top:22px}
.promo-heading h2>span{color:#8797ad}
.promo-heading .eyebrow{font-size:12px;letter-spacing:.1em}
.promo-heading-side{padding-bottom:6px;max-width:340px;flex-shrink:0}
.promo-heading-side>p{font-size:16px;line-height:1.7;color:#9daabc}
.promo-count{display:inline-flex;align-items:center;gap:10px;margin-top:20px;font-size:13px;color:#c5d6ec;font-variant-numeric:tabular-nums}
.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:48px}
.promo-card{min-width:0}.promo-open{display:block;border-radius:10px;outline-offset:7px}
.promo-art{position:relative;aspect-ratio:4/5;overflow:hidden;border:1px solid #90b8f429;border-radius:10px;background:#091423}
.promo-art img{width:100%;height:100%;object-fit:contain;transition:transform 350ms var(--ease)}
.promo-expand{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:44px;height:44px;border:1px solid #b3cdff59;border-radius:50%;color:#fff;background:#06101dda;font-size:24px;opacity:0;transform:translateY(5px);transition:opacity 180ms,transform 180ms var(--ease)}
.promo-card-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:19px}
.promo-category{color:#8baff0;font-size:12px;letter-spacing:.065em;line-height:1.5;text-transform:uppercase;font-weight:550}
.promo-index{font-size:12px;color:#8290a3;font-variant-numeric:tabular-nums}
.promo-card h3{font-size:clamp(22px,2vw,30px);letter-spacing:-.035em;line-height:1.2;margin:9px 0 16px}
.promo-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:15px;border-top:1px solid #ffffff1a}
.promo-card-bottom>p{font-size:23px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.025em}
.promo-card-bottom>p>span{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:#93a0b4}
.promo-card-bottom small{font-size:11px;font-weight:450;margin-left:5px;color:#a4b0c2;letter-spacing:0}
.promo-view{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#a7b9d0;white-space:nowrap}
.promo-view>span{color:#76abff;font-size:20px}
.promo-footer{border-top:1px solid var(--line);margin-top:46px;padding-top:25px;display:flex;justify-content:space-between;gap:30px;align-items:center}
.promo-footer>p{color:#8c9bb0;font-size:12px;line-height:1.7}
.promo-footer>a{display:inline-flex;align-items:center;gap:25px;font-size:15px;color:#c3d8fc;min-height:44px}
.promo-footer>a>span{font-size:23px}
.promo-dialog{position:fixed;inset:0;margin:auto;padding:0;width:min(1140px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;border:1px solid #6a8fbd45;border-radius:16px;background:#07101c;color:var(--ink);box-shadow:0 30px 120px #000b}
.promo-dialog::backdrop{background:#01040bd9;backdrop-filter:blur(8px)}
.promo-dialog[open]{animation:promo-dialog-in 220ms cubic-bezier(.23,1,.32,1)}
.promo-dialog[data-keyboard-open]{animation:none}
@keyframes promo-dialog-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.promo-close{position:sticky;top:12px;float:right;margin:12px 12px -56px 0;z-index:4;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#07101eee;border:1px solid #b4cff166;color:#fff;font-size:20px;transition:transform 140ms}
.promo-dialog-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.promo-dialog-art{background:#020509;display:flex;align-items:center;justify-content:center;min-width:0}
.promo-dialog-art img{display:block;width:100%;height:auto;object-fit:contain;max-height:calc(100dvh - 48px)}
.promo-dialog-copy{padding:58px 38px 28px;min-width:0}
.promo-dialog-copy h2{font-size:clamp(28px,3vw,42px);line-height:1.1;margin-top:13px;letter-spacing:-.04em}
#promo-dialog-benefit{margin-top:17px;font-size:16px;color:#aab7c9;line-height:1.65}
.promo-dialog-price{font-size:44px;font-weight:550;letter-spacing:-.045em;margin:22px 0;font-variant-numeric:tabular-nums;line-height:1.2}
.promo-dialog-price>span{display:block;font-size:13px;font-weight:400;color:#a5b4cb;letter-spacing:0;margin-bottom:5px}
.promo-dialog-price>small{font-size:14px;font-weight:450;margin-left:8px;color:#b5c2d5;letter-spacing:0}
.promo-includes-label{font-size:14px;color:#e2e9f5;font-weight:550}
#promo-dialog-includes{padding:0;list-style:none;display:grid;gap:9px;font-size:14px;line-height:1.55;color:#b7c4d7;margin:13px 0 22px}
#promo-dialog-includes li{display:flex;gap:10px;align-items:flex-start}
#promo-dialog-includes li:before{content:'✓';color:#76aafa;flex-shrink:0}
.promo-dialog-conditions,.promo-dialog-validity{font-size:12px;line-height:1.65;color:#92a1b8}
.promo-dialog-validity{margin-top:8px}
.promo-dialog-actions{margin-top:24px;display:grid;gap:10px;text-align:center}
.promo-dialog-actions .button{width:100%;min-height:50px;justify-content:center;font-size:14px}
.promo-dialog-actions>span{font-size:14px;color:#bfcee4;font-variant-numeric:tabular-nums}
.promo-full{font-size:13px;color:#8eb7ff;padding-block:5px;display:inline-block}
.promo-dialog-nav{border-top:1px solid var(--line);margin-top:23px;padding-top:17px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.promo-dialog-nav>button{width:44px;height:44px;border:1px solid #57739869;border-radius:50%;font-size:20px;transition:background 160ms,transform 140ms}
.promo-dialog-nav>button:hover{background:#377cdf26}
.promo-dialog-nav>button:disabled{opacity:.3;cursor:default}
#promo-dialog-position{font-size:13px;color:#a5b6ce;font-variant-numeric:tabular-nums}
.promo-close:active,.promo-dialog-nav>button:active,.promo-dialog-actions .button:active{transform:scale(.97)}
@media(hover:hover) and (pointer:fine){.promo-open:hover .promo-art img{transform:scale(1.015)}.promo-open:hover .promo-expand{opacity:1;transform:none}.promo-open:hover .promo-view{color:white}}
.promo-open:focus-visible .promo-expand{opacity:1;transform:none}
@media(max-width:1100px){.desktop-nav{gap:23px}.promo-grid{gap:40px 20px}.promo-heading-side{max-width:280px}.promo-dialog-copy{padding:58px 26px 24px}.promo-view{font-size:12px}.promo-card-bottom>p{font-size:21px}}
@media(max-width:1000px){.promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-heading{align-items:flex-start;flex-direction:column;gap:24px}.promo-heading-side{max-width:none;display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px}.promo-count{margin-top:0;white-space:nowrap}.promo-dialog-layout{grid-template-columns:1fr 1fr}.promo-dialog-copy h2{font-size:30px}}
@media(max-width:960px){.desktop-nav{display:none}.menu-trigger{display:flex}}
@media(max-width:720px){.promotions{padding-block:76px}.promo-heading{margin-bottom:30px}.promo-heading-side{align-items:flex-start;flex-direction:column;gap:17px}.promo-heading-side>p{font-size:15px}.promo-heading h2{font-size:clamp(35px,7vw,50px)}.promo-heading .eyebrow{font-size:11px}.promo-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:12px}.promo-dialog-layout{grid-template-columns:1fr}.promo-dialog-art img{max-height:none;width:100%;height:auto}.promo-dialog-copy{padding:27px 24px 25px}.promo-dialog-actions{position:sticky;bottom:-25px;margin-inline:-24px;padding:16px 24px 20px;background:#07101cf5;border-top:1px solid #ffffff17;z-index:2}.promo-dialog-nav{margin-top:12px}.promo-footer{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:559px){.hero-action-group{gap:2px;flex-direction:column}.promo-shortcut{font-size:13px;min-height:36px}.promo-grid{grid-template-columns:1fr;gap:35px}.promo-art{border-radius:8px}.promo-card h3{font-size:26px}.promo-card-bottom>p{font-size:25px}.promo-card-bottom>p>span{font-size:13px}.promo-view{font-size:14px}.promo-category{font-size:12px}.promo-expand{opacity:1;transform:none;width:38px;height:38px}.promo-heading h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){.promo-dialog[open]{animation:none}.promo-art img,.promo-expand,.promo-close,.promo-dialog-nav>button{transition:none!important;transform:none!important}}
@media print{.promo-dialog,.promo-shortcut,.promo-expand,.promo-view{display:none!important}.promotions{padding:35px 0}.promo-grid{grid-template-columns:repeat(2,1fr)}.promo-card{break-inside:avoid}}
