.page[data-astro-cid-o5xiawde]{color:var(--color-ink)}.menu-page__hero[data-astro-cid-o5xiawde]{padding:clamp(7rem,14vw,11rem) clamp(1.5rem,4vw,4rem) clamp(3rem,6vw,5rem);background:var(--color-paper);position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1320px;margin:0 auto}@media(max-width:900px){.menu-page__hero[data-astro-cid-o5xiawde]{grid-template-columns:1fr}}.menu-page__hero-img[data-astro-cid-o5xiawde]{border-radius:14px;overflow:hidden;box-shadow:0 30px 60px #140e0a2e;transform:rotate(1.5deg)}.menu-page__hero-img[data-astro-cid-o5xiawde] .photo{border-radius:14px}.menu-page__hero[data-astro-cid-o5xiawde] .eyebrow[data-astro-cid-o5xiawde]{color:var(--color-ink-mute);margin-bottom:1.25rem}.menu-page__title[data-astro-cid-o5xiawde]{font-family:var(--font-display);font-weight:380;font-size:clamp(3rem,9vw,7.5rem);line-height:.86;letter-spacing:0;margin:0 0 1.5rem;font-variation-settings:"opsz" 144,"SOFT" 30,"WONK" 0;text-wrap:balance}@media(max-width:520px){.menu-page__title[data-astro-cid-o5xiawde]{font-size:clamp(2.8rem,16vw,4.6rem);line-height:1}}.menu-page__title[data-astro-cid-o5xiawde] em[data-astro-cid-o5xiawde]{display:inline-block;font-style:italic;color:var(--color-coral-700);font-variation-settings:"opsz" 144,"SOFT" 70,"WONK" 0}.menu-page__lead[data-astro-cid-o5xiawde]{max-width:56ch;font-size:1.05rem;line-height:1.7;color:var(--color-ink-soft);margin:0 0 2rem;text-wrap:pretty}.menu-page__toc-wrap[data-astro-cid-o5xiawde]{position:sticky;top:100px;z-index:10;background:color-mix(in srgb,var(--color-bone-100) 96%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-ink) 12%,transparent);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3)}@media(max-width:1024px){.menu-page__toc-wrap[data-astro-cid-o5xiawde]{top:80px}}@media(hover:none)and (pointer:coarse){.menu-page__toc-wrap[data-astro-cid-o5xiawde]{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--color-bone-100)}}.menu-page__toc[data-astro-cid-o5xiawde]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;padding:2.4rem clamp(1.5rem,4vw,4rem) .85rem}@media(max-width:1024px){.menu-page__toc[data-astro-cid-o5xiawde]{grid-template-columns:repeat(4,1fr);padding-top:1.6rem}}@media(max-width:720px){.menu-page__toc[data-astro-cid-o5xiawde]{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:max-content;gap:.25rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scroll-padding-inline:clamp(1.5rem,4vw,4rem);scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none}.menu-page__toc[data-astro-cid-o5xiawde]::-webkit-scrollbar{display:none}.menu-page__toc[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde]{scroll-snap-align:start}.menu-page__toc-wrap[data-astro-cid-o5xiawde]:after{content:"";position:absolute;top:0;bottom:0;right:0;width:clamp(1.25rem,6vw,2.5rem);pointer-events:none;background:linear-gradient(to right,transparent,color-mix(in srgb,var(--color-bone-100) 96%,transparent))}}.menu-page__toc[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde]{display:block;text-decoration:none;color:var(--color-ink-soft);padding:.55rem .75rem;border-radius:8px;transition:background .3s var(--ease-out-expo),color .3s}.menu-page__toc[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde]:hover,.menu-page__toc[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde].is-current{background:var(--color-bone-200);color:var(--color-ink)}.menu-page__toc[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde].is-current .menu-page__toc-num[data-astro-cid-o5xiawde],.menu-page__toc[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde].is-current .menu-page__toc-en[data-astro-cid-o5xiawde]{color:var(--color-coral-700)}.menu-page__toc-num[data-astro-cid-o5xiawde]{display:block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.16em;color:var(--color-ink-mute)}.menu-page__toc-title[data-astro-cid-o5xiawde]{display:block;font-family:var(--font-display);font-weight:380;font-size:1rem;margin-top:.15rem}.menu-page__toc-en[data-astro-cid-o5xiawde]{display:block;font-size:.74rem;color:var(--color-ink-mute);margin-top:.05rem}.course-section[data-astro-cid-o5xiawde]{padding:clamp(2rem,4.5vw,3.5rem) clamp(1.5rem,4vw,4rem);border-bottom:1px dashed color-mix(in srgb,var(--color-ink) 14%,transparent);max-width:1180px;margin:0 auto;scroll-margin-top:270px;display:flow-root}@media(max-width:1024px){.course-section[data-astro-cid-o5xiawde]{scroll-margin-top:230px}}@media(max-width:720px){.course-section[data-astro-cid-o5xiawde]{scroll-margin-top:200px}}.course-section--bar[data-astro-cid-o5xiawde]{background:var(--color-bone-50);max-width:none;padding-left:clamp(1.5rem,4vw,4rem);padding-right:clamp(1.5rem,4vw,4rem)}.bar__h[data-astro-cid-o5xiawde]{scroll-margin-top:270px}@media(max-width:1024px){.bar__h[data-astro-cid-o5xiawde]{scroll-margin-top:230px}}@media(max-width:720px){.bar__h[data-astro-cid-o5xiawde]{scroll-margin-top:200px}}.course-section__head[data-astro-cid-o5xiawde]{display:grid;grid-template-columns:auto 1fr 1.4fr;gap:clamp(1rem,3vw,3rem);align-items:end;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid color-mix(in srgb,var(--color-ink) 14%,transparent)}@media(max-width:720px){.course-section__head[data-astro-cid-o5xiawde]{grid-template-columns:auto 1fr;gap:1rem}.course-section__blurb[data-astro-cid-o5xiawde]{grid-column:1 / -1}}.course-section__num[data-astro-cid-o5xiawde]{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.18em;color:var(--color-ink-mute);align-self:end;padding-bottom:.35rem}.course-section__title[data-astro-cid-o5xiawde]{font-family:var(--font-display);font-weight:380;font-size:clamp(2rem,4vw,3.4rem);line-height:.95;margin:0;letter-spacing:0;font-variation-settings:"opsz" 60,"SOFT" 25,"WONK" 0}.course-section__sub[data-astro-cid-o5xiawde]{margin:.25rem 0 0;font-style:italic;color:var(--color-coral-700);font-family:var(--font-display);font-size:1rem}.course-section__blurb[data-astro-cid-o5xiawde]{margin:0;color:var(--color-ink-soft);line-height:1.6;font-size:.95rem;max-width:50ch;text-wrap:pretty}.course-section__figure[data-astro-cid-o5xiawde]{float:right;width:clamp(220px,32%,360px);margin:0 0 1.25rem 2rem;border-radius:14px;overflow:hidden;box-shadow:0 24px 48px #140e0a29;transform:rotate(-1deg)}.course-section__figure--left[data-astro-cid-o5xiawde]{float:left;margin:0 2rem 1.25rem 0;transform:rotate(1deg)}.course-section__figure[data-astro-cid-o5xiawde] .photo{border-radius:14px}@media(max-width:720px){.course-section__figure[data-astro-cid-o5xiawde],.course-section__figure--left[data-astro-cid-o5xiawde]{float:none;width:100%;margin:0 0 1.5rem;transform:none}}.course-section__list[data-astro-cid-o5xiawde]{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 3rem;grid-auto-flow:row dense;align-content:start}@media(max-width:720px){.course-section__list[data-astro-cid-o5xiawde]{grid-template-columns:1fr}}.row[data-astro-cid-o5xiawde]{padding:.4rem 0}.row__main[data-astro-cid-o5xiawde]{display:flex;align-items:baseline;gap:.5rem}.row__name[data-astro-cid-o5xiawde]{font-family:var(--font-display);font-weight:380;font-size:1.1rem;margin:0;letter-spacing:0;font-variation-settings:"opsz" 60,"SOFT" 25,"WONK" 0}.row__lead[data-astro-cid-o5xiawde]{flex:1;height:1px;background-image:linear-gradient(to right,color-mix(in srgb,var(--color-ink) 25%,transparent) 0 50%,transparent 50% 100%);background-size:6px 1px;margin:0 .5rem .3rem}.row__price[data-astro-cid-o5xiawde]{font-family:var(--font-mono);font-size:.85rem;color:var(--color-ink)}.row__note[data-astro-cid-o5xiawde],.row__desc[data-astro-cid-o5xiawde]{margin:.2rem 0 0;font-size:.85rem;line-height:1.5;color:var(--color-ink-mute);font-style:italic}.row__desc[data-astro-cid-o5xiawde]{font-style:normal}.row__tags[data-astro-cid-o5xiawde]{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.4rem}.row__tag[data-astro-cid-o5xiawde]{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;padding:.18rem .5rem;border-radius:999px;background:var(--color-bone-200);color:var(--color-ink-soft)}.row__tag--house-favourite[data-astro-cid-o5xiawde]{background:var(--color-coral-500);color:var(--color-bone-100)}.bar__subnav[data-astro-cid-o5xiawde]{display:flex;flex-wrap:wrap;gap:.4rem .6rem;margin:0 0 2rem;padding:.6rem 0;border-top:1px solid color-mix(in srgb,var(--color-ink) 12%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-ink) 12%,transparent)}.bar__subnav[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde]{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-soft);text-decoration:none;padding:.4rem .75rem;border-radius:999px;background:var(--color-bone-200);transition:background .3s var(--ease-out-expo),color .3s}.bar__subnav[data-astro-cid-o5xiawde] a[data-astro-cid-o5xiawde]:hover{background:var(--color-coral-500);color:var(--color-bone-100)}.bar__h[data-astro-cid-o5xiawde]{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-ink-mute);margin:2.5rem 0 1.25rem;padding-bottom:.5rem;border-bottom:1px solid color-mix(in srgb,var(--color-ink) 14%,transparent);clear:both}.bar__h[data-astro-cid-o5xiawde]:first-of-type{margin-top:0}.bar__figure[data-astro-cid-o5xiawde]{float:right;width:clamp(220px,30%,320px);margin:0 0 1.25rem 2rem;border-radius:14px;overflow:hidden;box-shadow:0 24px 48px #140e0a2e;transform:rotate(1.2deg)}.bar__figure[data-astro-cid-o5xiawde] .photo{border-radius:14px}@media(max-width:720px){.bar__figure[data-astro-cid-o5xiawde]{float:none;width:100%;margin:0 0 1.5rem;transform:none}}.btn[data-astro-cid-o5xiawde]{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;text-decoration:none;font-weight:500;transition:background .4s var(--ease-out-expo),color .4s var(--ease-out-expo),transform .4s var(--ease-out-expo)}.btn--primary[data-astro-cid-o5xiawde]{background:var(--color-ink);color:var(--color-bone-100)}.btn--primary[data-astro-cid-o5xiawde]:hover{background:var(--color-coral-500);transform:translateY(-2px)}
