/* Only UI elements receive paint. The existing forest and lighting are unchanged. */
.home-page .home-dates{padding:80px 0}
.home-page .home-dates>.container{width:min(1440px,calc(100% - 80px));max-width:1440px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,4.5vw,85px);align-items:center}
.home-dates .home-calendar{position:relative;min-width:0;box-sizing:border-box;padding:28px 32px 24px;min-height:520px;border:1px solid #e9bd73;border-radius:24px;background:#031427eb;box-shadow:0 0 20px #e9bd7326,0 20px 45px #0004,inset 0 1px 0 #ffffff14;overflow:hidden}
.home-dates .dates-preview-frost{position:absolute;left:0;top:0;width:128px;height:128px;pointer-events:none;z-index:0}
.home-dates .dates-preview-frost:nth-child(2){left:auto;top:auto;right:0;bottom:0;transform:rotate(180deg);width:115px;height:115px}
.home-dates .home-calendar-header{position:relative;display:flex;justify-content:flex-start;gap:16px;padding-bottom:16px;border-bottom:1px solid #e9bd734f;min-height:54px}
.home-dates .home-calendar-header>.line-icon{width:36px;height:36px;flex:0 0 36px;color:#edc783}
.home-dates .home-calendar-header h3{margin:0;color:#fff8ed;font:400 clamp(32px,2.65vw,44px)/1.1 'Cormorant Garamond',Georgia,serif;white-space:nowrap}
.home-dates .home-month-actions{display:flex;gap:12px;margin-left:auto}
.home-dates .home-month-actions button{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;padding:12px;border:1px solid #e9bd73;border-radius:50%;background:#061a2d;color:#fff8ed;cursor:pointer;transition:background .3s,box-shadow .3s}
.home-dates .home-month-actions svg{width:24px;height:24px}
.home-dates .home-month-actions button:hover:not(:disabled){background:#18334c;box-shadow:0 0 14px #e9bd7338}
.home-dates .home-month-actions button:disabled{opacity:.35;cursor:default}
.home-dates .home-calendar-week{position:relative;margin-top:18px;color:#c5cfdd;font-size:15px;line-height:24px}
.home-dates .home-calendar-days{position:relative;gap:7px;margin-top:14px;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:43px}
.home-dates .home-calendar-days .day{position:relative;display:grid;place-items:center;min-width:0;min-height:0;width:100%;height:43px;padding:0;border:1px solid #b9cfdf36;border-radius:8px;background:#08203766;color:#fff9ee;font:500 19px/1 Manrope,sans-serif;cursor:pointer;transition:background .25s,border-color .25s,box-shadow .25s}
.home-dates .home-calendar-days .day:hover:not(:disabled){border-color:#e9bd73;background:#173b56}
.home-dates .home-calendar-days .day:disabled{color:#8b9bac;opacity:.4;cursor:default}
.home-dates .home-calendar-days .day[aria-pressed=true]{color:#102035;border-color:#ffe4a5;background:linear-gradient(135deg,#ffe49d,#e6ac57);box-shadow:0 0 17px #edc47f70}
.home-dates .home-calendar-days .day[aria-pressed=true]:after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:#172338;bottom:4px;left:calc(50% - 2px)}
.home-dates .home-calendar-note{position:relative;min-height:32px;margin:14px 0 0;color:#c5cfdd;font-size:11px;line-height:1.5}
.home-dates .home-dates-copy{display:contents}
.home-dates .home-calendar{grid-column:1;grid-row:1/4}
.home-dates .dates-preview-intro{grid-column:2;grid-row:1;align-self:end}
.home-dates .home-date-facts{grid-column:2;grid-row:2;align-self:center}
.home-dates .dates-preview-action{grid-column:2;grid-row:3;align-self:start}
.home-page .home-dates>.container{row-gap:28px}
.home-dates .home-kicker{display:flex;align-items:center;gap:14px;margin:0 0 25px;color:#e9bd73;font-size:13px;letter-spacing:.23em}
.home-dates .home-kicker:before{content:'';width:110px;height:1px;background:linear-gradient(90deg,transparent,#e9bd73);flex-shrink:1}
.home-dates .home-kicker img{flex:0 0 32px;width:32px;height:32px}
.home-page .home-dates h2{margin:0 0 20px;font:400 clamp(62px,5vw,78px)/1.08 'Cormorant Garamond',Georgia,serif;color:#f8f3ec;text-shadow:0 2px 10px #031322}
.home-dates h2 em{font-style:normal;color:#e9bd73;background:linear-gradient(110deg,#ffe6aa,#e5ab56);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 14px #e9bd7320)}
.home-page .home-dates .home-lead{margin:0;max-width:610px;font-size:20px;line-height:1.5;color:#e2e7ef;text-shadow:0 2px 8px #031322}
.home-dates .home-date-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:0;border:0}
.home-dates .home-date-facts>div{position:relative;display:flex;gap:11px;align-items:center;min-width:0;color:#c5cfdd;font-size:15px;line-height:1.4;text-shadow:0 2px 8px #031322}
.home-dates .home-date-facts>div+div{border-left:1px solid #e9bd7380;padding-left:16px}
.home-dates .home-date-facts .line-icon{flex:0 0 36px;width:36px;height:36px;color:#f8deb0}
.home-dates .home-date-facts strong{display:block;margin-top:5px;font-size:18px;line-height:1.4;color:#fff9f0;font-weight:600;white-space:nowrap}
.home-dates .dates-preview-action{position:relative;max-width:610px;min-width:0}
.home-dates .dates-preview-action:before{content:'';position:absolute;inset:-22px -16px -32px;background:url('exclusive-sparkles.svg') center/100% 100% no-repeat;pointer-events:none;z-index:-1}
.home-dates .dates-preview-action>img{position:absolute;right:-23px;bottom:-27px;pointer-events:none;width:40px;height:40px}
.home-dates .home-dates-cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:86px;padding:18px 30px;box-sizing:border-box;border:1px solid #fff0bf;border-radius:20px;background:linear-gradient(110deg,#ffe69e,#e6ad58);box-shadow:0 0 0 3px #ecc47620,0 0 28px #edbe6a70,0 10px 25px #0003;color:#081b2c;font:600 20px/1.35 Manrope,sans-serif;text-decoration:none;transition:transform .3s,box-shadow .3s;overflow:hidden}
.home-dates .home-dates-cta svg{flex:0 0 34px;width:34px;height:34px}
.home-dates .home-dates-cta .dates-preview-arrow{flex-basis:30px;transition:transform .3s}
.home-dates .home-dates-cta:hover{transform:translateY(-3px);box-shadow:0 0 32px #edbe6a90,0 10px 25px #0003}
.home-dates .home-dates-cta:hover .dates-preview-arrow{transform:translateX(4px)}
.home-dates :is(a,button):focus-visible{outline:3px solid #fff0bf;outline-offset:4px}
@keyframes dates-preview-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes dates-preview-calendar{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}
@keyframes dates-preview-shine{from{transform:translateX(-130%) skewX(-22deg)}to{transform:translateX(350%) skewX(-22deg)}}
.dates-preview-ready:not(.dates-preview-revealed) :is(.home-calendar,.home-kicker,h2,.home-lead,.home-date-facts>div,.dates-preview-action){opacity:0}
.dates-preview-revealed :is(.home-kicker,h2,.home-lead,.home-date-facts>div,.dates-preview-action){animation:dates-preview-enter .8s backwards}
.dates-preview-revealed .home-calendar{animation:dates-preview-calendar .85s backwards}
.dates-preview-revealed .home-kicker{animation-delay:.1s}.dates-preview-revealed h2{animation-delay:.2s}.dates-preview-revealed .home-lead{animation-delay:.3s}.dates-preview-revealed .home-date-facts>div:nth-child(1){animation-delay:.4s}.dates-preview-revealed .home-date-facts>div:nth-child(2){animation-delay:.52s}.dates-preview-revealed .home-date-facts>div:nth-child(3){animation-delay:.64s}.dates-preview-revealed .dates-preview-action{animation-delay:.76s}
.dates-preview-revealed .home-dates-cta:after{content:'';position:absolute;inset:0 auto 0 0;width:28%;background:linear-gradient(90deg,transparent,#fff6,transparent);pointer-events:none;animation:dates-preview-shine 1s 1.1s backwards}
@media(min-width:1200px) and (max-width:1400px){.home-dates .home-calendar{padding:24px}.home-dates .home-calendar-header{gap:10px}.home-dates .home-month-actions{gap:8px}.home-dates .home-calendar-header h3{font-size:35px}.home-dates .home-month-actions button{width:46px;height:46px;flex-basis:46px;padding:10px}.home-dates .home-date-facts .line-icon{flex-basis:30px;width:30px;height:30px}.home-dates .home-date-facts>div{font-size:13px;gap:8px}.home-dates .home-date-facts strong{font-size:16px}.home-dates .home-date-facts>div+div{padding-left:10px}}
@media(max-width:1199px){.home-page .home-dates>.container{grid-template-columns:minmax(0,1fr);width:min(680px,calc(100% - 64px));gap:30px}.home-dates .dates-preview-intro{grid-column:1;grid-row:1}.home-dates .home-calendar{grid-column:1;grid-row:2}.home-dates .home-date-facts{grid-column:1;grid-row:3}.home-dates .dates-preview-action{grid-column:1;grid-row:4;width:100%;max-width:none}.home-page .home-dates h2{font-size:64px}.home-dates .home-date-facts strong{font-size:20px}.home-dates .home-date-facts>div{font-size:15px}.home-dates .home-calendar-header h3{font-size:42px}}
@media(max-width:767px){.home-page .home-dates{padding:64px 0}.home-page .home-dates>.container{width:calc(100% - 40px);gap:25px}.home-page .home-dates h2{font-size:44px;margin-bottom:16px}.home-page .home-dates .home-lead{font-size:16px;line-height:1.5}.home-dates .home-kicker{font-size:11px;letter-spacing:.16em;gap:10px;margin-bottom:18px}.home-dates .home-kicker:before{width:55px}.home-dates .home-kicker img{width:28px;height:28px;flex-basis:28px}.home-dates .home-calendar{min-height:0;padding:20px 16px 16px;border-radius:20px}.home-dates .home-calendar-header{gap:9px;min-height:44px;padding-bottom:14px}.home-dates .home-calendar-header h3{font-size:29px}.home-dates .home-calendar-header>.line-icon{width:25px;height:25px;flex-basis:25px}.home-dates .home-month-actions{gap:6px}.home-dates .home-month-actions button{flex-basis:38px;width:38px;height:38px;padding:8px}.home-dates .home-month-actions svg{width:20px;height:20px}.home-dates .home-calendar-week{font-size:12px;margin-top:13px}.home-dates .home-calendar-days{gap:5px;margin-top:9px;grid-auto-rows:42px}.home-dates .home-calendar-days .day{height:42px;font-size:16px}.home-dates .home-calendar-note{font-size:11px;min-height:33px}.home-dates .dates-preview-frost{width:83px;height:83px}.home-dates .dates-preview-frost:nth-child(2){width:75px;height:75px}.home-dates .home-date-facts{grid-template-columns:1fr;gap:17px}.home-dates .home-date-facts>div{font-size:14px;gap:15px}.home-dates .home-date-facts>div+div{border:0;padding-left:0}.home-dates .home-date-facts strong{font-size:19px;margin-top:2px}.home-dates .home-date-facts .line-icon{flex-basis:36px;width:36px;height:36px}.home-dates .home-dates-cta{min-height:64px;padding:14px 17px;gap:12px;font-size:15px;border-radius:16px}.home-dates .home-dates-cta svg{flex-basis:25px;width:25px;height:25px}.home-dates .home-dates-cta .dates-preview-arrow{flex-basis:24px}.home-dates .dates-preview-action>img{right:-10px;bottom:-22px;width:30px;height:30px}.home-dates .dates-preview-action:before{inset:-15px -8px -25px}.dates-preview-revealed .home-calendar{animation-name:dates-preview-enter}}
@media(max-width:360px){.home-dates .home-calendar-header>.line-icon{display:none}.home-dates .home-calendar-header h3{font-size:28px}.home-dates .home-calendar{padding-inline:13px}.home-dates .home-calendar-days{gap:3px}.home-dates .home-dates-cta{font-size:14px}}
@media(prefers-reduced-motion:reduce){.home-dates *{animation:none!important;transition:none!important}.dates-preview-ready :is(.home-calendar,.home-kicker,h2,.home-lead,.home-date-facts>div,.dates-preview-action){opacity:1!important}.home-dates .home-dates-cta:hover,.home-dates .home-dates-cta:hover .dates-preview-arrow{transform:none}}
.home-dates h2 em{text-shadow:none}
.home-dates .home-dates-cta>.line-icon{color:inherit}
.home-dates .dates-preview-frost{width:110px;height:110px}
.home-dates .home-calendar-header{padding-left:12px}
@media(max-width:767px){.home-dates .dates-preview-frost{width:74px;height:74px}.home-dates .home-calendar-header{padding-left:0}}
@keyframes dates-preview-shine{0%{transform:translateX(-130%) skewX(-22deg);opacity:0}15%,85%{opacity:1}100%{transform:translateX(350%) skewX(-22deg);opacity:0}}
.home-dates .home-dates-cta:after{opacity:0}
@media(min-width:1401px){.home-dates .home-date-facts strong{font-size:20px}}
