@font-face{font-family:Funnel Display;src:url(/fonts/funnel-display-400.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Funnel Display;src:url(/fonts/funnel-display-700.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-400.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-500.ttf) format("truetype");font-weight:500;font-display:swap}:root{--green:#00bb80;--paper:#fffbfa;--ink:#080808;--muted:#595651;--placeholder:#f0eeeb;--heading:"Funnel Display",sans-serif;--statement-size:clamp(2rem,4.4vw,4.5rem);--body:"Instrument Sans",sans-serif;--gutter:clamp(1.25rem,5vw,5rem);--content-max:90rem;--section-space:clamp(4rem,7vw,7rem);--card-radius:clamp(1.25rem,2vw,2rem);--pill-radius:100rem;--motion:.26s;--ease:cubic-bezier(.2,.65,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--heading);font-weight:400}::selection{color:var(--paper);background:var(--ink)}:focus-visible{outline:3px solid currentColor;outline-offset:6px}.container{width:min(100% - var(--gutter)*2,var(--content-max));margin-inline:auto}.skip-link{position:fixed;top:1rem;left:1rem;z-index:10;padding:.8rem 1.2rem;background:var(--ink);color:var(--paper);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{background:var(--green)}.header-inner{min-height:clamp(9rem,16vw,14rem);display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:2rem}.brand{display:block;width:clamp(12rem,24vw,21rem);flex-shrink:0}.brand img{width:100%}nav{display:flex;align-items:center;gap:clamp(1.25rem,3vw,3rem)}nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:1.125rem}nav a:not(.button){text-underline-offset:.3em}nav a:not(.button):hover{text-decoration:underline}.button{border-radius:var(--pill-radius);background:var(--ink);color:var(--paper);padding:.65rem 1.7rem;transition:background var(--motion),transform var(--motion)}.button:hover{background:#242424;transform:translateY(-2px)}.hero{padding-block:clamp(3rem,5vw,5rem) clamp(3.5rem,6vw,6rem)}h1{font-size:var(--statement-size);line-height:1.12;letter-spacing:-.045em}h1 strong{font-weight:700}.section-label{font-family:var(--heading);font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:400;line-height:1.4}.work{padding-block:calc(var(--section-space)/2);background:#000;color:#fff}.work,.site-footer{position:relative;isolation:isolate}.work>.container,.site-footer>.container{position:relative;z-index:1}.star-field{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.star-field span{position:absolute;display:block;background:#fff;border-radius:50%}.work .section-label{margin-bottom:1.5rem}.work .project-caption{color:inherit}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,1.8vw,1.8rem)}.project-poster{aspect-ratio:16/9;overflow:hidden;border:1.5px solid var(--ink);border-radius:var(--card-radius);background:var(--placeholder);transition:transform var(--motion) var(--ease),box-shadow var(--motion) var(--ease)}.project-poster>img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.placeholder-art{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem}.project-number{font-family:var(--heading);font-size:clamp(3rem,5vw,5rem);line-height:1;letter-spacing:-.06em;color:#ccc8c2}.placeholder-label{font-size:.875rem;color:var(--muted)}.project-card h3{margin-top:1rem;font-size:1.2rem;line-height:1.3;text-align:center}.project-caption{font-size:.875rem;text-align:center;color:var(--muted);margin-top:.3rem}.project-description{margin-top:.75rem}@media(hover:hover)and (prefers-reduced-motion:no-preference){.project-card:hover .project-poster{transform:translateY(-5px);box-shadow:0 10px 20px #0808080b}.project-card:hover .project-poster>img{transform:scale(1.025)}}.about{background:var(--green);padding-block:var(--section-space)}.about-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}.portrait-wrap{padding-top:.2rem}.portrait{width:100%;max-width:30rem}.about-intro{font-family:var(--heading);font-size:clamp(1.8rem,3vw,3rem);line-height:1.1;letter-spacing:-.035em;margin-top:1.25rem;margin-bottom:2rem}.about-body{font-size:1.0625rem;line-height:1.6;max-width:67ch}.about-body p+p{margin-top:1.15em}.contact{padding-block:var(--section-space)}.contact-inner{display:flex;flex-direction:column;align-items:flex-start;gap:2rem}.contact h2{font-size:var(--statement-size);line-height:1.12;letter-spacing:-.045em}.contact-email{font-size:clamp(1.125rem,2vw,1.5rem);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em;min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere}.contact-email:hover{text-decoration-thickness:2px}.site-footer{background:#000;color:var(--paper)}.footer-inner{min-height:7rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.5rem}.footer-monogram{font-family:var(--heading);font-size:1.5rem;min-width:44px;min-height:44px;display:flex;align-items:center}.socials{display:flex;gap:clamp(1.2rem,4vw,4rem);align-items:center;font-size:1rem}.socials a{display:inline-flex;min-height:44px;align-items:center}.socials a:hover{text-decoration:underline;text-underline-offset:.3em}.socials span{color:#bbb9b6}.footer-star{flex-shrink:0}@media(max-width:56rem){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2rem}.about-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:2rem}.header-inner{min-height:10rem}nav{gap:1.2rem}nav a{font-size:1rem}.button{padding-inline:1.2rem}}@media(max-width:42rem){.about-layout{grid-template-columns:1fr;gap:2.5rem}.portrait{max-width:none}.about-intro{font-size:2.2rem}}@media(max-width:36rem){.header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding-block:1.6rem;min-height:0}.brand{width:100%;max-width:12.5rem;min-width:0}nav{flex-direction:column;align-items:flex-end;justify-content:center;gap:.2rem}nav .button{padding-inline:1rem}.hero{padding-block:3rem 3.5rem}.project-grid{grid-template-columns:1fr;gap:2.5rem}.project-poster{aspect-ratio:16/9}.project-number{font-size:4.5rem}.footer-inner{flex-wrap:wrap;gap:1rem}.socials{order:3;width:100%;gap:1.6rem;padding-bottom:.5rem}.footer-star{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}[hidden]{display:none!important}.project-poster{display:block;position:relative;background:var(--ink);color:var(--paper)}.project-poster>img{object-fit:cover}.project-poster.website-poster{background:#f7f2ec}.project-poster.website-poster>img{object-fit:cover;object-position:center top}.project-poster:focus-visible{outline:3px solid currentColor;outline-offset:6px}.project-title-art{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;padding:1rem;background:var(--green);color:var(--ink);font-family:var(--heading);font-size:clamp(1.7rem,2.7vw,2.6rem);letter-spacing:-.04em}.project-title-art>span{font-family:var(--body);font-size:.875rem;letter-spacing:normal}.play-label{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.6rem;white-space:nowrap;border-radius:var(--pill-radius);padding:.65rem 1rem;background:var(--ink);color:var(--paper);font-size:.875rem;border:1px solid #ffffff60}.project-description{font-size:.9375rem;line-height:1.55;text-align:center}.showreel{padding-block:calc(var(--section-space)/2)}.showreel h2{margin-bottom:1.5rem}.reel-frame,.video-frame{aspect-ratio:16/9;position:relative;background:var(--ink)}.reel-frame{border-radius:var(--card-radius);overflow:hidden}.reel-poster{display:block;height:100%;position:relative}.reel-poster>img{width:100%;height:100%;object-fit:contain}.reel-poster .play-label{bottom:clamp(1rem,3vw,3rem)}.reel-poster:focus-visible{outline-offset:-6px;color:var(--paper)}.video-frame iframe,.reel-frame iframe{display:block;width:100%;height:100%;border:0;position:absolute;inset:0}.video-open{overflow:hidden}.video-dialog{width:min(66rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem);padding:1rem;border:0;border-radius:1.25rem;background:var(--paper);color:var(--ink);overflow:auto}.video-dialog::backdrop{background:#000c}.video-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.video-dialog h2{font-size:clamp(1.2rem,3vw,1.8rem);line-height:1.2}.video-close{font:inherit;cursor:pointer;min-height:44px;padding:.5rem 1rem;border:1px solid var(--ink);border-radius:var(--pill-radius);background:var(--paper);color:var(--ink)}.video-close{white-space:nowrap;flex-shrink:0}.video-close span{font-size:1.3em;margin-left:.4rem}.video-fallback{display:inline-flex;align-items:center;min-height:44px;margin-top:.5rem;text-decoration:underline;text-underline-offset:.2em}@media(max-width:36rem){.project-title-art{font-size:2.5rem}.project-description{max-width:40ch;margin-inline:auto}.video-dialog{padding:.75rem}}.showreel-intro{max-width:66.6667%;margin-bottom:1.5rem;font-size:1.0625rem;line-height:1.6}@media(max-width:56rem){.showreel-intro{max-width:100%}}.video-preview,.video-player{position:absolute;inset:0}.video-poster{width:100%;height:100%;object-fit:contain}.video-play{font:inherit;cursor:pointer;min-height:44px}.video-play:focus-visible{outline-color:#fff}.video-disclosure{margin-top:1rem;font-size:.9375rem;line-height:1.55;max-width:70ch}.privacy-page{padding-block:var(--section-space)}.privacy-copy{max-width:70ch}.privacy-copy h1{margin-bottom:2rem}.privacy-copy h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25;margin-top:2.5rem;margin-bottom:1rem}.privacy-copy p+p{margin-top:1rem}.privacy-copy ul{padding-left:1.3rem;margin-block:1rem}.privacy-copy li+li{margin-top:.5rem}.privacy-copy a{text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}.privacy-updated{margin-top:2.5rem;color:var(--muted)}.training-intro{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:calc(var(--section-space)/2);border-bottom:1px solid #08080825}.training-intro p{max-width:65ch;margin-top:1rem}.training-intro>.button{flex-shrink:0}.training-hero>p{max-width:65ch;margin-top:1.5rem;font-size:1.125rem}.topic-links{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:1.5rem}.topic-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:.25em;gap:.6rem}.training-topic{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(20rem,.85fr);gap:clamp(2rem,5vw,5rem);padding-block:calc(var(--section-space)/2);border-top:1px solid #08080825;align-items:start}.training-copy{max-width:70ch}.training-copy h2{font-size:clamp(2rem,3.4vw,3.25rem);line-height:1.15;margin-bottom:1.5rem;letter-spacing:-.025em}.training-copy p+p,.training-copy ul+p{margin-top:1rem}.training-copy ul{padding-left:1.25rem;margin-block:1rem}.training-copy li+li{margin-top:.4rem}.training-copy a,.booking-privacy{text-decoration:underline;text-underline-offset:.2em}.production-note{font-size:.9375rem}.booking-box{padding:clamp(1.25rem,2vw,2rem);border:1px solid var(--ink);border-radius:var(--card-radius);background:#fff}.session-picker{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.session-picker legend{font-family:var(--heading);font-size:1.3rem;margin-bottom:1rem;padding:0}.session-radio{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.session-option{display:flex;flex-direction:column;justify-content:center;gap:.2rem;cursor:pointer;border:1px solid #08080860;border-radius:1rem;padding:.75rem;min-height:74px;text-align:center}.session-radio:checked+label{background:var(--green);border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.session-radio:focus-visible+label{outline:3px solid var(--ink);outline-offset:3px}.booking-choice{display:none;grid-column:1/-1;margin-top:1rem}.session-radio[value="45"]:checked~.booking-choice[data-duration="45"],.session-radio[value="60"]:checked~.booking-choice[data-duration="60"],.session-radio[value="90"]:checked~.booking-choice[data-duration="90"],.session-radio[value="120"]:checked~.booking-choice[data-duration="120"]{display:block}.session-total{font-family:var(--heading);font-size:2.5rem;line-height:1.2}.session-total span{display:block;font-family:var(--body);font-size:1rem;margin-top:.4rem}.session-guidance{margin-top:1rem;min-height:3.1em}.booking-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;margin-top:1.25rem}.booking-help{font-size:.9375rem;margin-top:1rem}.cancellation-summary{font-size:.875rem;line-height:1.55;margin-top:1.25rem;border-top:1px solid #08080825;padding-top:1rem}.cancellation-summary p+p{margin-top:.65rem}.booking-privacy{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;margin-top:.5rem}.training-trainer .portrait{max-width:22rem}.trainer-bio{max-width:55ch;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.5;margin-top:1.5rem}.training-how{padding-block:var(--section-space)}.training-how ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 3rem;padding-left:1.3rem;margin-block:2rem}.training-how li{padding-left:.3rem;max-width:55ch}.training-how strong{display:block;margin-bottom:.5rem}.training-how>p{max-width:70ch}.training-teams{background:var(--green);padding-block:var(--section-space)}.training-teams h2{font-size:var(--statement-size);line-height:1.12;letter-spacing:-.045em;margin-bottom:1.5rem}.training-teams p{max-width:65ch}.training-teams p+p{margin-top:1rem}.training-teams .button{display:inline-flex;align-items:center;gap:1rem;min-height:44px;margin-top:1.5rem}@media(max-width:56rem){.training-topic{grid-template-columns:1fr}.training-copy{max-width:none}.training-intro{align-items:flex-start;flex-direction:column}.training-how ol{grid-template-columns:1fr}.header-inner{gap:1rem}.site-header nav{gap:.75rem}.site-header .brand{max-width:15rem}}@media(max-width:42rem){.site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem}.site-header nav{flex-direction:column;align-items:flex-end;gap:.2rem}.site-header .brand{max-width:12.5rem}.training-trainer .portrait{max-width:none}}
