.calendar-empty{padding:clamp(4rem,10vw,6rem) 0;text-align:center;color:#2b171fa8;font-family:Montserrat,Helvetica Neue,sans-serif}.calendar-layered{position:relative;isolation:isolate;--calendar-vh: 1dvh;--calendar-backdrop-intro: #fef6ef;--calendar-backdrop-quote: radial-gradient(120% 120% at 50% 15%, #fdf2ec 0%, #fbe7ef 68%, #f8dbe6 100%);--calendar-backdrop-canvas: radial-gradient(130% 160% at 50% 10%, #fdf1eb 0%, #fbe0eb 50%, #f8d7e3 90%, #f6d2de 100%);color:#2b1721}@supports (height: 1svh){.calendar-layered{--calendar-vh: 1svh}}@supports not (height: 1dvh){.calendar-layered{--calendar-vh: 1vh}}.calendar-layered__background{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;overflow:hidden;display:block}.calendar-background-card{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;opacity:0;transform:scale(.985);transition:opacity .32s ease,transform .62s cubic-bezier(.33,.11,.17,.99);padding:clamp(1.5rem,6vw,3.5rem);z-index:1}.calendar-background-card.is-active{opacity:1;transform:scale(1)}.calendar-background-card--blank{background:var(--card-color, var(--calendar-backdrop-intro))}.calendar-background-card--quote{background:var(--calendar-backdrop-quote);color:#291322d9}.calendar-background-card[data-card-id=intro],.calendar-quote-card[data-card-id=intro]{transition:none}.calendar-layered__quotes{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:6;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.85) 16%,rgba(0,0,0,.85) 76%,rgba(0,0,0,0) 100%);mask-image:linear-gradient(180deg,#0000,#000000d9 16%,#000000d9 76%,#0000)}.calendar-quote-card{position:fixed;top:44%;left:50%;transform:translate(-50%,-52%);width:min(860px,calc(100vw - 30px));text-align:center;display:grid;gap:clamp(.4rem,1.8vw,.9rem);padding:clamp(.4rem,1.6vw,1.1rem) clamp(1rem,3vw,1.9rem);pointer-events:none;opacity:0;will-change:opacity,transform;transition:opacity .36s ease,transform .52s cubic-bezier(.33,.1,.18,1)}.calendar-quote-card.is-active{opacity:1;transform:translate(-50%,-50%)}.calendar-quote-card__eyebrow{font-family:Elgraine,Montserrat,Helvetica Neue,sans-serif;font-weight:400;letter-spacing:.04em;text-transform:none;font-size:clamp(1.6rem,4vw,2.4rem);color:#2f1621c7}.calendar-quote-card__text{margin:0;font-family:Elgraine,Montserrat,Helvetica Neue,sans-serif;font-size:clamp(1.6rem,5vw,3rem);line-height:1.42;color:#2f1621db;letter-spacing:.01em}@media (min-width: 900px){.calendar-quote-card__text{font-size:clamp(1.4rem,4.2vw,2.55rem)}}.calendar-layered__content{position:relative;display:flex;flex-direction:column;gap:clamp(2.5rem,calc(var(--calendar-vh) * 8),6rem);padding:0 0 clamp(6rem,calc(var(--calendar-vh) * 18),12rem)}.calendar-hero{--calendar-hero-offset: clamp(60px, calc(var(--calendar-vh) * 10), 110px);min-height:clamp(560px,calc(var(--calendar-vh) * 100 - var(--calendar-hero-offset)),900px);display:flex;align-items:stretch;justify-content:stretch;position:relative;z-index:8}.calendar-hero__frame{position:relative;width:100%;height:clamp(560px,calc(var(--calendar-vh) * 100 - var(--calendar-hero-offset)),900px);background:radial-gradient(120% 120% at 50% 0%,#12080de6,#180b1099 55%,#1c0c1266);overflow:hidden}.calendar-hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:clamp(.8rem,2.6vw,1.5rem);padding:clamp(2rem,6vw,3.5rem);padding-top:clamp(2.5rem,calc(var(--calendar-vh) * 20),9.5rem);padding-bottom:clamp(1.5rem,calc(var(--calendar-vh) * 6),3rem);text-align:center;color:#fff7f4;background:linear-gradient(180deg,#12080d26,#14090e99 30%,#14090e26 80%,#160a0f00)}.calendar-hero__eyebrow{font-family:Montserrat,Helvetica Neue,sans-serif;font-size:clamp(.7rem,2.2vw,.85rem);letter-spacing:.22em;text-transform:uppercase;color:#fff5f0bf}.calendar-hero__cta{display:grid;justify-items:center;gap:clamp(1rem,2.6vw,1.6rem);margin-bottom:clamp(1.8rem,calc(var(--calendar-vh) * 6),3rem);margin-top:clamp(2.2rem,calc(var(--calendar-vh) * 5),3rem)}.calendar-hero__cta-link{text-decoration:none;color:inherit}.calendar-hero__note{margin:0;font-family:Montserrat,Helvetica Neue,sans-serif;font-size:clamp(.9rem,2.6vw,1rem);letter-spacing:.12em;text-transform:uppercase;color:#fff5f0d9;text-align:center;line-height:1.4}.calendar-hero__follow{display:inline-grid;grid-auto-flow:column;align-items:center;gap:.65rem;font-family:Montserrat,Helvetica Neue,sans-serif;font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:#fff5f0d1;text-decoration:none;transition:opacity .16s ease;margin-top:auto;margin-bottom:clamp(1.6rem,4vw,2.4rem)}.calendar-hero__follow:hover{opacity:.9}.calendar-hero__socials{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem;margin-top:auto;margin-bottom:clamp(4rem,9vw,5rem)}.calendar-hero__follow svg{width:20px;height:20px;fill:currentColor}.calendar-social-icon{width:22px;height:22px;display:block;color:currentColor}@media (min-width: 720px){.calendar-social-icon{width:24px;height:24px}}.calendar-section{min-height:calc(var(--calendar-vh) * 100);display:flex;align-items:center;padding-inline:clamp(1rem,4vw,2.5rem)}@media (max-height: 760px){.calendar-section{min-height:calc(var(--calendar-vh) * 92)}}.calendar-section__surface{width:min(1140px,92vw);margin:0 auto;padding:clamp(1.8rem,5vw,3.2rem);border-radius:clamp(24px,5vw,40px);background:#ffffffc2;box-shadow:0 38px 80px -52px #17080e6b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:relative;z-index:4}.calendar-section--product{min-height:auto;align-items:stretch;padding-block:clamp(2rem,7vw,4.5rem)}.calendar-section--product .calendar-section__surface{width:min(1280px,96vw);padding:clamp(.8rem,3vw,2rem);background:transparent}.calendar-section__surface--product{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.calendar-product{display:grid;gap:clamp(1.8rem,4vw,2.8rem)}@media (min-width: 960px){.calendar-product{grid-template-columns:minmax(0,500px) minmax(0,1fr);align-items:start;justify-content:center}}.calendar-section--details .calendar-section__surface{border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:clamp(1.5rem,5vw,3rem) 0}.calendar-section--details{position:relative}.calendar-carousel{overflow:hidden;width:100%;align-self:start;max-width:min(500px,100%);margin-bottom:clamp(1.2rem,4vw,2.4rem)}.calendar-carousel__track{display:flex;gap:clamp(1rem,4vw,2rem);overflow-x:auto;padding-bottom:clamp(.25rem,1.4vw,.6rem);scroll-snap-type:x mandatory;scroll-snap-stop:always;scroll-padding-inline:0;overscroll-behavior-x:contain;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none}.calendar-carousel__track::-webkit-scrollbar{height:0;display:none}.calendar-carousel__item{flex:0 0 100%;max-width:100%;scroll-snap-align:start}.calendar-carousel__media{display:block;width:100%;border-radius:0;box-shadow:0 18px 46px -40px #17080e73;background:transparent}.calendar-carousel__media img{width:100%;max-width:100%;display:block;height:auto;max-height:min(70vh,580px)}@media (min-width: 900px){.calendar-carousel{width:min(100%,500px);justify-self:start}}.calendar-carousel__controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;margin-top:clamp(.35rem,1.6vw,.65rem);padding-inline:clamp(.4rem,2vw,1rem)}.calendar-purchase{display:grid;grid-template-columns:auto 1fr;gap:clamp(.6rem,2vw,1rem);align-items:center;margin-top:clamp(.9rem,3vw,1.5rem);padding:clamp(.4rem,1.6vw,.8rem);border-radius:clamp(12px,3vw,16px);background:transparent}.calendar-quantity{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;padding:.35rem .45rem;background:#ffffffe6;box-shadow:0 18px 40px -28px #190a1052}.calendar-quantity__btn{border:1px solid rgba(44,20,29,.18);background:#ffffffeb;color:#2c141d;width:34px;height:34px;border-radius:50%;font-size:1.1rem;cursor:pointer;display:grid;place-items:center;transition:transform .12s ease,box-shadow .16s ease,background .16s ease}.calendar-quantity__btn:disabled{opacity:.45;cursor:default}.calendar-quantity__btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 12px 26px -18px #190a1059;background:#fff}.calendar-quantity__value{font-family:Montserrat,Helvetica Neue,sans-serif;font-weight:700;letter-spacing:.08em;color:#2c141d;padding:0 .6rem}.calendar-purchase .calendar-primary__button--wide{box-shadow:0 22px 42px -26px #2c151d61,0 10px 26px -22px #180a1047;background:#fffffffa;padding-inline:clamp(1.4rem,4.6vw,2.6rem);letter-spacing:.14em}.calendar-carousel__button{border:none;border-radius:999px;width:36px;height:36px;font-size:1.4rem;background:#ffffffdb;color:#2b1721;cursor:pointer;box-shadow:0 14px 26px -20px #17080e66}.calendar-carousel__button:disabled{opacity:.4;cursor:default}.calendar-carousel__dots{display:flex;justify-content:center;gap:.5rem}.calendar-carousel__dot{width:8px;height:8px;border-radius:999px;border:none;background:#25121b33;cursor:pointer;padding:0}.calendar-carousel__dot.is-active{background:#25121b99}@media (min-width: 900px){.calendar-carousel{margin-bottom:clamp(2.2rem,5vw,3.6rem)}}.calendar-section__surface--story{background:#ffffffd1;box-shadow:0 32px 82px -60px #1c0c1280;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:relative;z-index:7}.calendar-story{display:grid;gap:clamp(1.3rem,3.2vw,2.6rem);font-family:Montserrat,Helvetica Neue,sans-serif;color:#25121bcc}.calendar-story__eyebrow{font-family:Elgraine,Montserrat,Helvetica Neue,sans-serif;font-weight:500;font-size:clamp(1.55rem,4.4vw,2.4rem);letter-spacing:.02em;color:#25121beb}.calendar-story__intro p{margin:0;font-size:clamp(1rem,3.2vw,1.18rem);line-height:1.7}.calendar-story__manifesto{display:grid;gap:clamp(.8rem,2.6vw,1.4rem)}.calendar-story__manifesto-list{display:grid;gap:clamp(.4rem,2vw,.9rem)}.calendar-story__manifesto-list p{margin:0;font-size:clamp(.96rem,2.9vw,1.12rem);line-height:1.66;color:#25121bc7}.calendar-story__includes{display:grid;gap:clamp(.8rem,2.4vw,1.3rem)}.calendar-story__details{display:grid;gap:clamp(.4rem,2vw,.8rem);font-family:Montserrat,Helvetica Neue,sans-serif;color:#25121bc7}.calendar-story__details p{margin:0;font-size:clamp(.95rem,2.9vw,1.1rem);line-height:1.6}.calendar-story__subheading{margin:0;font-family:Montserrat,Helvetica Neue,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-weight:600;font-size:clamp(.88rem,2.6vw,1rem);color:#25121b9e}.calendar-story__includes-list{display:grid;gap:clamp(.3rem,1.8vw,.7rem)}.calendar-story__includes-list p{margin:0;font-size:clamp(.95rem,2.9vw,1.1rem);line-height:1.68;color:#25121bc7}.calendar-section__inner{display:grid;gap:clamp(1.4rem,3vw,2.6rem)}.calendar-hero__video{width:100%;height:100%;display:block;object-fit:cover;background-color:#12080d}.calendar-hero__title{font-family:Elgraine,Montserrat,Helvetica Neue,sans-serif;font-size:clamp(2rem,5.4vw,3.2rem);line-height:1.14;margin:0;color:#fff8f3}.calendar-hero__title em{font-family:Etania Ezra Script,Elgraine,Montserrat,Helvetica Neue,sans-serif;font-weight:600;font-size:1.25em;letter-spacing:.02em}.calendar-hero__title-line{display:block;text-align:center}.calendar-hero__title-prefix{display:inline-flex;align-items:center}.calendar-hero__subtitle{font-family:Montserrat,Helvetica Neue,sans-serif;font-size:clamp(1.1rem,3.8vw,1.5rem);line-height:1.5;margin:0 0 clamp(1.2rem,3vw,1.8rem);color:#fff5f0eb}.calendar-primary__button{display:grid;justify-items:center;gap:.25rem;border:none;border-radius:999px;padding:.9rem clamp(2.1rem,6vw,3.4rem);font-family:Montserrat,Helvetica Neue,sans-serif;font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:.86rem;background:#fffffff0;color:#2c141d;cursor:pointer;transition:transform .16s ease,box-shadow .2s ease,filter .2s ease;box-shadow:0 22px 42px -26px #2c151d4d}.calendar-primary__button:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 26px 54px -28px #2c151d5c}.calendar-primary__button:active{transform:translateY(0)}.calendar-primary__button:focus-visible{outline:3px solid rgba(248,153,176,.36);outline-offset:4px}.calendar-primary__button.flash{box-shadow:0 0 0 6px #f899b047}.calendar-hero__scroll{position:absolute;bottom:clamp(1.4rem,calc(var(--calendar-vh) * 5),2.6rem);left:50%;transform:translate(-50%);color:#fff5f0b3;display:grid;place-items:center;animation:calendar-scroll-nudge 3s ease-in-out infinite}.calendar-hero__scroll-icon{width:26px;height:18px;display:block;fill:currentColor;opacity:.85}@keyframes calendar-scroll-nudge{0%,70%,to{transform:translate(-50%);opacity:.85}35%{transform:translate(-50%,6px);opacity:.6}}@media (max-width: 640px){.calendar-hero{--calendar-hero-offset: clamp(48px, calc(var(--calendar-vh) * 8), 80px)}}.calendar-features{display:grid;gap:clamp(1.6rem,4vw,2.8rem)}.calendar-features__grid{display:grid;gap:clamp(1.4rem,3vw,2.2rem)}.calendar-features__cta{margin-top:clamp(2.4rem,6vw,3.6rem);display:grid;gap:clamp(1.2rem,3.4vw,2rem);justify-items:center}.calendar-feature{display:grid;gap:clamp(1.2rem,3vw,1.8rem);align-items:flex-start;background:#ffffffc7;padding:clamp(1.2rem,3.6vw,2rem);border-radius:clamp(12px,3vw,20px);box-shadow:0 24px 60px -48px #210b134d}.calendar-feature.is-text-only{grid-template-columns:1fr}.calendar-feature__media{width:100%;border-radius:clamp(10px,2.6vw,18px);overflow:hidden;aspect-ratio:4 / 3;background:#fff9;position:relative}.calendar-feature__media img{width:100%;height:100%;object-fit:cover;display:block}.calendar-feature__text{display:grid;gap:clamp(.6rem,2vw,1.3rem);text-align:justify;text-align-last:start}.calendar-feature__text h3{margin:0;font-family:Elgraine,Montserrat,Helvetica Neue,sans-serif;font-weight:500;font-size:clamp(1.55rem,3.9vw,2.4rem);color:#25111aeb;letter-spacing:.01em;text-align:left}.calendar-feature__text h3 em{display:inline-block;font-family:Etania Ezra Script,Elgraine,Montserrat,Helvetica Neue,sans-serif;font-weight:700;text-transform:none;letter-spacing:0;font-size:1.85em;margin-right:.4rem}.calendar-feature__text p{margin:0;font-family:Montserrat,Helvetica Neue,sans-serif;line-height:1.68;color:#25121bbf;text-align:justify}.calendar-feature__text p+p{margin-top:0}@media (min-width: 720px){.calendar-feature{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.4rem,3.4vw,2.6rem);align-items:center}.calendar-feature.is-alt{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.calendar-feature.is-alt .calendar-feature__media{order:2}.calendar-feature.is-alt .calendar-feature__text{order:1}.calendar-feature.is-text-only{grid-template-columns:1fr}}.calendar-primary__button--wide{padding-inline:clamp(2rem,7vw,3.4rem);font-size:clamp(.86rem,2.4vw,.96rem);letter-spacing:.16em;width:min(100%,340px)}.calendar-primary__button-main{line-height:1.05}.calendar-primary__button-sub{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#2c141d9e;line-height:1.2}@media (max-width: 640px){.calendar-primary__button-sub{font-size:.8rem;letter-spacing:.06em}.calendar-sticky-cta .calendar-primary__button-sub{font-size:.7rem;letter-spacing:.05em}}@media (min-width: 900px){.calendar-sticky-cta .calendar-primary__button-sub{font-size:.82rem;letter-spacing:.1em}}.calendar-features__social{display:inline-grid;grid-auto-flow:column;align-items:center;gap:.7rem;font-family:Montserrat,Helvetica Neue,sans-serif;font-weight:600;font-size:.92rem;letter-spacing:.14em;text-transform:uppercase;color:#26121a;text-decoration:none;padding-inline:clamp(1.1rem,4vw,1.9rem);padding-block:clamp(.85rem,2.4vw,1.1rem);border-radius:clamp(18px,4vw,28px);border:1px solid rgba(38,18,26,.16);background:#ffffffd1;transition:transform .14s ease,box-shadow .18s ease,background .18s ease}.calendar-features__social:hover{transform:translateY(-2px);box-shadow:0 18px 38px -24px #210b134d;background:#ffffffe6}.calendar-sticky-cta{position:fixed;inset-inline:clamp(1rem,6vw,2rem);bottom:var(--sticky-cta-bottom, clamp(.75rem, 4vw, 1.75rem));display:flex;justify-content:center;z-index:8;pointer-events:none}.calendar-sticky-cta__content{pointer-events:auto;display:grid;justify-items:center;text-align:center}.calendar-primary__button--pulse{animation:calendar-cta-pulse 2.9s ease-in-out infinite;transform-origin:center}@keyframes calendar-cta-pulse{0%,to{transform:translateY(0) scale(1);box-shadow:0 22px 42px -26px #2c151d52}50%{transform:translateY(-1px) scale(1.04);box-shadow:0 26px 48px -24px #2c151d66,0 0 32px #fcd7df80}}.calendar-sticky-cta .calendar-primary__button--wide{pointer-events:auto;width:min(100%,440px);box-shadow:0 18px 34px -14px #14090e6b,0 10px 28px -18px #0c060952,0 0 36px #fcd7dfa6,0 0 8px #180b1052}:global(html.has-meta-banner){--sticky-cta-bottom: clamp(6.5rem, calc(var(--calendar-vh) * 13), 9.5rem)}:global(body.has-meta-banner){--sticky-cta-bottom: clamp(6.5rem, calc(var(--calendar-vh) * 13), 9.5rem)}.calendar-sticky-cta .calendar-primary__button--wide:hover{box-shadow:0 22px 42px -16px #14090e7a,0 12px 32px -16px #0c06095c,0 0 42px #fcd7dfb8,0 0 10px #180b105c}.calendar-features__cta{display:flex;flex-direction:column;gap:1.2rem;align-items:flex-start}@media (min-width: 640px){.calendar-features__cta{flex-direction:row;align-items:center}}.calendar-features__follow{display:grid;gap:.35rem}.calendar-features__link{font-family:Montserrat,Helvetica Neue,sans-serif;font-weight:600;font-size:.95rem;color:#b44b5f;text-decoration:none}.calendar-features__link:hover{text-decoration:underline}.calendar-features__handle{font-family:Montserrat,Helvetica Neue,sans-serif;font-size:.85rem;color:#26121a99}.promo-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1.5rem}.promo-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0e0a0c99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:promo-fade-in .24s ease-out}.promo-modal__panel{position:relative;z-index:1;width:min(92vw,420px);border-radius:24px;background:#fffdf8;padding:2.25rem 2rem 1.75rem;box-shadow:0 30px 60px -40px #1c161899,0 18px 36px -28px #1c161866;animation:promo-rise-in .26s ease-out}.promo-modal__close{position:absolute;top:.85rem;right:.85rem;height:36px;width:36px;border-radius:999px;border:1px solid #e6dcd1;background:#fff;color:#7c6b64;font-size:1.25rem;line-height:1;cursor:pointer}.promo-modal__title{font-family:Elgraine,Times New Roman,serif;font-size:1.6rem;line-height:1.1;margin-bottom:.75rem;color:#2a1c1f}.promo-modal__body{font-size:.95rem;line-height:1.5;color:#4c3b39;margin-bottom:.75rem}.promo-modal__code{font-size:1.35rem;font-weight:700;letter-spacing:.12em;text-align:center;background:#efe6dc;color:#5a4038;border-radius:12px;padding:.65rem 1rem;margin:.75rem 0 .65rem}.promo-modal__note{font-size:.9rem;line-height:1.4;color:#5a4a47;margin-bottom:1.25rem}.promo-modal__actions{display:flex;flex-direction:column;gap:.65rem}.promo-modal__apply{border-radius:999px;border:none;background:#d8724a;color:#fff;padding:.85rem 1rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 12px 20px -12px #d8724acc}.promo-modal__apply:hover{transform:translateY(-1px)}.promo-modal__dismiss{border-radius:999px;border:1px solid #e3d6ca;background:transparent;color:#6a5a57;padding:.7rem 1rem;font-weight:600;cursor:pointer}@keyframes promo-fade-in{0%{opacity:0}to{opacity:1}}@keyframes promo-rise-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.promo-modal__backdrop,.promo-modal__panel{animation:none}}
