@font-face{font-family:Bagel Fat One;font-style:normal;font-display:swap;font-weight:400;src:url(./bagel-fat-one-latin-400-normal-CB1T13M1.woff2) format("woff2"),url(./bagel-fat-one-latin-400-normal-BFAfIXLM.woff) format("woff")}@font-face{font-family:Familjen Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(./familjen-grotesk-vietnamese-wght-normal-DKRsWTd7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(./familjen-grotesk-latin-ext-wght-normal-Cvgdx4cy.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(./familjen-grotesk-latin-wght-normal-CfZa4wxB.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--red: #9e1b1e;--red-deep: #7d1215;--clay: #f6ecd8;--green: #2f6b3a;--ink: #2b1b15;--dust: #e3cfae;--font-display: "Bagel Fat One", "Arial Black", sans-serif;--font-body: "Familjen Grotesk Variable", "Helvetica Neue", Arial, sans-serif;--gutter: 16px;--max: 1200px;--radius-lg: 28px;--radius-md: 20px;--spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, 1, .36, 1)}@media(min-width:768px){:root{--gutter: 32px}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--clay);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}h1,h2,h3{margin:0;font-weight:400}section[id]{scroll-margin-top:16px}p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--green);outline-offset:3px}.skip-link{position:absolute;left:8px;top:-60px;z-index:10;padding:10px 16px;border-radius:999px;background:var(--ink);color:var(--clay)}.skip-link:focus{top:8px}.pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:2px solid transparent;border-radius:999px;font:600 1rem/1 var(--font-body);text-decoration:none;white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:transform .42s var(--spring),background-color .16s ease,border-color .16s ease,color .16s ease}.pill:hover{transform:translateY(-2px)}.pill:active{transform:scale(1.05,.9);transition-duration:70ms;transition-timing-function:ease-out}.pill--tag:hover,.pill--tag:active{transform:none}.pill--lg{min-height:52px;padding:0 28px;font-size:1.0625rem}.pill--red{background:var(--red);color:var(--clay)}.pill--red:hover{background:var(--red-deep)}.pill--cream{background:var(--clay);color:var(--red)}.pill--cream:hover{background:#fff7e8}.pill--ghost{background:transparent;color:var(--clay)}.pill--ghost:hover{border-color:var(--clay)}.pill--outline{border-color:var(--red);color:var(--red);background:transparent}.pill--outline:hover{background:#9e1b1e14}.pill--tag{min-height:36px;padding:0 14px;border-color:var(--ink);color:var(--ink);font-weight:500;cursor:default}.ticker{overflow:hidden;background:var(--red-deep);color:var(--clay);font-size:.8125rem;font-weight:600;letter-spacing:.02em}.ticker__track{display:flex;width:max-content;animation:ticker 160s linear infinite}.ticker__item{display:inline-flex;align-items:center;padding:8px 0}.ticker__item:after{content:"";width:6px;height:6px;margin:0 22px;border-radius:50%;background:var(--dust)}@keyframes ticker{to{transform:translate(-50%)}}.header{background:var(--red);color:var(--clay)}.header__inner{position:relative;display:flex;align-items:center;justify-content:space-between;max-width:var(--max);margin:0 auto;padding:14px var(--gutter)}.wordmark{font-family:var(--font-display);font-size:2rem;line-height:1;text-decoration:none}.header__menu{border-color:var(--clay)}.nav{display:none}.nav--open{position:absolute;top:100%;left:0;right:0;z-index:5;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:8px var(--gutter) 20px;background:var(--red)}@media(min-width:768px){.header__menu{display:none}.nav,.nav--open{position:static;display:flex;flex-direction:row;align-items:center;gap:4px;padding:0}}.hero__inner{display:grid;gap:32px;max-width:var(--max);margin:0 auto;padding:40px var(--gutter) 56px}.hero__title{font-family:var(--font-display);font-size:clamp(3.5rem,12vw,7.5rem);line-height:.92;letter-spacing:-.01em;color:var(--red)}.hero__lede{max-width:34ch;margin-top:24px;font-size:1.1875rem}.hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero__media{position:relative}.hero__sticker{position:absolute;left:-8px;bottom:-20px;transform:rotate(-10deg)}@media(min-width:900px){.hero__inner{grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;padding-top:64px;padding-bottom:88px}}.photo{overflow:hidden;background:radial-gradient(circle at 30% 30%,#c98f63 0,transparent 55%),linear-gradient(135deg,#b5754c,#7a4a32)}.photo img{width:100%;height:100%;object-fit:cover}.photo--hero{aspect-ratio:4 / 5;border:10px solid var(--red);border-radius:var(--radius-lg)}.photo--card{aspect-ratio:4 / 3;border-radius:var(--radius-md)}.photo--band{position:absolute;inset:0}.sticker{display:grid;place-content:center;width:128px;height:128px;border-radius:50%;background:var(--green);color:var(--clay);font-family:var(--font-display);font-size:1.125rem;line-height:1.1;text-align:center;box-shadow:0 0 0 4px var(--clay)}.section{max-width:var(--max);margin:0 auto;padding:64px var(--gutter)}.section__title{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,4.5rem);line-height:1;color:var(--red);margin-bottom:32px}.classes__grid{display:grid;gap:32px;margin:0;padding:0;list-style:none}@media(min-width:720px){.classes__grid{grid-template-columns:repeat(3,1fr);gap:24px}}.class-card{display:flex;flex-direction:column}.class-card__name{margin-top:16px;font-family:var(--font-display);font-size:1.75rem;line-height:1.1;color:var(--red)}.class-card__blurb{margin-top:8px;max-width:36ch}.class-card__foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:20px}.class-card__foot .pill--red{margin-left:auto}.band{background:var(--red);color:var(--clay);padding:88px var(--gutter);text-align:center}.band__text{max-width:16ch;margin:0 auto;font-family:var(--font-display);font-size:clamp(2.25rem,7vw,4.75rem);line-height:1}.band__stickers{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:36px 0 0;padding:0;list-style:none}.sticker-tag{padding:8px 18px;border:2px solid var(--clay);border-radius:999px;font-weight:600;transform:rotate(var(--r, 0deg))}.steps__list{display:grid;gap:32px;margin:0;padding:0;list-style:none}@media(min-width:720px){.steps__list{grid-template-columns:repeat(3,1fr);gap:24px}}.step{padding:24px;border:2px solid var(--dust);border-radius:var(--radius-md)}.step__num{min-height:36px;padding:0 14px;font-size:.9375rem}.step__title{margin:16px 0 8px;font-size:1.375rem;font-weight:700;line-height:1.2}.studio{position:relative;display:flex;align-items:center;min-height:560px;padding:64px var(--gutter)}.studio__card{position:relative;max-width:460px;padding:36px 32px;background:var(--clay);border-radius:44% 56% 48% 52%/10% 12% 8% 10%}@media(min-width:900px){.studio{padding-left:max(var(--gutter),calc((100vw - var(--max)) / 2 + var(--gutter)))}}.studio__title{font-family:var(--font-display);font-size:2.5rem;line-height:1;color:var(--red);margin-bottom:16px}.studio__meta{margin-top:16px;font-weight:600}.footer{background:var(--clay);border-top:2px solid var(--dust);padding:40px var(--gutter) 0;overflow:hidden}.footer__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;max-width:var(--max);margin:0 auto}.footer__links{display:flex;flex-wrap:wrap;gap:8px 24px}.footer__links a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration-thickness:2px;text-underline-offset:4px}.footer__note{color:#5a463c;font-size:.9375rem;align-self:center}.footer__wordmark{margin:24px 0 0;padding-bottom:.08em;font-family:var(--font-display);font-size:22vw;line-height:1;color:var(--red);text-align:center;white-space:nowrap}.booking{max-width:var(--max);margin:0 auto;padding:32px var(--gutter) 72px}.booking__back{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration-thickness:2px;text-underline-offset:4px}.booking__title{margin:8px 0 32px;font-family:var(--font-display);font-size:clamp(2.5rem,8vw,5rem);line-height:.95;color:var(--red)}.booking__title:focus{outline:none}.booking__layout{display:grid;gap:40px}@media(min-width:900px){.booking__layout{grid-template-columns:1.4fr 1fr;align-items:start;gap:56px}.booking__summary{position:sticky;top:24px}}.booking__form{display:grid;gap:28px}.field{margin:0;padding:0;border:0;min-width:0}.field__label{display:block;margin-bottom:10px;padding:0;font-size:1.125rem;font-weight:700}.field__hint{margin-top:8px;color:#5a463c;font-size:.9375rem}.field__error{margin-top:8px;color:var(--red);font-weight:600;font-size:.9375rem}.choices{display:flex;flex-wrap:wrap;gap:8px}.choice{position:relative;display:flex;cursor:pointer}.choice input{position:absolute;opacity:0;inset:0;margin:0;cursor:inherit}.choice>span:first-of-type,.choice--session{border:2px solid var(--ink);border-radius:999px}.choice>span:first-of-type{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;font-weight:600}.choice:has(input:checked)>span:first-of-type{background:var(--red);border-color:var(--red);color:var(--clay)}.choice:has(input:focus-visible)>span:first-of-type{outline:3px solid var(--green);outline-offset:3px}.choices--sessions{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.choice--session{flex-direction:column;padding:12px 16px;border-radius:var(--radius-md);line-height:1.3}.choice--session>span:first-of-type{display:block;min-height:0;padding:0;border:0;border-radius:0;background:none}.choice__day{font-weight:700}.choice__time{font-size:1.25rem;font-weight:700}.choice__spots{font-size:.875rem;color:#5a463c}.choice--session:has(input:checked){background:var(--red);border-color:var(--red);color:var(--clay)}.choice--session:has(input:checked)>span{background:none;color:var(--clay)}.choice--session:has(input:focus-visible){outline:3px solid var(--green);outline-offset:3px}.choice--session:has(input:focus-visible)>span:first-of-type{outline:none}.choice--full{border-color:var(--dust);color:#8a776a;cursor:not-allowed}.choice--full .choice__time{text-decoration:line-through}.stepper{display:flex;align-items:center;gap:12px}.stepper__btn{width:48px;padding:0;font-size:1.375rem}.stepper__btn:disabled{opacity:.35;cursor:not-allowed}.stepper__value{min-width:2ch;font-size:1.5rem;font-weight:700;text-align:center}.input{width:100%;min-height:52px;padding:0 16px;border:2px solid var(--ink);border-radius:16px;background:#fffaf0;color:var(--ink);font:inherit}.input::placeholder{color:#8a776a}.input:focus-visible{outline:3px solid var(--green);outline-offset:2px}.input[aria-invalid=true]{border-color:var(--red)}.booking__submit{justify-self:start}.booking__demo{color:#5a463c;font-size:.9375rem}.summary{margin:20px 0 0}.summary div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:2px solid var(--dust)}.summary dt{font-weight:600}.summary dd{margin:0;text-align:right}.summary__total{font-size:1.25rem;font-weight:700;border-bottom:0!important}.booked{position:relative;max-width:720px;padding:48px 0 24px}.booked__sticker{transform:rotate(-8deg);margin-bottom:24px}.booked__lede{font-size:1.25rem;max-width:40ch}.booked__note{margin-top:12px;color:#5a463c}.footer__row{position:relative;z-index:1}.footer__credit{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.vg-link{gap:10px;border-color:var(--ink);color:var(--ink);background:linear-gradient(var(--ink),var(--ink)) no-repeat left / 0% 100%;transition:transform .42s var(--spring),background-size .36s var(--ease-out),color .2s ease}.vg-link:hover{background-size:100% 100%;color:var(--clay)}.vg-link__logo{width:22px;height:20px;fill:none;stroke:currentColor;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;transition:transform .6s var(--spring)}.vg-link:hover .vg-link__logo{transform:rotate(-12deg) scale(1.15)}.footer__letter{display:inline-block;transition:transform .5s var(--spring)}.footer__letter:hover{transform:translateY(-14%) rotate(-4deg);transition-duration:.22s}.hero__word{display:inline-block;animation:word-land .9s var(--ease-out) both;animation-delay:calc(var(--i) * .11s);transform-origin:50% 100%}@keyframes word-land{0%{opacity:0;transform:translateY(-60%) scale(.9,1.15)}55%{opacity:1;transform:translateY(0) scale(1.12,.86)}75%{transform:translateY(-4%) scale(.97,1.04)}to{transform:none}}.hero__lede,.hero__actions{animation:rise .7s var(--ease-out) both}.hero__lede{animation-delay:.42s}.hero__actions{animation-delay:.54s}.hero__media .photo--hero{animation:photo-in 1s var(--ease-out) .15s both}.hero__sticker{animation:sticker-slap .7s var(--spring) .9s backwards}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes photo-in{0%{opacity:0;transform:scale(.94) rotate(2deg)}to{opacity:1;transform:none}}@keyframes sticker-slap{0%{opacity:0;transform:scale(1.8) rotate(-40deg)}to{opacity:1;transform:rotate(-10deg)}}.sticker{transition:transform .6s var(--spring)}.hero__sticker:hover{transform:rotate(6deg) scale(1.08)}.sticker-tag{transition:transform .5s var(--spring),background-color .2s ease,color .2s ease}.sticker-tag:hover{transform:rotate(0) scale(1.08);background:var(--clay);color:var(--red)}.class-card .photo img{transition:transform .7s var(--ease-out)}.class-card:hover .photo img{transform:scale(1.07) rotate(-1deg)}.class-card{transition:transform .5s var(--spring)}.class-card:hover{transform:translateY(-6px)}.step{transition:transform .5s var(--spring),border-color .2s ease}.step:hover{transform:translateY(-4px) rotate(-.6deg);border-color:var(--red)}.reveal-ready [data-reveal]{opacity:0;transform:translateY(32px);transition:opacity .7s var(--ease-out),transform .8s var(--ease-out);transition-delay:calc(var(--i, 0) * .12s)}.reveal-ready [data-reveal].is-in{opacity:1;transform:none}.reveal-ready .sticker-tag[data-reveal]{transform:scale(1.5) rotate(calc(var(--r) * 4))}.reveal-ready .sticker-tag[data-reveal].is-in{transform:rotate(var(--r));transition:opacity .3s ease,transform .6s var(--spring);transition-delay:calc(var(--i) * .14s)}.reveal-ready .sticker-tag[data-reveal].is-in:hover{transform:rotate(0) scale(1.08);transition-delay:0ms}.reveal-ready .footer__wordmark[data-reveal]{opacity:1;transform:none}.reveal-ready .footer__wordmark[data-reveal] .footer__letter{transform:translateY(60%);opacity:0}.reveal-ready .footer__wordmark[data-reveal].is-in .footer__letter{opacity:1;transform:none;animation:letter-pop .8s var(--spring) backwards;animation-delay:calc(var(--i) * 60ms)}.reveal-ready .footer__wordmark[data-reveal].is-in .footer__letter:hover{transform:translateY(-14%) rotate(-4deg)}@keyframes letter-pop{0%{opacity:0;transform:translateY(60%) scale(.9,1.2)}to{opacity:1;transform:none}}.reveal-ready [data-reveal].is-in.class-card:hover{transform:translateY(-6px);transition-delay:0ms}.reveal-ready [data-reveal].is-in.step:hover{transform:translateY(-4px) rotate(-.6deg);transition-delay:0ms}.choice:has(input:checked)>span:first-of-type,.choice--session:has(input:checked){animation:pick .42s var(--spring)}@keyframes pick{0%{transform:scale(.92)}to{transform:none}}.choice--session{transition:transform .4s var(--spring),border-color .16s ease}.choice--session:not(.choice--full):hover{transform:translateY(-3px)}.stepper__value,.summary__amount{display:inline-block;animation:bump .38s var(--spring)}@keyframes bump{0%{transform:translateY(-30%) scale(1.25)}to{transform:none}}.field__error{animation:nudge .36s ease}@keyframes nudge{0%,to{transform:none}25%{transform:translate(-5px)}60%{transform:translate(4px)}}.booking__title,.booking__layout{animation:rise .7s var(--ease-out) both}.booking__layout{animation-delay:.12s}.booked__sticker{display:inline-grid;animation:sticker-slap-small .7s var(--spring) .2s backwards}@keyframes sticker-slap-small{0%{opacity:0;transform:scale(1.8) rotate(-40deg)}to{opacity:1;transform:rotate(-8deg)}}.booked__lede,.booked__note,.booked .hero__actions{animation:rise .7s var(--ease-out) both;animation-delay:.35s}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker__track{animation:none}.pill{transition:none}*,*:before,*:after{animation:none!important}.pill:hover,.pill:active,.class-card:hover,.step:hover,.sticker:hover,.sticker-tag:hover,.footer__letter:hover,.choice--session:hover,.class-card:hover .photo img,.vg-link:hover .vg-link__logo{transform:none!important}.hero__sticker{transform:rotate(-10deg)!important}.reveal-ready [data-reveal]{transform:none!important;transition:opacity .3s ease}.reveal-ready .sticker-tag[data-reveal]{transform:rotate(var(--r))!important}.reveal-ready .footer__wordmark[data-reveal] .footer__letter{transform:none;opacity:1}}
