@font-face{font-family:SB Display;src:url(/assets/brand/display-bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:SB Text;src:url(/assets/brand/text-regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:SB Text;src:url(/assets/brand/text-semibold.woff2) format("woff2");font-weight:600 700;font-display:swap}@font-face{font-family:SB Mono;src:url(/assets/brand/mono-regular.woff2) format("woff2");font-weight:400;font-display:swap}:root{--brand-indigo: #21108e;--ink: #202326;--ink-soft: #666761;--paper: #faf9f5;--warm: #eeece4;--white: #fff;--dark: #171b20;--dark-text: #f7f6ed;--dark-muted: #b5babd;--accent: #d2fa69;--accent-ink: #314314;--lavender: #eeebff;--cream: #f4f0e6;--peach: #f4e4d8;--sand: #e7decd;--pale-lime: #eef2de;--ice: #eaf0f7;--amber-ink: #865322;--line: #d8d8cd;--line-dark: #3e444b;--error: #993727;--field-required-ink: var(--brand-indigo);--field-required-background: var(--lavender);--field-error-background: #fff0ec;--font-body: "SB Text", sans-serif;--font-display: "SB Display", sans-serif;--font-mono: "SB Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--radius-small: 8px;--radius: 16px;--radius-large: 24px;--max-width: 1344px;--media-modal-width: 960px;--media-tile-ratio: 4 / 3;--gutter: clamp(20px, 4vw, 64px);--ease: cubic-bezier(.2, .8, .2, 1);--texture-grid: url(/assets/generated/patterns/pixel-grid.svg);--texture-schedule: url(/assets/generated/patterns/schedule.svg);--duration: .18s;--cta-wave-duration: 1.2s;--cta-wave-angle: 9deg;--cta-pixel-drift-x: 1.6cqw;--cta-pixel-drift-y: 2.4cqw;--cta-pixel-duration-1: 3.6s;--cta-pixel-duration-2: 3.9s;--cta-pixel-duration-3: 4.2s;--cta-pixel-duration-4: 4.5s;--cta-pixel-duration-5: 4.8s;--cta-pixel-duration-6: 5.4s;--cta-pixel-delay-1: -.3s;--cta-pixel-delay-2: -1.2s;--cta-pixel-delay-3: -2.1s;--cta-pixel-delay-4: -.9s;--cta-pixel-delay-5: -3.2s;--cta-pixel-delay-6: -4.1s;--shadow: 0 12px 36px #2023260d;--workshop-card-width: 360px;--workshop-image-ratio: 3 / 2;--carousel-gap: var(--space-5);--campus-card-width: 400px;--campus-inactive-scale: .85;--campus-image-ratio: 4 / 3;--campus-motion-duration: .24s;--campus-image-muted-opacity: .65;--campus-image-muted-saturation: .4;--campus-side-overlay: color-mix(in srgb, var(--ink) 18%, transparent);--campus-active-shadow: 0 24px 64px #21108e26}@media(max-width:1199px){:root{--workshop-card-width: 320px;--campus-card-width: 320px}}@media(max-width:767px){:root{--workshop-card-width: min(320px, calc(100vw - 80px) );--carousel-gap: var(--space-4);--campus-card-width: min(300px, 80vw)}}.mono-label{font:11px/1.6 var(--font-mono);letter-spacing:.025em}.status-dot{display:inline-block;width:7px;height:7px;flex-shrink:0;background:var(--accent)}.hero{position:relative;overflow:hidden;background:var(--dark);color:var(--dark-text)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:730px;gap:var(--space-5);padding-block:80px 64px}.hero-copy{position:relative;z-index:1}.hero-eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;color:var(--dark-muted)}.hero h1{font-size:clamp(52px,5.6vw,88px);line-height:1.025;letter-spacing:-.055em}.hero h1>span{color:var(--accent)}.hero-description{margin-top:28px;max-width:465px;font-size:16px;color:var(--dark-muted);line-height:1.7}.hero-actions{display:flex;gap:22px;align-items:center;margin-top:32px}.hero-note{font-size:11px;color:var(--dark-muted);max-width:140px}.brand-pair-light>span{color:var(--dark-muted)}.hero-visual{position:relative;min-width:0;min-height:540px;display:grid;align-items:center}.hero-campus{position:relative;z-index:1;width:112%;max-width:none;height:auto;margin-left:-5%;animation:campus-arrive .7s var(--ease) both}.hero-orbit{position:absolute;inset:8% 1% 6%;border:1px solid var(--line-dark);border-radius:48% 48% 4px 4px;background-image:var(--texture-grid);opacity:.6}.hero-particles{position:absolute;inset:0;width:100%;height:100%;opacity:.6;animation:pixel-float 7s ease-in-out infinite}.visual-label{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;font:10px/1.6 var(--font-mono);color:var(--dark-muted);background:var(--dark);border:1px solid var(--line-dark);padding:10px 14px;border-radius:4px}.label-top{top:0;right:7%}.label-bottom{bottom:6px;right:3%;color:var(--accent);animation:pixel-float 6s ease-in-out infinite}.hero-coordinate{position:absolute;bottom:8px;left:0;color:var(--dark-muted);font-size:8px}.hero-strip{border-top:1px solid var(--line-dark);padding-block:24px}.hero-strip>.container{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--dark-muted)}.strip-index{font-family:var(--font-mono);color:var(--accent);margin-right:12px;font-size:10px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p{max-width:340px;padding-bottom:5px;font-size:14px;color:var(--ink-soft)}.workshops-section{background:var(--paper)}.teacher-inline{display:flex;align-items:center;gap:10px;font-size:12px}.teacher-inline-avatar{width:30px;height:30px;object-fit:cover;border-radius:6px;flex-shrink:0}.teacher-initial{display:grid;place-items:center;background:var(--lavender);color:var(--brand-indigo);font-family:var(--font-mono)}.availability{display:inline-flex;align-items:center;gap:8px;color:var(--accent-ink);font-size:11px;line-height:1.5;font-weight:600}.availability:before{content:"";width:6px;height:6px;flex-shrink:0;background:currentColor}.availability-low{color:var(--amber-ink)}.availability-full{color:var(--error)}.section-endnote{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px}.section-endnote>span{color:var(--brand-indigo)}.section-endnote>p{font-size:12px;color:var(--ink-soft)}.cta-section{overflow:hidden;background:var(--dark);color:var(--dark-text);padding-block:var(--space-9) var(--space-7)}.cta-inner{display:grid;grid-template-columns:1.35fr .65fr;gap:32px;align-items:center}.cta-section .eyebrow{color:var(--dark-muted)}.cta-section h2{font-size:clamp(40px,5vw,72px)}.cta-description{margin-top:24px;font-size:14px;color:var(--dark-muted)}.cta-section .button{margin-top:32px}.workshop-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;margin-top:48px;align-items:start}.workshop-detail h1{font-size:clamp(36px,4vw,58px)}.detail-description{margin-top:28px;font-size:16px;white-space:pre-line;line-height:1.85}.detail-art{background:var(--cream);border:1px solid var(--line);border-radius:12px;overflow:hidden}.detail-image{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:contain}.detail-art>p{padding-inline:28px;font-size:14px}.detail-art>p.mono-label{margin-block:24px 10px;font-size:10px;color:var(--brand-indigo)}.detail-art>p:last-child{padding-bottom:28px;color:var(--ink-soft)}.detail-meta{margin-block:28px;padding-block:16px;border-block:1px solid var(--line)}.detail-meta>div{display:grid;grid-template-columns:100px 1fr;gap:10px;margin-block:14px;align-items:center;font-size:13px}.detail-meta dt{color:var(--ink-soft)}.detail-meta dd{margin:0}.detail-registration{margin-top:20px}@keyframes campus-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pixel-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media(min-width:1600px){.hero-grid{min-height:800px}.section{padding-block:112px}.hero-visual{min-height:580px}}@media(max-width:1199px){.hero-grid{min-height:650px;gap:12px;padding-block:64px}.hero-visual{min-height:430px}.hero h1{font-size:clamp(52px,6.4vw,72px)}.hero-actions{align-items:flex-start;flex-direction:column;gap:14px}.hero-note{max-width:none}.hero-description{font-size:14px}.workshop-detail{gap:32px}}@media(min-width:768px)and (max-width:1023px){.hero-eyebrow{font-size:8px}.hero-coordinate{display:none}.hero h1{font-size:44px}.hero-visual{min-height:390px}.visual-label{font-size:8px;padding:8px}.cta-inner{grid-template-columns:1.3fr .7fr}}@media(max-width:767px){.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding-block:44px 28px;min-height:0}.hero-eyebrow{font-size:8px;margin-bottom:22px}.hero h1{font-size:clamp(43px,10.8vw,68px)}.hero-description{margin-top:24px;max-width:460px;font-size:14px}.hero-actions{margin-top:24px;gap:12px}.hero-actions .button{width:100%;font-size:12px}.hero-note{font-size:10px}.hero-visual{min-height:0;padding-block:28px 26px;margin-top:6px}.hero-campus{width:100%;max-width:500px;margin:auto;animation:none}.hero-orbit{inset:8% 5% 4%;background-image:none}.hero-particles{opacity:.4}.visual-label{font-size:8px;padding:7px 10px}.label-top{right:6%;top:0}.label-bottom{bottom:0;right:6%}.hero-coordinate{bottom:0;left:5%;font-size:7px}.hero-strip{padding-block:18px}.hero-strip>.container{flex-direction:column;gap:10px;font-size:11px}.strip-index{font-size:9px}.section-heading{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:32px}.section-heading>p{font-size:13px}.section-heading h2{font-size:clamp(34px,8.8vw,52px)}.section-heading .eyebrow{font-size:9px;margin-bottom:14px}.section-endnote{align-items:flex-start;flex-direction:column;gap:10px;padding-top:24px}.section-endnote>p{font-size:11px}.cta-section{padding-block:var(--space-8) var(--space-6)}.cta-inner{grid-template-columns:1fr;gap:32px;text-align:center}.cta-section h2{font-size:clamp(36px,9.5vw,52px)}.cta-section .eyebrow{font-size:8px}.cta-description{font-size:13px;max-width:300px;margin-inline:auto}.cta-section .button{width:100%;font-size:12px;margin-top:24px}.workshop-detail{grid-template-columns:1fr;gap:28px;margin-top:32px}.detail-art{grid-row:1}.detail-art>p{display:none}.detail-description{font-size:15px}.detail-meta>div{grid-template-columns:70px 1fr;font-size:12px}.detail-registration .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.carousel-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.carousel-toolbar p{color:var(--ink-soft)}.carousel-controls{display:flex;gap:var(--space-2)}.carousel-arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--paper);color:var(--brand-indigo);font-size:24px;transition:background var(--duration)}.carousel-arrow:hover:enabled{background:var(--accent)}.carousel-arrow:disabled{color:var(--ink-soft);opacity:.4;cursor:default}.workshop-track{display:grid;grid-auto-flow:column;grid-auto-columns:var(--workshop-card-width);grid-template-rows:repeat(7,auto);column-gap:var(--carousel-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-padding-inline:var(--space-2);scrollbar-color:var(--brand-indigo) var(--warm);scrollbar-width:thin;list-style:none;margin:0;padding:var(--space-2) 0 var(--space-5)}.workshop-track>li{display:grid;grid-template-rows:subgrid;grid-row:span 7;scroll-snap-align:start;min-width:0}.workshop-track.is-dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;-webkit-user-select:none;user-select:none}@media(hover:hover)and (pointer:fine){.workshop-track{cursor:grab}.workshop-track.is-dragging{cursor:grabbing}}.workshop-card{display:grid;grid-template-rows:subgrid;grid-row:span 7;min-width:0;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color var(--duration),box-shadow var(--duration)}.workshop-card:hover{border-color:var(--brand-indigo);box-shadow:var(--shadow)}.workshop-image-link{position:relative;display:grid;overflow:hidden;background:var(--cream)}.workshop-image{width:100%;height:auto;aspect-ratio:var(--workshop-image-ratio);object-fit:cover;image-rendering:pixelated}.card-index{position:absolute;top:var(--space-4);left:var(--space-4);z-index:1;font:10px/1.6 var(--font-mono);background:var(--paper);border:1px solid var(--line);padding:var(--space-1) var(--space-2)}.card-arrow{position:absolute;bottom:var(--space-4);right:var(--space-4);display:grid;place-items:center;width:36px;height:36px;background:var(--paper);color:var(--brand-indigo);font-size:24px}.workshop-content{display:grid;grid-template-rows:subgrid;grid-row:span 6;padding:var(--space-5);min-width:0}.tags{display:flex;flex-wrap:wrap;align-items:start;gap:var(--space-2);margin-bottom:var(--space-4);font:9px/1.6 var(--font-mono);text-transform:uppercase}.tags>span{border:1px solid var(--line);padding:var(--space-1) var(--space-2);color:var(--brand-indigo)}.workshop-card h3{font:700 27px/1.15 var(--font-display);overflow-wrap:anywhere}.workshop-card h3 a:hover{color:var(--brand-indigo)}.workshop-content>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.95em;font-size:13px;line-height:1.65;color:var(--ink-soft);margin-block:var(--space-4) var(--space-5)}.workshop-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);border-block:1px solid var(--line);padding-block:var(--space-4);margin-top:var(--space-5);font:10px/1.6 var(--font-mono)}.card-bottom{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-4);padding-top:var(--space-4)}.card-bottom .availability{align-self:flex-start}.card-bottom .button{width:100%;font-size:12px}.hero-campus,.teacher-inline-avatar,.detail-image{image-rendering:pixelated}.campuses-section{background:var(--warm);border-block:1px solid var(--line)}.cta-signature{display:flex;flex-direction:column;align-items:center;color:var(--dark-muted);gap:var(--space-5)}.cta-robot{position:relative;container-type:inline-size;width:240px;max-width:100%;aspect-ratio:694 / 900}.cta-robot-image,.cta-robot-layers{width:100%;height:100%;image-rendering:pixelated}.cta-robot-layers{position:absolute;inset:0;visibility:hidden;pointer-events:none}.cta-robot[data-layers-ready=true] .cta-robot-image{visibility:hidden}.cta-robot[data-layers-ready=true] .cta-robot-layers,.cta-robot[data-layers-ready=true] .cta-robot-pixel{visibility:visible}.cta-robot-hand{transform-box:view-box;transform-origin:173px 363px}.cta-robot[data-waving=true] .cta-robot-hand{animation:cta-robot-wave var(--cta-wave-duration) ease-in-out}.cta-robot-pixel{position:absolute;display:block;visibility:hidden;pointer-events:none;--pixel-x: var(--cta-pixel-drift-x);--pixel-y: var(--cta-pixel-drift-y);animation:cta-pixel-levitate ease-in-out infinite;animation-play-state:paused}.cta-robot-pixel>svg{display:block;width:100%;height:100%;image-rendering:pixelated}.cta-robot-pixel:nth-of-type(2n){--pixel-x: calc(-1 * var(--cta-pixel-drift-x));--pixel-y: calc(var(--cta-pixel-drift-y) * .7)}.cta-robot[data-motion-active=true] .cta-robot-pixel{animation-play-state:running}@keyframes cta-pixel-levitate{0%,to{transform:translate(0)}25%{transform:translate(calc(var(--pixel-x) * .35),calc(var(--pixel-y) * -.65))}50%{transform:translate(var(--pixel-x),calc(-1 * var(--pixel-y)))}75%{transform:translate(calc(var(--pixel-x) * -.25),calc(var(--pixel-y) * -.45))}}@keyframes cta-robot-wave{0%,to{transform:rotate(0)}20%,60%{transform:rotate(calc(-1 * var(--cta-wave-angle)))}40%,80%{transform:rotate(var(--cta-wave-angle))}}@media(prefers-reduced-motion:reduce){.cta-robot[data-layers-ready=true] .cta-robot-image{visibility:visible}.cta-robot[data-layers-ready=true] .cta-robot-layers,.cta-robot[data-layers-ready=true] .cta-robot-pixel{visibility:hidden}}@media(max-width:767px){.carousel-toolbar>p{font-size:9px;max-width:190px}.carousel-arrow{width:44px;height:44px}.workshop-content{padding:var(--space-5)}.workshop-card h3{font-size:25px}.cta-signature{align-items:center;gap:var(--space-3);text-align:center}.cta-robot{width:180px}}@supports not (grid-template-rows: subgrid){.workshop-track{grid-template-rows:auto;align-items:stretch}.workshop-track>li{display:flex;grid-row:auto}.workshop-card,.workshop-content{display:flex;flex-direction:column;flex:1}.workshop-content>.teacher-inline{margin-top:auto}}.campuses-intro{color:var(--ink-soft);font-size:14px;max-width:320px}.campus-viewport{overflow:hidden;overflow-x:clip;overflow-y:visible;cursor:grab;touch-action:pan-y pinch-zoom;padding-block:var(--space-5) var(--space-7)}@supports not (overflow: clip){.campus-viewport{overflow:hidden}}.campus-viewport:active{cursor:grabbing}.campus-viewport.is-static{cursor:default}.campus-track{--campus-step: calc( var(--campus-card-width) * (1 + var(--campus-inactive-scale)) / 2 + var(--carousel-gap) );display:grid;grid-template-columns:var(--campus-card-width);justify-content:center;isolation:isolate}.campus-slide{grid-area:1 / 1;min-width:0;display:flex;z-index:1;transform:translate(calc(var(--campus-position) * var(--campus-step) + var(--campus-drag-offset, 0px)));transition:transform var(--campus-motion-duration) var(--ease)}.campus-slide.is-center{z-index:3}.campus-slide.is-offstage{visibility:hidden;pointer-events:none}.is-dragging .campus-slide{transition:none}.campus-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--campus-side-overlay);pointer-events:none;transition:opacity var(--campus-motion-duration)}.campus-card{position:relative;width:100%;display:flex;flex-direction:column;overflow:hidden;border:2px solid var(--line);border-radius:var(--radius);background:var(--white);transform:scale(var(--campus-inactive-scale));transition:transform var(--campus-motion-duration) var(--ease),border-color var(--campus-motion-duration),box-shadow var(--campus-motion-duration);-webkit-user-select:none;user-select:none}.campus-card.is-active{transform:scale(1);border-color:var(--brand-indigo);box-shadow:var(--campus-active-shadow)}.campus-card.is-active:after{opacity:0}.campus-photo-wrap{position:relative;background:var(--sand)}.campus-photo{width:100%;height:auto;aspect-ratio:var(--campus-image-ratio);object-fit:cover;pointer-events:none;opacity:var(--campus-image-muted-opacity);filter:saturate(var(--campus-image-muted-saturation));transition:opacity var(--campus-motion-duration),filter var(--campus-motion-duration)}.is-active .campus-photo{opacity:1;filter:none}.campus-photo-label{position:absolute;bottom:var(--space-3);left:var(--space-4);background:var(--paper);color:var(--brand-indigo);border-radius:var(--radius-small);padding:var(--space-1) var(--space-2);font-size:9px}.campus-content{padding:var(--space-5);flex:1;display:flex;flex-direction:column}.campus-organization{font-size:12px;color:var(--ink-soft);margin-bottom:var(--space-3)}.campus-content h3{font:700 28px/1.15 var(--font-display)}.campus-address{font-size:14px;margin-block:var(--space-4)}.campus-workstations{border-top:1px solid var(--line);padding-top:var(--space-4);color:var(--brand-indigo);margin-top:auto;font-size:11px}.campus-details{justify-content:space-between;margin-top:var(--space-5)}.campus-details-unavailable{margin-top:var(--space-5);font-size:12px;color:var(--ink-soft)}.campus-navigation{display:flex;align-items:center;gap:var(--space-4);justify-content:space-between}.campus-counter{color:var(--brand-indigo);font-size:11px}.campus-pagination{display:flex;flex-wrap:wrap;justify-content:center}.campus-pagination button{background:none;border:0;width:44px;height:44px;display:grid;place-items:center;color:var(--ink-soft)}.campus-pagination span{width:8px;height:8px;background:currentColor}.campus-pagination [aria-current=true]{color:var(--brand-indigo)}.campus-pagination [aria-current=true] span{width:12px;height:12px}.campus-pagination button:hover{color:var(--brand-indigo)}@media(max-width:767px){.campuses-section .section-heading{align-items:flex-start;flex-direction:column;gap:var(--space-4)}.campus-content{padding:var(--space-4)}.campus-content h3{font-size:25px}.campus-viewport{margin-inline:calc(-1 * var(--gutter))}.campus-navigation{flex-wrap:wrap;justify-content:center;gap:var(--space-2)}.campus-counter{flex-basis:100%;text-align:center}.campus-navigation .carousel-controls{justify-content:center}.campus-pagination{order:3;flex-basis:100%}}@media(prefers-reduced-motion:reduce){.campus-card,.campus-photo,.campus-slide,.campus-card:after{transition:none}}.schedule-section{background:var(--warm);border-block:1px solid var(--line)}.schedule-days{display:grid;gap:var(--space-5)}.schedule-day{overflow:clip;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.schedule-day h3>button{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:88px;padding:var(--space-5) var(--space-6);border:0;background:transparent;color:var(--ink);text-align:left;transition:background var(--duration) var(--ease)}.schedule-day h3>button:hover{background:var(--pale-lime)}.schedule-day h3>button:focus-visible{outline-offset:-5px}.schedule-date{display:flex;gap:var(--space-5);align-items:baseline}.schedule-date time{font-family:var(--font-display);font-size:26px}.schedule-date>span{color:var(--ink-soft);font-family:var(--font-mono);font-size:12px}.accordion-icon{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:var(--radius-small);background:var(--accent);font-size:24px}.schedule-day .accordion-panel{padding-inline:var(--space-6);animation:schedule-enter var(--duration) var(--ease)}.session-row{display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:var(--space-5);align-items:center;padding-block:var(--space-5);border-top:1px solid var(--line)}.session-time{display:grid;gap:var(--space-1);font-family:var(--font-mono);font-size:11px;color:var(--ink-soft)}.session-time>span:first-child{color:var(--ink);font-size:22px}.session-copy h4{margin:0 0 var(--space-2);font-size:19px;line-height:1.3}.session-copy h4 a:hover{text-decoration:underline;text-underline-offset:4px}.session-copy p{font-size:13px;max-width:60ch}.session-copy .session-location{margin-top:var(--space-2);color:var(--ink-soft);font-size:12px}.session-action{display:grid;justify-items:start;gap:var(--space-3)}.detail-sessions{margin-top:var(--space-8)}.detail-sessions>h2{font-size:32px;margin-bottom:var(--space-6)}.detail-sessions .eyebrow{margin-top:var(--space-5);margin-bottom:var(--space-3)}.registration-dialog{width:min(640px,calc(100% - var(--space-6)));max-height:calc(100vh - var(--space-6));max-height:calc(var(--visual-viewport-height, 100dvh) - var(--space-6) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-large);background:var(--paper);color:var(--ink);box-shadow:var(--shadow);overscroll-behavior:contain;overflow-y:auto;-webkit-overflow-scrolling:touch}.registration-dialog::backdrop{background:color-mix(in srgb,var(--dark) 65%,transparent)}.registration-dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.dialog-close{width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--warm);color:var(--ink);font-size:28px;line-height:1}.registration-dialog h2{font-size:32px}.registration-title{margin-top:var(--space-3);margin-bottom:var(--space-5);font-weight:600}.registration-dialog fieldset{min-width:0;padding:0;margin:0;border:0}.registration-context{display:grid;justify-items:start;gap:var(--space-2);padding:var(--space-4);margin-bottom:var(--space-5);background:var(--warm);border-radius:var(--radius-small);font-size:13px}.registration-hint{font-size:12px;color:var(--ink-soft);margin-bottom:var(--space-5)}.registration-field{margin-bottom:var(--space-5)}.registration-field .form-field{margin-bottom:0}.registration-field-label{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.field-requirement{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-small);font-size:10px;font-weight:600;color:var(--ink-soft);background:var(--warm)}.is-required .field-requirement{color:var(--field-required-ink);background:var(--field-required-background)}.registration-field.is-required input,.registration-field.is-required select{border-color:var(--field-required-ink);border-inline-start-width:3px;background:color-mix(in srgb,var(--field-required-background) 35%,var(--paper))}.has-error input,.has-error select,.registration-context.has-error{border:2px solid var(--error);background:var(--field-error-background)}.registration-consent.has-error{padding:var(--space-3);border:2px solid var(--error);border-radius:var(--radius-small);background:var(--field-error-background)}.registration-field.has-error input,.registration-field.has-error select{border-color:var(--error);background:var(--field-error-background)}.field-error{margin-top:var(--space-2);color:var(--error);font-size:12px;font-weight:600}.registration-field>.field-error{min-height:3em;line-height:1.5}.booking-notice{max-width:32ch;margin-top:var(--space-2);font-size:12px;color:var(--ink-soft);overflow-wrap:anywhere}.consent-field{display:flex;gap:var(--space-3);align-items:flex-start;font-size:11px;margin-block:var(--space-5)}.consent-field input{width:20px;height:20px;margin:2px 0 0;flex-shrink:0;accent-color:var(--brand-indigo)}.consent-field a{text-decoration:underline;text-underline-offset:3px;color:var(--brand-indigo)}.registration-submit{width:100%}.registration-error{color:var(--error);font-size:13px;margin-bottom:var(--space-4)}.registration-success{display:grid;justify-items:start;gap:var(--space-5);font-size:14px}.admin-slot-summary{margin-bottom:var(--space-5);font-size:13px}@keyframes schedule-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1023px){.session-row{grid-template-columns:90px minmax(0,1fr)}.session-action{grid-column:2}}@media(max-width:767px){.schedule-day h3>button{padding:var(--space-5)}.schedule-date{flex-direction:column;gap:var(--space-2)}.schedule-date time{font-size:22px}.schedule-day .accordion-panel{padding-inline:var(--space-5)}.session-row{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.session-time{display:flex;align-items:baseline;gap:var(--space-2)}.session-action{grid-column:auto;justify-items:stretch}.session-action .availability{justify-self:start}.registration-dialog{padding:var(--space-5);border-radius:var(--radius)}.registration-dialog h2{font-size:26px}.registration-dialog .form-grid{grid-template-columns:minmax(0,1fr)}.registration-dialog input,.registration-dialog select{font-size:16px}}@media(prefers-reduced-motion:reduce){.schedule-day .accordion-panel{animation:none}.schedule-day h3>button{transition:none}}body:has(.registration-dialog[open]){overflow:hidden}.admin-export-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-5);margin-block:var(--space-5) var(--space-6);padding:var(--space-5);background:var(--warm);border:1px solid var(--line);border-radius:var(--radius)}.admin-export-toolbar .eyebrow{margin-bottom:var(--space-2)}.admin-export-toolbar p:last-child{color:var(--ink-soft);font-size:12px}.admin-export-actions,.image-field-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.admin-feedback{margin-bottom:var(--space-5);font-size:13px}.admin-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-4);max-width:480px;margin:var(--space-6) auto 0;padding-top:var(--space-5);border-top:1px solid var(--line)}.admin-pagination .button{min-width:0;padding-inline:var(--space-4);font-size:13px}.admin-pagination-label{font-size:13px;text-align:center;white-space:nowrap}.admin-list .participant-row{align-items:flex-start}.participant-copy,.admin-list article>div:first-child{min-width:0}.participant-copy p{overflow-wrap:anywhere}.participant-row>button{flex-shrink:0}.admin-settings-summary{max-width:880px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:var(--space-6)}.admin-settings-summary h2{font-size:28px}.admin-settings-summary dl{display:grid;gap:var(--space-5);margin-block:var(--space-6)}.admin-settings-summary dt{color:var(--ink-soft);font-size:12px;margin-bottom:var(--space-2)}.admin-settings-summary dd{margin:0;font-size:14px;overflow-wrap:anywhere}.setting-field{padding-bottom:var(--space-5);margin-bottom:var(--space-5);border-bottom:1px solid var(--line)}.setting-field .form-field{margin-bottom:var(--space-2)}.setting-description{margin-top:var(--space-2);color:var(--ink-soft);font-size:13px;font-weight:400;line-height:1.6}.image-field{display:grid;grid-template-columns:180px minmax(0,1fr);gap:var(--space-5);align-items:center;padding:var(--space-5);margin-bottom:var(--space-5);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.image-field-preview{aspect-ratio:4 / 3;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--warm)}.image-field-preview>img,.image-field-preview>.image-fallback{width:100%;height:100%;object-fit:contain}.image-field-avatars .image-field-preview{aspect-ratio:1}.image-field-heading{font-size:15px;font-weight:600}.image-field-hint{font-size:12px;color:var(--ink-soft);margin-block:var(--space-2) var(--space-4)}.image-field-actions .text-link{border:0;background:transparent;font-size:12px;text-decoration:underline;text-underline-offset:4px}.admin-modal{width:min(var(--media-modal-width),calc(100% - var(--space-6)));max-height:calc(100vh - var(--space-6));max-height:calc(var(--visual-viewport-height, 100dvh) - var(--space-6) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border:1px solid var(--line);border-radius:var(--radius-large);padding:var(--space-6);background:var(--paper);color:var(--ink);box-shadow:var(--shadow);overscroll-behavior:contain;overflow-y:auto;-webkit-overflow-scrolling:touch}.admin-modal::backdrop{background:color-mix(in srgb,var(--dark) 65%,transparent)}.admin-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-4)}.admin-modal-heading h2{font-size:clamp(24px,3vw,34px)}.admin-modal-heading .mono-label{display:block;margin-bottom:var(--space-3)}.admin-modal-heading .dialog-close{flex:0 0 44px}.image-library-intro{max-width:66ch;color:var(--ink-soft);font-size:13px;margin-bottom:var(--space-5)}.image-library-controls .form-field{max-width:460px}.image-category-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.image-category-tabs button{padding:var(--space-2) var(--space-4);min-height:40px;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--paper);color:var(--ink);font-size:12px}.image-category-tabs .is-active{background:var(--ink);color:var(--white);border-color:var(--ink)}.image-dropzone{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-5);margin-bottom:var(--space-5);border:1px dashed var(--line);border-radius:var(--radius);background:var(--warm);transition:background var(--duration) var(--ease),border-color var(--duration)}.image-dropzone.is-dragging{background:var(--pale-lime);border-color:var(--brand-indigo)}.upload-symbol{font-size:32px;font-family:var(--font-mono);color:var(--brand-indigo)}.image-dropzone h3{font-size:16px;margin-bottom:var(--space-2)}.image-dropzone p{font-size:12px}.image-dropzone .upload-hint{color:var(--ink-soft);font-size:11px;margin-top:var(--space-2)}.image-dropzone .upload-message{grid-column:1 / -1;margin-bottom:0}.image-library-count{font-size:12px;color:var(--ink-soft);margin-bottom:var(--space-4)}.image-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.image-tile{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-small);padding:0;background:var(--white);color:var(--ink);text-align:left;transition:border-color var(--duration),box-shadow var(--duration)}.image-tile:hover:not(:disabled),.image-tile.is-selected{border-color:var(--brand-indigo);box-shadow:0 0 0 1px var(--brand-indigo)}.image-tile:disabled{cursor:not-allowed}.image-tile-preview{display:grid;place-items:center;position:relative;aspect-ratio:var(--media-tile-ratio);width:100%;background:var(--warm)}.image-tile-preview img{width:100%;height:100%;object-fit:contain}.image-tile-preview>span:not(.image-selected-mark){padding:var(--space-3);font-size:12px}.image-selected-mark{position:absolute;top:var(--space-2);right:var(--space-2);display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-small);background:var(--accent);color:var(--ink)}.image-tile-label{display:block;padding:var(--space-3);min-height:60px;font-size:11px;line-height:1.4;overflow-wrap:anywhere}.admin-modal-footer{display:flex;justify-content:flex-end;padding-top:var(--space-5);margin-top:var(--space-5);border-top:1px solid var(--line)}body:has(.admin-modal[open]){overflow:hidden}@media(max-width:1023px){.image-library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.image-dropzone{grid-template-columns:32px minmax(0,1fr)}.image-dropzone .button{grid-column:2;justify-self:start}}@media(max-width:767px){.admin-export-actions{width:100%;align-items:stretch;flex-direction:column}.admin-export-toolbar{padding:var(--space-5)}.admin-pagination{gap:var(--space-3)}.image-field{grid-template-columns:minmax(0,1fr);padding:var(--space-4)}.image-field-preview{max-width:220px}.admin-modal{padding:var(--space-5);border-radius:var(--radius)}.image-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.image-dropzone{grid-template-columns:minmax(0,1fr);padding:var(--space-4)}.image-dropzone .upload-symbol{display:none}.image-dropzone .button{grid-column:auto;justify-self:stretch}.image-library-controls input{font-size:16px}.admin-settings-summary{padding:var(--space-5)}}@media(prefers-reduced-motion:reduce){.image-dropzone,.image-tile{transition:none}}.admin-heading-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.input-with-toggle{position:relative;display:flex;align-items:center;width:100%}.input-with-toggle input{padding-right:48px}.password-toggle-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:36px;border:0;background:transparent;color:var(--ink-soft);border-radius:var(--radius-small);padding:0}.password-toggle-btn:hover{color:var(--ink)}.password-generator-bar{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.copied-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--brand-indigo);font-weight:600}.password-criteria{display:flex;flex-direction:column;gap:var(--space-1);font-size:12px;margin-block:var(--space-3) var(--space-5)}.criteria-valid{color:var(--brand-indigo)}.criteria-invalid{color:var(--ink-soft)}.footer-feedback{display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) 0;border:0;background:transparent;color:inherit}.footer-feedback:hover{text-decoration:underline;text-underline-offset:4px}.feedback-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.feedback-dialog-heading .dialog-close{flex-shrink:0}.feedback-dialog .form-grid{margin-block:var(--space-4)}.feedback-dialog textarea{resize:vertical;min-height:140px}.feedback-dialog .form-field :is(input,textarea,select){font-size:16px}.feedback-details{display:grid;gap:var(--space-4)}.feedback-message,.feedback-preview{white-space:pre-wrap;overflow-wrap:anywhere}.feedback-message{padding:var(--space-4);background:var(--warm);border-radius:var(--radius-small)}.feedback-filter{max-width:320px;margin-bottom:var(--space-5)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}.ui-icon{display:inline-block;width:24px;height:24px;flex:0 0 24px;vertical-align:middle;pointer-events:none}.dialog-close{display:grid;place-items:center}.registration-dialog,.admin-modal{position:fixed;top:calc(var(--visual-viewport-top, 0px) + var(--visual-viewport-height, 100vh) / 2);bottom:auto;margin-block:0;transform:translateY(-50%)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.1;overflow-wrap:anywhere}h1,h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.045em}h3{font-weight:600;letter-spacing:-.025em}h2{font-size:clamp(34px,4vw,58px)}h1{font-size:clamp(40px,5vw,72px)}p{overflow-wrap:break-word}a,button{touch-action:manipulation}:focus-visible{outline:3px solid var(--brand-indigo);outline-offset:5px}.hero :focus-visible,.cta-section :focus-visible{outline-color:var(--accent)}.container{max-width:calc(var(--max-width) + var(--gutter) * 2);padding-inline:var(--gutter);padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px));margin-inline:auto}.section{padding-block:var(--space-9)}.eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.065em;text-transform:uppercase;margin-bottom:var(--space-5);line-height:1.6}.eyebrow>span:first-child{color:var(--brand-indigo)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-5);min-height:52px;padding:14px 22px;border:1px solid transparent;border-radius:var(--radius-small);font-size:14px;font-weight:600;line-height:1.35;transition:transform var(--duration) var(--ease),background var(--duration)}@media(hover:hover)and (pointer:fine){.button:hover:not(:disabled){transform:translateY(-2px)}}.button span[aria-hidden]{font-size:22px}.button-dark{background:var(--ink);color:var(--white)}.button-accent{background:var(--accent);color:var(--ink)}.button-outline{border-color:var(--line);background:transparent;color:var(--ink)}.button-disabled{background:var(--warm);color:var(--ink-soft);cursor:not-allowed}.button-small{min-height:44px;padding:10px 16px;font-size:12px}.text-link{font-weight:600;border-bottom:1px solid currentColor;padding-bottom:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;transform:translateY(-200%);left:20px;z-index:100;background:var(--accent);padding:16px}.skip-link:focus{transform:translateY(0)}.site-header{position:relative;z-index:10;background:var(--paper);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);height:94px}.brand-pair{display:inline-flex;align-items:center;gap:var(--space-4)}.brand-pair img:first-child{width:158px;height:auto}.brand-pair-compact img:first-child{width:auto;height:var(--space-8)}.brand-pair img:last-child{width:70px;height:70px;object-fit:contain}.brand-pair>span{color:var(--ink-soft);font-family:var(--font-mono);font-size:18px}.navigation{display:flex;gap:var(--space-5);align-items:center;font-size:13px}.navigation>a:hover{color:var(--brand-indigo)}.navigation>.button:hover{color:var(--white)}.menu-toggle{display:none}.site-footer{background:var(--paper);padding-block:var(--space-7);padding-bottom:calc(var(--space-7) + env(safe-area-inset-bottom,0px))}.site-footer-dark{background:var(--dark);color:var(--dark-text)}.site-footer-dark .footer-inner p>span{color:var(--dark-muted)}.site-footer-dark :focus-visible{outline-color:var(--accent)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);font-size:12px}.footer-copy{width:max-content;max-width:100%}.footer-inner p>span{display:block;color:var(--ink-soft);font-size:10px;text-align:justify;text-align-last:justify}.footer-inner>a:last-child{font-family:var(--font-mono);font-size:10px}.query-state{padding:var(--space-7) var(--space-5);border:1px dashed var(--line);border-radius:var(--radius);font-size:14px}.query-state .button{margin-top:var(--space-4)}.loading-dot{display:inline-block;width:8px;height:8px;background:var(--brand-indigo);margin-right:var(--space-2);animation:pulse 1s infinite alternate}.image-fallback{display:grid;place-items:center;background:var(--lavender);color:var(--brand-indigo);font-size:48px;font-family:var(--font-mono)}.admin-section{min-height:70vh}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-6)}.admin-heading h1{font-size:40px}.admin-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:1px solid var(--line);padding-bottom:var(--space-4)}.admin-tabs button{padding:12px 18px;border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-small);font-size:13px}.admin-tabs .active{background:var(--brand-indigo);color:var(--white);border-color:var(--brand-indigo)}.admin-form{padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius);margin-top:var(--space-5);background:var(--white)}.admin-form h2,.admin-form h3{margin-bottom:var(--space-5)}.admin-form h2{font-size:28px}.login-form{max-width:460px;margin:0 auto}.login-form h1{font-size:36px;margin-bottom:var(--space-6)}.form-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5);font-size:12px;font-weight:600}.form-field input,.form-field select,.form-field textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:var(--radius-small);background:var(--paper);color:var(--ink);font-weight:400;font-size:14px}.form-field input[type=checkbox]{width:20px;height:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-5)}.form-save{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-5);font-size:13px}.form-save [role=alert]{color:var(--error)}.admin-list{margin-block:var(--space-5)}.admin-list article{display:flex;justify-content:space-between;gap:var(--space-5);align-items:center;padding:var(--space-5) 0;border-bottom:1px solid var(--line)}.admin-list h3{font-size:19px}.admin-list p{font-size:12px;color:var(--ink-soft);margin-top:var(--space-2)}.admin-row-actions{display:flex;gap:var(--space-2);flex-shrink:0}.admin-row-actions .button{font-size:12px;min-height:44px}@keyframes pulse{to{opacity:.35}}@media(max-width:1100px){.navigation{gap:var(--space-4);font-size:11px}}@media(max-width:767px){.section{padding-block:var(--space-8)}.header-inner{height:78px;gap:var(--space-3)}.brand-pair{gap:var(--space-3)}.brand-pair img:first-child{width:128px}.brand-pair-compact img:first-child{width:auto;height:52px}.brand-pair img:last-child{width:52px;height:52px}.menu-toggle{display:flex;align-items:center;gap:var(--space-3);border:0;background:none;padding:12px 0;font-size:12px}.menu-toggle span{font-size:20px}.navigation{display:none;position:absolute;inset:calc(78px + env(safe-area-inset-top,0px)) 0 auto;background:var(--paper);padding:var(--space-5) var(--gutter);border-bottom:1px solid var(--line);font-size:16px;max-height:calc(var(--visual-viewport-height, 100vh) - 78px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior-y:contain;padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}.navigation>a:not(.button){min-height:44px;display:flex;align-items:center}.navigation.is-open{display:flex;flex-direction:column;align-items:stretch}.navigation>.button{display:inline-flex}.footer-inner{align-items:center;flex-direction:column;gap:var(--space-5);text-align:center}.footer-inner p>span{text-align:center;text-align-last:center}.admin-heading{align-items:flex-start}.admin-heading h1{font-size:26px}.admin-form{padding:var(--space-5)}.form-grid{grid-template-columns:1fr}.admin-list article{align-items:flex-start;flex-direction:column}.admin-row-actions{flex-wrap:wrap}.admin-tabs button{font-size:11px;padding:10px 12px}}@media(max-width:767px),(hover:none)and (pointer:coarse){html{scroll-behavior:auto}.form-field input,.form-field select,.form-field textarea,input,select,textarea{font-size:16px}}@media(max-width:359px){.brand-pair{gap:var(--space-2)}.brand-pair img:first-child{width:112px}.brand-pair img:last-child{width:44px;height:44px}.button{gap:var(--space-3)}}
