/* ==========================================================================
   Sarb Foods V3
   Hero: W2 (round of tables, no clock or times). Rest: W4 Page A, sunlit white.
   Palette: lotus pond accents on white.
   ========================================================================== */

:root {
  --lotus-mask: url("data:image/png;base64,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");
  --white: #FFFFFF;
  --cream: #FBF9F1;
  --ink: #0A3323;          /* dark green */
  --ink-2: #3B4D42;
  --body: #44584C;
  --muted: #5C6E62;
  --teal: #105666;         /* midnight green */
  --moss: #839958;
  --rose: #D3968C;         /* rosy brown */
  --rose-tint: #F3E3DE;
  --line: #E6E9E1;
  --line-2: #DDE2D8;
  --line-3: #CFD6CB;
  --sage-outline: #C9D2B4;

  --serif: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  --sans: 'Albert Sans', 'Helvetica Neue', Helvetica, sans-serif;

  --gutter: clamp(20px, 4vw, 56px);
  --section-x: clamp(28px, 5vw, 64px);
  --radius: 16px;
  --header-h: 80px;
  --shadow-soft: 0 30px 50px -30px rgba(10, 51, 35, .45), 0 0 0 1px rgba(10, 51, 35, .06);
  --ease: cubic-bezier(.22, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: var(--header-h); }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
body {
  margin: 0;
  background: var(--white);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
img { display: block; max-width: 100%; }
a { color: var(--ink); }
a:hover { color: var(--teal); }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; border-radius: 6px; }

.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: 12px; top: -60px; z-index: 100; background: var(--ink); color: var(--white); padding: 10px 16px; border-radius: 999px; font-weight: 700; text-decoration: none; }
.skip:focus { top: 12px; color: var(--white); }

/* The Golden Gesture lotus, used as a mask so it takes any colour */
.lotus {
  -webkit-mask: var(--lotus-mask) center / contain no-repeat;
          mask: var(--lotus-mask) center / contain no-repeat;
  background: var(--rose);
}

/* ---------- type ---------- */
.eyebrow {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--teal);
}
.eyebrow-dot { display: flex; align-items: center; gap: 10px; }
.eyebrow-dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--rose); flex: none; }
.display, .h2, .h3, .h4, .quote, .card-title, .footer-mark {
  font-family: var(--serif);
  font-weight: 400;
}
.display { margin: 0; font-size: clamp(52px, 5.6vw, 84px); line-height: .98; letter-spacing: -.015em; }
.display i, .h2 i { font-style: italic; }
.h2 { margin: 0; font-size: clamp(42px, 5vw, 72px); line-height: 1; letter-spacing: -.01em; }
.h2-sm { font-size: clamp(34px, 3.6vw, 52px); line-height: 1.05; }
.h3 { margin: 0; font-size: clamp(28px, 2.4vw, 34px); line-height: 1.1; }
.h3-lg { font-size: clamp(38px, 4vw, 56px); line-height: 1; }
.h4 { margin: 0 0 6px; font-size: 26px; line-height: 1.1; }
.lede { margin: 0; color: var(--body); font-size: 18px; }

/* ---------- buttons ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 13px 24px;
  border: 0;
  border-radius: 999px;
  font: 700 16px/1.2 var(--sans);
  text-decoration: none;
  cursor: pointer;
  transition: background-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease), transform .25s var(--ease);
}
.btn:active { transform: translateY(1px); }
.btn-sm { min-height: 44px; padding: 11px 20px; font-size: 14px; }
.btn-dark { background: var(--ink); color: var(--white); }
.btn-dark:hover { background: var(--teal); color: var(--white); }
.btn-line { color: var(--ink); font-weight: 600; box-shadow: inset 0 0 0 1px var(--line-3); }
.btn-line:hover { color: var(--ink); box-shadow: inset 0 0 0 1.5px var(--ink); }
.btn-outline { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 1.5px var(--ink); }
.btn-outline:hover { background: var(--ink); color: var(--white); }
.btn-row { display: flex; flex-wrap: wrap; gap: 12px; }

/* ==========================================================================
   Header
   ========================================================================== */
.site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 50;
  height: var(--header-h);
  display: flex;
  align-items: center;
  gap: 32px;
  padding: 0 var(--gutter);
  background: rgba(255, 255, 255, 0);
  transition: background-color .35s var(--ease), box-shadow .35s var(--ease);
}
.site-header.is-scrolled {
  background: rgba(255, 255, 255, .92);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 var(--line);
}
.brand { display: flex; align-items: center; gap: 12px; text-decoration: none; margin-right: auto; }
.brand { gap: 10px; }
.brand-mark { width: auto; height: 36px; }
.brand-word { width: auto; height: 19px; }
.primary-nav { display: flex; gap: 8px 30px; font-size: 14px; font-weight: 600; }
.primary-nav a { text-decoration: none; padding: 6px 0; background: linear-gradient(var(--rose), var(--rose)) left bottom / 0 1.5px no-repeat; transition: background-size .3s var(--ease); }
.primary-nav a:hover, .primary-nav a.is-current { background-size: 100% 1.5px; color: var(--ink); }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 50%; background: var(--white); box-shadow: inset 0 0 0 1px var(--line-3); cursor: pointer; place-items: center; }
.menu-toggle svg { width: 22px; height: 22px; }

/* ==========================================================================
   Hero: W2 round of tables
   ========================================================================== */
.hero {
  --stops: 5;
  position: relative;
  display: grid;
  grid-template-columns: minmax(340px, 480px) minmax(0, 1fr);
  column-gap: clamp(24px, 4vw, 64px);
  padding: 0 var(--gutter);
  background: var(--white);
}
.hero-copy {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--header-h) 0 40px;
}
.hero-copy-inner { display: flex; flex-direction: column; gap: 24px; }
.hero-lede { margin: 0; font-size: 17px; line-height: 1.6; color: var(--body); max-width: 40ch; }
.hero.is-turning .hero-hint { opacity: 0 !important; }
.hero-hint {
  transition: opacity .4s var(--ease);
  position: absolute;
  left: 0;
  bottom: 40px;
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #6B7C70;
}

/* the scroll track: one viewport of stage plus room to turn through the stops */
.hero-track { position: relative; height: calc(100svh + (var(--stops) - 1) * 70svh + 30svh); }
.hero-stage {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
  display: grid;
  place-items: center;
  padding: calc(var(--header-h) + 8px) 0 24px;
  container-type: inline-size;
}

.dial {
  --d: min(720px, calc(100svh - var(--header-h) - 60px), calc(100cqi - 160px));
  --r: calc(var(--d) * .4167);           /* ring radius, 300 of 720 */
  --stop: max(44px, calc(var(--d) * .089));
  --stop-on: max(64px, calc(var(--d) * .139));
  position: relative;
  width: var(--d);
  aspect-ratio: 1;
}
.dial-ring { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.ring-base { fill: none; stroke: rgba(10, 51, 35, .22); stroke-width: 1.2; vector-effect: non-scaling-stroke; }
.ring-progress {
  fill: none;
  stroke: var(--rose);
  stroke-width: 3;
  stroke-linecap: round;
  stroke-dasharray: 0 360;
  vector-effect: non-scaling-stroke;
}
.dial-bead {
  --angle: 200deg;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 14px;
  height: 14px;
  margin: -7px 0 0 -7px;
  border-radius: 50%;
  background: var(--rose);
  box-shadow: 0 0 0 4px var(--white), 0 0 0 5px rgba(211, 150, 140, .5);
  transform: rotate(var(--angle)) translateY(calc(-1 * var(--r))) ;
  z-index: 1;
  pointer-events: none;
}

.dial-centre {
  position: absolute;
  left: 50%;
  top: 50%;
  width: calc(var(--d) * .611);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  overflow: hidden;
  background: var(--cream);
  box-shadow: 0 0 0 10px var(--white), 0 0 0 11px rgba(10, 51, 35, .15), 0 40px 60px -30px rgba(10, 51, 35, .5);
}
.dial-centre > img, .centre-seal {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.08);
  transition: opacity .7s var(--ease), transform 1.1s var(--ease);
}
.dial-centre > .is-active { opacity: 1; transform: scale(1); }
.centre-seal { display: grid; place-items: center; background: var(--rose-tint); }
.centre-seal img { width: 62%; height: auto; border-radius: 50%; box-shadow: 0 24px 40px -20px rgba(10, 51, 35, .4); }

.dial-stops { list-style: none; margin: 0; padding: 0; }
.dial-stops li {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  transform: rotate(var(--a)) translateY(calc(-1 * var(--r))) rotate(calc(-1 * var(--a)));
  z-index: 2;
}
.stop {
  position: absolute;
  left: 0;
  top: 0;
  width: var(--stop);
  height: var(--stop);
  padding: 0;
  border: 0;
  border-radius: 50%;
  overflow: hidden;
  cursor: pointer;
  background: var(--white);
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 4px var(--white), 0 0 0 5px rgba(10, 51, 35, .15);
  transition: width .6s var(--ease), height .6s var(--ease), box-shadow .6s var(--ease);
}
.stop img { width: 100%; height: 100%; object-fit: cover; }
.stop-seal { background: var(--rose-tint); }
.stop-seal img { object-fit: contain; padding: 10%; }
.stop:hover { box-shadow: 0 0 0 4px var(--white), 0 0 0 5px var(--rose); }
.stop.is-active {
  width: var(--stop-on);
  height: var(--stop-on);
  box-shadow: 0 0 0 4px var(--white), 0 0 0 6px var(--rose), 0 20px 30px -14px rgba(10, 51, 35, .5);
}
.stop-label {
  --gap: calc(var(--stop-on) / 2 + 14px);
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--muted);
  pointer-events: none;
  /* push the label out from the ring, aligned away from the centre */
  transform:
    translate(calc(sin(var(--a)) * var(--gap)), calc(cos(var(--a)) * var(--gap) * -1))
    translate(calc(-50% + sin(var(--a)) * 50%), calc(-50% - cos(var(--a)) * 50%));
  transition: color .4s var(--ease), font-size .4s var(--ease);
}
.dial-stops li:has(.is-active) .stop-label { color: var(--teal); font-size: 11px; }

.dial-card {
  position: absolute;
  right: 0;
  bottom: 32px;
  width: 270px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: var(--white);
  border-radius: 14px;
  box-shadow: 0 0 0 1px rgba(10, 51, 35, .1), 0 24px 40px -24px rgba(10, 51, 35, .35);
  z-index: 3;
}
.dial-card > * { transition: opacity .35s var(--ease), transform .35s var(--ease); }
.dial-card.is-swapping > * { opacity: 0; transform: translateY(6px); }
.card-count { margin: 0; font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--teal); }
.card-title { margin: 0; font-size: 28px; line-height: 1.05; }
.card-text { margin: 0; font-size: 14px; line-height: 1.5; color: var(--body); }
.card-link { font-size: 14px; font-weight: 700; color: var(--teal); text-decoration: none; }
.card-link:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ==========================================================================
   Journey (Page A)
   ========================================================================== */
.journey { position: relative; overflow-x: clip; }
.page-ribbon { position: absolute; left: 0; top: 0; width: 100%; pointer-events: none; z-index: 1; overflow: visible; }
.page-ribbon path { fill: none; stroke: var(--rose); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: var(--len, 1); stroke-dashoffset: var(--off, 0); }
.page-ribbon .ribbon-shadow { stroke: rgba(211, 150, 140, .18); stroke-dashoffset: 0; }
@media (max-width: 899px) { .page-ribbon path { stroke-width: 2; } }

.section { position: relative; padding: 120px var(--section-x); }
.section-cream { background: var(--cream); }
.section-bleed { padding-left: 0; padding-right: 0; }
.section-bleed > .wrap { padding: 0 var(--section-x); }
.wrap { max-width: 1240px; margin: 0 auto; }
.stack-48, .stack-56, .stack-72 { display: flex; flex-direction: column; }
.stack-48 { gap: 48px; }
.stack-56 { gap: 56px; }
.stack-72 { gap: 72px; }

.intro { display: flex; flex-wrap: wrap; gap: 28px 64px; align-items: flex-end; }
.intro-head { flex: 1 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.intro-body { flex: 1 1 380px; min-width: 0; margin: 0; color: var(--body); display: flex; flex-direction: column; gap: 14px; }
.intro-body p { margin: 0; }

.photo { width: 100%; object-fit: cover; border-radius: var(--radius); }
.window { position: relative; margin: 0; border-radius: var(--radius); overflow: hidden; }
.window > img { width: 100%; height: 100%; object-fit: cover; will-change: transform; }
.photo-row { display: flex; flex-wrap: wrap; gap: 20px; }
.photo-wide { flex: 2 1 520px; min-width: 0; height: 460px; }
.photo-narrow { flex: 1 1 260px; min-width: 0; height: 460px; }
#gifting .photo-wide, #gifting .photo-narrow { height: 380px; }

/* placeholders for photos still to come */
.slot {
  border-radius: var(--radius);
  background: repeating-linear-gradient(135deg, var(--cream) 0 14px, #F1EEE2 14px 15px);
  box-shadow: inset 0 0 0 1px #E3E6DC;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 20px;
  color: var(--muted);
  text-align: center;
}
.slot b { font-family: var(--serif); font-weight: 400; font-size: 26px; }
.slot span { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.slot-white { background: repeating-linear-gradient(135deg, var(--white) 0 14px, #F1EEE2 14px 15px); }
.slot-rose { background: repeating-linear-gradient(135deg, #FBF6F3 0 14px, #F1E3DE 14px 15px); box-shadow: inset 0 0 0 1px #EBDAD4; color: #7A5A55; }

.panel { border-radius: var(--radius); padding: 30px 32px; box-shadow: inset 0 0 0 1px var(--line-2); }
.panel-sm { padding: 24px 26px; margin-top: 10px; }

/* catering */
.serve-row { display: flex; flex-wrap: wrap; gap: 24px; }
.serve-row .panel { flex: 1 1 420px; min-width: 0; }
.serve-row .h3 { margin-bottom: 8px; }
.serve-list { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 0 28px; }
.serve-list div { padding: 14px 0; border-top: 1px solid var(--line); }
.serve-list dt { font-weight: 700; }
.serve-list dd { margin: 0; color: var(--muted); font-size: 15px; }
.steps-wrap { position: relative; flex: 1.4 1 520px; min-width: 0; }
.steps { position: relative; margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 24px; }
.steps-ribbon { display: none; }
@media (min-width: 900px) {
  .steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .steps-ribbon { display: block; position: absolute; left: -12px; right: -12px; top: -24px; width: calc(100% + 24px); height: 90px; overflow: visible; }
  .steps-ribbon path { fill: none; stroke: var(--rose); stroke-width: 2; stroke-linecap: round; vector-effect: non-scaling-stroke; opacity: .7; }
  .steps li:nth-child(2) { margin-top: -6px; }
  .steps li:nth-child(3) { margin-top: 14px; }
}
.steps li { display: flex; flex-direction: column; gap: 10px; }
.steps b { font-family: var(--serif); font-weight: 400; font-size: 26px; line-height: 1.1; }
.steps li > span:last-child { color: var(--body); font-size: 16px; }
.step-num { position: relative; width: 44px; height: 44px; border-radius: 50%; background: var(--white); box-shadow: inset 0 0 0 1.5px var(--rose); display: grid; place-items: center; font-family: var(--serif); font-size: 22px; }
.cta-row { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; padding-top: 28px; border-top: 1px solid var(--line); }
.cta-row span { color: var(--muted); font-size: 15px; }

/* kitchen */
.section-kitchen { padding: 0 0 120px; }
.section-kitchen > .wrap { padding: 0 var(--section-x); }
.kitchen-pin {
  position: relative;
  height: 100vh;
  height: 100svh;
  margin: 0 0 40px;
  padding: var(--header-h) var(--section-x) 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--cream);
}
.kitchen-lines { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; gap: .08em; font-family: var(--serif); font-size: clamp(34px, 4.6vw, 66px); line-height: 1.08; }
.kitchen-lines p { margin: 0; }
.kitchen-lines .kline-eyebrow { font-family: var(--sans); font-size: 12px; line-height: 1.6; margin-bottom: 18px; }
.kline-last { margin-top: .5em !important; font-style: italic; font-size: .46em; color: var(--teal); }
.outline-word {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-family: var(--serif);
  font-size: clamp(80px, 21vw, 320px);
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 1.5px var(--sage-outline);
  white-space: nowrap;
  pointer-events: none;
}
.quote { margin: 0; font-size: clamp(32px, 4vw, 58px); line-height: 1.08; }
.quote-sub { margin: 14px 0 0; font-family: var(--serif); font-style: italic; font-size: clamp(20px, 2vw, 28px); color: var(--teal); }
.kitchen-row { display: flex; flex-wrap: wrap; gap: 40px 64px; align-items: flex-start; }
.kitchen-photo { flex: 1 1 340px; aspect-ratio: 4 / 5; max-width: 100%; }
.kitchen-body { flex: 2 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.promises { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 28px 40px; }
.promises li { padding-top: 16px; border-top: 1.5px solid var(--rose); }
.promises b { display: block; font-family: var(--serif); font-weight: 400; font-size: 24px; margin-bottom: 6px; }
.promises span { color: var(--body); }

/* schools */
.sub-brand { display: flex; align-items: center; gap: 12px; }
.sub-brand .wordmark-chip { width: 132px; padding: 9px 14px; }
.sub-brand span { font-family: var(--serif); font-size: 24px; padding-left: 12px; border-left: 1px solid var(--sage-outline); }
.day-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.day-tabs button, .fri-switch button {
  min-height: 44px;
  border: 0;
  cursor: pointer;
  padding: 11px 20px;
  border-radius: 999px;
  background: transparent;
  color: var(--ink);
  box-shadow: inset 0 0 0 1px var(--line-3);
  font: 600 15px var(--sans);
  transition: background-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);
}
.day-tabs button:hover, .fri-switch button:hover { box-shadow: inset 0 0 0 1.5px var(--ink); }
.day-tabs .tab-fun { color: var(--teal); box-shadow: inset 0 0 0 1.5px var(--rose); font-weight: 700; }
.day-tabs button[aria-selected="true"], .fri-switch button[aria-pressed="true"] { background: var(--ink); color: var(--white); box-shadow: none; font-weight: 700; }
.fri-switch { display: flex; flex-wrap: wrap; gap: 8px; }
.fri-switch[hidden] { display: none; }
.school-day { display: flex; flex-wrap: wrap; gap: 32px 64px; align-items: center; }
.school-img { flex: 1 1 440px; min-width: 0; aspect-ratio: 1; transition: opacity .3s var(--ease); }
.school-img.is-swapping { opacity: 0; }
.school-info { flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.chips { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.chips li { padding: 7px 14px; border-radius: 999px; background: var(--cream); box-shadow: inset 0 0 0 1px #E3E6DC; font-size: 15px; }
.chips-line { font-weight: 600; }
.chips-line li { padding: 8px 15px; background: var(--white); box-shadow: inset 0 0 0 1px var(--line-3); }
.facts { width: 100%; border-collapse: collapse; font-size: 15px; }
.facts th, .facts td { padding: 9px 0; border-top: 1px solid var(--line); text-align: left; vertical-align: top; }
.facts th { width: 34%; padding-right: 12px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--teal); }
.wide-figure { position: relative; margin: 0; border-radius: var(--radius); overflow: hidden; }
/* show the whole photo: keep its own 3:2 shape instead of cropping to a letterbox */
.wide-figure img { width: 100%; height: auto; aspect-ratio: 1400 / 933; object-fit: cover; }
.wide-figure figcaption { position: absolute; left: 20px; bottom: 18px; background: var(--white); padding: 8px 14px; border-radius: 999px; font-size: 14px; font-weight: 600; }

/* offices */
.wordmark-chip { width: 150px; height: auto; background: #E3241B; padding: 10px 16px; border-radius: 10px; }
.tray-scroller { margin-top: 48px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: var(--sage-outline) transparent; }
.tray-scroller:focus-visible { outline-offset: -2px; }
.tray-track { display: flex; gap: 32px; padding: 0 var(--section-x) 12px; width: max-content; will-change: transform; }
.tray-scroller.is-pinned { position: relative; z-index: 2; background: var(--cream); overflow: hidden; display: flex; flex-direction: column; justify-content: center; height: 100vh; height: 100svh; margin-top: 0; padding-top: var(--header-h); }
.tray-scroller.is-pinned .tray { width: min(34vw, 460px, 56svh); }
.tray-scroller.is-pinned .tray img { will-change: transform; transition: none; }
.tray { position: relative; margin: 0; width: clamp(240px, 26vw, 320px); padding-top: 70px; text-align: center; }
.tray-day { position: absolute; top: 0; left: 0; right: 0; font-family: var(--serif); font-size: clamp(84px, 9vw, 110px); line-height: .8; color: transparent; -webkit-text-stroke: 1.5px var(--sage-outline); }
.tray img { position: relative; width: 100%; aspect-ratio: 1; object-fit: contain; filter: drop-shadow(0 20px 20px rgba(10, 51, 35, .25)); transition: transform .5s var(--ease); }
.tray-scroller:not(.is-pinned) .tray:hover img { transform: translateY(-6px) rotate(-1.5deg); }
.tray figcaption { font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.note { margin: 14px 0 0; color: var(--muted); font-size: 15px; }
.office-how { margin-top: 72px; display: flex; flex-wrap: wrap; gap: 40px 64px; align-items: center; }
.office-photo { flex: 1.3 1 480px; min-width: 0; height: 440px; }
.office-steps { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 18px; align-items: flex-start; }
.rule-list { margin: 0; padding: 0; list-style: none; width: 100%; }
.rule-list li { padding: 16px 0; border-top: 1px solid var(--line-2); }
.rule-list li:last-child { border-bottom: 1px solid var(--line-2); }
.rule-list b { font-size: 18px; }
.rule-list li > b { display: block; }
.rule-list li > span { color: var(--body); }
.rule-list-tight li { padding: 13px 0; }
.rule-list-tight li > span { color: var(--ink); }
.rule-list-tight b { font-size: inherit; }

/* gifting */
.section-gifting { overflow: hidden; }
.gifting-lotus { position: absolute; right: -60px; top: 60px; width: 520px; height: 444px; background: var(--rose-tint); pointer-events: none; }
.gg-seal { width: 128px; height: 128px; border-radius: 50%; box-shadow: 0 18px 30px -16px rgba(10, 51, 35, .35); }
.hamper { display: flex; flex-wrap: wrap; gap: 40px 64px; align-items: flex-start; }
.hamper-pick { flex: 1.3 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 26px; }
.pick-group { display: flex; flex-direction: column; gap: 10px; }
.pick-group .eyebrow { letter-spacing: .16em; }
.toggles { display: flex; flex-wrap: wrap; gap: 8px; }
.toggles button {
  min-height: 44px;
  border: 0;
  cursor: pointer;
  padding: 10px 16px;
  border-radius: 12px;
  background: var(--white);
  color: var(--ink);
  box-shadow: inset 0 0 0 1px var(--line-3);
  font: 600 15px var(--sans);
  transition: background-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);
}
.toggles button:hover { box-shadow: inset 0 0 0 1.5px var(--ink); }
.toggles button[aria-pressed="true"] { background: var(--ink); color: var(--white); box-shadow: none; font-weight: 700; }
.hamper-preview { flex: 1 1 340px; min-width: 0; display: flex; flex-direction: column; gap: 16px; position: sticky; top: calc(var(--header-h) + 24px); }
.hamper-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.hamper-status { margin: 0; font-size: 13px; font-weight: 600; color: var(--muted); }
.hamper-status.is-tied { color: var(--teal); }
/* the hamper seen from above: four compartments either side of a tied ribbon */
.hamper-box {
  --ribbon: 14px;
  position: relative;
  aspect-ratio: 1;
  border-radius: var(--radius);
  background: var(--cream);
  box-shadow: 0 0 0 1px #E3E6DC, inset 0 0 0 10px var(--white), inset 0 0 0 11px #E8E4D6, 0 40px 60px -36px rgba(10, 51, 35, .4);
  overflow: hidden;
  container-type: inline-size;
}
.hamper-ribbon { position: absolute; background: var(--rose); opacity: .85; z-index: 1; }
.hamper-ribbon-v { left: 50%; top: 0; bottom: 0; width: var(--ribbon); margin-left: calc(var(--ribbon) / -2); }
.hamper-ribbon-h { top: 50%; left: 0; right: 0; height: var(--ribbon); margin-top: calc(var(--ribbon) / -2); }
.hamper-bins {
  position: absolute;
  inset: 11px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  column-gap: var(--ribbon);
  row-gap: var(--ribbon);
}
.hamper-bin {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12% 8%;
  min-width: 0;
}
.bin-name {
  position: absolute;
  top: 9%;
  left: 9%;
  font-size: clamp(9px, 2cqi, 11px);
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--muted);
}
.hamper-bin:nth-child(even) .bin-name { left: auto; right: 9%; }
.hamper-bin:nth-child(n+3) .bin-name { top: auto; bottom: 9%; }
.bin-items { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.bin-empty { padding: 7px 12px; border-radius: 10px; border: 1.5px dashed #CFD6CB; font-size: clamp(11px, 2.4cqi, 14px); font-weight: 600; color: var(--muted); }
.hamper-bow {
  position: absolute;
  left: 50%;
  top: 50%;
  width: clamp(72px, 19cqi, 112px);
  transform: translate(-50%, -48%) scale(.55);
  opacity: .45;
  z-index: 2;
  overflow: visible;
  transition: transform .6s cubic-bezier(.34, 1.56, .64, 1), opacity .4s var(--ease);
}
.hamper-box.is-tied .hamper-bow { transform: translate(-50%, -48%) scale(1); opacity: 1; }
.bow-loop, .bow-tail { fill: var(--rose); stroke: #B97A70; stroke-width: 1.5; stroke-linejoin: round; }
.bow-fold { fill: none; stroke: #B97A70; stroke-width: 1.5; stroke-linecap: round; opacity: .7; }
.bow-knot { fill: #C88A80; stroke: #B97A70; stroke-width: 1.5; }
.hamper-tag {
  position: relative;
  padding: 7px 12px;
  border-radius: 10px;
  background: var(--white);
  box-shadow: 0 8px 16px -10px rgba(10, 51, 35, .5), inset 0 0 0 1px #E3E6DC;
  font-size: clamp(12px, 2.5cqi, 15px);
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  animation: tag-in .45s var(--ease) both;
}
.hamper-tag.is-occasion { background: var(--ink); color: var(--white); box-shadow: none; }
.hamper-tag.is-count { background: var(--teal); color: var(--white); box-shadow: none; }
@keyframes tag-in { from { opacity: 0; transform: translateY(8px) rotate(var(--rot, 0deg)) scale(.96); } to { opacity: 1; transform: rotate(var(--rot, 0deg)); } }

/* plan */
.plan { display: flex; flex-wrap: wrap; gap: 48px 72px; align-items: flex-start; }
.plan-intro { flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.contact-chips { display: flex; flex-wrap: wrap; gap: 12px; }
.contact-chips a { text-decoration: none; padding: 14px 18px; border-radius: 14px; background: var(--white); box-shadow: inset 0 0 0 1px var(--line-2); display: flex; flex-direction: column; transition: box-shadow .25s var(--ease); }
.contact-chips a:hover { box-shadow: inset 0 0 0 1.5px var(--ink); }
.contact-chips small { font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--teal); }
.plan-form {
  flex: 1.4 1 520px;
  min-width: 0;
  background: var(--white);
  border-radius: 20px;
  padding: clamp(24px, 3vw, 44px);
  box-shadow: 0 50px 80px -50px rgba(10, 51, 35, .4), 0 0 0 1px #E3E6DC;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.route { border: 0; margin: 0; padding: 0; min-width: 0; }
.route legend { padding: 0; margin-bottom: 10px; letter-spacing: .14em; }
.route-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.route-grid label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 14px;
  border-radius: 12px;
  box-shadow: inset 0 0 0 1px var(--line-3);
  font-weight: 600;
  cursor: pointer;
  transition: background-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease);
}
.route-grid label:hover { box-shadow: inset 0 0 0 1.5px var(--ink); }
.route-grid label:has(input:checked) { background: var(--ink); color: var(--white); box-shadow: none; font-weight: 700; }
.route-grid input { accent-color: var(--rose); margin: 0; }
.field-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 20px 22px; }
.field-grid[hidden] { display: none; }
.field { display: flex; flex-direction: column; gap: 6px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--body); }
.field input, .field select, .field textarea {
  font: 400 17px var(--sans);
  letter-spacing: 0;
  text-transform: none;
  color: var(--ink);
  border: 0;
  border-bottom: 1.5px solid #C9D2C4;
  border-radius: 0;
  padding: 8px 2px;
  background: transparent;
  transition: border-color .25s var(--ease);
}
.field textarea { resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { outline: none; border-bottom-color: var(--teal); }
.field input[aria-invalid="true"] { border-bottom-color: #B4483C; }
.form-error { margin: 0; color: #9C3A2F; font-size: 15px; font-weight: 600; }

/* footer */
.site-footer { overflow-x: clip; padding: 96px var(--section-x) 36px; background: var(--white); border-top: 1px solid var(--line); }
.footer-mark { margin: 0; font-size: clamp(64px, 14vw, 210px); line-height: .85; letter-spacing: -.02em; white-space: nowrap; }
.footer-cols { display: flex; flex-wrap: wrap; gap: 32px 64px; padding-top: 28px; border-top: 1px solid var(--line); }
.footer-logo { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.footer-logo img:first-child { width: 92px; height: auto; }
.footer-logo img:last-child { width: 150px; height: auto; }
.footer-welcome { flex: 2 1 300px; margin: 0; font-size: 18px; color: var(--body); }
.footer-welcome span { display: block; font-family: 'Noto Sans Gurmukhi', sans-serif; font-weight: 500; font-size: 30px; color: var(--ink); }
.footer-col { flex: 1 1 200px; display: flex; flex-direction: column; gap: 6px; font-size: 15px; }
.footer-col a { text-decoration: none; }
.footer-col b { font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--teal); }
.footer-legal { margin: 0; font-size: 14px; color: var(--muted); }

/* ---------- motion: split headlines ---------- */
[data-split] .line { display: block; }
.motion [data-split] .line { overflow: hidden; padding: 0 .12em .08em 0; margin: 0 -.12em -.08em 0; }
[data-split] .line-inner { display: inline-block; will-change: transform; }
/* hide what the intro will bring in, only once motion is confirmed */
.motion-intro .hero [data-split] .line-inner { transform: translateY(110%); }
.motion-intro [data-intro], .motion-intro .site-header, .motion-intro .dial, .motion-intro .dial-card { opacity: 0; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1100px) {
  .primary-nav { gap: 8px 20px; }
  .dial-card { width: 240px; }
}

@media (max-width: 980px) {
  :root { --header-h: 68px; }
  .brand-mark { height: 30px; }
  .brand-word { height: 16px; }
  .menu-toggle { display: grid; }
  .header-cta { display: none; }
  .primary-nav {
    position: absolute;
    top: calc(var(--header-h) - 4px);
    left: 12px;
    right: 12px;
    flex-direction: column;
    gap: 0;
    padding: 8px 20px;
    background: var(--white);
    border-radius: 16px;
    box-shadow: var(--shadow-soft);
    font-size: 17px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity .25s var(--ease), transform .25s var(--ease), visibility 0s .25s;
  }
  .primary-nav a { padding: 14px 0; background: none; border-bottom: 1px solid var(--line); }
  .primary-nav a:last-child { border-bottom: 0; }
  .site-header.menu-open .primary-nav { opacity: 1; visibility: visible; transform: none; transition: opacity .25s var(--ease), transform .25s var(--ease); }
  .site-header.menu-open { background: rgba(255, 255, 255, .96); }

}

@media (max-width: 1024px) {
  /* hero stacks: copy first, then the dial pins while you scroll through the tables */
  .hero { grid-template-columns: minmax(0, 1fr); }
  .hero-copy { position: relative; height: auto; padding: calc(var(--header-h) + 40px) 0 24px; }
  .hero-hint { position: static; margin-top: 28px; }
  .hero-stage { padding: calc(var(--header-h) + 4px) 0 16px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; }
  .dial { --d: min(560px, calc(100svh - var(--header-h) - 230px), calc(100vw - 2 * var(--gutter) - 40px)); }
  .stop-label { display: none; }
  .dial-card { position: relative; right: auto; bottom: auto; width: min(100%, 420px); }
}

@media (max-width: 640px) {
  body { font-size: 16px; }
  .section { padding-top: 88px; padding-bottom: 88px; }
  .section-bleed { padding-left: 0; padding-right: 0; }
  .section-kitchen { padding-top: 0; }
  .photo-wide, .photo-narrow { height: 320px; }
  #gifting .photo-wide, #gifting .photo-narrow { height: 280px; }
  .office-photo { height: 300px; }
  .kitchen-lines { font-size: clamp(30px, 8.4vw, 44px); }
  .intro-head, .intro-body, .serve-row .panel, .steps-wrap, .kitchen-body, .hamper-pick, .plan-form, .school-img, .office-photo { flex-basis: 100%; }
  .panel { padding: 24px 22px; }
  .gifting-lotus { width: 320px; height: 274px; right: -90px; top: 40px; }
  .hamper-preview { position: static; }
  .dial-card { padding: 16px 18px; }
  .card-title { font-size: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .motion-intro [data-intro], .motion-intro .site-header, .motion-intro .dial, .motion-intro .dial-card { opacity: 1; }
}
