/* Final responsive refinement: preserve the desktop art direction while keeping
   compact layouts readable and intentional at tablet and mobile widths. */
.actions .button{flex:0 0 auto;white-space:nowrap}

/* Story highlights follow one shared editorial rhythm on every viewport. */
.about__notes>div{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:start;min-height:88px}
.about__notes span{width:54px;height:54px}
.about__notes p{min-width:0}
.about__notes b{white-space:nowrap;font-size:10px;letter-spacing:.075em}

/* Keep the four Story notes as a deliberate, repeatable two-line system. */
@media (min-width:1051px){
  .about__content{max-width:620px}
  .about__notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
  .about__notes>div{grid-template-columns:54px minmax(0,1fr);gap:11px;min-height:82px}
  .about__notes p{font-size:12px;line-height:1.5}
  .about__notes b{font-size:11px}
}

@media (min-width:681px) and (max-width:1050px){
  .about__inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,4vw,44px)}
  .about__notes{grid-template-columns:1fr;gap:12px;margin-top:26px}
  .about__notes>div{grid-template-columns:48px minmax(0,1fr);gap:12px;min-height:74px}
  .about__notes span{width:48px;height:48px;font-size:19px}
  .about__notes p{font-size:12px;line-height:1.48;white-space:normal}
  .about__gallery{height:clamp(380px,53vw,470px);min-height:0;gap:11px}
}

@media (max-width:760px){
  .hero__copy .actions{width:100%;align-items:center;gap:11px}
  .hero__copy .button{min-height:48px}
  .about__inner{grid-template-columns:1fr;gap:38px}
  .about__content{max-width:none}
  .about__notes{grid-template-columns:1fr;gap:18px}
  .about__notes>div{grid-template-columns:54px minmax(0,1fr);gap:14px;min-width:0;min-height:84px}
  .about__gallery{width:100%;height:auto;min-height:455px;max-width:none}
}

@media (max-width:680px){
  .about__notes{gap:15px;margin-top:28px}
  .about__notes>div{grid-template-columns:58px minmax(0,1fr);gap:14px;min-height:70px}
  .about__notes span{width:58px;height:58px;font-size:23px}
  .about__notes p{padding-top:1px;font-size:clamp(11.5px,3.15vw,13px);line-height:1.4;white-space:nowrap}
  .about__notes p br{display:none}
  .about__notes b{margin-bottom:5px;font-size:12px;letter-spacing:.085em;white-space:nowrap}
}

@media (max-width:390px){
  .about__notes{gap:13px}
  .about__notes>div{grid-template-columns:54px minmax(0,1fr);gap:12px;min-height:64px}
  .about__notes span{width:54px;height:54px;font-size:21px}
  .about__notes p{font-size:11px}
  .about__notes b{font-size:11px;margin-bottom:4px}
}

@media (max-width:540px){
  .hero__copy .actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hero__copy .button{width:100%;padding-inline:10px;font-size:14px}
  .hero__copy .hero__visit-link{grid-column:1 / -1;justify-self:start;margin-top:3px}
}

/* Story: one compact rhythm from desktop through mobile. */
.about__notes{align-content:start}

@media (min-width:1051px){
  .about__inner{width:min(1260px,calc(100% - 112px));grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(44px,5vw,72px);align-items:start}
  .about__content{max-width:580px}
  .about__gallery{height:520px;max-width:650px;align-self:start}
  .about__notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;margin-top:36px}
  .about__notes>div{grid-template-columns:54px minmax(0,1fr);gap:12px;min-height:84px}
  .about__notes p{font-size:14px;line-height:1.46;white-space:normal}
  .about__notes p br{display:block}
  .about__notes b{font-size:11px;letter-spacing:.075em}
}

@media (min-width:761px) and (max-width:1050px){
  .about{padding:clamp(76px,8vw,104px) 0 52px}
  .about__inner{width:calc(100% - 72px);grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(28px,4vw,48px);align-items:start}
  .about__content{max-width:none}
  .about__gallery{height:clamp(500px,54vw,520px);min-height:0;align-self:start;gap:11px}
  .about__notes{display:grid;grid-template-columns:1fr;gap:12px;margin-top:28px}
  .about__notes>div{grid-template-columns:52px minmax(0,1fr);gap:13px;min-height:68px}
  .about__notes span{width:52px;height:52px;font-size:20px}
  .about__notes p{font-size:14px;line-height:1.45;white-space:normal}
  .about__notes p br{display:block}
  .about__notes b{font-size:11px;letter-spacing:.075em}
}

@media (max-width:760px){
  .about{padding:72px 0 80px}
  .about__inner{width:calc(100% - 40px);grid-template-columns:1fr;gap:34px}
  .about__content{max-width:none}
  .about__notes{display:grid;grid-template-columns:1fr;gap:16px;margin-top:28px}
  .about__notes>div{grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:center;min-height:58px}
  .about__notes span{width:58px;height:58px;font-size:23px}
  .about__notes p{padding-top:0;font-size:clamp(11px,3vw,13px);line-height:1.35;white-space:nowrap}
  .about__notes p br{display:none}
  .about__notes b{margin-bottom:5px;font-size:12px;letter-spacing:.085em;white-space:nowrap}
  .about__gallery{width:100%;height:auto;min-height:455px;max-width:none}
}

@media (max-width:390px){
  .about__notes{gap:14px}
  .about__notes>div{grid-template-columns:50px minmax(0,1fr);gap:12px;min-height:52px}
  .about__notes span{width:50px;height:50px;font-size:20px}
  .about__notes p{font-size:12px}
  .about__notes b{font-size:11px;margin-bottom:4px}
}

@media (max-width:340px){
  .about__notes p{font-size:11px;white-space:normal}
  .about__notes p br{display:block}
}

/* Unified copy size for accessibility: every sub-title label and body/description
   text reads at one consistent, legible size across mobile, tablet and desktop.
   Headings, buttons and nav are intentionally left untouched. */
.popular__heading p,.menu-section__heading>p,.about__eyebrow,.testimonials__heading>p,.visit__heading p,.rating small,
.intro,.popular__heading span,.menu-section__heading>span,.testimonials__heading div,.visit__heading>span,.about__lead,
.popular-card p,.menu-list p,.about__notes p,.rating,.review-card blockquote,.visit__details p{
  font-size:16px;
}
.about__notes p,.testimonials__heading div,.menu-section__heading>span{
  white-space:normal;
}

/* Hero eyebrow: half the unified size and always a single line on desktop. */
.eyebrow{
  font-size:8px;
}

/* Hero location/hours card: dial the label and value back down so they don't
   dominate the glass panel at the unified 16px. */
.detail span{
  font-size:12px;
}
.detail p{
  font-size:14px;
}

/* All pill buttons and button-styled links legible at 14px on every device. */
.button,.visit__button,.popular__button,.menu-tabs button,.booking-form__submit,.booking-confirmation button,.testimonials__footer a{
  font-size:14px;
}

/* Supporting badges (Nominated / Pet-friendly) sized up for legibility. */
.supporting-badge{
  font-size:13px;
}

/* Rating line matches the supporting badges' size, on every device. */
.rating,.rating small{
  font-size:13px;
}

/* Our Story intro copy: centered on mobile only, per request. */
@media(max-width:680px){
  .about__eyebrow,.about h2,.about__lead{
    text-align:center;
    margin-inline:auto;
  }
}

/* Hero eyebrow: a touch larger on desktop, where there's room to spare. */
@media(min-width:1051px){
  .eyebrow{font-size:11px}
}

/* Visit LENA link: same size as the buttons above it, centered under Book a table. */
@media(max-width:540px){
  .hero__copy .hero__visit-link{grid-column:1;justify-self:center;font-size:14px;margin-top:10px}
}

/* Season Specials: the odd tab alone on its row was reading smaller than the
   paired tabs above it — let it size to its own text instead of the shared
   two-column width. */
@media(max-width:600px){
  .menu-tabs button:last-child{flex-basis:auto;padding-inline:20px}
}

/* Booking date field: native date inputs render their placeholder and calendar
   icon inconsistently across browsers (mobile Safari shows neither until
   tapped). Draw our own so the field always looks the same everywhere. */
.date-field{position:relative;display:flex;align-items:center}
.date-field input{width:100%}
.date-field:not(.has-value) input{color:transparent}
.date-field__placeholder{position:absolute;left:13px;color:#817770;font-size:16px;line-height:1;pointer-events:none;font-family:Manrope,sans-serif;text-transform:none;letter-spacing:normal;font-weight:400}
.date-field.has-value .date-field__placeholder{display:none}
.date-field__icon{position:absolute;right:13px;font-size:16px;line-height:1;opacity:.65;pointer-events:none}
.date-field input::-webkit-calendar-picker-indicator{opacity:0}
