@layer components{.schedule-hero-glow{z-index:-1;aspect-ratio:1;pointer-events:none;background:radial-gradient(circle at center, color-mix(in srgb, var(--color-blue-500) 55%, transparent) 0%, transparent 68%);width:90vw;max-width:70rem;position:absolute;inset-block-end:-55%;inset-inline-start:-20%}.schedule-strand{border-bottom:1px solid color-mix(in srgb, var(--color-blue-500) 40%, transparent);color:var(--color-ghost-white);grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.125rem 1.25rem;display:grid;position:relative;overflow:hidden}.schedule-strand>*{z-index:1;position:relative}.schedule-strand:before{content:"";z-index:0;background-color:var(--color-emerald);transform-origin:bottom;transition:transform .48s var(--ease-drawer);position:absolute;inset:0;transform:scaleY(0)}@media (hover:hover) and (pointer:fine){.schedule-strand:hover:before{transform:scaleY(1)}}.schedule-strand:focus-visible:before{transform:scaleY(1)}.schedule-strand-index{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-blue-300);transition:color .32s var(--ease-out-strong);font-size:.9375rem;font-weight:700}.schedule-strand-name{font-family:var(--font-heading);letter-spacing:-.01em;transition:color .32s var(--ease-out-strong), transform .48s var(--ease-drawer);font-size:clamp(1.375rem,3vw,2.25rem);font-weight:900;line-height:1.1}.schedule-strand-arrow{width:1.125rem;height:1.125rem;color:var(--color-blue-300);transition:color .32s var(--ease-out-strong), transform .48s var(--ease-drawer)}@media (hover:hover) and (pointer:fine){.schedule-strand:hover .schedule-strand-name{transform:translate(.75rem)}.schedule-strand:hover .schedule-strand-arrow{transform:translate(.25rem,-.25rem)}}.schedule-strand:hover,.schedule-strand:focus-visible,.schedule-strand:hover .schedule-strand-index,.schedule-strand:hover .schedule-strand-arrow,.schedule-strand:focus-visible .schedule-strand-index,.schedule-strand:focus-visible .schedule-strand-arrow{color:var(--color-prussian-blue)}@media (prefers-reduced-motion:reduce){.schedule-strand:before,.schedule-strand-index,.schedule-strand-name,.schedule-strand-arrow{transition:none}.schedule-strand:hover .schedule-strand-name,.schedule-strand:hover .schedule-strand-arrow{transform:none}}.schedule-controls{border-bottom:1px solid var(--color-blue-100)}.schedule-rail{gap:calc(var(--spacing) * 2);scrollbar-width:none;scroll-snap-type:x proximity;margin-inline:calc(var(--spacing) * -4);padding-inline:calc(var(--spacing) * 4);display:flex;overflow-x:auto}.schedule-rail::-webkit-scrollbar{display:none}.schedule-day{scroll-snap-align:start;border:1px solid var(--color-blue-100);text-align:left;color:var(--color-blue-500);cursor:pointer;transition:color .22s var(--ease-out-strong), background-color .22s var(--ease-out-strong), border-color .22s var(--ease-out-strong);border-radius:999px;flex-direction:column;flex:none;gap:.125rem;padding:.625rem 1.125rem;display:flex}.schedule-day-weekday{font-family:var(--font-heading);color:var(--color-space-cadet);font-size:.9375rem;font-weight:800;line-height:1.2}.schedule-day-label{font-size:.9375rem;line-height:1.2}.schedule-day[data-track]{justify-content:center;max-width:14rem}.schedule-day[data-track] .schedule-day-label{font-family:var(--font-heading);color:var(--color-space-cadet);text-wrap:balance;font-weight:800}.schedule-day[data-track][data-active] .schedule-day-label{color:var(--color-ghost-white)}@media (hover:hover) and (pointer:fine){.schedule-day:hover{border-color:var(--color-blue-300)}}.schedule-day[data-active]{background-color:var(--color-space-cadet);border-color:var(--color-space-cadet);color:var(--color-blue-100)}.schedule-day[data-active] .schedule-day-weekday{color:var(--color-ghost-white)}.schedule-search{border-bottom:1px solid var(--color-blue-100);max-width:34rem;transition:border-color .22s var(--ease-out-strong);align-items:center;gap:.75rem;padding-block:.625rem;display:flex}@media (min-width:64rem){.schedule-search{flex:0 20rem}.schedule-rail{flex:auto;min-width:0}}.schedule-search:focus-within{border-color:var(--color-turf-green)}.schedule-search-input{min-width:0;color:var(--color-space-cadet);background:0 0;border:none;outline:none;flex:1;font-size:1.0625rem}.schedule-search-input::placeholder{color:var(--color-blue-300)}.schedule-search-input::-webkit-search-cancel-button{display:none}.schedule-search-clear{color:var(--color-blue-300);padding-inline:.25rem;font-size:1.375rem;line-height:1}.schedule-search-clear:hover{color:var(--color-space-cadet)}.schedule-chips{gap:calc(var(--spacing) * 2);scrollbar-width:none;margin-inline:calc(var(--spacing) * -4);padding-inline:calc(var(--spacing) * 4);padding-block:.25rem;display:flex;overflow-x:auto}.schedule-chips::-webkit-scrollbar{display:none}@media (min-width:64rem){.schedule-chips{flex-wrap:wrap;margin-inline:0;padding-inline:0;overflow-x:visible}}.schedule-chip{border:1px solid var(--color-blue-100);color:var(--color-blue-500);cursor:pointer;transition:color .2s var(--ease-out-strong), background-color .2s var(--ease-out-strong), border-color .2s var(--ease-out-strong);border-radius:999px;flex:none;align-items:center;gap:.5rem;padding:.5rem .9375rem;font-size:.9375rem;display:inline-flex}@media (hover:hover) and (pointer:fine){.schedule-chip:not(:disabled):hover{border-color:var(--color-blue-300);color:var(--color-space-cadet)}}.schedule-chip:disabled{opacity:.4;cursor:not-allowed}.schedule-chip[data-active]{background-color:var(--color-turf-green);border-color:var(--color-turf-green);color:var(--color-ghost-white)}.schedule-chip-count{font-variant-numeric:tabular-nums;color:var(--color-blue-300);font-size:.8125rem}.schedule-chip[data-active] .schedule-chip-count{color:color-mix(in srgb, var(--color-ghost-white) 75%, transparent)}.schedule-bucket-title{font-family:var(--font-heading);color:var(--color-space-cadet);border-bottom:3px solid var(--color-turf-green);padding-bottom:.375rem;font-size:1.375rem;font-weight:900;display:inline-block}.schedule-row{border:1px solid var(--color-blue-100);border-radius:calc(var(--spacing) * 4);transition:border-color .26s var(--ease-out-strong), transform .26s var(--ease-out-strong);align-items:center;gap:.75rem 2rem;padding:1.25rem 1.5rem;display:grid}@media (hover:hover) and (pointer:fine){.schedule-row:hover{border-color:var(--color-blue-300);transform:translate(4px)}}@media (min-width:64rem){.schedule-row{grid-template-columns:7rem minmax(0,1fr) minmax(0,22rem)}}.schedule-row-time{align-items:baseline;gap:.5rem;display:flex}@media (min-width:64rem){.schedule-row-time{display:block}}.schedule-row-start{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-space-cadet);font-size:1.25rem;font-weight:800;display:block}.schedule-row-end{font-variant-numeric:tabular-nums;color:var(--color-blue-300);font-size:.9375rem;display:block}.schedule-row-title{font-family:var(--font-heading);color:var(--color-space-cadet);font-size:1.125rem;font-weight:700;line-height:1.35}.schedule-row-place{flex-wrap:wrap;align-items:center;gap:.75rem;font-size:.9375rem;display:flex}@media (min-width:64rem){.schedule-row-place{text-align:right;justify-content:flex-end}}.schedule-row-map{border:1px solid var(--color-blue-100);font-family:var(--font-heading);letter-spacing:var(--text-label--letter-spacing);color:var(--color-turf-green);transition:color .2s var(--ease-out-strong), background-color .2s var(--ease-out-strong), border-color .2s var(--ease-out-strong);border-radius:999px;flex:none;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.8125rem;font-weight:700;display:inline-flex}.schedule-row-map:hover{background-color:var(--color-turf-green);border-color:var(--color-turf-green);color:var(--color-ghost-white)}@media (prefers-reduced-motion:reduce){.schedule-day,.schedule-chip,.schedule-row,.schedule-row-map,.schedule-search{transition:none}.schedule-row:hover{transform:none}}.key-dates-switch{border:1px solid var(--color-blue-100);background-color:#fff9;border-radius:999px;flex:none;gap:.25rem;padding:.25rem;display:inline-flex}.key-dates-switch-option{font-family:var(--font-heading);cursor:pointer;letter-spacing:var(--text-label--letter-spacing);color:var(--color-blue-500);transition:color .2s var(--ease-out-strong), background-color .2s var(--ease-out-strong);border-radius:999px;padding:.5rem 1.125rem;font-size:.875rem;font-weight:700}@media (hover:hover) and (pointer:fine){.key-dates-switch-option:not([data-active]):hover{color:var(--color-space-cadet)}}.key-dates-switch-option[data-active]{background-color:var(--color-space-cadet);color:var(--color-ghost-white)}.key-chart-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--color-space-cadet) 25%, transparent) transparent;overflow-x:auto}.key-chart{min-width:48rem;padding-bottom:.5rem}.key-chart-months{border-bottom:1px solid color-mix(in srgb, var(--color-space-cadet) 12%, transparent);height:2rem;position:relative}.key-chart-month{left:var(--left);align-items:baseline;gap:.3125rem;padding-left:.5rem;display:flex;position:absolute;bottom:.4375rem}.key-chart-month-name{font-family:var(--font-heading);color:var(--color-space-cadet);font-size:.875rem;font-weight:700}.key-chart-month-year{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-blue-300);font-size:.75rem}.key-chart-rows{padding-top:1.75rem;position:relative}.key-chart-grid{pointer-events:none;position:absolute;inset:0}.key-chart-grid span{left:var(--left);background-image:linear-gradient(to bottom, color-mix(in srgb, var(--color-space-cadet) 16%, transparent) 50%, transparent 50%);background-size:1px 7px;width:1px;position:absolute;top:0;bottom:0}.key-chart-list{flex-direction:column;gap:1.25rem;display:flex;position:relative}.key-chart-label{width:fit-content;max-width:100%;margin-left:var(--left);align-items:baseline;gap:.5rem;padding-bottom:.4375rem;display:flex}.key-chart-label[data-flip]{margin-left:auto;margin-right:var(--right)}.key-chart-name{font-family:var(--font-heading);color:var(--color-space-cadet);white-space:nowrap;font-size:.9375rem;font-weight:700;line-height:1.2}.key-chart-when{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-blue-300);white-space:nowrap;font-size:.8125rem}.key-chart-bar{height:.75rem;margin-left:var(--left);width:var(--width);background-color:var(--color-space-cadet);border-radius:999px;min-width:.75rem;display:block}.key-chart-bar[data-kind=day]{background-color:var(--color-turf-green)}.key-chart-bar[data-kind=open]{background-color:#0000;background-image:linear-gradient(to right, var(--color-turf-green) 0%, color-mix(in srgb, var(--color-turf-green) 0%, transparent) 100%)}.key-chart-bar[data-emphasis]{background-color:var(--color-emerald);box-shadow:0 0 0 1px var(--color-turf-green), 0 0 0 .3125rem color-mix(in srgb, var(--color-emerald) 38%, transparent)}.key-chart-row:has([data-emphasis]) .key-chart-name{color:var(--color-turf-green)}.key-chart-hint{color:var(--color-blue-300);margin-top:1rem;font-size:.875rem}@media (min-width:64rem){.key-chart-hint{display:none}}@media (prefers-reduced-motion:reduce){.key-dates-switch-option{transition:none}}.schedule-row-meta{color:var(--color-blue-500);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.5rem;font-size:.875rem;display:flex}.schedule-row-speciality{background-color:var(--color-mint-100);font-family:var(--font-heading);color:var(--color-mint-700);border-radius:999px;padding:.125rem .5rem;font-weight:700}@media (prefers-reduced-motion:reduce){.filter-select-trigger,.filter-select-option{transition:none}}.filter-select{position:relative}.filter-select-trigger{border:1px solid var(--color-blue-100);cursor:pointer;transition:border-color .2s var(--ease-out-strong), background-color .2s var(--ease-out-strong);background-color:#ffffff8c;border-radius:999px;align-items:center;gap:.625rem;padding:.5rem .875rem .5rem 1rem;display:inline-flex}@media (hover:hover) and (pointer:fine){.filter-select-trigger:hover{border-color:var(--color-blue-300)}}.filter-select-trigger[data-open]{border-color:var(--color-turf-green);background-color:#fff}.filter-select-label{font-family:var(--font-heading);letter-spacing:var(--text-label--letter-spacing);color:var(--color-blue-300);font-size:.75rem;font-weight:700}.filter-select-value{font-family:var(--font-heading);color:var(--color-space-cadet);font-size:.9375rem;font-weight:700}.filter-select-chevron{width:.75rem;height:.75rem;color:var(--color-blue-300);transition:transform .24s var(--ease-out-strong)}.filter-select-trigger[data-open] .filter-select-chevron{color:var(--color-turf-green);transform:rotate(180deg)}.filter-select-list{z-index:30;overscroll-behavior:contain;border:1px solid var(--color-blue-100);min-width:100%;max-height:20rem;box-shadow:0 1px 2px color-mix(in srgb, var(--color-space-cadet) 6%, transparent), 0 18px 40px -12px color-mix(in srgb, var(--color-space-cadet) 28%, transparent);animation:filter-select-in .2s var(--ease-out-strong);background-color:#fff;border-radius:1.25rem;outline:none;padding:.375rem;position:absolute;top:calc(100% + .5rem);left:0;overflow-y:auto}@keyframes filter-select-in{0%{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.filter-select-list{animation:none}}.filter-select-option{color:var(--color-blue-900);white-space:nowrap;cursor:pointer;transition:color .14s var(--ease-out-strong), background-color .14s var(--ease-out-strong);border-radius:999px;padding:.5rem .875rem;font-size:.9375rem;line-height:1.3}.filter-select-option[data-active]{background-color:var(--color-mint-100);color:var(--color-mint-700)}.filter-select-option[data-selected]{font-family:var(--font-heading);color:var(--color-space-cadet);font-weight:700}.filter-select-option[data-selected][data-active]{background-color:var(--color-space-cadet);color:var(--color-ghost-white)}.schedule-row-day{font-family:var(--font-heading);color:var(--color-space-cadet);font-weight:700}}
