.calendar-section{position:relative;padding:clamp(1.5rem,3vw,3rem)0}.calendar-section--page{padding-bottom:clamp(4rem,7vw,6rem);background:radial-gradient(ellipse at 50% 0%,rgba(59,130,246,8%) 0%,transparent 50%),radial-gradient(ellipse at 20% 60%,rgba(147,51,234,6%) 0%,transparent 45%),radial-gradient(130% 130% at 50% 0%,rgba(15,23,42,.93) 0%,rgba(15,23,42,.75) 55%,rgba(10,14,23,.85) 100%)}.calendar-wrapper{width:min(var(--calendar-max-width),calc(100% - 2 * var(--spacing-lg,2.5rem)));margin:0 auto;display:flex;flex-direction:column;gap:var(--calendar-gap-lg)}.wrapper.calendar-wrapper{width:auto;max-width:var(--max-width);padding:0 var(--spacing-md)}.calendar-page--embedded-simple .wrapper.calendar-wrapper{width:100%;max-width:var(--max-width)}.calendar-intro{display:grid;gap:var(--calendar-gap-sm);text-align:center;color:var(--calendar-text-muted)}.calendar-intro__title{font-size:clamp(1.5rem,2.6vw,2.1rem);letter-spacing:.015em;color:var(--calendar-text-strong)}.calendar-intro__lead{max-width:60ch;margin:0 auto}.calendar-list{display:flex;flex-direction:column;gap:var(--calendar-gap-lg)}.calendar-month{display:flex;flex-direction:column;gap:var(--calendar-gap-sm);border-radius:var(--calendar-radius);background:rgba(15,23,42,var(--glass-standard));backdrop-filter:blur(var(--glass-blur-standard))saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur-standard))saturate(var(--glass-saturate));border:1px solid var(--calendar-border);box-shadow:0 20px 50px -30px rgba(2,6,23,.5),inset 0 1px rgba(148,163,255,6%);overflow:hidden;content-visibility:auto;contain-intrinsic-size:auto 500px}.calendar-month--full{background:rgba(8,14,33,var(--glass-standard));border-color:var(--calendar-border-strong)}.calendar-month__header{padding:clamp(.75rem,1.8vw,1.1rem)clamp(.75rem,2vw,1.25rem);padding-top:clamp(1rem,2vw,1.4rem);display:flex;justify-content:space-between;align-items:center;background:0 0;border-bottom:none}.calendar-month__title{margin:0;font-size:clamp(.8rem,1.2vw,.95rem);font-weight:500;letter-spacing:.02em;color:rgba(180,195,220,.65)}.calendar-month--no-header{gap:0}.calendar-month--no-header .calendar-grid{padding-top:clamp(1rem,2vw,1.5rem);border-radius:calc(var(--calendar-radius) * .75)}.calendar-grid{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:auto;gap:clamp(4px,.8vw,8px);padding:clamp(.75rem,1.5vw,1.25rem);background:linear-gradient(180deg,rgba(15,23,42,.85) 0%,rgba(12,20,38,.78) 100%);border:1px solid var(--calendar-border);border-radius:calc(var(--calendar-radius) * .75);box-shadow:inset 0 1px rgba(148,163,255,8%),inset 0 -1px rgba(148,163,255,6%)}@media(min-width:1920px){.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(6px,1vw,10px)}}@media(min-width:1440px) and (max-width:1919px){.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(5px,.9vw,9px)}}@media(min-width:1200px) and (max-width:1439px){.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(5px,.85vw,8px)}}.calendar-week{display:contents}.calendar-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:28px;text-transform:capitalize;font-variant-caps:all-small-caps;letter-spacing:.12em;font-size:.8125rem;font-weight:500;padding:clamp(.35rem,.8vw,.5rem);color:rgba(200,210,230,.75);background:0 0;border:none;border-radius:0}.day{position:relative;aspect-ratio:1/1;display:flex;align-items:flex-end;justify-content:flex-end;min-width:44px;min-height:clamp(2.75rem,5.4vw,4.5rem);padding:clamp(.35rem,1vw,.6rem);text-decoration:none;color:var(--calendar-text-muted);border:1px solid rgba(148,163,255,.12);border-radius:calc(var(--calendar-radius) * .55);background:linear-gradient(180deg,rgba(14,20,36,.75) 0%,rgba(8,13,27,.95) 100%);overflow:visible;isolation:isolate;transition:transform var(--calendar-transition),background var(--calendar-transition),border-color var(--calendar-transition),box-shadow var(--calendar-transition);transform-origin:center;z-index:0}.day.day--pad{background:0 0;border-color:transparent;pointer-events:none}.day picture{position:relative;width:100%;height:100%;display:block;border-radius:calc(var(--calendar-radius) * .55);overflow:hidden;box-shadow:0 12px 25px -18px rgba(15,23,42,.9);transition:transform .4s cubic-bezier(.16,1,.3,1)}.day picture img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.16,1,.3,1),filter .45s ease}.day__num{user-select:none;font-weight:700;letter-spacing:.03em;font-size:clamp(.85rem,1vw,.95rem);z-index:2}.day--empty,.day--future{background:rgba(15,23,42,.12);border-color:rgba(148,163,255,4%);color:rgba(148,163,255,.35);cursor:default;box-shadow:none}.day--empty picture,.day--future picture{display:none}.day--has:hover{border-color:rgba(148,163,255,.35);transform:var(--hover-lift-subtle)scale(var(--hover-scale));color:var(--calendar-text-strong)}.day--today{outline:2px solid rgba(96,165,250,.7);outline-offset:-2px;color:var(--calendar-text-strong)}.day--empty:hover,.day--future:hover{transform:none;border-color:rgba(148,163,255,8%);background:rgba(15,23,42,.18)}.day[data-weekend=true]{background:rgba(30,41,59,.55)}.day[data-state=future]::after{content:"";position:absolute;inset:12% 20% 16%;border-radius:calc(var(--calendar-radius) * .7);border:1px dashed rgba(148,163,255,.35)}.calendar-month[data-lazy]{display:none}@media(max-width:960px){.calendar-month{border-radius:calc(var(--calendar-radius) * .85)}.day{min-height:clamp(2.75rem,7vw,3.6rem)}.day picture{margin-bottom:clamp(.25rem,1vw,.4rem)}}@media(max-width:720px){.calendar-wrapper{width:calc(100% - 2 * var(--spacing-md,1.25rem))}.calendar-month__header{padding-inline:clamp(.75rem,3vw,1rem)}.calendar-grid{font-size:.85rem}}@media(max-width:540px){.calendar-head{font-size:.75rem}.day__num{font-size:.85rem}}