/* Tema Fast Order — direto ao pedido: título pesado, foto recortada, etiqueta de preço e cartões com botão +. */
.th-fastorder { --sf-radius: 18px; }
.th-fastorder .sf-head { background: var(--sf-surface); border-bottom: 0; box-shadow: 0 1px 0 var(--sf-line); position: sticky; top: 0; }
.th-fastorder.is-preview .sf-head { top: 2rem; }
.th-fastorder .sf-brand__mark { border-radius: 12px; background: var(--sf-accent); color: var(--sf-accent-ink); }
.th-fastorder .sf-nav__cta { border-radius: 12px; padding: .65rem 1.2rem; }
.th-fastorder .sf-btn { border-radius: 14px; }

.hero-fo { padding: clamp(2rem, 6vw, 4.5rem) 0 clamp(2.5rem, 6vw, 4rem); overflow: hidden; }
.hero-fo__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; }
.hero-fo__title { font-size: clamp(2.4rem, 5.4vw, 4.8rem); line-height: .95; letter-spacing: -.02em; max-width: 15ch; }
.font-editorial .hero-fo__title, .font-classica .hero-fo__title { font-weight: 600; }
.hero-fo__lead { font-size: 1.1rem; color: var(--sf-muted); max-width: 44ch; margin: 1.3rem 0 1.8rem !important; }
.hero-fo__chips { list-style: none; margin: 1.6rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.hero-fo__chips li { padding: .45rem .85rem; border-radius: 999px; background: var(--sf-surface); border: 1px solid var(--sf-line); font-size: .88rem; font-weight: 600; }
.hero-fo__media { position: relative; }
.hero-fo__img, .hero-fo__ph { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 32px; transform: rotate(2.5deg); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .5); }
.hero-fo__ph { display: grid; place-items: center; background: var(--sf-accent); color: var(--sf-accent-ink); font: 800 8rem/1 var(--sf-display); }
.hero-fo__tag { position: absolute; left: -1rem; bottom: 1.5rem; display: grid; gap: .15rem; padding: .9rem 1.1rem; border-radius: 16px; background: var(--sf-text); color: var(--sf-bg); text-decoration: none; transform: rotate(-3deg); box-shadow: 0 16px 30px -16px rgba(0, 0, 0, .6); max-width: 70%; }
.hero-fo__tag span { font-size: .85rem; opacity: .85; }
.hero-fo__tag strong { font: 800 1.6rem/1 var(--sf-body); color: var(--sf-accent); }

.th-fastorder .sf-sec:nth-of-type(even) { background: var(--sf-surface); }
.th-fastorder .sf-title { font-size: clamp(2rem, 5vw, 3.4rem); }
.th-fastorder .sf-hl__grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
.th-fastorder .sf-card__link { border: 0; background: var(--sf-surface); box-shadow: 0 10px 30px -22px rgba(0, 0, 0, .55); }
.th-fastorder .sf-sec:nth-of-type(even) .sf-card__link { background: var(--sf-bg); }
.th-fastorder .sf-card__media { aspect-ratio: 1; margin: .7rem .7rem 0; border-radius: 14px; }
.th-fastorder .sf-card__price strong { font-size: 1.25rem; font-weight: 800; }
.th-fastorder .sf-card__cta { top: auto; bottom: 1rem; right: 1rem; width: 2.8rem; height: 2.8rem; font-size: 1.5rem; }
.th-fastorder .sf-services__list li { border: 0; background: var(--sf-bg); box-shadow: inset 0 0 0 2px var(--sf-line); }
.th-fastorder .sf-services__icon { color: var(--sf-accent-text); }
.th-fastorder .sf-cta { background: var(--sf-accent); color: var(--sf-accent-ink); }
.th-fastorder .sf-cta .sf-btn--accent { background: var(--sf-text); color: var(--sf-bg); }
.th-fastorder .sf-cta .sf-btn--ghost { color: var(--sf-accent-ink); }
.th-fastorder .sf-gallery__grid li { border-radius: 16px; }
.th-fastorder .sf-about__media { border-radius: 24px; }

@media (max-width: 760px) {
  .hero-fo__grid { grid-template-columns: minmax(0, 1fr); }
  .hero-fo__media { order: -1; margin: 0 1rem; }
  .hero-fo__img, .hero-fo__ph { aspect-ratio: 4 / 3.2; border-radius: 24px; }
  .hero-fo__tag { left: .4rem; bottom: -1rem; }
  .hero-fo__copy { padding-top: 1rem; }
  .th-fastorder .sf-nav__cta { display: none; }
}

/* Contadores — Fast Order: faixa de destaque na cor de ação */
.th-fastorder .sf-counters { background: var(--sf-accent); color: var(--sf-accent-ink); border: 0; }
.th-fastorder .sf-counters__title { color: var(--sf-accent-ink); }
.th-fastorder .sf-counter__num { color: var(--sf-accent-ink); font-weight: 800; }
.th-fastorder .sf-counter__label { color: color-mix(in srgb, var(--sf-accent-ink) 86%, transparent); font-weight: 600; }
.th-fastorder .sf-counter { border-color: color-mix(in srgb, var(--sf-accent-ink) 25%, transparent) !important; }
