/* Seasonal elements are inserted only from 6 through 25 December (Amsterdam). */
body .hb-festive-greeting{box-sizing:border-box;position:relative;z-index:2;width:100%;display:block;padding:12px 20px;background:linear-gradient(110deg,#6e1729,#a62e40 50%,#6e1729);color:#fff3d6;border-top:1px solid #d6b26b;border-bottom:2px solid #d6b26b;text-align:center;font:500 14px/1.6 Poppins,Arial,sans-serif;letter-spacing:.025em}
.hb-christmas-scene{position:fixed;inset:0;z-index:9998;pointer-events:none;overflow:hidden}
.hb-christmas-snow i{position:absolute;left:var(--x);top:-40px;font-style:normal;font-size:var(--size);color:white;text-shadow:0 1px 3px #48665b99;opacity:.85;animation:hb-snow var(--duration) var(--delay) linear infinite}
.hb-christmas-sleigh{position:absolute;left:0;bottom:15vh;width:min(620px,90vw);animation:hb-sleigh 10s linear 1 both;filter:drop-shadow(0 7px 6px #14271d40)}
.hb-christmas-sleigh svg{display:block;width:100%;height:auto}
.hb-sleigh-flag{box-sizing:border-box;position:relative;width:90%;margin:0 auto -4px;padding:14px 32px 14px 22px;background:linear-gradient(110deg,#761c2c,#ac3547);color:#fff5d8;border-top:2px solid #e1bd73;border-bottom:2px solid #e1bd73;clip-path:polygon(0 0,100% 0,96% 50%,100% 100%,0 100%,3% 50%);font:600 clamp(12px,2.6vw,20px)/1.45 Poppins,Arial,sans-serif;text-align:center;text-shadow:0 1px 2px #0003;}
@media(max-width:600px){.hb-sleigh-flag{padding:10px 22px;font-size:12px}}
@keyframes hb-sleigh{from{transform:translateX(-110%)}to{transform:translateX(calc(100vw + 30px))}}
@keyframes hb-snow{to{transform:translate(30px,calc(100vh + 80px)) rotate(140deg)}}
@media(max-width:600px){body .hb-festive-greeting{font-size:11px;padding:9px 12px}.hb-christmas-sleigh{bottom:20vh}}
@media(prefers-reduced-motion:reduce){.hb-christmas-scene{display:none}}
@media print{.hb-festive-greeting,.hb-christmas-scene{display:none!important}}

/* New Year: 26 December through 10 January. */
body .hb-newyear-greeting{background:linear-gradient(110deg,#b98a2c,#efd58d 50%,#c89a3d);color:#302811;border-color:#98701d;text-shadow:0 1px #fff6}
.hb-newyear-walker{position:absolute;left:0;bottom:10vh;width:min(440px,85vw);height:300px;animation:hb-newyear-cross 10s linear both;filter:drop-shadow(0 5px 5px #0002)}
.hb-newyear-man{position:absolute;left:0;bottom:0;width:170px;height:246px}.hb-newyear-man svg{width:100%;height:100%}
.hb-newyear-flag{position:absolute;left:139px;top:52px;width:250px;box-sizing:border-box;padding:17px 20px;background:linear-gradient(100deg,#d7a63e,#ffe9a5,#c99834);color:#302711;border-top:2px solid #fff0ba;border-bottom:2px solid #a57720;font:600 21px/1.3 Poppins,Arial,sans-serif;text-align:center;transform-origin:left center;clip-path:polygon(0 0,100% 5%,94% 50%,100% 95%,0 100%);animation:hb-flag-wave .65s ease-in-out infinite alternate}
.hb-walk-leg{transform-origin:78px 145px;animation:hb-walk .6s ease-in-out infinite alternate}.hb-walk-leg-b{animation-delay:-.6s}
@keyframes hb-newyear-cross{from{transform:translateX(-110%)}to{transform:translateX(calc(100vw + 30px))}}
@keyframes hb-flag-wave{from{transform:perspective(400px) rotateY(-15deg) skewY(-3deg)}to{transform:perspective(400px) rotateY(14deg) skewY(3deg)}}
@keyframes hb-walk{from{transform:rotate(-16deg)}to{transform:rotate(16deg)}}
@media(max-width:600px){.hb-newyear-walker{height:240px;bottom:15vh}.hb-newyear-man{width:135px;height:195px}.hb-newyear-flag{left:110px;top:47px;width:205px;padding:13px 14px;font-size:17px}}
