/* Acentos navideños: quitar este enlace del HTML para desactivarlos. */
.holiday-theme .hero-kicker,
.holiday-theme .kit-badge { border: 1px solid #d9b76f; }
.holiday-theme .hero-kicker::before { content: '✦'; color: #f4cf80; margin-right: 7px; }
.holiday-theme .hero .btn-primary {
    color: #fffdf9;
    background: linear-gradient(135deg, #b82d32, #831d25);
    border: 1px solid #d9b76f;
    box-shadow: 0 10px 28px rgba(45, 10, 13, .32), inset 0 1px rgba(255,255,255,.18);
}
.holiday-theme .hero .btn-primary::before { content: '✦'; color: #f4cf80; margin-right: 9px; }
.holiday-theme .hero .btn-primary:hover {
    border: 1px solid #f4cf80;
    background: linear-gradient(135deg, #c63a3e, #9a222a);
    box-shadow: 0 13px 34px rgba(45, 10, 13, .4), 0 0 0 3px rgba(217,183,111,.2);
}
.holiday-theme .hero .btn-secondary,
.holiday-theme .opening-link { border-color: #d9b76f; background: rgba(18, 74, 54, .56); }
.holiday-theme .hero .btn-secondary:hover,
.holiday-theme .opening-link:hover { color: #fff; background: #18553e; box-shadow: 0 0 0 3px rgba(217,183,111,.18); }
.holiday-theme .nav-link.active { background: rgba(25, 85, 61, .85); box-shadow: inset 0 -2px #d9b76f; }
.holiday-theme .product-filter.is-active { background: #18553e; border-color: #c6a25f; }
.holiday-theme .product-filter:hover { border-color: #b59759; }
.holiday-theme .kit-badge.popular,
.holiday-theme .kit-badge.premium { background: #a4232b; }
.holiday-theme .kit-badge.festa,
.holiday-theme .kit-badge.variado { background: #18553e; }
.holiday-theme .btn-whatsapp,
.holiday-theme .item-order-btn { background: #187c4d; border: 1px solid #caa560; box-shadow: 0 5px 14px rgba(30,76,47,.15); }
.holiday-theme .btn-whatsapp:hover,
.holiday-theme .item-order-btn:hover { background: #115f3b; box-shadow: 0 8px 18px rgba(30,76,47,.24); }
.holiday-theme .product-ticker { background: #5a2025; border-block-color: rgba(217,183,111,.5); }
.holiday-theme .product-ticker-label,
.holiday-theme .product-ticker-toggle { background: #164836; }
.holiday-theme .product-ticker-dot { background: #f4cf80; box-shadow: 0 0 0 4px rgba(244,207,128,.16); }
.holiday-theme .product-ticker-group li::before { color: #f4cf80; }
.holiday-theme .product-ticker-toggle:hover { background: #226148; }

/* Guirnalda y esferas: decoraciones contenidas en la portada. */
.holiday-theme .holiday-lights {
    position: absolute;
    z-index: 2;
    top: 76px;
    left: 0;
    right: 0;
    height: 44px;
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    pointer-events: none;
}
.holiday-theme .holiday-lights::before {
    content: '';
    position: absolute;
    top: -10px;
    left: -3%;
    width: 106%;
    height: 26px;
    border-bottom: 2px solid rgba(223, 179, 103, .72);
    border-radius: 0 0 50% 50%;
}
.holiday-theme .holiday-lights span {
    position: relative;
    top: 12px;
    width: 12px;
    height: 19px;
    flex: none;
    border-radius: 48% 48% 55% 55%;
    background: #f0c86f;
    box-shadow: 0 0 10px 3px rgba(255, 207, 113, .62), 0 0 24px rgba(255, 207, 113, .4);
    animation: holiday-twinkle 2.7s ease-in-out infinite alternate;
}
.holiday-theme .holiday-lights span::before {
    content: '';
    position: absolute;
    top: -5px;
    left: 3px;
    width: 6px;
    height: 6px;
    border-radius: 2px 2px 0 0;
    background: #a98355;
}
.holiday-theme .holiday-lights span:nth-child(3n+2) { background: #ef6660; box-shadow: 0 0 10px 3px rgba(239,102,96,.6), 0 0 24px rgba(239,102,96,.38); animation-delay: -.9s; }
.holiday-theme .holiday-lights span:nth-child(3n) { background: #71caa2; box-shadow: 0 0 10px 3px rgba(113,202,162,.58), 0 0 24px rgba(113,202,162,.35); animation-delay: -1.8s; }
@keyframes holiday-twinkle { from { opacity: .63; } to { opacity: 1; } }

.holiday-theme .holiday-ornaments {
    position: absolute;
    z-index: 2;
    top: 132px;
    right: clamp(24px, 8vw, 145px);
    display: flex;
    align-items: flex-start;
    gap: clamp(18px, 3vw, 46px);
    pointer-events: none;
}
.holiday-theme .holiday-ornaments span {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    flex: none;
    border: 1px solid rgba(255,255,255,.4);
    border-radius: 50%;
    background: radial-gradient(circle at 32% 28%, #ffe4b0 0, #d9a747 26%, #936625 72%, #64451f 100%);
    box-shadow: inset -5px -7px 13px rgba(52,30,14,.24), 0 8px 20px rgba(20,10,8,.28);
    animation: holiday-sway 5s ease-in-out infinite alternate;
    transform-origin: center -95px;
}
.holiday-theme .holiday-ornaments span::before {
    content: '';
    position: absolute;
    bottom: calc(100% + 4px);
    left: 50%;
    width: 1px;
    height: 140px;
    background: rgba(227,197,143,.75);
}
.holiday-theme .holiday-ornaments span::after {
    content: '';
    position: absolute;
    bottom: calc(100% - 2px);
    left: calc(50% - 7px);
    width: 14px;
    height: 8px;
    border-radius: 3px 3px 0 0;
    background: #d9b76f;
}
.holiday-theme .holiday-ornaments span:nth-child(2) { width: 58px; height: 58px; margin-top: 38px; background: radial-gradient(circle at 32% 28%, #f9b0a4 0, #b82d32 34%, #721e24 76%); animation-delay: -1.4s; }
.holiday-theme .holiday-ornaments span:nth-child(3) { width: 38px; height: 38px; margin-top: 12px; background: radial-gradient(circle at 32% 28%, #b3e2c2 0, #278260 35%, #144c3a 76%); animation-delay: -2.7s; }
@keyframes holiday-sway { from { transform: rotate(-3deg); } to { transform: rotate(3deg); } }

@media (max-width: 768px) {
    .holiday-theme .holiday-lights { top: 70px; height: 35px; }
    .holiday-theme .holiday-lights span { width: 9px; height: 15px; }
    .holiday-theme .holiday-lights span:nth-child(n+11) { display: none; }
    .holiday-theme .holiday-ornaments { top: 112px; right: 20px; gap: 14px; }
    .holiday-theme .holiday-ornaments span { width: 28px; height: 28px; }
    .holiday-theme .holiday-ornaments span:nth-child(2) { width: 35px; height: 35px; margin-top: 26px; }
    .holiday-theme .holiday-ornaments span:nth-child(3) { display: none; }
    .holiday-theme .hero-content { padding-top: 28px; }
}

@media (prefers-reduced-motion: reduce) {
    .holiday-theme .holiday-lights span,
    .holiday-theme .holiday-ornaments span { animation: none; }
}
