@font-face{font-family:Inter;src:url('assets/fonts/inter-400.ttf');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url('assets/fonts/inter-500.ttf');font-weight:500;font-display:swap}@font-face{font-family:Inter;src:url('assets/fonts/inter-600.ttf');font-weight:600;font-display:swap}@font-face{font-family:Space;src:url('assets/fonts/space-grotesk-700.ttf');font-weight:700;font-display:swap}
:root{color-scheme:dark;font-family:Inter,Arial,sans-serif;color:#eff0fa;background:#11131f;--accent:#7875ff;--muted:#959bad;--edge:rgba(180,191,228,.1)}*{box-sizing:border-box}body{margin:0;min-height:100vh;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid #b1b5ff;outline-offset:5px}.city,.ambient{position:fixed;inset:0;pointer-events:none;z-index:-2}.city{background:url('assets/tallinn-night.png') center/cover;filter:saturate(.38) hue-rotate(200deg) brightness(.52)}.ambient{z-index:-1;background:radial-gradient(ellipse at 15% 0%,rgba(130,129,255,.4),transparent 58%),radial-gradient(ellipse at 90% 85%,rgba(93,101,248,.26),transparent 55%),linear-gradient(180deg,rgba(28,30,59,.35),rgba(11,14,25,.8))}.experience{width:min(1450px,calc(100% - 72px));margin:36px auto 0;padding:28px 28px 28px 14px;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;background:linear-gradient(145deg,rgba(35,39,54,.91),rgba(18,22,33,.96));border:1px solid rgba(190,198,232,.15);border-radius:30px;box-shadow:0 28px 90px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05);backdrop-filter:blur(18px)}.wheel-stage{position:relative;min-width:0}.month-heading{text-align:center;position:relative;z-index:2;margin:8px 0 -2px;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:.19em;color:#9196af;font-weight:600}.eyebrow span{color:#bbb8ff;margin-left:8px}h1{font-family:Space,Inter,sans-serif;font-size:clamp(30px,3.2vw,47px);letter-spacing:-.055em;line-height:1.1;margin:10px 0 7px;font-weight:700}.month-heading p{font-size:10px;color:#8d95aa;letter-spacing:.055em;margin:0}.wheel-viewport{position:relative;width:100%;max-width:900px;aspect-ratio:1;margin:18px auto 0;touch-action:pan-y;isolation:isolate;outline-offset:0!important;cursor:grab;user-select:none}.wheel-viewport.dragging{cursor:grabbing}.wheel-viewport::before{content:'';position:absolute;inset:2.3%;border-radius:50%;background:radial-gradient(circle,rgba(14,17,27,.98) 0%,rgba(18,22,33,.95) 32%,transparent 33%),conic-gradient(from -15deg,rgba(118,116,255,.1),rgba(100,115,150,.01),rgba(118,116,255,.1));box-shadow:0 18px 55px rgba(0,0,0,.3),0 0 0 9px rgba(80,89,116,.07),0 0 0 10px rgba(163,173,210,.08);z-index:-1}#wheel{width:100%;height:100%;display:block;overflow:visible;transform:rotate(var(--rotation,0deg));transition:transform 900ms cubic-bezier(.22,.75,.18,1);will-change:transform}.dragging #wheel{transition:none}.sector{cursor:pointer;outline:none}.sector path{fill:url(#sector-fill);stroke:rgba(150,162,193,.13);stroke-width:1.4;transition:fill .25s,stroke .25s}.sector:hover path{fill:#3d435a;stroke:rgba(174,180,239,.4)}.sector.selected path{fill:url(#selected-fill);stroke:#8b8bce;stroke-width:2.7;filter:url(#selected-shadow)}.sector.selected .sector-month{color:#d2ceff}.sector.selected .sector-events{color:#f5f3ff}.sector-copy{height:100%;padding:12px 6px 0;text-align:center;font-family:Inter,Arial,sans-serif;color:#c1c7d5;overflow:hidden;pointer-events:none}.sector-month{display:block;font-size:14px;letter-spacing:.12em;font-weight:600;color:#a4acc0;margin-bottom:8px;text-transform:uppercase}.sector-count{color:#787f93;font-size:10px;margin-top:12px}.sector-events{display:flex;flex-direction:column;gap:9px;font-size:11.2px;line-height:1.24;font-weight:500;letter-spacing:-.02em}.sector-event{display:block}.sector-event small{display:block;color:#a7a7da;font-size:10px;letter-spacing:.015em;margin-top:3px;font-weight:400}.sector-empty{font-size:11px;color:#778095;padding-top:14px;line-height:1.5}.pointer{position:absolute;z-index:4;top:-5px;left:50%;transform:translateX(-50%);width:26px;height:33px;pointer-events:none}.pointer::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#a4a2ff,#6863f2);clip-path:polygon(12% 0,88% 0,88% 57%,50% 100%,12% 57%);filter:drop-shadow(0 3px 7px #111)}.pointer span{position:absolute;width:4px;height:4px;left:11px;top:9px;background:#e3e1ff;border-radius:50%}.hub{position:absolute;inset:28%;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 36% 20%,#2e3243,#1a1f2d 70%);border:1px solid rgba(166,177,220,.12);box-shadow:inset 0 2px 4px rgba(255,255,255,.035),0 12px 35px #111723;z-index:3;cursor:default}.hub-ring{position:absolute;inset:8px;border:1px solid rgba(166,177,220,.05);border-radius:50%;pointer-events:none}.hub-content{text-align:center;width:84%}.hub-caption{font-size:clamp(6px,.7vw,10px);font-weight:500;letter-spacing:.14em;color:#9197af}.hub strong{font-family:Space,Inter,sans-serif;display:block;font-size:clamp(28px,4.2vw,62px);letter-spacing:-.065em;margin:7px 0 14px;line-height:1.1}.year-dot{display:inline-block;width:6px;height:6px;margin-left:5px;border-radius:50%;background:#8483ff;box-shadow:0 0 15px #7975ff}.hub-controls{display:flex;align-items:center;justify-content:center;gap:10px}.hub-controls button{width:clamp(28px,3.1vw,44px);height:clamp(28px,3.1vw,44px);padding:8px;border:1px solid rgba(171,175,255,.3);border-radius:11px;color:#fff;background:linear-gradient(180deg,#7775ff,#514df0);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 12px rgba(72,60,218,.22);transition:filter .2s,transform .2s}.hub-controls button:hover{filter:brightness(1.2);transform:translateY(-2px)}.hub-controls svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}#hub-index{font-size:clamp(9px,1vw,14px);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}#hub-index i{color:#727b93;font-style:normal;font-weight:400;margin-left:3px}.current{border:0;background:none;color:#9c9fb8;font-size:clamp(8px,.8vw,11px);padding:0;margin-top:15px}.current:hover{color:white}.current span{color:#9b97ff;margin-left:4px}.wheel-help{display:flex;align-items:center;justify-content:center;gap:9px;color:#7d859c;font-size:9px;margin:19px 0 5px;letter-spacing:.015em}.mouse-symbol{border:1px solid #737d98;width:10px;height:14px;border-radius:5px;position:relative}.mouse-symbol::after{content:'';position:absolute;left:3px;top:3px;height:4px;width:2px;background:#a8a8ce}.help-divider{height:10px;width:1px;background:#41485d;margin:0 4px}.key{padding:2px 4px;border:1px solid #444b61;border-radius:4px;line-height:1}.month-panel{background:linear-gradient(135deg,rgba(56,62,79,.74),rgba(31,36,49,.8));border:1px solid rgba(186,194,226,.12);border-radius:22px;padding:22px 18px 16px;display:flex;flex-direction:column;min-width:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}.panel-heading{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.08em;color:#b4bbd0}.live-dot{width:5px;height:5px;border-radius:50%;background:#6ad9e5;box-shadow:0 0 10px rgba(106,217,229,.3)}.count{margin-left:auto;background:rgba(149,149,196,.12);border:1px solid rgba(174,177,220,.08);padding:4px 6px;border-radius:6px;color:#b7bad3;font-variant-numeric:tabular-nums}.panel-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:27px 0 18px;font-family:Space,sans-serif;font-weight:700;font-size:26px;letter-spacing:-.04em}.panel-year{font-size:13px;color:#80899f;letter-spacing:0}.event-list{display:flex;flex-direction:column;gap:10px;padding-bottom:24px}.event-card{position:relative;text-decoration:none;color:#edf0fc;padding:15px 13px;border:1px solid rgba(159,172,207,.1);border-radius:13px;background:linear-gradient(135deg,rgba(79,86,109,.49),rgba(48,55,73,.62));transition:background .25s,border-color .25s,transform .25s;overflow:hidden}.event-card::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent,rgba(151,139,255,.12),transparent);transform:translateX(-105%);transition:transform .6s}.event-card:hover{border-color:rgba(164,154,255,.55);transform:translateX(-3px);background:rgba(91,87,142,.35)}.event-card:hover::after{transform:translateX(105%)}.card-date{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#b2aff5;margin-bottom:9px;font-weight:500}.card-arrow{font-size:16px;color:#8d93b2}.card-name{display:flex;align-items:flex-start;gap:8px;font-size:13px;font-weight:500;line-height:1.5;letter-spacing:-.015em}.badge{display:inline-flex;justify-content:center;align-items:center;flex-shrink:0;width:24px;height:24px;border:1px solid rgba(184,167,255,.3);border-radius:7px;background:rgba(146,128,227,.13);color:#c5baff;font-family:Space,Inter,sans-serif;font-size:11px;line-height:1;font-weight:700}.tentative{color:#9de9f1;border-color:rgba(102,212,228,.25);background:rgba(102,212,228,.09);font-size:18px}.considering{font-size:15px}.card-location{font-size:10px;margin-top:7px;color:#979fb5}.empty-state{padding:27px 12px 30px;text-align:center;border:1px dashed rgba(174,180,213,.15);border-radius:14px}.empty-orbit{display:grid;place-items:center;margin:0 auto 16px;width:52px;height:52px;border:1px solid rgba(143,141,220,.25);border-radius:50%;color:#aaa4f0;font-size:25px;background:rgba(105,99,199,.07)}.empty-state strong{font-weight:500;font-size:13px}.empty-state p{color:#8993aa;font-size:11px;line-height:1.6;margin:9px auto 0;max-width:190px}.panel-bottom{margin-top:auto;padding-top:24px}.season-progress{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:.08em;color:#838da4}.season-progress b{font-size:10px;color:#bbb9d9;letter-spacing:0;font-weight:500}.month-dots{display:flex;gap:5px;margin:14px 0 23px}.month-dot{height:6px;min-width:0;flex:1;border:0;border-radius:3px;background:#51596c;padding:0;position:relative;transition:background .25s}.month-dot::before{content:'';position:absolute;inset:-8px -1px}.month-dot.has-events{background:#777c9e}.month-dot.active{background:#9286ff;box-shadow:0 0 12px rgba(146,134,255,.4)}.legend{border-top:1px solid rgba(172,180,212,.09);padding-top:17px;display:flex;flex-direction:column;gap:10px;color:#9da6bd;font-size:10px}.legend>span{display:flex;align-items:center;gap:9px}.series-link{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding:13px 11px;color:#c8c7f9;background:rgba(114,104,230,.1);border:1px solid rgba(149,139,249,.2);border-radius:10px;text-decoration:none;font-size:10px;transition:background .2s}.series-link:hover{background:rgba(114,104,230,.25)}.page-note{display:flex;justify-content:space-between;width:min(1450px,calc(100% - 92px));margin:18px auto 23px;font-size:8px;letter-spacing:.14em;color:#858ba5}.no-script{text-align:center}button,a{touch-action:manipulation}@media(min-width:1600px){.experience{margin-top:45px}.sector-events{font-size:11.2px}}@media(max-width:1050px){.experience{width:calc(100% - 36px);padding:20px 18px 20px 6px;gap:12px;grid-template-columns:minmax(0,1fr) 265px}.month-panel{padding:18px 13px}.hub-controls{gap:6px}.hub strong{margin-bottom:10px}.current{margin-top:10px}.wheel-help{font-size:8px;gap:5px}.help-divider{margin:0 1px}.panel-title{font-size:23px}.page-note{width:calc(100% - 52px)}}@media(max-width:760px){.experience{display:block;margin:14px auto 0;width:calc(100% - 24px);padding:22px 10px 12px;border-radius:24px}.month-heading{margin-top:0}h1{font-size:34px}.wheel-viewport{margin-top:18px}.hub strong{font-size:clamp(28px,8vw,53px);margin:7px 0 10px}.hub-caption{font-size:clamp(6px,1.6vw,10px)}.hub-controls button{width:clamp(29px,8vw,42px);height:clamp(29px,8vw,42px);padding:7px;border-radius:9px}.hub-controls{gap:9px}#hub-index{font-size:clamp(9px,2.3vw,13px)}.current{font-size:clamp(8px,1.8vw,11px);margin-top:10px}.year-dot{width:4px;height:4px}.wheel-help{font-size:9px;margin:19px 0 26px;gap:6px}.month-panel{padding:22px 19px 19px;max-width:540px;margin:auto;border-radius:19px}.panel-title{margin:22px 0 17px;font-size:27px}.event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-bottom:0}.event-list .empty-state{grid-column:1/-1}.event-card{padding:13px 11px}.card-name{font-size:12px}.badge{width:22px;height:22px}.panel-bottom{padding-top:27px}.legend{flex-direction:row;flex-wrap:wrap;gap:12px;font-size:9px}.legend .badge{width:21px;height:21px}.series-link{margin-top:19px;font-size:11px}.page-note{width:calc(100% - 42px);font-size:7px;letter-spacing:.08em}.pointer{width:20px;height:26px;top:-4px}.pointer span{left:8px;top:6px}}@media(max-width:390px){.event-list{grid-template-columns:1fr}.wheel-help{font-size:8px}.hub-controls{gap:6px}.hub strong{margin-bottom:8px}.current{margin-top:8px}.year-dot{display:none}.page-note span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.city,.ambient,.page-note,.wheel-help,.hub-controls,.current{display:none}.experience{width:100%;margin:0;background:white;color:black;box-shadow:none;display:block}.month-panel{color:black;background:white}.event-card{color:black}.wheel-viewport{max-width:700px}.month-panel{break-before:page}}
.sector-month{font-size:16px}.sector-events{font-size:13px;gap:7px}.sector-event small{font-size:11px}.sector-empty{font-size:13px}.city{filter:saturate(.48) hue-rotate(200deg) brightness(.66)}@media(min-width:761px){.wheel-viewport{max-width:min(900px,calc(100svh - 245px))}.experience{padding-top:22px;padding-bottom:22px}.month-panel{min-height:570px}.wheel-help{margin-top:14px}}@media(min-width:761px) and (max-height:720px){.experience{margin-top:20px}.month-panel{min-height:535px}.wheel-viewport{max-width:calc(100svh - 230px)}.month-heading{margin-top:0}.month-heading h1{font-size:34px}.page-note{margin-top:12px}}

.sector.dense .sector-copy{padding-top:8px}.sector.dense .sector-month{font-size:14px;margin-bottom:6px}.sector.dense .sector-events{font-size:11.5px;gap:4px}.sector.dense .sector-event small{font-size:10px;margin-top:2px}
.wheel-viewport{touch-action:none}
body{overflow-x:clip}.wheel-viewport{overflow:clip;overflow-clip-margin:12px}

html,body{height:100%;overflow:hidden;overscroll-behavior:none}body{height:100dvh}.experience{height:calc(100dvh - 66px);min-height:0;margin:20px auto 0;padding-top:20px;padding-bottom:20px;overflow:hidden}.wheel-stage{height:100%;min-height:0;display:flex;flex-direction:column;align-items:center}.month-heading{flex-shrink:0;margin-top:0}.wheel-viewport{flex:0 1 auto;min-height:0;width:min(100%,calc(100dvh - 220px));max-width:900px;margin-top:17px}.wheel-help{flex-shrink:0;margin:12px 0 0}.desktop-help{display:inline-flex;align-items:center;gap:8px}.touch-help{display:none}.month-panel{height:100%;min-height:0;max-height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#626185 transparent}.panel-heading,.panel-title,.event-list,.panel-bottom{flex-shrink:0}.page-note{margin:13px auto 0}.month-panel::-webkit-scrollbar{width:5px}.month-panel::-webkit-scrollbar-thumb{background:#626185;border-radius:4px}@media(max-width:760px){.experience{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(170px,.48fr);gap:14px;height:calc(100dvh - 24px);margin:12px auto 0;padding:15px 10px 10px}.wheel-stage{justify-content:flex-start}.eyebrow{font-size:8px}h1{font-size:29px;margin:7px 0 5px}.month-heading p{font-size:9px}.wheel-viewport{width:min(100%,calc(67dvh - 125px));max-width:100%;margin-top:13px}.wheel-help{margin-top:8px;font-size:9px}.desktop-help{display:none}.touch-help{display:inline}.month-panel{width:100%;max-width:none;padding:15px 16px;border-radius:15px}.panel-title{margin:13px 0;font-size:23px}.panel-heading{font-size:8px}.event-card{padding:12px 10px}.panel-bottom{padding-top:20px}.page-note{display:none}.hub strong{font-size:clamp(24px,7vw,42px);margin:5px 0 9px}.hub-caption{font-size:7px}.hub-controls{gap:6px}.hub-controls button{width:29px;height:29px;padding:7px}#hub-index{font-size:10px}.current{font-size:8px;margin-top:8px}.year-dot{width:4px;height:4px}}@media(pointer:coarse){.desktop-help{display:none}.touch-help{display:inline}}@media(max-height:560px) and (min-width:761px){.experience{margin-top:10px;height:calc(100dvh - 40px);padding-top:10px;padding-bottom:10px}.month-heading h1{font-size:26px;margin:6px 0}.wheel-viewport{width:calc(100dvh - 170px);margin-top:12px}.hub strong{font-size:25px;margin-bottom:7px}.hub-caption{font-size:6px}.hub-controls{gap:4px}.hub-controls button{width:24px;height:24px;padding:5px}#hub-index{font-size:9px}.current{margin-top:6px;font-size:7px}.page-note{margin-top:8px}}@media print{html,body{height:auto;overflow:visible}.experience,.wheel-stage,.month-panel{height:auto;overflow:visible;max-height:none}}

.experience{background:none;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.city{filter:none}.month-panel{background:linear-gradient(135deg,rgba(48,54,73,.96),rgba(25,31,47,.96));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 16px 45px rgba(6,10,22,.3),inset 0 1px 0 rgba(255,255,255,.04)}.month-heading,.wheel-help,.page-note{text-shadow:0 2px 8px rgba(0,0,0,.85)}.eyebrow,.month-heading p,.wheel-help{color:#c3c9dd}

@media(max-width:760px){.experience{grid-template-rows:minmax(0,1fr) auto;gap:10px;padding:12px 9px 9px}.wheel-stage{overflow:hidden}.wheel-viewport{flex:0 0 auto;max-width:100%;margin-top:12px;container-type:inline-size}.month-panel{height:auto;max-height:none;overflow:visible;padding:11px 12px}.panel-heading{display:none}.panel-title{font-size:20px;line-height:1.2;margin:0 0 9px}.panel-year{font-size:11px}.event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.event-card{padding:7px 8px;border-radius:9px}.card-date{font-size:9px;margin-bottom:3px;line-height:1.2}.card-arrow{font-size:12px}.card-name{font-size:10.5px;line-height:1.25;gap:5px}.card-name .badge{width:18px;height:18px;border-radius:5px;font-size:9px}.card-name .tentative,.card-name .considering{font-size:12px}.card-location{font-size:9px;margin-top:4px;line-height:1.2}.panel-bottom{padding-top:9px;margin-top:0}.season-progress{display:none}.month-dots{margin:0 0 9px;gap:5px}.legend{padding-top:8px;gap:5px 11px;font-size:8px;line-height:1.25}.legend>span{gap:5px}.legend .badge{width:17px;height:17px;border-radius:5px;font-size:9px}.legend .tentative,.legend .considering{font-size:11px}.series-link{margin-top:8px;padding:7px 9px;line-height:1.2;font-size:9px;border-radius:7px}.empty-state{padding:13px 10px}.empty-orbit{display:none}.empty-state strong{font-size:11px}.empty-state p{font-size:9px;max-width:none;line-height:1.4;margin-top:5px}.wheel-help{margin-top:8px;font-size:8px}.hub-caption{font-size:2cqw}.hub strong{font-size:9cqw;margin:1.6cqw 0 2.2cqw}.hub-controls{gap:1.5cqw}.hub-controls button{width:7.3cqw;height:7.3cqw;padding:1.6cqw;border-radius:2cqw}#hub-index{font-size:2.7cqw}.current{font-size:2.25cqw;margin-top:2cqw}.year-dot{width:1.1cqw;height:1.1cqw;margin-left:1cqw}.compact-hub .hub-caption,.compact-hub .current{display:none}.compact-hub .hub strong{font-size:10cqw;margin:0 0 2cqw}.hub-ring{inset:5px}.eyebrow{font-size:7px}.month-heading h1{font-size:27px;margin:6px 0 4px}.month-heading p{font-size:8px}}
@media(max-width:760px) and (max-height:620px){.experience{height:calc(100dvh - 16px);margin:8px auto 0;padding-top:8px;gap:6px}.month-heading h1{font-size:22px}.eyebrow{display:none}.month-panel{padding:8px 10px}.panel-title{margin-bottom:6px;font-size:18px}.card-name{font-size:10px}.event-card{padding:5px 7px}.legend{font-size:7px;padding-top:5px;gap:4px 8px}.panel-bottom{padding-top:6px}.month-dots{margin-bottom:6px}.series-link{margin-top:5px;padding:5px 8px}.wheel-help{font-size:7px}}

@media(max-width:760px){.experience{position:relative;display:block}.wheel-stage{height:100%;overflow:hidden;justify-content:flex-start}.wheel-viewport{flex-shrink:0}.month-panel{position:absolute;z-index:5;left:9px;right:9px;bottom:9px;width:auto;height:auto;max-height:none;box-shadow:0 -10px 36px rgba(5,10,24,.25),inset 0 1px 0 rgba(255,255,255,.04)}.wheel-help{position:relative;z-index:1}.month-panel .event-list{position:relative}}

.wheel-viewport{margin-top:49px;overflow:visible}.rotation-controls{position:absolute;z-index:6;top:-43px;left:0;right:0;height:66px;display:flex;justify-content:space-between;pointer-events:none}.rotation-strip{position:relative;pointer-events:auto;width:46%;height:100%;padding:0;border:0;background:none;color:#d6d9ff;filter:drop-shadow(0 5px 12px rgba(5,9,23,.18));transition:filter .2s}.strip-shape{position:absolute;inset:0;width:100%;height:100%;fill:rgba(69,72,110,.52);stroke:rgba(186,188,255,.32);stroke-width:1;overflow:visible}.rotation-strip:hover{filter:brightness(1.28)}.rotation-strip:active{filter:brightness(1.45)}.strip-content{position:absolute;top:9px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;letter-spacing:.04em;font-weight:500}.strip-content svg{width:20px;height:20px;fill:none;stroke:#d2d0ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.hub-content{width:90%;pointer-events:none}.hub .month-heading{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.hub .eyebrow{font-size:7px;line-height:1.5;letter-spacing:.1em;color:#b1b7d4}.hub .eyebrow span{display:block;margin:3px 0 0;font-size:14px;letter-spacing:.09em;color:#c1bbff}.hub .month-heading h1{font-size:clamp(17px,2vw,28px);letter-spacing:-.05em;margin:9px 0 7px;white-space:nowrap;line-height:1.15}.hub .month-heading p{font-size:9px;line-height:1.4;color:#b0b8ce;letter-spacing:.015em}.hub .month-heading{text-shadow:none}.wheel-stage{justify-content:flex-start}@media(min-width:761px){.wheel-viewport{width:min(100%,calc(100dvh - 145px));max-width:900px}}@media(max-width:760px){.wheel-viewport{margin-top:46px}.rotation-controls{top:-36px;height:53px}.strip-content{top:7px;gap:6px;font-size:8px}.strip-content svg{width:17px;height:17px}.hub .eyebrow{display:block;font-size:1.7cqw;letter-spacing:.09em}.hub .eyebrow span{font-size:3.4cqw;margin-top:.8cqw}.hub .month-heading h1{font-size:4.7cqw;margin:2.2cqw 0 1.7cqw;line-height:1.2}.hub .month-heading p{font-size:2.25cqw;letter-spacing:0}.wheel-help{margin-top:8px}}@media(max-width:760px) and (max-height:620px){.wheel-viewport{margin-top:39px}.rotation-controls{top:-31px;height:47px}.strip-content{top:5px}.hub .eyebrow{display:block}}@media(prefers-reduced-motion:reduce){.rotation-strip{transition:none}}

@media(max-width:760px){.strip-content{top:3px}.strip-content svg{width:15px;height:15px}}

.wheel-viewport{margin-top:8px}.rotation-controls{inset:0;height:100%;display:block}.control-clips{position:absolute;overflow:hidden}.rotation-strip{position:absolute;top:2%;width:34%;height:22%;filter:none}.previous-strip{left:10%;clip-path:url(#rotate-left-clip)}.next-strip{right:10%;clip-path:url(#rotate-right-clip)}.strip-shape{stroke-width:1.4;fill:rgba(76,78,121,.43);stroke:rgba(201,202,255,.4)}.rotation-icon{position:absolute;top:2.7%;width:14.118%;height:21.818%;fill:none;stroke:#dfddff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.previous-strip .rotation-icon{left:34.118%}.next-strip .rotation-icon{left:51.765%}.rotation-strip:focus-visible .strip-shape{stroke:#dbd7ff;stroke-width:5}.rotation-strip:focus-visible{outline:0}.rotation-strip:hover .strip-shape{fill:rgba(107,101,171,.6)}@media(max-width:760px){.wheel-viewport{margin-top:12px}.rotation-controls{inset:0;height:100%}}@media(max-width:760px) and (max-height:620px){.wheel-viewport{margin-top:10px}.rotation-controls{inset:0;height:100%}}

.rotation-strip{top:2%;width:34%;height:34%}.previous-strip{left:2%}.next-strip{right:2%}.rotation-icon{top:17.647%;width:17.647%;height:17.647%;stroke-width:1.7}.previous-strip .rotation-icon{left:17.647%}.next-strip .rotation-icon{left:64.706%}.strip-shape{fill:rgba(76,78,121,.38)}

.rotation-strip{width:28%;height:28%}.strip-shape{stroke-linejoin:round}

.hub-content{position:absolute;inset:0;width:100%;height:100%}.hub .month-heading{position:relative;width:100%;height:100%;display:block;margin:0;--label-offset:clamp(20px,2.1vw,29px)}.hub .month-heading h1{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;text-align:center;line-height:1.2}.hub .eyebrow{position:absolute;left:0;right:0;bottom:calc(50% + var(--label-offset));margin:0;text-align:center;line-height:1}.hub .eyebrow span{display:block;font-size:clamp(18px,1.8vw,25px);line-height:1.1;margin:0;letter-spacing:.07em}.hub .month-heading p{position:absolute;left:0;right:0;top:calc(50% + var(--label-offset));margin:0;text-align:center;font-size:clamp(11px,1.1vw,14px);line-height:1.2;letter-spacing:.025em;color:#c3c9dc}@media(max-width:760px){.hub .month-heading{--label-offset:5.5cqw}.hub .month-heading h1{margin:0;font-size:4.7cqw}.hub .eyebrow span{font-size:4.8cqw;margin:0}.hub .month-heading p{font-size:3cqw}}

.experience{height:calc(100dvh - 92px)}.partner-banner{position:fixed;left:20px;right:20px;bottom:13px;height:40px;display:flex;justify-content:center;align-items:center;z-index:8}.partner-banner a{display:inline-flex;align-items:center;justify-content:center;height:100%;max-width:100%;border-radius:4px;transition:opacity .2s,transform .2s}.partner-banner a:hover{opacity:.82;transform:translateY(-1px)}.partner-banner img{display:block;height:36px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 7px rgba(0,0,0,.5))}@media(max-width:760px){.experience{height:calc(100dvh - 75px)}.partner-banner{bottom:12px;left:16px;right:16px;height:32px}.partner-banner img{height:30px}}@media(max-width:760px) and (max-height:620px){.experience{height:calc(100dvh - 63px)}.partner-banner{bottom:9px;height:27px}.partner-banner img{height:25px}}@media(max-height:560px) and (min-width:761px){.experience{height:calc(100dvh - 68px)}.partner-banner{bottom:9px;height:30px}.partner-banner img{height:27px}}@media print{.experience{height:auto}.partner-banner{position:static;margin:15px auto;height:auto}.partner-banner img{filter:none;max-width:220px;height:auto}}

.experience{width:min(1450px,calc(100% - 24px));height:calc(100dvh - 54px);margin:10px auto 0;padding:12px 12px 12px 6px}.partner-banner{left:12px;right:12px;bottom:8px}@media(max-width:760px){.experience{width:calc(100% - 12px);height:calc(100dvh - 48px);margin:6px auto 0;padding:7px 5px 6px}.month-panel{left:5px;right:5px;bottom:6px}.partner-banner{left:10px;right:10px;bottom:8px}}@media(max-width:760px) and (max-height:620px){.experience{height:calc(100dvh - 40px);margin:4px auto 0;padding-top:5px}.partner-banner{bottom:7px}}@media(max-height:560px) and (min-width:761px){.experience{height:calc(100dvh - 44px);margin:6px auto 0;padding:8px 10px}.partner-banner{bottom:6px}}@media print{.experience{height:auto;margin:0;padding:0}.partner-banner{position:static}}
