/* Home and RT Café Grill, a finishing pass (11 Nov 2026).
   Loaded last, and only on those two pages (body class "front", see src/layouts/Site.astro).
   Presentation only: no wording, price or date lives here. Remove the link to put both pages back. */

html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
  /* "By the water." The full stop was nudged off the word and read as "water ." */
  & .v2-stop { margin-left: 0; }

  /* Open today is information. The hero sits right above it with its own Book a table, the header
     carries one and phones get the bottom bar, so the strip's third button only repeated them. */
  & .v2-today__act .v2-btn { display: none; }

  /* Hours drawn by the hour (desktop): the dinner label sat at 9am, a long way from its bar.
     It now ends where the bar begins. */
  /* Questions: an older rule padded each one twice (the row and the question inside it), so nine
     questions ran to a screen and a half on a phone. The question alone carries the padding now. */
  & .v2-faq details { padding: 0; }

  & .v2-daybar .v2-lane span.before { left: auto; right: calc(100% - (var(--s) - 8) / var(--h) * 100%); padding: 0 12px 0 0; }
}

/* Phones and small tablets: one rhythm, less scrolling, nothing hidden from search. */
@media (max-width: 900px) {
  html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
    /* Open today: a slim, quiet line under the hero. */
    /* Status and "All the hours" share the first line; the sentence runs underneath. */
    & .v2-today__in { position: relative; display: block; padding-top: 16px; padding-bottom: 18px; }
    & .v2-today__line { display: block; }
    & .v2-today__line b { display: block; font-size: 21px; padding-right: 112px; }
    & .v2-today__line span { display: block; margin-top: 8px; font-size: 15px; line-height: 1.45; }
    & .v2-today__act { position: absolute; top: 19px; right: var(--v2-gutter); }
    /* a 44px tap area that doesn't push its underline into the sentence below */
    & .v2-today__act .v2-link { position: relative; min-height: 0; padding-bottom: 3px; font-size: 14px; }
    & .v2-today__act .v2-link::before { content: ""; position: absolute; inset: -12px -8px -10px; }

    /* Questions: one even 18px either side; a thumb still has 58px to hit. */
    & .v2-faq summary { padding: 18px 0; }

    /* Home, Book a table: seven ways in, set closer, still a full thumb tall. */
    & .v2-book__list a, & .v2-book__list button { padding: 15px 0; }
    & .v2-book__list strong { font-size: 23px; }

    /* Home, the people: one photo of Robert at work on a phone; the flames and the oyster hands
       stay on wider screens, where they sit beside it rather than below. */
    & .v2-kitchen .v2-kitchen__b, & .v2-kitchen .v2-kitchen__c { display: none; }

    /* After a "More", the next link or buttons follow it closely; the gap read as a missing line. */
    & :is(.v2-more, .v2-more + script) + .v2-actions { margin-top: 12px; }
    & .v2-kitchen__text .v2-more + script + .v2-link { margin-top: 8px; }

    /* Home, RT Café Grill into The Cellar: the chequer now arrives a breath after the buttons, not a screen-fifth. */
    & .v2-place--grill:not(.v2-place--gift) .v2-place__text { padding-bottom: 28px !important; }

    /* Home, the Journal: the double rule under the heading was followed by a third line. */
    & .v2-journal .v2-journal__list { border-top: 0; }
  }
}

/* ───────────────────────────────────────────────────────────────────────────
   Precision pass (11 Nov 2026, second round). Measured, then made to agree:
   one section rhythm, one right-hand column, one type scale, one row height.
   ─────────────────────────────────────────────────────────────────────────── */
html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
  /* One rhythm. These four sections each had their own padding (144/101, 144, 140/110, 130);
     they now use the site's one section measure like every other band. */
  & .v2-intro, & .v2-intro--short, & .v2-kitchen, & .v2-journal, & .v2-book { padding-top: var(--rf-sec); padding-bottom: var(--rf-sec); }
  & .v2-day { padding-bottom: var(--rf-sec); }

  /* One type scale for the small things, so the same kind of line is the same size everywhere.
     Secondary lines 15px, captions 14px, small titles 20px. */
  & .v2-today__line span, & .v2-facts dd, & .v2-spec dd, & .v2-hours dd, & .v2-index span, & .v2-book__list span { font-size: 15px; line-height: 1.6; }
  & .v2-dishes__rail span, & .v2-occ__grid span { font-size: 14px; line-height: 1.45; }
  /* The two rooms are set the same way on both pages (Home had them upright at 19px, Café Grill italic at 17px). */
  & .v2-facts dt, & .v2-spec dt { font: 400 20px/1.3 var(--v2-display) !important; font-style: normal !important; letter-spacing: -.01em; }
  /* The line on the sunset band is a lede, the same size as the other ledes. */
  & .v2-crossing__text p:not(.v2-address) { font-size: clamp(17px, 1.3vw, 18.5px); line-height: 1.58; }

  /* Heading beside a line of text: the two now sit on one baseline (the line hung 24px low). */
  & .v2-head h2 { margin-bottom: 0; }
  & .v2-head { align-items: end; align-items: last baseline; }

  /* Hours: the season boxes sit one step under the heading, like every other block. */
  & .v2-seasons { margin-top: 8px; }
  & .v2-seasons dt { font-size: 16px !important; }

  /* Text links: the underline stays where it is, the area a thumb can hit grows to 47px. */
  & .v2-actions .v2-link, & .v2-kitchen__text .v2-link, & .v2-crossing__text .v2-link, & .v2-journal__head .v2-link, & .v2-day__slot .v2-link { position: relative; }
  & :is(.v2-actions, .v2-kitchen__text, .v2-crossing__text, .v2-journal__head, .v2-day__slot) .v2-link::before { content: ""; position: absolute; inset: -6px -8px; }
}

/* Wide screens: every two-column block starts its right-hand column on the same line. */
@media (min-width: 901px) {
  html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
    --fr-col: clamp(40px, 7vw, 120px);
    & .v2-head, & .v2-day__head, & .v2-book__grid, & .v2-dishes__menus { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--fr-col); }
    & .v2-day__head p { justify-self: start; margin-left: 0; }
    & .v2-dishes__rail span, & .v2-occ__grid span { font-size: 14.5px; }
  }
}

@media (max-width: 900px) {
  html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
    /* One section measure on phones, on an 8px grid. */
    --rf-sec: 64px;
    & .v2-today__in { padding-top: 16px; padding-bottom: 16px; }
    & .v2-place .v2-place__text { padding-top: 40px !important; padding-bottom: 56px !important; }
    & .v2-place--grill:not(.v2-place--gift) .v2-place__text { padding-bottom: 32px !important; }

    /* Heading, then its line: 16px, everywhere. */
    & .v2-head { gap: 16px; }

    /* One size for each kind of thing. */
    & .v2-index strong, & .v2-book__list strong { font-size: 24px; }
    & .v2-statement { font-size: 24px !important; line-height: 1.17 !important; }
    & .v2-intro.v2-intro--short { padding-top: var(--rf-sec) !important; padding-bottom: var(--rf-sec) !important; }
    & .v2-today__line b, & .v2-dishes__rail strong { font-size: 20px; }
    & .v2-tb { font-size: 16px; }

    /* Every list row is the same height: 16px above and below. */
    & .v2-book__list a, & .v2-book__list button, & .v2-index a, & .v2-index button, & .v2-faq summary { padding-top: 16px; padding-bottom: 16px; }
  }
}

/* ───────────────────────────────────────────────────────────────────────────
   Every phone, not just an iPhone (11 Nov 2026). Checked at 320 to 412px (Android),
   a fold's cover screen (344px), a flip (412 by 1004), and unfolded inner screens
   (626 by 890, 768 by 884, 890 by 626).
   ─────────────────────────────────────────────────────────────────────────── */
/* The booking bar's buttons line up with the page's 20px margin (they sat at 18px). */
@media (max-width: 900px) {
  html body.front #rt-site .mobile-book { padding-left: 20px; padding-right: 20px; }
  html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
    /* On a 344px cover screen the line over the headline broke as "...Ryde, Isle / of Wight". */
    & .v2-hero__kicker { text-wrap: balance; }
  }
}
/* An unfolded fold is wide and short: square photos were taller than the screen. */
@media (min-width: 601px) and (max-width: 900px) {
  html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 {
    & .v2-place .v2-place__img { aspect-ratio: 16 / 9 !important; max-height: 72svh; }
    & .v2-cellar-band figure { aspect-ratio: 16 / 9; }
    & .v2-kitchen .v2-kitchen__a { aspect-ratio: 16 / 9; }
  }
}

/* Wide screens: the footer starts and ends on the same lines as the page above it (it sat 52px wider each side). */
@media (min-width: 901px) {
  html body.front #rt-site.rt-shell footer.site-footer {
    padding-left: max(var(--v2-gutter), calc((100vw - 1320px) / 2 + var(--v2-gutter)));
    padding-right: max(var(--v2-gutter), calc((100vw - 1320px) / 2 + var(--v2-gutter)));
  }
}
/* The narrowest phones (320px): the headline keeps to two lines. */
@media (max-width: 340px) {
  html body.front #rt-site.rt-shell #siteWrapper.v2.v2.v2 .v2-hero h1 { font-size: 40px !important; }
}
