/* LIVE-only tweaks (make-live.py): proof section is press-only once sample reviews are removed */
.proof.press-only{grid-template-columns:1fr}
.proof.press-only .press-column .proof-inner{max-width:470px;margin-left:auto;margin-right:auto}

/* CTA arrow (2026-09-24): one drawn arrow for every call-to-action button, cap-height tall, locked to
   the text baseline and lifted so its middle sits on the middle of the capitals (grid keeps the
   text centred in the button), same gap everywhere. Replaces the text glyph, which the site's
   fonts lack, so each device was substituting a different, low-sitting arrow. */
:root{--cta-arrow-gap:.75em}
:is(a.button,a.opening-button,button[type=submit]):has(>span[aria-hidden="true"]:first-child){display:inline-grid;grid-auto-flow:column;align-items:baseline;align-content:center;justify-content:center;gap:var(--cta-arrow-gap)}
:is(a.button,a.opening-button,button[type=submit])>span[aria-hidden="true"]:first-child{flex:none;display:block;position:static;font-size:inherit;font-family:inherit;line-height:inherit;text-decoration:none;align-self:baseline;transform:translateY(-.01em);transform:translateY(calc(.35em - .5cap));width:1em;height:.7em;margin:0;overflow:hidden;text-indent:200%;white-space:nowrap;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14'%3E%3Cpath d='M1.5 7h16M12 1.5 17.5 7 12 12.5' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
/* The old hero-only arrow (style.css .hero-actions .button:before) is switched off wherever the drawn arrow is present, so each button shows exactly one. */
:is(a.button,a.opening-button,button[type=submit]):has(>span[aria-hidden="true"]:first-child)::before{content:none}
/* Buttons never wrap onto two lines (Richie, 2026-09-24). Overrides older white-space:normal rules on service buttons. */
:is(.button,.opening-button,button[type=submit]){white-space:nowrap!important}
/* Category pages show only the current category (set by meal-page.js); hide the others from first paint so they never flash. */
.category-page .brunch-category-links a[data-category]:not(.is-active){display:none}
/* Review cards straighten on hover, the same as the press cards (Brett, 2026-09-25). */
.quote-card{transition:transform .2s}
.quote-card:hover{transform:rotate(0)}
/* Reviews cycle (2026-09-29): only the quote and name fade, so the tilted card itself never moves.
   reviews-feed.js fixes the card height to the tallest review, so swaps never shift the layout. */
.reviews-stack.is-cycling .quote-card blockquote,.reviews-stack.is-cycling .quote-card .card-footnote{transition:opacity 1s ease}
.reviews-stack.is-cycling .quote-card.is-fading blockquote,.reviews-stack.is-cycling .quote-card.is-fading .card-footnote{opacity:0}
@media (prefers-reduced-motion:reduce){.reviews-stack.is-cycling .quote-card blockquote,.reviews-stack.is-cycling .quote-card .card-footnote{transition:none}}
