/* One small, static light border; only the entrance animates. No image downloads. */
.christmas-banner,.christmas-info{box-sizing:border-box;position:relative;isolation:isolate;background:linear-gradient(120deg,#163c32,#244d3c 58%,#173b32);color:#fff9e8;border:1px solid #cdb477;border-radius:24px;font:14px/1.5 system-ui,sans-serif;text-align:left;box-shadow:0 -5px 28px #10251b30}
.christmas-banner[hidden],.christmas-info[hidden],.christmas-banner [hidden],.christmas-info [hidden]{display:none!important}
.christmas-banner{position:fixed;z-index:99990;inset:auto 88px -20px;max-width:1050px;margin:0 auto;padding:24px 28px calc(36px + env(safe-area-inset-bottom));transform:translateY(calc(100% + 30px));transition:transform .45s cubic-bezier(.2,.7,.2,1);max-height:calc(70dvh + 20px);overflow:auto;overscroll-behavior:contain}
.christmas-banner.is-visible{transform:translateY(0)}
.christmas-lights{position:absolute;inset:7px 7px -8px;z-index:-1;pointer-events:none;border-radius:18px;background:radial-gradient(ellipse at center,#fffbd4 0 2px,#f9d678 3px,#edce6b55 5px,transparent 8px) 0 0/28px 12px repeat-x,radial-gradient(ellipse at center,#ffe8c4 0 2px,#e6aa6a 3px,#efb85b44 5px,transparent 8px) 0 10px/12px 28px repeat-y,radial-gradient(ellipse at center,#fffbd4 0 2px,#f9d678 3px,#edce6b55 5px,transparent 8px) 100% 10px/12px 28px repeat-y}
.christmas-banner-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 30px}
.christmas-copy{min-width:0;padding-right:4px}.christmas-copy>strong{display:block;font-family:Georgia,serif;font-size:21px;font-weight:400;line-height:1.3;color:#ffe8ae;margin-bottom:5px}
.christmas-copy p,.christmas-banner-bottom p{margin:0;font-size:13px;line-height:1.5;color:#fff9e8;overflow-wrap:anywhere}
.christmas-countdown{text-align:center;padding:0 14px 0 0;align-self:center}.christmas-countdown-title{display:block;font-size:11px;color:#f4dfad;letter-spacing:.035em}
.christmas-clock{display:flex;gap:9px;justify-content:center;margin:3px 0}.christmas-clock>span{min-width:38px;display:flex;flex-direction:column;align-items:center}.christmas-clock b{font-size:25px;line-height:1.15;letter-spacing:.02em;font-variant-numeric:tabular-nums;font-weight:650;color:#fff8df}.christmas-clock small{font-size:9px;line-height:1.4;color:#f4dfad}.christmas-target{display:block;font-size:9px;color:#e7d8b6}
.christmas-banner-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px 16px;padding-top:7px;border-top:1px solid #e1c68135}.christmas-banner-bottom p{font-size:11px;color:#e7dfc9}.christmas-banner-bottom a{flex:none;font-size:12px;font-weight:600;color:#ffe4a0;text-decoration:underline;text-underline-offset:3px;min-height:30px;display:inline-flex;align-items:center}
.christmas-close{position:absolute;top:8px;right:9px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff3d2;font:26px/1 system-ui;cursor:pointer;z-index:2}.christmas-close:hover{background:#ffffff15}.christmas-banner a:focus-visible,.christmas-close:focus-visible{outline:2px solid #ffdc85;outline-offset:2px}
.christmas-info{margin:18px 0 24px;padding:26px 26px 22px;overflow:hidden;scroll-margin-top:135px}.christmas-info h2{margin:0 0 10px;padding:0;border:0;background:none;color:#ffe8ae;font:400 25px/1.25 Georgia,serif;text-align:left;text-transform:none}.christmas-info h2::before,.christmas-info h2::after{display:none}.christmas-info p{margin:10px 0;color:#fff9e8;font-size:14px;line-height:1.55;text-align:left}.christmas-info-current{font-weight:600}.christmas-info .christmas-info-footnote{font-size:12px;color:#e7dfc9}
.christmas-deadlines{display:grid;gap:0;margin:16px 0;border:1px solid #d4c39b50;border-radius:12px;overflow:hidden}.christmas-deadlines>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 14px;background:#ffffff09}.christmas-deadlines>div+div{border-top:1px solid #d4c39b40}.christmas-deadlines dt{font-size:13px;font-weight:500}.christmas-deadlines dd{margin:0;text-align:right;color:#ffe4a0;font-weight:700;font-variant-numeric:tabular-nums}.christmas-deadlines small{display:block;font-size:10px;font-weight:400}.christmas-deadlines .is-expired time{text-decoration:line-through;color:#dfd9c8}
@media(max-width:700px){
 .christmas-banner{inset:auto 8px -20px;padding:22px 20px calc(30px + env(safe-area-inset-bottom));border-radius:22px;max-height:calc(55dvh + 20px)}
 .christmas-banner-inner{grid-template-columns:1fr;gap:8px}.christmas-copy{padding-right:22px}.christmas-copy>strong{font-size:18px;margin-bottom:4px}.christmas-copy p{font-size:11px;line-height:1.45}.christmas-countdown{padding:0;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:10px}.christmas-countdown-title{text-align:left;max-width:100px;line-height:1.3}.christmas-clock{gap:12px;margin:0;justify-content:flex-end}.christmas-clock b{font-size:22px}.christmas-clock>span{min-width:28px}.christmas-target{grid-column:1/-1;text-align:right;font-size:8px;margin-top:2px}.christmas-banner-bottom{display:block;padding-top:6px}.christmas-banner-bottom p{font-size:10px}.christmas-banner-bottom a{min-height:36px;font-size:11px}.christmas-close{top:7px;right:7px}
 .christmas-info{padding:24px 18px 18px;border-radius:18px}.christmas-info h2{font-size:22px}.christmas-info p{font-size:13px}.christmas-deadlines>div{padding:10px;gap:9px}.christmas-deadlines dt{font-size:11px}.christmas-deadlines dd{font-size:13px;white-space:nowrap}
 body.christmas-banner-open:not(:has(dialog[open],.modal.show,#helpdesk-window.open)) .languageSelection:not(.expanded),body.christmas-banner-open:not(:has(dialog[open],.modal.show,#helpdesk-window.open)) .helpdesk-widget{bottom:calc(var(--christmas-banner-height,250px) + 12px)}
 body.christmas-banner-open:not(:has(dialog[open],.modal.show,#helpdesk-window.open)) #globalCameraWrap{bottom:calc(var(--christmas-banner-height,250px) + 12px)!important}
}
body:has(dialog[open],.modal.show,#helpdesk-window.open) .christmas-banner{visibility:hidden;pointer-events:none}
@media(prefers-reduced-motion:reduce){.christmas-banner{transition:none}}
@media print{.christmas-banner{display:none!important}.christmas-info{box-shadow:none;color:#183c31;background:#fff}.christmas-info p,.christmas-info h2,.christmas-deadlines dd{color:#183c31}.christmas-lights{display:none}}
