/* 全节日响应式增强 v2.1 */

/* 新年 */
.deng {
    width: clamp(80px, 12vw, 140px);
    height: clamp(62px, 9.5vw, 110px);
    margin: clamp(24px, 4vw, 50px);
}
.deng-t {
    font-size: clamp(2rem, 5vw, 3.8rem);
    line-height: clamp(60px, 9vw, 105px);
}
.deng-a { width: clamp(68px, 10vw, 120px); height: clamp(62px, 9.5vw, 110px); }
.deng-b { width: clamp(32px, 5vw, 55px); height: clamp(62px, 9.5vw, 110px); margin-left: clamp(16px, 3vw, 30px); }
.fc-string-wrap { width: clamp(48px, 8vw, 70px); }
.fc-fu-tag { width: clamp(28px, 5vw, 38px); height: clamp(28px, 5vw, 38px); }
.greeting { font-size: clamp(1.8rem, 5vw, 3.5rem) !important; }

/* 国庆 */
.nd-float-svg { width: clamp(56px, 8.5vw, 88px); }

/* 元宵 */
.lf-lantern-left { width: clamp(48px, 10vw, 70px); height: clamp(110px, 22vw, 160px); }
.lf-lantern-right { width: clamp(62px, 12vw, 90px); height: clamp(145px, 28vw, 210px); }
.lf-tangyuan-container { width: clamp(90px, 22vw, 140px); height: clamp(78px, 18vw, 120px); right: clamp(8px, 2vw, 20px); }

/* 圣诞 */
.cm-tree-container { transform: scale(clamp(0.55, var(--fest-scale, 1), 1)); transform-origin: bottom center; }

/* 端午 */
.db-hanging-zongzi { width: clamp(36px, 8vw, 52px) !important; }

/* 中秋 */
.ma-moon-wrap { transform: scale(clamp(0.6, var(--fest-scale, 1), 1)); transform-origin: top right; }
.ma-flower { font-size: clamp(10px, 2.5vw, 16px) !important; }

/* 儿童 */
.cd-mascot-container {
    width: clamp(110px, 28vw, 180px);
    height: clamp(86px, 22vw, 140px);
    right: clamp(8px, 2vw, 20px);
}

@media (max-width: 768px) {
    .deng-box, .deng-box1 {
        transform: scale(0.72);
        transform-origin: top center;
        top: -15px;
    }
    .deng-box { left: -5px; }
    .deng-box1 { right: -5px; }
    .fc-string-left { left: 4vw; }
    .fc-string-right { right: 4vw; }
    .nd-blimp-wrap { transform: scale(0.68); transform-origin: top center; }
    .nd-blimp-left { left: 2vw; }
    .nd-blimp-right { right: 2vw; }
    .lf-lantern-left { left: 4vw; }
    .lf-lantern-right { right: 4vw; }
    .festival-text { font-size: clamp(1.5rem, 4vw, 2.5rem) !important; }
    .greeting-container { bottom: 20px; padding: 0 12px; }
}

@media (max-width: 480px) {
    .deng-box, .deng-box1 { transform: scale(0.58); }
    .nd-blimp-wrap { transform: scale(0.58); }
    .fest-greeting { top: 6px; }
    .cd-mascot-container { width: 100px; height: 78px; bottom: -35px; }
    .lf-tangyuan-container { width: 80px; height: 70px; bottom: 8px; }
}

@media (max-height: 500px) and (orientation: landscape) {
    .greeting-container { display: none; }
    .deng-box, .deng-box1 { transform: scale(0.5); top: -20px; }
    .nd-blimp-wrap { transform: scale(0.5); }
}
