/* Deep olive, burgundy and cream, with saffron glass actions and selective gold emphasis. */
:root {
  --bg: #141D16;
  --surface: #202C22;
  --wine: #4B1D2B;
  --wine-soft: #958F7E;
  --cream: #E9E1D2;
  --champagne: #D8CBB5;
  --ink: #20281E;
  --accent: #4B1D2B;
  --accent-hover: #612B3A;
  --saffron: #E5B744;
  --saffron-hover: #F0C75C;
  --header-height: 5.5rem;
  --type-display: clamp(3.5rem, 7.2vw, 6rem);
  --type-heading: clamp(2.8rem, 4.6vw, 4.5rem);
  --space-section: clamp(4rem, 7vw, 6.5rem);
}
body { background:var(--bg); color:var(--cream); }
html { scrollbar-color:var(--wine-soft) var(--bg); scroll-padding-top:calc(var(--header-height) + 1.5rem); scroll-behavior:auto; }
::selection { background:var(--saffron); color:var(--bg); }
.wrap { width:min(calc(100% - 3rem),78rem); }
h1,h2,h3 { letter-spacing:-.025em; }
.site-header.wrap { position:sticky; top:0; left:auto; transform:none; z-index:30; width:100%; min-height:var(--header-height); padding:1rem max(1.5rem,calc((100% - 78rem)/2)); gap:2rem; background:color-mix(in srgb,var(--bg) 88%,transparent); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); border-bottom:1px solid color-mix(in srgb,var(--cream) 16%,transparent); }
.site-header::after { display:none; }
.skip-link { z-index:40; }
.site-header .wordmark { font-size:2rem; }
.site-header .wordmark span { font-size:1.3rem; }
.wordmark.brand-lockup { flex-direction:row; align-items:center; min-width:0; flex-shrink:0; }
.brand-lockup .brand-logo { display:block; width:15rem; height:auto; background:transparent; }
.site-header .brand-lockup .brand-logo { width:12.5rem; }
.site-footer .brand-lockup .brand-logo { width:17rem; }
.site-header nav { gap:2rem; }
.site-header nav>a { font-size:.82rem; }
.site-header nav a[aria-current="page"],.site-header nav a:hover { text-decoration-color:var(--cream); }
.button { border-radius:2px; color:var(--saffron-hover); min-height:3.5rem; padding:1rem 1.5rem; gap:2.25rem; font-size:.9375rem; font-weight:500; line-height:1.4; letter-spacing:.015em; background-color:color-mix(in srgb,var(--bg) 88%,transparent); border-color:color-mix(in srgb,var(--saffron) 62%,transparent); background-image:linear-gradient(135deg,color-mix(in srgb,var(--saffron) 14%,transparent),color-mix(in srgb,var(--saffron) 3%,transparent) 65%); backdrop-filter:blur(16px) saturate(115%); -webkit-backdrop-filter:blur(16px) saturate(115%); box-shadow:inset 0 1px 0 color-mix(in srgb,var(--saffron-hover) 13%,transparent); transition:background-color .24s cubic-bezier(.16,1,.3,1),border-color .24s,translate .24s cubic-bezier(.16,1,.3,1); }
.button:hover { background-color:color-mix(in srgb,var(--bg) 96%,transparent); border-color:var(--saffron-hover); translate:0 -1px; }
.button:active { background-color:var(--bg); translate:0 0; }
.button:disabled { background:var(--surface); color:var(--cream); border-color:var(--wine-soft); box-shadow:none; opacity:.55; translate:none; }
.button-small { min-height:3rem; padding:.75rem 1.125rem; font-size:.8125rem; gap:1.75rem; }
.text-link,.quiet-link { color:var(--saffron-hover); text-decoration-color:currentColor; }
.button svg,.text-link svg,.service-card .ui-icon { transition:translate .28s cubic-bezier(.16,1,.3,1); }
.button:hover svg,.text-link:hover svg { translate:2px 0; }
.menu-toggle { color:var(--saffron-hover); background:color-mix(in srgb,var(--saffron) 5%,transparent); border-color:color-mix(in srgb,var(--saffron) 62%,transparent); border-radius:2px; }
.menu-toggle:hover { border-color:var(--saffron-hover); }
.site-header nav.is-open { background:var(--bg); border-color:var(--wine-soft); }
.home-intro { position:relative; min-height:min(50rem,calc(100svh - var(--header-height))); display:flex; align-items:center; isolation:isolate; overflow:hidden; }
.home-intro-image,.home-intro-shade { position:absolute; inset:0; z-index:-1; }
.home-intro-image img { width:100%; height:100%; object-fit:cover; object-position:70% 58%; animation:table-arrival 1.8s cubic-bezier(.16,1,.3,1) both; }
.home-intro-shade { background:linear-gradient(90deg,rgba(16,19,16,.86),rgba(16,19,16,.60) 35%,rgba(16,19,16,.08) 78%),linear-gradient(0deg,rgba(16,19,16,.4),transparent 50%); }
.home-intro-copy { padding-block:6rem; }
.home-intro h1 { max-width:9ch; line-height:.97; font-size:var(--type-display); }
.home-intro h1 i { font-weight:400; color:var(--saffron-hover); }
.home-intro-copy p { font-size:1.1rem; line-height:1.6; margin-top:1.75rem; max-width:30ch; }
.home-intro-copy .button { margin-top:2rem; min-width:14rem; }
.atmosphere h1 i { color:var(--saffron-hover); }
@keyframes table-arrival { from { transform:scale(1.065); clip-path:inset(0 0 0 6%); } to { transform:scale(1); clip-path:inset(0); } }
.atmosphere { min-height:32rem; padding-block:5.5rem; }
.atmosphere .atmosphere-images { mask-image:none; -webkit-mask-image:none; }
.atmosphere .atmosphere-image { filter:none; opacity:1; }
.atmosphere .atmosphere-images::after { display:none; }
.atmosphere .atmosphere-shade { opacity:1; background:linear-gradient(90deg,rgba(16,19,16,.86),rgba(16,19,16,.55) 42%,rgba(16,19,16,.14) 80%); }
.atmosphere::before,.atmosphere::after { display:none; }
.atmosphere .atmosphere-copy { text-align:left; align-items:flex-start; }
.atmosphere .atmosphere-copy h1 { text-align:left; max-width:14ch; margin:0; line-height:1.04; }
.atmosphere .atmosphere-copy p { margin-left:0; text-align:left; max-width:38ch; }
.atmosphere .atmosphere-copy .button { margin-left:0; }
.section-heading { margin-bottom:2.75rem; align-items:end; }
.section-heading>p { max-width:44ch; }
.experience-section { background:var(--bg); color:var(--cream); }
.experience-section h2,.experience-section h3 { color:var(--cream); }
.experience-section :focus-visible { outline-color:var(--cream); }
.experience-section .section-heading h2 { max-width:15ch; }
.category-tabs { border-bottom:1px solid color-mix(in srgb,var(--cream) 23%,transparent); gap:2rem; margin-bottom:2.25rem; }
.category-tabs button { border:0; border-radius:0; padding:.75rem 0; color:var(--cream); background:none; box-shadow:none; backdrop-filter:none; font-size:.82rem; font-weight:400; border-bottom:2px solid transparent; }
.category-tabs button[aria-selected="true"] { color:var(--saffron-hover); background:none; box-shadow:none; border-bottom-color:var(--saffron); }
.service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; align-items:stretch; }
.service-card { border-bottom:0; display:flex; flex-direction:column; gap:1rem; }
.service-card figure { overflow:hidden; border-radius:2px; }
.service-card .service-picture { display:block; aspect-ratio:4/3; height:auto; margin-bottom:0; object-position:50% 50%; }
.service-card:nth-child(n) { padding-top:0; }
.service-picture[data-photo="weekly-fish"] { object-position:50% 100%; }
.service-picture[data-photo="salmon-toast"] { object-position:50% 44%; }
.service-picture[data-photo="plated-starter"] { object-position:50% 58%; }
.service-picture[data-photo="live-fire-bbq"] { object-position:50% 55%; }
.service-picture[data-photo="lobster-service"] { object-position:50% 42%; }
.service-picture[data-photo="knife-preparation"] { object-position:55% 48%; }
.service-card h3 { font-size:2.1rem; margin-bottom:.55rem; }
.service-card p { font-size:.9375rem; line-height:1.7; max-width:42ch; }
.service-card-bottom { border-top:1px solid color-mix(in srgb,var(--cream) 23%,transparent); padding-top:1rem; margin-top:auto; color:var(--cream); }
.service-card-bottom>span:first-child { font-size:.8125rem; }
.round-arrow { border:none; background:none; color:var(--saffron-hover); }
.section-note { border-top:1px solid color-mix(in srgb,var(--cream) 23%,transparent); padding-top:1.25rem; }
.kitchen-gallery { position:relative; padding-bottom:4.5rem; }
.kitchen-gallery .section-heading { max-width:66rem; }
.gallery-controls { display:flex; gap:.6rem; position:absolute; top:var(--space-section); right:0; }
.gallery-controls button { display:grid; place-items:center; min-width:44px; height:44px; border:1px solid color-mix(in srgb,var(--saffron) 62%,transparent); background:transparent; border-radius:50%; color:var(--saffron-hover); }
.gallery-controls button:hover { background:color-mix(in srgb,var(--saffron) 8%,transparent); border-color:var(--saffron-hover); }
.gallery-controls button:disabled { opacity:.35; cursor:default; }
.gallery-previous svg { rotate:180deg; }
.food-gallery { display:flex; gap:1.5rem; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:var(--wine-soft) transparent; padding-bottom:1.5rem; align-items:start; }
.food-gallery figure { flex:0 0 34%; width:34%; margin:0; scroll-snap-align:start; }
.food-gallery img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; object-position:50% 50%; }
.food-gallery figure:nth-child(n) { margin-top:0; }
.food-gallery figure:nth-child(3n) { flex-basis:34%; width:34%; }
.food-gallery img[data-photo="chef-plating"] { object-position:50% 80%; }
.food-gallery img[data-photo="beef-service"] { object-position:55% 75%; }
.food-gallery img[data-photo="bbq-preparation"] { object-position:50% 80%; }
.food-gallery img[data-photo="avocado-prawns"] { object-position:50% 65%; }
#sample-menus { background:#24151C; color:var(--cream); padding-top:var(--space-section); border-top:1px solid color-mix(in srgb,var(--cream) 16%,transparent); }
.menu-layout { align-items:start; grid-template-columns:.8fr 1.2fr; gap:6rem; }
.menu-intro { position:sticky; top:calc(var(--header-height) + 2rem); }
.menu-intro h2 { max-width:13ch; }
.menu-intro>p { max-width:38ch; }
.menu-tabs { margin-top:2rem; }
.menu-tabs [role="tab"],.menu-tabs [role="tab"][aria-selected="true"] { color:var(--cream); font:400 1.75rem/1.3 var(--serif); border:0; padding:.5rem 0; background:none; box-shadow:none; }
.menu-tabs [role="tab"][aria-selected="true"] { color:var(--saffron-hover); text-decoration:underline; text-underline-offset:.35em; text-decoration-thickness:1px; }
.menu-sheet { padding:3.5rem 2.25rem; background:var(--cream); color:var(--ink); box-shadow:none; border:0; }
.menu-sheet:focus-visible { outline-color:var(--champagne); }
.menu-sheet .menu-sheet-header { display:block; text-align:center; padding-bottom:1rem; border:0; }
.menu-sheet .menu-sheet-header h3 { font-size:3rem; color:var(--wine); }
.menu-sheet .menu-sheet-header span { display:block; font-size:.74rem; margin-top:.5rem; }
.menu-sheet .menu-course { display:block; text-align:center; padding:1.25rem 0; border:0; }
.menu-sheet .menu-course h4 { display:flex; align-items:center; justify-content:center; gap:1rem; color:var(--wine); font:600 .67rem/1.5 var(--sans); text-transform:uppercase; letter-spacing:.13em; margin:0 0 .9rem; }
.menu-sheet .menu-course h4::before,.menu-sheet .menu-course h4::after { display:block; content:""; flex:0 0 2rem; height:1px; background:var(--wine-soft); }
.menu-sheet .menu-course ul { margin:0; padding:0; list-style:none; }
.menu-sheet .menu-course li { font:400 1.35rem/1.35 var(--serif); margin:.5rem 0; text-align:center; }
#sample-menus :focus-visible { outline-color:var(--champagne); }
#sample-menus .menu-sheet :focus-visible { outline-color:var(--wine); }
.menu-sheet>.button,.menu-sheet>.text-link { margin:1.5rem auto 0; display:flex; width:fit-content; }
.menu-sheet .button { color:var(--saffron-hover); background-color:var(--bg); border-color:var(--wine); }
.menu-sheet .text-link { color:var(--wine); }
.team-story { display:grid; grid-template-columns:1.15fr 1fr; gap:5rem; align-items:start; }
.team-story-photo { padding-top:0; }
.team-story-photo img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; object-position:50% 50%; }
.team-story-copy>p { margin-top:1.25rem; }
.team-story-copy>.text-link { margin-top:.75rem; }
.booking-inline { margin-top:3rem; border-top:1px solid var(--wine-soft); padding-top:2rem; }
.booking-inline>h3 { font-size:2rem; margin-bottom:1.5rem; }
.booking-inline .booking-steps { display:block; }
.booking-inline .booking-steps li { display:block; border:0; padding:0; margin-top:1.5rem; }
.booking-inline .booking-steps h3 { font:400 1.8rem/1.2 var(--serif); letter-spacing:-.01em; }
.booking-inline .booking-steps h3::before { color:var(--saffron-hover); }
.booking-inline .booking-steps p { font-size:1rem; margin-top:.65rem; }
.planner-title { font:400 clamp(2rem,3vw,3.25rem)/1.15 var(--serif); letter-spacing:-.02em; }
.calculator-section { background:var(--bg); padding-top:var(--space-section); }
.calculator-section>.wrap { width:min(calc(100% - 3rem),78rem); }
.meal-planner { border-top:1px solid var(--wine-soft); }
.planner-heading { padding-block:2rem .5rem; }
.planner-heading p { color:var(--saffron-hover); margin-top:.75rem; }
.planner-content { padding-bottom:3rem; }
.planner-content>.wrap { width:100%; }
.planner-content .calculator-intro { display:none; }
.planner-content .calculator-layout { padding-top:1.5rem; }
.planner-content .calculator-summary { background:var(--surface); padding:2rem; border-radius:2px; border:0; }
.calculator-summary h3 { color:var(--cream); font-size:1.75rem; margin-bottom:1.25rem; }
.calculator-total { color:var(--saffron-hover); }
.calculator-copy,.copy-button { color:var(--saffron-hover); }
.dialog-close { color:var(--saffron-hover); border-color:color-mix(in srgb,var(--saffron) 62%,transparent); }
#calc-addon-options input { accent-color:var(--saffron); }
.calculator-summary .fine,.calculator-summary .small-note { color:var(--cream); }
input,select,textarea { border-radius:2px; border-color:color-mix(in srgb,var(--cream) 35%,transparent); background:var(--surface); color:var(--cream); caret-color:var(--cream); color-scheme:dark; }
select option { background:var(--surface); color:var(--cream); }
input:focus,select:focus,textarea:focus { outline-color:var(--saffron); }
.contact-section { background:#1B271E; color:var(--cream); padding-block:5.5rem; }
.contact-section :focus-visible { outline-color:var(--cream); }
.contact-layout { gap:6rem; grid-template-columns:.85fr 1.15fr; }
.contact-aside h2 { max-width:12ch; }
.contact-aside h2 { color:var(--cream); }
.contact-aside p { max-width:35ch; }
.contact-aside .text-link { color:var(--saffron-hover); }
.contact-form input,.contact-form select,.contact-form textarea { background:rgba(0,0,0,.12); border-color:color-mix(in srgb,var(--cream) 35%,transparent); }
input::placeholder,textarea::placeholder { color:#B9BEAF; opacity:1; }
.menu-sheet .button:hover { background-color:var(--bg); border-color:var(--wine); }
.inquiry-extra { border-color:color-mix(in srgb,var(--wine) 30%,transparent); }
.inquiry-context { color:var(--cream); border-color:var(--wine-soft); }
.draft-review { border-color:var(--wine-soft); }
.editorial-pair { gap:5rem; grid-template-columns:1.15fr 1fr; padding-block:var(--space-section); }
.editorial-pair .editorial-photo { aspect-ratio:4/5; max-height:42rem; object-position:50% 40%; }
.editorial-pair .editorial-copy { padding-block:2rem; }
.editorial-copy h2 { font-size:clamp(3rem,4.5vw,4.5rem); }
.editorial-copy p { max-width:45ch; }
.role-line { color:var(--saffron-hover); margin-top:0; letter-spacing:.03em; }
body[data-page="chefs"] .editorial-pair { grid-template-columns:1.45fr 1fr; }
body[data-page="chefs"] .editorial-photo { aspect-ratio:4/3; height:auto; }
body[data-page="retreat-catering"] .editorial-pair { grid-template-columns:1fr 1.1fr; }
body[data-page="retreat-catering"] .editorial-photo { aspect-ratio:3/4; height:100%; max-height:47rem; }
.retreat-rates { margin-block:2rem; padding:1.75rem; color:var(--ink); background:var(--cream); }
.retreat-rates h3 { font-size:1.75rem; }
.retreat-rates dl { margin:1rem 0; }
.retreat-rates dl>div { display:flex; justify-content:space-between; gap:1.5rem; border-bottom:1px solid color-mix(in srgb,var(--wine) 20%,transparent); padding:.65rem 0; font-size:.8rem; }
.retreat-rates dd { margin:0; white-space:nowrap; font-variant-numeric:tabular-nums; }
body[data-page="contact"] .atmosphere { min-height:27rem; padding-block:4rem; }
body[data-page="contact"] .contact-section { margin-top:-1px; }
body[data-page="menus"] #services { margin-top:0; }
.experience-hero { min-height:36rem; }
.experience-hero .atmosphere-copy h1 { max-width:15ch; font-size:clamp(3.4rem,6.4vw,5.8rem); }
.experience-hero .atmosphere-copy>p { max-width:42ch; }
.experience-hero .experience-back { display:inline-flex; margin-bottom:1.5rem; }
.experience-hero .experience-starting-rate { color:var(--saffron-hover); font-size:1rem; margin-block:1.25rem; }
.experience-hero .atmosphere-image { object-position:65% 50%; }
.experience-hero img[data-photo="salmon-toast"] { object-position:50% 44%; }
.experience-hero img[data-photo="lobster-service"] { object-position:50% 42%; }
.experience-related { margin-top:3rem; }
.experience-related ul { padding:0; list-style:none; }
.experience-related li { margin-block:.75rem; }
.experience-ending { border-top:1px solid color-mix(in srgb,var(--cream) 18%,transparent); padding-block:3rem var(--space-section); display:flex; justify-content:space-between; align-items:center; gap:2rem; }
.experience-ending h2 { font-size:clamp(2.8rem,4vw,4rem); margin:0; }
@media(max-width:47.99rem) { .experience-ending { display:block; } .experience-ending .button { margin-top:1.5rem; } }
.experience-details { display:grid; grid-template-columns:1.1fr 1fr; align-items:start; gap:clamp(3rem,6vw,6rem); padding-block:var(--space-section); }
.experience-details-copy h2 { max-width:14ch; font-size:clamp(3rem,4.5vw,4.5rem); margin:0 0 1.5rem; }
.experience-details-copy h2 em { color:var(--saffron-hover); font-weight:400; }
.experience-details-copy p { max-width:47ch; }
.experience-details-copy h3 { font-size:2rem; margin:2.5rem 0 1rem; }
.experience-arrangements { padding-left:1.1rem; margin:0 0 1.5rem; }
.experience-arrangements li { padding-left:.25rem; margin-block:.65rem; }
.experience-arrangements li::marker { color:var(--saffron); }
.experience-details-copy .text-link { display:inline-flex; align-items:center; gap:1rem; margin-top:.5rem; }
.experience-details-copy .text-link svg { width:1.25rem; height:1.25rem; }
.experience-rates { min-width:0; padding:2rem; background:var(--surface); border-radius:2px; }
.experience-rates h3 { font-size:2.25rem; margin:0 0 1.5rem; }
.experience-rate-list { margin:0 0 1.5rem; }
.experience-rate-list>div { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:1rem 0; border-top:1px solid color-mix(in srgb,var(--cream) 18%,transparent); font-size:.875rem; line-height:1.6; }
.experience-rate-list dt span { display:block; font-size:.75rem; }
.experience-rate-list dd { margin:0; color:var(--saffron-hover); white-space:nowrap; font-weight:500; font-variant-numeric:tabular-nums; }
.experience-rates .small-note { margin:0 0 1.5rem; }
.experience-rates .button { display:flex; justify-content:space-between; gap:1rem; width:100%; }
@media(max-width:63.99rem) { .experience-details { grid-template-columns:1fr; gap:2.5rem; } .experience-details-copy p { max-width:65ch; } }
@media(max-width:47.99rem) { .experience-rates { padding:1.5rem; } .experience-details-copy h2 { max-width:13ch; } }
@media(max-width:22.49rem) { .experience-rates { padding:1.25rem; } .experience-rate-list>div { gap:.75rem; font-size:.8125rem; } }
body[data-page="menus"] .editorial-pair { padding-top:var(--space-section); }
.site-footer { padding-block:3rem 1.75rem; border-top:0; gap:2rem; }
.site-footer .wordmark { font-size:2.5rem; }
.site-footer .wordmark span { font-size:1.5rem; }
.footer-bottom { border-top:1px solid var(--wine-soft); padding-top:1.5rem; color:var(--cream); font-size:.76rem; }
.footer-links a { font-size:.8rem; }
.mobile-inquiry { background:color-mix(in srgb,var(--bg) 88%,transparent); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-color:color-mix(in srgb,var(--cream) 20%,transparent); }
@media(min-width:80rem) { .wrap { width:min(calc(100% - 6rem),78rem); } }
@media(max-width:63.99rem) {
 :root { --header-height:4.75rem; }
 .site-header.wrap { gap:1rem; padding-block:.75rem; }
 .js .site-header nav.is-open { position:absolute; top:100%; inset-inline:0; width:100%; max-height:calc(100svh - var(--header-height) - 4.5rem); overflow-y:auto; padding:1rem max(1.5rem,calc((100% - 78rem)/2)) 1.5rem; gap:.5rem; border:0; border-bottom:1px solid var(--wine-soft); }
 .site-header nav.is-open a { min-height:3rem; }
 html:not(.js) .site-header.wrap { position:relative; }
 .team-story { gap:3rem; }
 .menu-layout { gap:3rem; }
 .contact-layout { gap:3rem; }
 .gallery-controls { top:auto; bottom:.5rem; }
 .food-gallery figure { flex-basis:43%; width:43%; }
 .food-gallery figure:nth-child(3n) { flex-basis:43%; width:43%; }
}
@media(max-width:47.99rem) {
 .wrap { width:calc(100% - 2.5rem); }
 .site-header.wrap { padding-inline:1.25rem; }
 .site-header .wordmark { font-size:1.8rem; }
 .site-header .brand-lockup .brand-logo { width:clamp(10rem,43vw,11.5rem); }
 .home-intro { min-height:min(46rem,calc(100svh - var(--header-height) - 3.75rem)); }
 .home-intro-copy { padding-block:5rem; }
 .home-intro h1 { font-size:clamp(3.9rem,13vw,6rem); }
 .home-intro-image img { object-position:66% 50%; }
 .home-intro-shade { background:linear-gradient(90deg,rgba(16,19,16,.78),rgba(16,19,16,.35) 90%),linear-gradient(0deg,rgba(16,19,16,.25),transparent 60%); }
 .home-intro-copy p { font-size:.96rem; }
 .atmosphere { min-height:30rem; padding-block:4rem; }
 .atmosphere .atmosphere-copy h1 { font-size:clamp(3.5rem,11vw,5.5rem); max-width:15ch; }
 .atmosphere .atmosphere-copy p { font-size:1rem; }
 .atmosphere .atmosphere-shade { background:linear-gradient(90deg,rgba(16,19,16,.86),rgba(16,19,16,.52)); }
 .section-heading { display:block; margin-bottom:2rem; }
 .section-heading>p { margin-top:1rem; }
 .category-tabs { gap:1.25rem; margin-bottom:2rem; }
 .category-tabs button { font-size:.75rem; }
 .service-grid { display:flex; gap:1.25rem; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:1rem; }
 .service-card,.service-card:nth-child(n) { flex:0 0 84%; min-width:0; padding-top:0; scroll-snap-align:start; }
 .service-card .service-picture { aspect-ratio:4/3; }
 .service-card h3 { font-size:2rem; }
 .food-gallery { gap:1rem; }
 .food-gallery figure,.food-gallery figure:nth-child(3n) { flex-basis:82%; width:82%; }
 #sample-menus { padding-top:var(--space-section); }
 .menu-layout { display:block; }
 .menu-intro { position:static; }
 .menu-intro h2 { max-width:14ch; }
 .menu-tabs { margin-bottom:2.5rem; display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; }
 .menu-tabs [role="tab"],.menu-tabs [role="tab"][aria-selected="true"] { font-size:1.35rem; }
 .menu-sheet { padding:2.5rem 1.5rem; }
 .menu-sheet .menu-sheet-header h3 { font-size:2.5rem; }
 .menu-sheet .menu-course li { font-size:1.3rem; }
 .team-story { display:block; }
 .team-story-photo { padding-top:0; margin-bottom:2.5rem; }
 .team-story-photo img { height:auto; aspect-ratio:4/3; }
 .team-story-copy h2 br { display:none; }
 .booking-inline .booking-steps { display:grid; grid-template-columns:1fr; gap:0; }
 .planner-title { display:block; margin-bottom:1rem; }
 .calculator-section>.wrap { width:calc(100% - 2.5rem); }
 .planner-content .calculator-summary { padding:1.5rem; margin-top:2rem; }
 .contact-layout { display:block; }
 .contact-aside { margin-bottom:2.5rem; }
 .contact-section { padding-block:4rem; }
 .contact-aside h2 br { display:none; }
 .editorial-pair,body[data-page="chefs"] .editorial-pair,body[data-page="retreat-catering"] .editorial-pair { display:flex; flex-direction:column; gap:2.5rem; padding-block:4rem; }
 .editorial-pair>img { order:0; }
 .editorial-pair>.editorial-copy { order:1; padding:0; }
 .editorial-pair .editorial-photo { max-height:none; }
 body[data-page="retreat-catering"] .editorial-photo { height:auto; aspect-ratio:4/3; }
 .editorial-copy h2 { font-size:3rem; }
 .retreat-rates { padding:1.25rem; }
 .retreat-rates dl>div { flex-wrap:wrap; gap:.5rem; }
 .site-footer { padding-top:2.5rem; }
}
@media(max-width:22.49rem) {
 .site-header { gap:.5rem; }
 .site-header .brand-lockup .brand-logo { width:9.25rem; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
 .home-intro-image img { transform:none; clip-path:none; }
}
