.workshop{width:var(--page);margin:0 auto}.workshop-ticket{padding:var(--panel-pad);color:var(--paper);background:var(--green);border-radius:var(--radius-panel)}.workshop-ticket h1{margin:0 0 var(--space-md);color:var(--coral);font:700 clamp(3.5rem, 9vw, 9rem)/.88 var(--display);letter-spacing:-.065em}.workshop-lede{max-width:34ch;margin:0;font-size:clamp(1.2rem,2vw,1.75rem);line-height:1.45}.workshop-body{gap:var(--space-lg) clamp(40px, 8vw, 128px);margin:var(--space-xl) 0 var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--line-light);grid-template-columns:1fr 1fr;display:grid}.workshop-body h2{margin:0 0 var(--space-sm);color:var(--coral);font:650 16px/1.2 var(--display)}.check-list{margin:0;padding:0;list-style:none}.check-list li{border-bottom:1px solid var(--line-light);padding:12px 0 12px 28px;font-weight:500;position:relative}.check-list li:before{content:"×";color:var(--coral);font:700 17px/1 var(--display);position:absolute;top:11px;left:2px}.audience-list{gap:var(--space-xs);flex-wrap:wrap;padding-top:4px;display:flex}.audience-list span{border:1px solid color-mix(in oklch, var(--paper) 60%, transparent);font:600 13px/1 var(--display);border-radius:999px;padding:8px 12px}.access-note{max-width:52ch;margin:var(--space-md) 0 0;color:color-mix(in oklch, var(--paper) 85%, transparent);font-size:15px}.ticket-bottom{justify-content:space-between;align-items:center;gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--line-light);flex-wrap:wrap;display:flex}.ticket-bottom p{font:500 17px/1.3 var(--display);margin:0}.ticket-bottom strong{font-weight:700}.corporate-callout{gap:var(--space-md) clamp(40px, 8vw, 128px);margin-top:var(--space-sm);padding:var(--panel-pad);color:var(--ink);background:var(--coral);border-radius:var(--radius-panel);grid-template-columns:1fr 1fr;display:grid}.corporate-callout h2{font:650 clamp(2.1rem, 4vw, 4rem)/.97 var(--display);letter-spacing:-.05em;text-wrap:balance;margin:0}.corporate-callout p{max-width:52ch;margin:0 0 var(--space-sm);font-size:17px}.rerun{gap:var(--space-lg) clamp(40px, 7vw, 112px);width:var(--page);padding-block:var(--space-section);grid-template-columns:.9fr 1.1fr;align-items:center;margin:0 auto;display:grid}.rerun-heading p{max-width:40ch;margin:var(--space-md) 0 0;font-size:18px}.rerun-card{border:1px solid var(--ink);border-radius:var(--radius-panel);background:var(--rice);grid-template-columns:auto 1fr;display:grid;overflow:hidden}.rerun-date{padding:var(--space-lg) clamp(24px, 3vw, 44px);background:var(--coral);border-right:1px solid var(--ink);font:650 13px/1.2 var(--display);grid-row:span 2;align-content:center;justify-items:center;margin:0;display:grid}.rerun-date strong{font:700 clamp(4rem, 7vw, 6.5rem)/.9 var(--display);letter-spacing:-.06em;margin:4px 0}.rerun-details{padding:var(--space-md) clamp(20px, 2.5vw, 36px) 0;margin:0}.rerun-details div{gap:var(--space-sm);border-bottom:1px solid var(--line);grid-template-columns:72px 1fr;padding:12px 0;display:grid}.rerun-details dt{color:color-mix(in oklch, var(--ink) 65%, transparent);font:600 14px/1.5 var(--display)}.rerun-details dd{margin:0;font-weight:500}.rerun-card .button{margin:var(--space-md) clamp(20px, 2.5vw, 36px) clamp(24px, 3vw, 36px);grid-column:2;justify-self:start}.rerun-card .button-primary:hover{background:var(--paper);border-color:var(--ink)}.instructor{gap:var(--space-lg) clamp(40px, 7vw, 112px);width:var(--page);padding-block:var(--space-section);border-top:1px solid var(--line);grid-template-columns:.9fr 1.1fr;margin:0 auto;display:grid}.instructor-heading p{max-width:36ch;margin:var(--space-md) 0 0;font-size:18px}.instructor-details p{max-width:64ch;margin:0 0 var(--space-md);font-size:17px}.instructor-details p:first-child{margin-top:6px}.contact{align-items:end;gap:var(--space-xl) clamp(40px, 8vw, 128px);padding:var(--space-section) var(--inset);color:var(--paper);background:var(--green-dark);grid-template-columns:1.3fr .7fr;display:grid;position:relative;overflow:hidden}.contact-grid{opacity:.1;pointer-events:none;background-image:linear-gradient(to right, transparent calc(100% - 1px), var(--paper) 1px), linear-gradient(to bottom, transparent calc(100% - 1px), var(--paper) 1px);background-size:10vw 10vw;position:absolute;inset:0;mask-image:linear-gradient(#000,#0000 88%)}.contact:after{content:"";border:1px solid color-mix(in oklch, var(--paper) 26%, transparent);width:520px;height:520px;box-shadow:0 0 0 70px color-mix(in oklch, var(--paper) 3%, transparent), 0 0 0 140px color-mix(in oklch, var(--paper) 2%, transparent);border-radius:50%;position:absolute;top:-220px;right:-150px}.contact-copy,.contact-note{z-index:2;position:relative}.contact h2{max-width:16ch;color:var(--coral)}.contact-copy p{max-width:52ch;margin:var(--space-md) 0 var(--space-lg);font-size:18px;line-height:1.65}.contact-note{padding-block:var(--space-md);border-block:1px solid var(--line-light)}.contact-note h3{margin:0 0 var(--space-sm);font:650 16px/1.2 var(--display)}.contact-note ul{margin:0;padding-left:20px;font-size:15px;line-height:1.75}html:has(.request-dialog[open]){overflow:hidden}.request-dialog{width:min(680px, calc(100vw - 2 * var(--gutter)));max-height:calc(100dvh - 32px);color:var(--ink);background:var(--paper);border-radius:var(--radius-panel);opacity:0;transition:opacity .3s var(--ease), transform .3s var(--ease), overlay .3s allow-discrete, display .3s allow-discrete;border:0;padding:0;overflow:auto;transform:translateY(16px)}.request-dialog[open]{opacity:1;transform:none}@starting-style{.request-dialog[open]{opacity:0;transform:translateY(16px)}}.request-dialog::backdrop{background:color-mix(in oklch, var(--green-dark) 75%, transparent)}.request-panel{padding:clamp(28px,5vw,52px);position:relative}.request-panel h2{margin:0 48px var(--space-sm) 0;font:650 clamp(2rem, 4vw, 2.75rem)/1 var(--display);letter-spacing:-.045em}.request-panel h2:focus{outline:none}.request-intro,.request-success p{max-width:54ch;margin:0 0 var(--space-md);font-size:16px}.dialog-close{width:44px;height:44px;color:var(--ink);border:1px solid var(--line);font:400 24px/1 var(--display);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;transition:background-color .18s;display:grid;position:absolute;top:16px;right:16px}.dialog-close:hover{background:var(--rice)}.request-dialog form{gap:var(--space-sm);display:grid}.field-row{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.field{align-content:start;gap:6px;display:grid}.field label{font:600 14px/1.3 var(--display)}.field label span{opacity:.6;font-weight:500}.field input,.field select,.field textarea{width:100%;min-height:48px;color:var(--ink);border:1px solid color-mix(in oklch, var(--ink) 45%, transparent);border-radius:var(--radius-control);font:400 16px/1.4 var(--body);background:oklch(98.5% .01 70);padding:12px 14px;transition:border-color .18s}.field textarea{resize:vertical;min-height:128px}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--ink)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--coral);outline-offset:1px;border-color:var(--ink)}.field [aria-invalid=true]{border-width:2px;border-color:oklch(50% .18 28);padding:11px 13px}.field-error{color:oklch(45% .17 28);min-height:0;margin:0;font-size:14px;font-weight:500}.field-error:empty{display:none}.form-error{color:oklch(40% .15 28);border-radius:var(--radius-control);background:oklch(94% .04 28);margin:0;padding:12px 14px;font-size:15px}.request-dialog .button-primary{margin-top:var(--space-xs);justify-self:start}.request-dialog .button-primary:hover{border-color:var(--ink)}.request-dialog .button[disabled]{cursor:progress;opacity:.7;transform:none}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.reveal{opacity:0;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}.reveal.is-visible{opacity:1;transform:none}@media (width<=1000px){.workshop-body,.corporate-callout,.rerun,.instructor,.contact{grid-template-columns:1fr}.rerun{align-items:start}}@media (width<=760px){.workshop-ticket h1{font-size:clamp(3.2rem,16vw,5.5rem)}.headline{font-size:clamp(2.5rem,11vw,4rem)}.ticket-bottom{flex-direction:column;align-items:flex-start}.rerun-card{grid-template-columns:1fr}.rerun-date{padding:var(--space-sm) 20px;border-right:0;border-bottom:1px solid var(--ink);grid-row:auto;grid-auto-flow:column;justify-content:start;align-items:baseline;gap:12px}.rerun-date strong{margin:0;font-size:3.2rem}.rerun-details div{grid-template-columns:60px 1fr}.rerun-card .button{grid-column:1}.field-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
