/* Batch: coffee, food and drink. Bold and warm on top of base.css: condensed uppercase headings,
   a strong accent and chunky, friendly buttons. */
.h0 { letter-spacing: -0.01em; line-height: 0.86; }
.h1, .h2 { letter-spacing: 0; line-height: 0.9; }
.button { font-weight: 600; font-size: 13px; min-height: 50px; }
.card__title { font-family: var(--font-heading); font-weight: var(--font-heading-weight); font-size: 20px; letter-spacing: 0.01em; line-height: 1; }
.card .price { font-size: 15px; }
.card__info { padding-top: 12px; }
.badge { font-weight: 600; }
.site-header__logo .logo-text { font-size: 26px; letter-spacing: 0.02em; }
.header-nav__list { font-weight: 600; }
.product__title { font-size: calc(clamp(34px, 3.6vw, 52px) * var(--heading-scale)); line-height: 0.9; }

/* Hero over a full photo, text bottom left */
.hero--overlay .hero__heading { max-width: 11ch; }
.hero--overlay .hero__kicker { display: inline-flex; padding: 6px 10px; background: var(--color-accent); color: var(--color-accent-fg); border-radius: var(--button-radius); }

/* Details as roast facts */
.details { background: transparent; border: 0; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.details__row { background: var(--color-card); border-radius: var(--radius); }
.details__row:last-child:nth-child(odd) { grid-column: auto; }

/* Finder answers as big tappable tiles */
.finder__answer { font-family: var(--font-heading); font-weight: var(--font-heading-weight); text-transform: uppercase; font-size: 20px; min-height: 76px; }
.features-section--lined { border-bottom: 1px solid var(--color-line); }
.quote { border: 0; background: var(--color-card); }
.hero--overlay .hero__heading { max-width: 13ch; }
@media (min-width: 990px) { .product .gallery--stack .gallery__item .media { --ratio: 100%; } }
