:root{--paper:#f1e8d2;--paper-deep:#dfd1b4;--cream:#fff8e9;--ink:#171914;--muted:#6e6a5e;--red:#dd3d28;--green:#155b3a;--saffron:#f0b742;--line:#17191433;--line-light:#fff8e93d;--display:"Archivo Black", sans-serif;--sans:"DM Sans", sans-serif;--mono:"IBM Plex Mono", monospace;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(90deg, transparent 49.92%, #18191409 50%, transparent 50.08%) 0 0 / 12rem 12rem, var(--paper);min-width:320px;min-height:100vh;color:var(--ink);margin:0;overflow-x:hidden}body:after{z-index:1000;pointer-events:none;opacity:.22;content:"";mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.09'/%3E%3C/svg%3E");position:fixed;inset:0}body.menu-open,body.lightbox-open{overflow:hidden}button,input,textarea,select{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}figure,p,h1,h2,h3,blockquote{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.055em;text-wrap:balance;font-weight:400;line-height:.95}h1{font-size:clamp(4rem,7.5vw,7.25rem)}h2{font-size:clamp(2.75rem,5.8vw,5.7rem)}h3{font-size:clamp(1.8rem,3vw,3.25rem)}p{line-height:1.65}::selection{color:var(--cream);background:var(--red)}:focus-visible{outline:3px solid var(--saffron);outline-offset:4px}.section-pad{padding:clamp(6rem,11vw,10rem) 4vw}.eyebrow{font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:500;line-height:1.35}.scroll-progress{z-index:999;transform-origin:0;background:var(--red);height:3px;position:fixed;top:0;left:0;right:0}.site-header{z-index:100;background:#f1e8d2f5;border:1px solid #17191452;border-radius:999px;grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);align-items:center;min-height:66px;padding:.45rem .55rem .45rem 1.25rem;display:grid;position:fixed;top:1rem;left:2vw;right:2vw;box-shadow:0 14px 45px #19160e14}.wordmark{align-items:center;gap:.7rem;width:fit-content;display:flex}.wordmark>span{font-family:var(--display);letter-spacing:-.06em;font-size:1.45rem}.wordmark>small{max-width:72px;font-family:var(--mono);letter-spacing:.06em;font-size:.52rem;line-height:1.15}.desktop-nav{align-items:center;gap:.25rem;display:flex}.desktop-nav a{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;padding:.65rem .85rem;font-size:.65rem;position:relative}.desktop-nav a:after{transform-origin:100%;content:"";background:currentColor;height:1px;transition:transform .35s;position:absolute;bottom:.38rem;left:.8rem;right:.8rem;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a.active:after{transform-origin:0;transform:scaleX(1)}.header-book{justify-self:end}.menu-toggle,.mobile-menu{display:none}.button{min-height:50px;font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;padding:.85rem 1.35rem;font-size:.72rem;font-weight:500;transition:color .25s,background-color .25s,border-color .25s,transform .25s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button svg,.text-link svg{width:17px;transition:transform .25s}.button:hover svg,.text-link:hover svg{transform:translate(3px,-1px)}.button--ink{color:var(--cream);background:var(--ink)}.button--ink:hover{background:var(--red)}.button--red{color:var(--cream);background:var(--red)}.button--red:hover{background:var(--green)}.button--cream{color:var(--ink);background:var(--cream)}.button--cream:hover{color:var(--cream);background:var(--red)}.button--outline{border-color:var(--ink);background:0 0}.button--outline:hover{color:var(--cream);background:var(--ink)}.text-link{width:fit-content;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:1rem;padding-bottom:.35rem;font-size:.72rem;display:inline-flex}.home-hero{grid-template-rows:1fr auto;grid-template-columns:minmax(0,.95fr) minmax(360px,.72fr);gap:3rem 5vw;min-height:100svh;padding:clamp(8.5rem,14vh,11rem) 4vw 3vw;display:grid;position:relative;overflow:hidden}.home-hero:before{aspect-ratio:1;border:1px solid var(--line);content:"";border-radius:50%;width:22vw;position:absolute;top:20%;left:-8vw}.home-hero__copy{z-index:2;align-self:center;min-width:0;padding-top:2rem;position:relative}.home-hero__copy>.eyebrow{margin-bottom:clamp(1.75rem,3vw,3rem)}.home-hero__copy h1{text-transform:uppercase;max-width:760px;font-size:clamp(4.25rem,8.5vw,8.2rem);line-height:.82}.home-hero__copy h1 span{color:var(--red);margin-left:8vw;display:block}.home-hero__intro{grid-template-columns:minmax(220px,430px) auto;align-items:end;gap:2rem;margin-top:clamp(2.5rem,5vw,4.75rem);margin-left:7vw;display:grid}.home-hero__intro>p{font-size:clamp(1rem,1.25vw,1.2rem)}.hero-actions{align-items:center;gap:.9rem;display:flex}.circle-link{border:1px solid var(--ink);border-radius:50%;place-items:center;width:52px;height:52px;transition:transform .3s,background-color .3s,color .3s;display:grid}.circle-link:hover{color:var(--cream);background:var(--ink);transform:rotate(-10deg)}.home-hero__visual{align-self:center;height:min(68vh,710px);min-height:520px;position:relative}.home-hero__main-image{border-radius:48% 48% 7rem 7rem/40% 40% 15% 15%;position:absolute;inset:0 0 5% 7%;overflow:hidden}.home-hero__main-image:after{content:"";background:linear-gradient(#0000 55%,#0c0c0973);position:absolute;inset:0}.home-hero__main-image img{object-fit:cover;width:100%;height:115%}.home-hero__main-image figcaption{z-index:1;color:var(--cream);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;position:absolute;bottom:1.3rem;right:1.5rem}.home-hero__detail-image{z-index:2;background:var(--cream);width:clamp(145px,15vw,230px);padding:.55rem .55rem 2.4rem;position:absolute;bottom:-1rem;left:-3rem;box-shadow:0 28px 55px #12100a42}.home-hero__detail-image img{aspect-ratio:1;object-fit:cover;width:100%}.hero-stamp{z-index:3;border:2px solid var(--red);width:114px;height:114px;color:var(--red);background:var(--paper);border-radius:50%;place-items:center;display:grid;position:absolute;top:8%;right:-1.2rem}.hero-stamp span{width:100%;height:100%;font-family:var(--mono);letter-spacing:.1em;text-align:center;padding-top:.45rem;font-size:.5rem;font-weight:500;position:absolute}.hero-stamp strong{font-size:2.4rem}.home-hero__stats{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-column:1/-1;grid-template-columns:repeat(3,1fr);align-items:center;display:grid}.home-hero__stats>div{border-right:1px solid var(--line);justify-content:center;align-items:baseline;gap:.75rem;padding:1.15rem;display:flex}.home-hero__stats>div:last-child{border:0}.home-hero__stats strong{font-family:var(--display);letter-spacing:-.04em;font-size:clamp(1.2rem,2vw,2rem)}.home-hero__stats span{color:var(--muted);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;font-size:.58rem}.flavour-marquee{border-bottom:1px solid var(--ink);color:var(--paper);background:var(--ink);overflow:hidden}.flavour-marquee>div{align-items:center;width:max-content;padding:.9rem 0;animation:28s linear infinite marquee;display:flex}.flavour-marquee span{font-family:var(--display);letter-spacing:-.05em;font-size:clamp(1.8rem,3.4vw,3.4rem)}.flavour-marquee i{color:var(--saffron);margin:0 1.6rem;font-style:normal}@keyframes marquee{to{transform:translate(-50%)}}.section-heading{max-width:1050px;margin-bottom:clamp(3.5rem,7vw,7rem)}.section-heading>.eyebrow,.section-heading>div .eyebrow{margin-bottom:1.5rem}.section-heading--split{grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);align-items:end;gap:4vw;max-width:none;display:grid}.section-heading--split>p{max-width:470px;color:var(--muted);padding-bottom:.6rem;font-size:1.03rem}.journey{background:var(--cream)}.journey .section-heading h2{max-width:920px}.journey-list{border-top:1px solid var(--ink)}.journey-step{border-bottom:1px solid var(--ink);grid-template-columns:.16fr .7fr 1fr;align-items:center;gap:4vw;padding:clamp(2.75rem,5vw,5rem) 0;display:grid}.journey-step__number{font-family:var(--mono);align-self:start;font-size:.75rem}.journey-step figure{position:relative}.journey-step figure:after{border:1px solid var(--ink);content:"";position:absolute;inset:0;transform:translate(12px,12px)}.journey-step figure img{z-index:1;aspect-ratio:4/3;object-fit:cover;width:100%;position:relative}.journey-step figcaption{z-index:2;color:var(--cream);background:var(--green);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;padding:.5rem .75rem;font-size:.56rem;position:absolute;bottom:1rem;left:-1rem;transform:rotate(-3deg)}.journey-step__copy .eyebrow{color:var(--red);margin-bottom:1rem}.journey-step__copy h3{max-width:680px;margin-bottom:1.5rem}.journey-step__copy>p:last-child{max-width:560px;color:var(--muted)}.course-taster{color:var(--cream);background:var(--green)}.course-taster .section-heading--split>p{color:#fff8e9b3}.course-taster__days{border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);grid-template-columns:repeat(7,1fr);margin-bottom:2rem;display:grid}.course-taster__days button{border-right:1px solid var(--line-light);min-width:0;color:var(--cream);cursor:pointer;background:0 0;justify-content:space-between;align-items:baseline;padding:1.3rem 1rem;transition:color .3s,background-color .3s;display:flex}.course-taster__days button:last-child{border-right:0}.course-taster__days button:hover,.course-taster__days button.is-active{color:var(--ink);background:var(--saffron)}.course-taster__days span{font-family:var(--display);letter-spacing:-.04em;text-transform:uppercase;font-size:clamp(1rem,1.7vw,1.6rem)}.course-taster__days small{font-family:var(--mono);font-size:.56rem}.course-taster__panel{border:1px solid var(--line-light);grid-template-columns:1.08fr .92fr;min-height:650px;display:grid}.course-taster__image{min-height:580px;position:relative;overflow:hidden}.course-taster__image img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.22,1,.36,1)}.course-taster__image:hover img{transform:scale(1.035)}.course-taster__image>span{color:var(--ink);background:var(--cream);font-family:var(--mono);padding:.5rem .75rem;font-size:.62rem;position:absolute;top:1.5rem;left:1.5rem}.course-taster__image figcaption{max-width:160px;color:var(--ink);background:var(--saffron);font-family:var(--mono);text-transform:uppercase;padding:.65rem .9rem;font-size:.6rem;line-height:1.4;position:absolute;bottom:1.5rem;right:1.5rem;transform:rotate(2deg)}.course-taster__menu{background:radial-gradient(circle at 80% 10%, color-mix(in srgb, var(--course-color) 45%, transparent), transparent 35%), #102f23;flex-direction:column;padding:clamp(2.5rem,5vw,5rem);display:flex}.course-taster__menu .eyebrow{color:var(--saffron);margin-bottom:1rem}.course-taster__menu h3{margin-bottom:2rem;font-size:clamp(3rem,5vw,5rem)}.course-taster__menu ul{margin:0 0 2.5rem;padding:0;list-style:none}.course-taster__menu li{border-bottom:1px solid var(--line-light);grid-template-columns:42px 1fr;gap:1rem;padding:.9rem 0;font-size:1rem;display:grid}.course-taster__menu li span{color:#fff8e973;font-family:var(--mono);font-size:.62rem}.course-taster__menu .text-link{margin-top:auto}.hands-on{background:var(--saffron);grid-template-columns:1.15fr .85fr;align-items:center;gap:7vw;display:grid}.hands-on__image{background:var(--cream);padding:.8rem .8rem 3.4rem;position:relative;transform:rotate(-2deg);box-shadow:0 25px 80px #2d1f0b38}.hands-on__image img{aspect-ratio:5/3;object-fit:cover;width:100%}.tape{background:#f4ebc5c7;width:90px;height:40px;position:absolute;top:-1.2rem;left:45%;transform:rotate(4deg);box-shadow:0 2px 7px #281e0a14}.hands-on__copy .eyebrow,.whats-included__copy .eyebrow{margin-bottom:1.2rem}.hands-on__copy h2,.whats-included__copy h2{margin-bottom:2rem}.hands-on__copy>p{max-width:570px;font-size:1.05rem}.check-list{gap:.85rem;margin:2rem 0 2.5rem;padding:0;list-style:none;display:grid}.check-list li{font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:.75rem;font-size:.72rem;display:flex}.check-list svg{border:1px solid;border-radius:50%;width:19px;height:19px;padding:3px}.review-band{color:var(--cream);background:var(--red);grid-template-columns:.7fr 1.3fr;display:grid}.review-band>div{padding:clamp(4rem,7vw,7rem) 4vw}.review-band__rating{border-right:1px solid var(--line-light);align-items:center;gap:1.5rem;display:flex}.review-band__rating>span{font-family:var(--display);letter-spacing:-.08em;font-size:clamp(4rem,8vw,8rem);line-height:.8}.stars{color:var(--saffron);gap:.25rem;display:flex}.stars svg{width:18px}.review-band__rating p,.review-band__quote>p{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:.6rem;font-size:.6rem}.review-band__quote blockquote{max-width:900px;font-family:var(--display);letter-spacing:-.055em;font-size:clamp(2.3rem,4.6vw,5rem);line-height:.98}.gallery-tease{background:var(--cream)}.gallery-tease__grid{grid-template-rows:280px 380px;grid-template-columns:.8fr 1.15fr .65fr;gap:1rem;display:grid}.gallery-tease__grid img{object-fit:cover;width:100%;height:100%}.gallery-tease__grid img:first-child{grid-row:1/3}.gallery-tease__grid img:nth-child(2){grid-column:2/4}.site-footer{color:var(--cream);background:linear-gradient(#0c0f0bd6,#0c0f0be6),url(/images/bg_footer.jpg) 50%/cover;padding:clamp(5rem,8vw,8rem) 4vw 2rem}.footer-top{border-bottom:1px solid var(--line-light);justify-content:space-between;align-items:flex-end;gap:2rem;padding-bottom:4rem;display:flex}.footer-cta{font-family:var(--display);letter-spacing:-.06em;align-items:center;gap:1rem;font-size:clamp(2.5rem,5vw,5.6rem);display:inline-flex}.footer-cta svg{width:.7em;height:.7em;color:var(--saffron);transition:transform .3s}.footer-cta:hover svg{transform:rotate(45deg)}.footer-grid{grid-template-columns:1.2fr 1fr .8fr;gap:4vw;padding:4rem 0;display:grid}.footer-grid>div{flex-direction:column;align-items:flex-start;display:flex}.footer-grid p,.footer-grid a{font-size:.92rem;line-height:1.75}.footer-grid a:hover{color:var(--saffron)}.footer-label{color:#fff8e98c;font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-bottom:1rem;font-size:.62rem!important}.social-links{gap:.7rem;display:flex}.social-links a{border:1px solid var(--line-light);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.social-links svg{width:17px}.footer-bottom{border-top:1px solid var(--line-light);color:#fff8e98a;font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:end;gap:2rem;padding-top:2rem;font-size:.56rem;display:grid}.footer-bottom img{filter:saturate(0)brightness(4);width:100px}.footer-bottom p:last-child{justify-self:end}.page-hero{border-bottom:1px solid var(--ink);grid-template-columns:1fr .82fr;gap:5vw;min-height:88svh;padding:clamp(9rem,15vh,12rem) 4vw 6vw;display:grid}.page-hero__copy{align-self:end}.page-hero__copy .eyebrow{margin-bottom:2rem}.page-hero__copy h1{max-width:830px;font-size:clamp(4rem,7vw,7.15rem)}.page-hero__intro{max-width:610px;color:var(--muted);margin-top:2.5rem;margin-left:8vw;font-size:clamp(1rem,1.4vw,1.25rem)}.page-hero__media{align-self:stretch;min-height:560px;position:relative;overflow:hidden}.page-hero__media:before{z-index:1;content:"";border:1px solid #ffffff59;position:absolute;inset:0;transform:translate(-12px,12px)}.page-hero__media img{object-fit:cover;width:100%;height:100%;min-height:560px}.image-frame__index{z-index:2;background:var(--cream);font-family:var(--mono);padding:.55rem .8rem;font-size:.6rem;position:absolute;bottom:1rem;right:1rem}.manifesto{color:var(--cream);background:var(--red);grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:8vw;display:grid}.manifesto__lead{align-self:start;position:sticky;top:8rem}.manifesto__lead .eyebrow{color:var(--saffron);margin-bottom:1.5rem}.manifesto__notes{border-top:1px solid var(--line-light)}.manifesto__note{border-bottom:1px solid var(--line-light);grid-template-columns:50px 1fr;gap:2rem;padding:2.5rem 0;display:grid}.manifesto__note>span{font-family:var(--mono);font-size:.62rem}.manifesto__note h3{margin-bottom:1rem;font-size:clamp(1.8rem,3vw,3rem)}.manifesto__note p{color:#fff8e9b3}.experience-track{background:var(--cream)}.experience-track__list{gap:clamp(6rem,10vw,10rem);display:grid}.experience-card{grid-template-columns:1.08fr .92fr;align-items:center;gap:8vw;display:grid}.experience-card:nth-child(2n) .experience-card__media{order:2}.experience-card__media{overflow:hidden}.experience-card__media img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .8s cubic-bezier(.22,1,.36,1)}.experience-card__media:hover img{transform:scale(1.04)}.experience-card__copy>span{color:var(--red);font-family:var(--display);letter-spacing:-.1em;margin-bottom:clamp(3rem,7vw,7rem);font-size:clamp(4rem,9vw,10rem);line-height:.7;display:block}.experience-card__copy .eyebrow{margin-bottom:1rem}.experience-card__copy h3{margin-bottom:1.5rem}.experience-card__copy>p:last-child{max-width:540px;color:var(--muted)}.instructors{background:var(--saffron);grid-template-columns:.85fr 1.15fr;align-items:center;gap:8vw;display:grid}.instructors__portrait{background:var(--cream);max-width:620px;padding:.8rem .8rem 4.5rem;position:relative;transform:rotate(-2deg);box-shadow:0 24px 60px #2c1e0a33}.instructors__portrait img{aspect-ratio:4/5;object-fit:cover;width:100%}.portrait-note{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:1rem .5rem 0;font-size:.6rem;display:flex}.instructors__copy .eyebrow{margin-bottom:1.4rem}.instructors__copy h2{margin-bottom:2rem}.instructors__copy>p{max-width:650px;margin-bottom:1rem}.instructors__copy .text-link{margin-top:1.5rem}.team-building{color:var(--cream);background:var(--ink);grid-template-columns:1fr .85fr;gap:7vw;display:grid}.team-building__heading .eyebrow,.team-building__details>.eyebrow{color:var(--saffron);margin-bottom:1.5rem}.team-building__details>p{color:#fff8e9b3;font-size:1.06rem}.team-building .check-list{border-top:1px solid var(--line-light)}.team-building .check-list li{border-bottom:1px solid var(--line-light);padding:.75rem 0}.course-index{background:var(--cream)}.course-index__grid{border:1px solid var(--ink);background:var(--ink);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.course-index__card{background:var(--cream);min-width:0}.course-index__card>a{height:100%;display:block}.course-index__card figure{position:relative;overflow:hidden}.course-index__card figure:after{content:"";background:linear-gradient(#0000 55%,#0f100c40);position:absolute;inset:0}.course-index__card figure img{aspect-ratio:5/4;object-fit:cover;width:100%;transition:transform .7s cubic-bezier(.22,1,.36,1)}.course-index__card:hover figure img{transform:scale(1.055)}.course-index__card figure span{z-index:1;background:var(--paper);width:42px;height:42px;font-family:var(--mono);border-radius:50%;place-items:center;font-size:.6rem;display:grid;position:absolute;top:1rem;right:1rem}.course-index__card-copy{border-top:8px solid var(--course-color);min-height:250px;padding:2rem;position:relative}.course-index__card-copy .eyebrow{margin-bottom:1.1rem}.course-index__card-copy h3{margin-bottom:.8rem}.course-index__card-copy>p{color:var(--muted)}.round-arrow{border:1px solid;border-radius:50%;place-items:center;width:44px;height:44px;transition:color .3s,background-color .3s,transform .3s;display:grid}.round-arrow svg{width:18px}.course-index__card .round-arrow{position:absolute;bottom:1.5rem;right:1.5rem}.course-index__card:hover .round-arrow{color:var(--cream);background:var(--course-color);transform:rotate(-25deg)}.class-times{color:var(--cream);background:var(--green)}.class-times__grid{border:1px solid var(--line-light);grid-template-columns:repeat(3,1fr);display:grid}.time-card{border-right:1px solid var(--line-light);min-height:400px;padding:clamp(2rem,4vw,4rem);position:relative;overflow:hidden}.time-card:last-child{border:0}.time-card__icon{color:#fff8e914;font-size:14rem;line-height:1;position:absolute;top:-2rem;right:-1rem}.time-card>svg{color:var(--saffron);margin-bottom:6rem}.time-card .eyebrow{color:var(--saffron);margin-bottom:1rem}.time-card h3{margin-bottom:1rem}.time-card>p:last-child{color:#fff8e9ad;max-width:330px}.whats-included{background:var(--saffron);grid-template-columns:1.05fr .95fr;align-items:stretch;gap:7vw;display:grid}.whats-included__image img{object-fit:cover;width:100%;height:100%;min-height:650px}.whats-included__copy{align-self:center}.check-list--large{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.5rem}.check-list--large li{border-bottom:1px solid var(--line);padding:.8rem 0}.micro-note{color:var(--muted);font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;font-size:.62rem;line-height:1.7}.whats-included__copy .button{margin-top:2rem}.course-detail-hero{min-height:92svh;color:var(--cream);background:var(--course-color);grid-template-columns:.9fr 1.1fr;padding-top:6.2rem;display:grid}.course-detail-hero__copy{flex-direction:column;justify-content:flex-end;padding:6vw 4vw;display:flex}.back-link{width:fit-content;font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.55rem;margin-bottom:auto;font-size:.65rem;display:inline-flex}.back-link svg{width:16px}.course-detail-hero__copy .eyebrow{color:var(--saffron);margin-bottom:1rem}.course-detail-hero__copy h1{max-width:650px;margin-bottom:2rem;font-size:clamp(4rem,7vw,8rem)}.course-detail-hero__copy>p{color:#fff8e9bd;max-width:580px;margin-bottom:2.5rem}.course-detail-hero__copy .button{align-self:flex-start}.course-detail-hero>figure{min-height:700px;position:relative;overflow:hidden}.course-detail-hero>figure img{object-fit:cover;width:100%;height:100%}.course-detail-hero>figure span{color:var(--ink);background:var(--cream);font-family:var(--mono);padding:.55rem .8rem;font-size:.6rem;position:absolute;bottom:1.5rem;right:1.5rem}.dish-list{background:var(--cream)}.dish-list__grid{border-top:1px solid var(--ink);grid-template-columns:repeat(2,1fr);display:grid}.dish-card{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:170px 45px 1fr;align-items:center;gap:1.5rem;padding:1.5rem;display:grid}.dish-card:nth-child(2n){border-right:0}.dish-card figure{overflow:hidden}.dish-card figure img{aspect-ratio:1;object-fit:cover;width:100%;transition:transform .5s}.dish-card:hover figure img{transform:scale(1.06)}.dish-card>span{font-family:var(--mono);font-size:.6rem}.dish-card h3{margin-bottom:.6rem;font-size:clamp(1.4rem,2.4vw,2.4rem)}.dish-card p{color:var(--muted)}.course-practical{color:var(--cream);background:var(--ink);grid-template-columns:1.3fr .7fr;gap:7vw;display:grid}.course-practical .eyebrow{color:var(--saffron);margin-bottom:1.4rem}.course-practical__times{border-top:1px solid var(--line-light);margin-top:4rem;display:grid}.course-practical__times>div{border-bottom:1px solid var(--line-light);grid-template-columns:60px 1fr;gap:1rem;padding:1.4rem 0;display:grid}.course-practical__times>div>span{color:var(--saffron);font-size:1.6rem}.course-practical__times strong{font-family:var(--mono);letter-spacing:.05em;font-size:.68rem}.course-practical__times p{color:#fff8e98c}.course-practical__aside{border:1px solid var(--line-light);align-self:end;padding:2rem}.course-price{font-family:var(--display);letter-spacing:-.06em;margin:2.5rem 0 .75rem;font-size:clamp(3rem,5vw,5.5rem);display:block}.course-price small{font-family:var(--mono);letter-spacing:.03em;font-size:.6rem}.course-practical .micro-note{color:#fff8e980}.next-course{color:var(--cream);background:var(--course-color);justify-content:space-between;align-items:center;gap:2rem;padding:5rem 4vw;display:flex}.next-course .eyebrow{color:var(--saffron);margin-bottom:1rem}.round-arrow--large{width:82px;height:82px}.round-arrow--large:hover{color:var(--ink);background:var(--cream);transform:rotate(-25deg)}.gallery-page{background:var(--cream)}.gallery-filter{border-bottom:1px solid var(--ink);flex-wrap:wrap;gap:.5rem;margin-bottom:3rem;padding-bottom:1.5rem;display:flex}.gallery-filter button{border:1px solid var(--ink);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;padding:.7rem 1rem;font-size:.6rem;transition:color .25s,background-color .25s}.gallery-filter button:hover,.gallery-filter button.is-active{color:var(--cream);background:var(--ink)}.gallery-masonry{columns:3 320px;column-gap:1rem}.gallery-item{cursor:zoom-in;break-inside:avoid;background:0 0;width:100%;margin:0 0 1rem;padding:0;position:relative;overflow:hidden}.gallery-item img{width:100%;transition:transform .7s cubic-bezier(.22,1,.36,1),filter .5s}.gallery-item:hover img{filter:saturate(1.12);transform:scale(1.045)}.gallery-item span{color:var(--ink);background:var(--cream);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;padding:.45rem .65rem;font-size:.55rem;position:absolute;bottom:.8rem;left:.8rem}.lightbox{z-index:800;color:var(--cream);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e0f0cf5;grid-template-columns:80px minmax(0,1fr) 80px;align-items:center;padding:3vw;display:grid;position:fixed;inset:0}.lightbox__close{z-index:2;border:1px solid var(--line-light);width:48px;height:48px;color:var(--cream);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid;position:absolute;top:1.5rem;right:1.5rem}.lightbox__nav{border:1px solid var(--line-light);width:54px;height:54px;color:var(--cream);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.lightbox__nav--next{justify-self:end}.lightbox figure{justify-items:center;display:grid}.lightbox figure img{object-fit:contain;width:auto;max-width:min(100%,1200px);max-height:76vh}.lightbox figcaption{color:#fff8e9a8;width:min(100%,1200px);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;gap:2rem;padding-top:1rem;font-size:.6rem;display:flex}.visit-map{background:var(--cream);grid-template-columns:1.2fr .8fr;align-items:center;gap:7vw;display:grid}.visit-map__image{background:var(--paper);padding:.8rem .8rem 3.2rem;transform:rotate(-1.5deg);box-shadow:0 25px 65px #201c1229}.visit-map__image a{display:block;position:relative}.visit-map__image img{width:100%}.visit-map__image span{color:var(--cream);background:var(--red);font-family:var(--mono);text-transform:uppercase;align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.58rem;display:inline-flex;position:absolute;bottom:1rem;right:1rem}.visit-map__details .eyebrow{color:var(--red);margin-bottom:1.3rem}.visit-map__details h2{margin-bottom:1.5rem}.visit-map__details>p{color:var(--muted);font-size:1.05rem}.visit-links{border-top:1px solid var(--ink);margin:2.5rem 0;display:grid}.visit-links a{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:1rem;padding:1rem 0;font-size:.7rem;display:flex}.visit-links svg{width:19px}.arrival{color:var(--cream);background:var(--red)}.arrival__grid{border:1px solid var(--line-light);grid-template-columns:repeat(3,1fr);display:grid}.arrival-card{border-right:1px solid var(--line-light);min-height:320px;padding:clamp(2rem,4vw,4rem)}.arrival-card:last-child{border:0}.arrival-card>span{color:var(--saffron);font-family:var(--mono);margin-bottom:5rem;font-size:.62rem;display:block}.arrival-card h3{margin-bottom:1.2rem;font-size:clamp(1.8rem,3vw,3rem)}.arrival-card p{color:#fff8e9b3}.faq{background:var(--saffron);grid-template-columns:.75fr 1.25fr;gap:7vw;display:grid}.faq__heading{align-self:start;position:sticky;top:8rem}.faq__heading .eyebrow{margin-bottom:1.4rem}.faq__list{border-top:1px solid var(--ink)}.faq-item{border-bottom:1px solid var(--ink)}.faq-item>button{text-align:left;cursor:pointer;background:0 0;grid-template-columns:48px 1fr 24px;align-items:center;gap:1rem;width:100%;padding:1.6rem 0;display:grid}.faq-item button>span{font-family:var(--mono);font-size:.6rem}.faq-item button strong{font-size:1.08rem;font-weight:500}.faq-item button svg{transition:transform .3s}.faq-item.is-open button svg{transform:rotate(180deg)}.faq-item>div{overflow:hidden}.faq-item>div p{color:#171914ad;max-width:680px;padding:0 2.5rem 1.8rem 64px}.booking-page{background:var(--cream);grid-template-columns:.72fr 1.28fr;min-height:100svh;padding-top:6.2rem;display:grid}.booking-page__intro{color:var(--cream);background:var(--green);flex-direction:column;padding:5vw 4vw 4vw;display:flex;position:relative}.booking-page__intro .eyebrow{color:var(--saffron);margin:3rem 0 1.5rem}.booking-page__intro h1{max-width:690px;margin-bottom:2rem;font-size:clamp(3.4rem,5.8vw,6rem)}.booking-page__intro>p{color:#fff8e9b8;max-width:580px}.booking-page__intro figure{margin-top:auto;padding-top:4rem}.booking-page__intro figure img{aspect-ratio:16/8;object-fit:cover;width:100%}.booking-form{align-self:start;min-height:calc(100svh - 6.2rem);padding:5vw}.booking-steps{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:clamp(3rem,6vw,6rem);display:grid}.booking-steps button{color:#17191466;font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;background:0 0;align-items:center;gap:.75rem;padding:1rem 0;font-size:.62rem;display:flex}.booking-steps button:before{content:"";border:1px solid;border-radius:50%;width:8px;height:8px}.booking-steps button.is-active,.booking-steps button.is-complete{color:var(--ink)}.booking-steps button.is-active:before,.booking-steps button.is-complete:before{border-color:var(--red);background:var(--red)}.booking-steps button>svg{display:none}.booking-form__step>.eyebrow{color:var(--red);margin-bottom:1.2rem}.booking-form__step>h2{max-width:780px;margin-bottom:3rem;font-size:clamp(2.8rem,5vw,5.2rem)}.booking-course-options{border:1px solid var(--ink);grid-template-columns:repeat(7,1fr);margin-bottom:1.5rem;display:grid}.booking-course-options label{border-right:1px solid var(--ink);cursor:pointer;flex-direction:column;justify-content:space-between;min-height:155px;padding:1rem;transition:color .25s,background-color .25s;display:flex;position:relative}.booking-course-options label:last-child{border-right:0}.booking-course-options label:hover,.booking-course-options label.is-selected{color:var(--cream);background:var(--red)}.booking-course-options input,.booking-time-options input{opacity:0;pointer-events:none;position:absolute}.booking-course-options label>span{font-family:var(--mono);text-transform:uppercase;font-size:.65rem}.booking-course-options label strong{font-family:var(--display);letter-spacing:-.04em;font-size:1.05rem;font-weight:400;line-height:1}.booking-course-options label small{font-family:var(--mono);font-size:.52rem;position:absolute;top:1rem;right:.8rem}.booking-time-options{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}.booking-time-options label{border:1px solid var(--line);cursor:pointer;grid-template-columns:42px 1fr;align-items:center;gap:.5rem;min-height:84px;padding:1rem;transition:border-color .25s,background-color .25s;display:grid;position:relative}.booking-time-options label:hover,.booking-time-options label.is-selected{border-color:var(--green);background:#155b3a14}.booking-time-options label>span{font-size:1.8rem}.booking-time-options label div{flex-direction:column;gap:.25rem;display:flex}.booking-time-options label strong{font-size:.9rem;font-weight:500}.booking-time-options label small{color:var(--muted);font-family:var(--mono);font-size:.56rem}.guest-picker{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:2rem;padding:1.3rem 0;display:flex}.guest-picker>div:first-child{flex-direction:column;gap:.2rem;display:flex}.guest-picker>div:first-child strong{font-weight:500}.guest-picker>div:first-child span{color:var(--muted);font-family:var(--mono);text-transform:uppercase;font-size:.58rem}.guest-picker>div:last-child{align-items:center;gap:1.2rem;display:flex}.guest-picker button{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.guest-picker button:hover{color:var(--cream);background:var(--ink)}.guest-picker button svg{width:16px}.guest-picker>div:last-child>strong{min-width:28px;font-family:var(--display);text-align:center;font-size:2rem}.form-next{margin-top:2rem}.form-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.form-grid label{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:.6rem;font-size:.62rem;display:flex}.form-grid input,.form-grid select,.form-grid textarea{border:0;border-bottom:1px solid var(--ink);width:100%;font-family:var(--sans);letter-spacing:0;text-transform:none;background:0 0;border-radius:0;outline:0;padding:.9rem 0;font-size:1rem}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--red)}.form-grid textarea{resize:vertical}.form-grid__full{grid-column:1/-1}.form-buttons{justify-content:space-between;gap:1rem;margin-top:3rem;display:flex}.booking-review{border-top:1px solid var(--ink)}.booking-review>div{border-bottom:1px solid var(--line);grid-template-columns:.4fr .6fr;gap:1rem;padding:1rem 0;display:grid}.booking-review span{color:var(--muted);font-family:var(--mono);text-transform:uppercase;font-size:.6rem}.booking-review strong{font-size:.95rem;font-weight:500}.booking-review__total{align-items:end;border-bottom-color:var(--ink)!important;padding:2rem 0!important}.booking-review__total strong{font-family:var(--display);letter-spacing:-.06em;font-size:clamp(2.5rem,4vw,4rem)}.booking-form__step>.micro-note{margin-top:1.5rem}.booking-success{background:linear-gradient(#155b3adb,#155b3ae6),url(/images/thaicooking-09.jpg) 50%/cover;place-items:center;min-height:100svh;padding:9rem 4vw 4rem;display:grid}.booking-success>div{text-align:center;background:var(--paper);max-width:880px;padding:clamp(2rem,5vw,5rem);box-shadow:0 25px 80px #0a140e59}.success-check{width:68px;height:68px;color:var(--cream);background:var(--green);border-radius:50%;place-items:center;margin:0 auto 2rem;display:grid}.booking-success h1{margin:1rem 0 2rem;font-size:clamp(3rem,6vw,6rem)}.booking-success>div>p:not(.eyebrow){max-width:650px;color:var(--muted);margin:0 auto}.booking-success__ticket{border:1px solid var(--ink);background:var(--ink);grid-template-columns:repeat(2,1fr);gap:1px;max-width:620px;margin:2.5rem auto;display:grid}.booking-success__ticket>*{background:var(--cream);font-family:var(--mono);text-transform:uppercase;padding:1rem;font-size:.68rem}.page-loader{justify-content:center;align-items:center;gap:.45rem;min-height:80svh;display:flex}.page-loader span{background:var(--red);border-radius:50%;width:10px;height:10px;animation:.8s infinite alternate pulse}.page-loader span:nth-child(2){animation-delay:.16s}.page-loader span:nth-child(3){animation-delay:.32s}@keyframes pulse{to{opacity:.4;transform:translateY(-12px)}}.not-found{flex-direction:column;justify-content:center;align-items:flex-start;min-height:90svh;padding:9rem 4vw 4rem;display:flex}.not-found h1{max-width:1000px;margin:1.5rem 0 2.5rem}@media (width<=1180px){.site-header{grid-template-columns:1fr auto}.desktop-nav,.header-book{display:none}.menu-toggle{z-index:3;width:50px;height:50px;color:var(--cream);background:var(--ink);cursor:pointer;border-radius:50%;place-items:center;display:grid}.menu-toggle svg{width:21px}.mobile-menu{z-index:2;color:var(--cream);background:var(--green);flex-direction:column;justify-content:space-between;padding:9rem 6vw 5rem;display:flex;position:fixed;inset:-1rem -2vw}.mobile-menu__links{display:grid}.mobile-menu__links a{border-bottom:1px solid var(--line-light);font-family:var(--display);letter-spacing:-.055em;align-items:baseline;gap:1rem;padding:.65rem 0;font-size:clamp(2.3rem,7vw,5.5rem);display:flex}.mobile-menu__links a span{font-family:var(--mono);letter-spacing:.05em;font-size:.6rem}.mobile-menu>p{color:var(--saffron);font-family:var(--mono);text-transform:uppercase;font-size:.65rem}.home-hero{grid-template-columns:1fr .72fr;gap:3rem}.home-hero__intro{grid-template-columns:1fr;margin-left:3vw}.home-hero__visual{min-height:480px}.course-index__grid{grid-template-columns:repeat(2,1fr)}.booking-page{grid-template-columns:.85fr 1.15fr}.booking-course-options{grid-template-columns:repeat(4,1fr)}.booking-course-options label:nth-child(4){border-right:0}.booking-course-options label:nth-child(-n+4){border-bottom:1px solid var(--ink)}}@media (width<=900px){h1{font-size:clamp(3.4rem,11vw,6.5rem)}h2{font-size:clamp(2.7rem,9vw,5.2rem)}.section-pad{padding-left:5vw;padding-right:5vw}.home-hero{grid-template-rows:auto auto auto;grid-template-columns:1fr;padding-left:5vw;padding-right:5vw}.home-hero__copy h1{font-size:clamp(4rem,16vw,7.5rem)}.home-hero__copy h1 span,.home-hero__intro{margin-left:13vw}.home-hero__visual{height:70vh;min-height:540px}.home-hero__main-image{inset:0 6vw 5% 12vw}.home-hero__detail-image{left:2vw}.home-hero__stats{grid-column:1}.section-heading--split{grid-template-columns:1fr;gap:1.5rem}.journey-step{grid-template-columns:50px .8fr 1fr;gap:2.5vw}.course-taster__days{grid-template-columns:repeat(4,1fr)}.course-taster__days button:nth-child(-n+4){border-bottom:1px solid var(--line-light)}.course-taster__days button:nth-child(4){border-right:0}.course-taster__panel{grid-template-columns:1fr}.course-taster__image{min-height:480px}.hands-on,.instructors,.whats-included,.visit-map,.review-band{grid-template-columns:1fr}.review-band__rating{border-right:0;border-bottom:1px solid var(--line-light)}.gallery-tease__grid{grid-template-rows:330px 330px;grid-template-columns:1fr 1fr}.gallery-tease__grid img:first-child,.gallery-tease__grid img:nth-child(2){grid-area:auto}.footer-grid{grid-template-columns:1fr 1fr}.page-hero{grid-template-columns:1fr;min-height:auto;padding-left:5vw;padding-right:5vw}.page-hero__copy{padding:4rem 0 1rem}.page-hero__intro{margin-left:12vw}.page-hero__media,.page-hero__media img{min-height:520px}.manifesto,.team-building,.course-practical,.faq{grid-template-columns:1fr}.manifesto__lead,.faq__heading{position:static}.experience-card{grid-template-columns:1fr;gap:3rem}.experience-card:nth-child(2n) .experience-card__media{order:0}.experience-card__copy>span{margin-bottom:2rem}.class-times__grid,.arrival__grid{grid-template-columns:1fr}.time-card,.arrival-card{border-right:0;border-bottom:1px solid var(--line-light);min-height:0}.time-card:last-child,.arrival-card:last-child{border-bottom:0}.time-card>svg,.arrival-card>span{margin-bottom:3rem}.course-detail-hero{grid-template-columns:1fr;padding-top:6.2rem}.course-detail-hero__copy{min-height:72vh;padding:5rem 5vw}.course-detail-hero>figure{min-height:620px}.dish-card{grid-template-columns:120px 35px 1fr}.booking-page{grid-template-columns:1fr}.booking-page__intro{min-height:85svh;padding:5rem 5vw}.booking-form{padding:5rem 5vw}}@media (width<=640px){.site-header{min-height:58px;top:.65rem;left:3vw;right:3vw}.wordmark>span{font-size:1.2rem}.wordmark>small{display:none}.menu-toggle{width:44px;height:44px}.mobile-menu{inset:-.65rem -3vw}.home-hero{padding-top:8rem}.home-hero__copy h1{font-size:clamp(3.15rem,14vw,4.9rem)}.home-hero__copy h1 span{margin-left:6vw}.home-hero__intro{margin-left:0}.hero-actions{flex-wrap:wrap}.home-hero__visual{height:62vh;min-height:480px}.home-hero__main-image{border-radius:44% 44% 5rem 5rem/35% 35% 12% 12%;inset:0 0 5% 10vw}.home-hero__detail-image{width:130px;left:0}.hero-stamp{width:86px;height:86px}.hero-stamp strong{font-size:1.8rem}.hero-stamp span{font-size:.38rem}.home-hero__stats{grid-template-columns:1fr}.home-hero__stats>div{border-right:0;border-bottom:1px solid var(--line);justify-content:space-between}.home-hero__stats>div:last-child{border-bottom:0}.journey-step{grid-template-columns:40px 1fr}.journey-step figure,.journey-step__copy{grid-column:2}.course-taster__days{grid-template-columns:repeat(2,1fr)}.course-taster__days button:nth-child(2n){border-right:0}.course-taster__days button:nth-child(-n+6){border-bottom:1px solid var(--line-light)}.course-taster__image{min-height:390px}.course-taster__menu{padding:2rem 1.25rem}.gallery-tease__grid{grid-template-rows:repeat(4,320px);grid-template-columns:1fr}.footer-top{flex-direction:column;align-items:flex-start}.footer-grid,.footer-bottom{grid-template-columns:1fr}.footer-bottom p:last-child{justify-self:start}.page-hero__copy h1{font-size:clamp(3.4rem,14vw,5.2rem)}.page-hero__intro{margin-left:0}.page-hero__media,.page-hero__media img{min-height:440px}.course-index__grid,.check-list--large{grid-template-columns:1fr}.whats-included__image img{min-height:480px}.course-detail-hero__copy{min-height:80vh}.course-detail-hero>figure{min-height:500px}.dish-list__grid{grid-template-columns:1fr}.dish-card{border-right:0;grid-template-columns:100px 28px 1fr;padding:1rem 0}.dish-card h3{font-size:1.4rem}.next-course{align-items:flex-start}.round-arrow--large{flex:none;width:60px;height:60px}.gallery-filter{scrollbar-width:none;flex-wrap:nowrap;margin-right:-5vw;overflow-x:auto}.gallery-filter::-webkit-scrollbar{display:none}.gallery-filter button{flex:none}.gallery-masonry{columns:2 140px}.lightbox{grid-template-columns:1fr;padding:5rem 1rem 1rem}.lightbox__nav{z-index:2;position:absolute;bottom:1rem}.lightbox__nav--prev{left:1rem}.lightbox__nav--next{right:1rem}.lightbox figure img{max-height:68vh}.lightbox figcaption{flex-direction:column;gap:.4rem;padding-right:4rem}.arrival-card{padding:2rem}.faq-item>div p{padding-left:0}.booking-page__intro{min-height:90svh;padding-top:4rem}.booking-course-options{grid-template-columns:repeat(2,1fr)}.booking-course-options label,.booking-course-options label:nth-child(4){border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.booking-course-options label:nth-child(2n),.booking-course-options label:last-child{border-right:0}.booking-time-options,.form-grid{grid-template-columns:1fr}.form-grid__full{grid-column:auto}.form-buttons{flex-direction:column-reverse;align-items:stretch}.booking-review>div{grid-template-columns:1fr;gap:.4rem}}@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}}
