:root {
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --weight-regular: 400;
  --weight-medium: 600;
  --weight-bold: 700;
  --type-xs: clamp(12px, .75vw, 13px);
  --type-sm: clamp(13px, .9vw, 15px);
  --type-base: clamp(15px, 1vw, 17px);
  --type-lead: clamp(17px, 1.35vw, 21px);
  --type-card-title: clamp(20px, 1.9vw, 28px);
  --type-section: clamp(34px, 4.2vw, 58px);
  --type-hero: clamp(44px, 5.5vw, 72px);
  --radius: 8px;
  --shadow-soft: 0 24px 80px rgba(0, 0, 0, .18);
  --shadow-tight: 0 12px 32px rgba(0, 0, 0, .16);
  --page-max: 1180px;
  --keyboard-offset: 0px;
  --visual-vh: 100vh;
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: var(--font);
  letter-spacing: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

button, input {
  font: inherit;
}

.shell {
  min-height: 100vh;
  overflow: hidden;
}

.wrap {
  width: min(var(--page-max), calc(100% - 40px));
  margin: 0 auto;
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  backdrop-filter: none;
}

.nav {
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.brand {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 10px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: pointer;
}

.brand-logo {
  width: 64px;
  height: 64px;
  border-radius: 0;
  object-fit: contain;
  display: block;
  background: transparent;
  padding: 0;
  box-shadow: none;
  filter: contrast(1.28) drop-shadow(0 5px 10px rgba(23,16,15,.22));
}

.brand-word {
  display: grid;
  gap: 2px;
  min-width: 176px;
}

.brand-word strong {
  font-size: 15px;
  line-height: 1;
}

.brand-word small {
  font-size: 10px;
  line-height: 1;
  opacity: .72;
  font-weight: 700;
  white-space: nowrap;
}

.mark {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  font-weight: 700;
}

.links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
  min-width: 0;
  gap: clamp(12px, 1.7vw, 22px);
  font-size: 13px;
  font-weight: 700;
}

.links a {
  white-space: nowrap;
}

.nav-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.catalog-home-mobile {
  display: none;
}

.icon-btn {
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 7px;
  display: grid;
  place-items: center;
  cursor: pointer;
}

.btn {
  border: 0;
  min-height: 44px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 18px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}

.btn.big {
  min-height: 54px;
  padding: 0 24px;
  font-size: 16px;
}

.hero {
  position: relative;
}

.hero-grid {
  min-height: calc(100vh - 72px);
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .78fr);
  gap: 46px;
  align-items: center;
  padding: 56px 0 70px;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: fit-content;
  max-width: 100%;
  align-self: flex-start;
  min-height: 32px;
  border-radius: 7px;
  padding: 0 11px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}

h1 {
  margin: 18px 0 0;
  font-size: var(--type-hero);
  line-height: .92;
  letter-spacing: 0;
  overflow-wrap: break-word;
}

.lead {
  margin: 22px 0 0;
  max-width: 680px;
  font-size: var(--type-lead);
  line-height: 1.42;
  font-weight: 580;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.hero-modes {
  width: min(100%, 650px);
  margin-top: 22px;
  padding: 15px 16px 16px;
  border: 1px solid rgba(155, 29, 20, .2);
  border-left: 5px solid #9b1d14;
  border-radius: var(--radius);
  background:
    linear-gradient(135deg, rgba(255, 250, 240, .96), rgba(244, 224, 201, .74));
  box-shadow: 0 12px 26px rgba(23, 16, 15, .08);
}

.hero-modes strong {
  display: block;
  margin-bottom: 10px;
  color: #17100f;
  font-size: var(--type-base);
}

.hero-mode-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 10px;
}

.hero-mode-list span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 0 5px 14px;
  border-radius: 0;
  border-left: 2px solid rgba(155, 29, 20, .46);
  background: transparent;
  color: #8c1c13;
  box-shadow: none;
  font-size: var(--type-sm);
  font-weight: 500;
  line-height: 1.2;
}

.metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 34px;
  max-width: 680px;
}

.metric {
  border-radius: 8px;
  padding: 16px;
}

.metric strong {
  display: block;
  font-size: 24px;
  line-height: 1;
}

.metric span {
  display: block;
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 700;
}

.visual {
  position: relative;
  min-height: 620px;
  display: grid;
  place-items: end center;
}

.product-shot {
  position: relative;
  width: min(100%, 430px);
  max-height: 650px;
  object-fit: contain;
  filter: drop-shadow(0 30px 42px rgba(0, 0, 0, .34));
  z-index: 2;
}

.floating-card {
  position: absolute;
  z-index: 4;
  border-radius: 8px;
  padding: 15px;
  box-shadow: var(--shadow-tight);
  transform: translate3d(var(--float-x, 0px), var(--float-y, 0px), 0);
  transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease;
}

.floating-card strong {
  display: block;
  font-size: 15px;
}

.floating-card span {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 500;
}

.gift-card {
  left: 0;
  bottom: 44px;
  width: 260px;
}

.ai-card {
  right: 0;
  top: 86px;
  width: 292px;
}

.chat-lines {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.bubble {
  width: fit-content;
  max-width: 100%;
  border-radius: 8px;
  padding: 9px 11px;
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}

.bubble.user {
  margin-left: auto;
}

.section {
  position: relative;
  padding: 76px 0;
}

.section + .section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: min(var(--page-max), calc(100% - 40px));
  height: 1px;
  background: rgba(115, 87, 81, .18);
  transform: translateX(-50%);
}

.section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px;
}

.section-head h2 {
  margin: 0;
  max-width: 740px;
  font-size: var(--type-section);
  line-height: 1;
  letter-spacing: 0;
}

.section-head p {
  margin: 0;
  max-width: 390px;
  font-size: 15px;
  line-height: 1.45;
  font-weight: 500;
}

.model-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.model-card {
  border-radius: 8px;
  overflow: hidden;
  min-height: 430px;
  display: flex;
  flex-direction: column;
}

.model-media {
  height: 250px;
  display: grid;
  place-items: center;
  padding: 18px;
}

.model-media img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 18px 25px rgba(0,0,0,.22));
}

.model-body {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 13px;
  flex: 1;
}

.model-body h3 {
  margin: 0;
  font-size: 22px;
  line-height: 1.05;
}

.tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.tag {
  border-radius: 6px;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  font-size: 12px;
  font-weight: 700;
}

.price-row {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.price {
  font-size: 22px;
  font-weight: 700;
}

.compare {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border-radius: 8px;
}

.compare-col {
  padding: 18px;
  min-height: 250px;
}

.compare-col h3 {
  margin: 0 0 12px;
  font-size: 22px;
}

.compare-col p {
  margin: 9px 0;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 700;
}

.recipe-band {
  border-radius: 8px;
  padding: 28px;
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 28px;
  align-items: center;
}

.recipe-band h2 {
  margin: 0;
  font-size: var(--type-section);
  line-height: .98;
}

.recipe-band p {
  margin: 15px 0 0;
  max-width: 640px;
  font-size: 17px;
  line-height: 1.45;
  font-weight: 500;
}

.recipe-stack {
  display: grid;
  gap: 10px;
}

.recipe-item {
  border-radius: 8px;
  min-height: 66px;
  padding: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-weight: 700;
}

.recipe-item small {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  font-weight: 500;
}

.sticky-chat {
  position: fixed;
  z-index: 50;
  right: 18px;
  bottom: 18px;
  width: 310px;
  max-width: calc(100vw - 36px);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.chat-panel {
  border-radius: 8px;
  overflow: hidden;
}

.chat-launch {
  display: none;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 10px 14px;
  border: 0;
  border-radius: 8px;
  color: #fff8ed;
  background: #17100f;
  box-shadow: var(--shadow-soft);
  cursor: pointer;
}

.chat-launch strong,
.chat-launch small {
  display: block;
  text-align: left;
}

.chat-launch strong {
  font-size: 14px;
  line-height: 1;
}

.chat-launch small {
  margin-top: 3px;
  font-size: 10px;
  font-weight: 700;
  opacity: .82;
}

.sticky-chat.is-collapsed {
  width: auto;
  overflow: visible;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.sticky-chat.is-collapsed .chat-panel {
  display: none;
}

.sticky-chat.is-collapsed .chat-launch {
  display: inline-flex;
}

.chat-head {
  min-height: 50px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 10px 12px;
}

.chat-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.chat-head strong {
  display: block;
  font-size: 13px;
}

.chat-head span {
  display: block;
  margin-top: 2px;
  font-size: 10px;
  font-weight: 700;
}

.chat-close {
  margin-left: auto;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 6px;
  color: currentColor;
  background: rgba(255,255,255,.1);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.chat-body {
  padding: 10px 12px 0;
}

.quick {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.quick span {
  min-height: 26px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  font-size: 11px;
  font-weight: 700;
}

.chat-input {
  display: flex;
  gap: 7px;
  padding: 10px 12px 12px;
}

.chat-input input {
  min-width: 0;
  flex: 1;
  border: 0;
  min-height: 36px;
  border-radius: 7px;
  padding: 0 12px;
  outline: none;
  font-size: 12px;
  font-weight: 500;
}

.chat-input button {
  border: 0;
  width: 36px;
  height: 36px;
  border-radius: 7px;
  font-weight: 700;
  cursor: pointer;
}

.mobile-bar {
  display: none;
}

@media (max-width: 980px) {
  .links {
    display: none;
  }

  .hero-grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .visual {
    min-height: 560px;
  }

  .model-grid,
  .compare,
  .recipe-band {
    grid-template-columns: 1fr;
  }

  .section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .sticky-chat {
    display: block;
    right: 12px;
    bottom: 12px;
    width: min(310px, calc(100vw - 24px));
  }

  .sticky-chat.is-collapsed {
    width: auto;
  }

  .mobile-bar {
    display: none;
  }
}

@media (max-width: 620px) {
  .wrap {
    width: min(100% - 24px, var(--page-max));
  }

  .nav {
    min-height: 72px;
  }

  .brand-logo {
    width: 56px;
    height: 56px;
  }

  .brand-word small {
    display: none;
  }

  .nav-actions .btn {
    display: none;
  }

  h1 {
    font-size: 43px;
  }

  .hero-grid {
    gap: 22px;
    padding-top: 32px;
  }

  .metrics {
    grid-template-columns: 1fr;
  }

  .visual {
    min-height: 460px;
  }

  .product-shot {
    max-height: 470px;
  }

  .floating-card {
    position: static;
    width: 100%;
    margin-top: 10px;
  }

  .gift-card,
  .ai-card {
    width: 100%;
  }

  .section {
    padding: 52px 0;
  }
}

/* SmokeTech */
.theme-tech {
  color: #f5f2e9;
  background: #090908;
}

.theme-tech .topbar {
  background: rgba(9, 9, 8, .74);
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.theme-tech .mark,
.theme-tech .btn.primary,
.theme-tech .chat-input button {
  color: #100f0d;
  background: #f0a331;
}

.theme-tech .btn.secondary,
.theme-tech .icon-btn {
  color: #f5f2e9;
  background: rgba(255,255,255,.1);
}

.theme-tech .hero {
  background:
    linear-gradient(90deg, #090908 0%, rgba(9,9,8,.88) 48%, rgba(9,9,8,.36) 100%),
    url("assets/hero-tech-bg.webp") center / cover no-repeat;
}

.theme-tech .eyebrow,
.theme-tech .metric,
.theme-tech .floating-card,
.theme-tech .model-card,
.theme-tech .compare-col,
.theme-tech .sticky-chat,
.theme-tech .mobile-bar {
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.14);
}

.theme-tech .lead,
.theme-tech .section-head p,
.theme-tech .floating-card span,
.theme-tech .metric span {
  color: #c9c0b2;
}

.theme-tech .model-media {
  background: linear-gradient(145deg, #1d1a16, #0d0c0b);
}

.theme-tech .tag,
.theme-tech .quick span,
.theme-tech .recipe-item {
  color: #21180b;
  background: #f4c979;
}

.theme-tech .recipe-band {
  background: linear-gradient(135deg, #f0a331, #f2d187 58%, #e7ece6);
  color: #11100e;
}

.theme-tech .chat-head {
  background: #f0a331;
  color: #100f0d;
}

.theme-tech .chat-dot {
  background: #2b7c42;
}

.theme-tech .bubble {
  background: rgba(255,255,255,.11);
}

.theme-tech .bubble.user {
  color: #100f0d;
  background: #f0a331;
}

.theme-tech .chat-input input {
  color: #f5f2e9;
  background: rgba(255,255,255,.1);
}

/* Recipe Club */
.theme-recipe {
  color: #241f1b;
  background: #fff8ef;
}

.theme-recipe .topbar {
  background: rgba(255, 248, 239, .82);
  border-bottom: 1px solid rgba(88, 54, 29, .12);
}

.theme-recipe .mark,
.theme-recipe .btn.primary,
.theme-recipe .chat-input button {
  color: #fff9ef;
  background: #b43c18;
}

.theme-recipe .btn.secondary,
.theme-recipe .icon-btn {
  color: #3d2a22;
  background: #f1dfc7;
}

.theme-recipe .hero {
  background:
    linear-gradient(90deg, rgba(255,248,239,.98) 0%, rgba(255,248,239,.9) 50%, rgba(255,248,239,.28) 100%),
    url("assets/hero-recipe-bg.webp") center / cover no-repeat;
}

.theme-recipe .eyebrow,
.theme-recipe .metric,
.theme-recipe .model-card,
.theme-recipe .compare-col,
.theme-recipe .sticky-chat,
.theme-recipe .mobile-bar {
  background: #fffdf8;
  border: 1px solid #ead8c1;
}

.theme-recipe .floating-card {
  background: #3b241a;
  color: #fff8ef;
}

.theme-recipe .lead,
.theme-recipe .section-head p,
.theme-recipe .floating-card span,
.theme-recipe .metric span {
  color: #72533d;
}

.theme-recipe .model-media {
  background: linear-gradient(145deg, #f3e0c6, #fff8ef);
}

.theme-recipe .tag,
.theme-recipe .quick span,
.theme-recipe .recipe-item {
  color: #3b241a;
  background: #f1d18e;
}

.theme-recipe .recipe-band {
  background: linear-gradient(135deg, #2c211b, #78350f 54%, #c84a20);
  color: #fff8ef;
}

.theme-recipe .chat-head {
  background: #2c211b;
  color: #fff8ef;
}

.theme-recipe .chat-dot {
  background: #7bd37b;
}

.theme-recipe .bubble {
  background: #f1dfc7;
}

.theme-recipe .bubble.user {
  color: #fff8ef;
  background: #b43c18;
}

.theme-recipe .chat-input input {
  background: #f5eadb;
  color: #241f1b;
}

/* Retail */
.theme-retail {
  color: #101827;
  background: #f7f9fc;
}

.theme-retail .topbar {
  background: rgba(247,249,252,.88);
  border-bottom: 1px solid #dbe4f0;
}

.theme-retail .mark,
.theme-retail .btn.primary,
.theme-retail .chat-input button {
  background: #2563eb;
  color: #fff;
}

.theme-retail .btn.secondary,
.theme-retail .icon-btn {
  background: #e7edf6;
  color: #101827;
}

.theme-retail .hero {
  background:
    radial-gradient(circle at 78% 24%, rgba(249,115,22,.16), transparent 32%),
    linear-gradient(135deg, #f8fbff 0%, #edf3fb 55%, #fff4eb 100%);
}

.theme-retail .eyebrow,
.theme-retail .metric,
.theme-retail .floating-card,
.theme-retail .model-card,
.theme-retail .compare-col,
.theme-retail .sticky-chat,
.theme-retail .mobile-bar {
  background: #fff;
  border: 1px solid #dce5ef;
}

.theme-retail .lead,
.theme-retail .section-head p,
.theme-retail .floating-card span,
.theme-retail .metric span {
  color: #526173;
}

.theme-retail .model-media {
  background: linear-gradient(145deg, #eef4fb, #fff);
}

.theme-retail .tag,
.theme-retail .quick span,
.theme-retail .recipe-item {
  color: #0e2a5f;
  background: #dbeafe;
}

.theme-retail .recipe-band {
  background: linear-gradient(135deg, #0f172a, #2563eb 54%, #f97316);
  color: #fff;
}

.theme-retail .chat-head {
  background: #0f172a;
  color: #fff;
}

.theme-retail .chat-dot {
  background: #22c55e;
}

.theme-retail .bubble {
  background: #e7edf6;
}

.theme-retail .bubble.user {
  background: #2563eb;
  color: #fff;
}

.theme-retail .chat-input input {
  background: #edf2f7;
  color: #101827;
}

/* Industrial */
.theme-industrial {
  color: #edf2f0;
  background: #111413;
}

.theme-industrial .topbar {
  background: rgba(17,20,19,.82);
  border-bottom: 1px solid rgba(219, 226, 222, .12);
}

.theme-industrial .mark,
.theme-industrial .btn.primary,
.theme-industrial .chat-input button {
  color: #07100c;
  background: #8ee2a8;
}

.theme-industrial .btn.secondary,
.theme-industrial .icon-btn {
  color: #edf2f0;
  background: rgba(142,226,168,.12);
}

.theme-industrial .hero {
  background:
    linear-gradient(90deg, #111413 0%, rgba(17,20,19,.9) 50%, rgba(17,20,19,.35) 100%),
    url("assets/hero-industrial-bg.webp") center / cover no-repeat;
}

.theme-industrial .eyebrow,
.theme-industrial .metric,
.theme-industrial .floating-card,
.theme-industrial .model-card,
.theme-industrial .compare-col,
.theme-industrial .sticky-chat,
.theme-industrial .mobile-bar {
  background: rgba(237,242,240,.08);
  border: 1px solid rgba(237,242,240,.14);
}

.theme-industrial .lead,
.theme-industrial .section-head p,
.theme-industrial .floating-card span,
.theme-industrial .metric span {
  color: #aab7b0;
}

.theme-industrial .model-media {
  background: linear-gradient(145deg, #242a28, #131716);
}

.theme-industrial .tag,
.theme-industrial .quick span,
.theme-industrial .recipe-item {
  color: #07100c;
  background: #8ee2a8;
}

.theme-industrial .recipe-band {
  background: linear-gradient(135deg, #dce5df, #8ee2a8 54%, #f4bf4f);
  color: #111413;
}

.theme-industrial .chat-head {
  background: #8ee2a8;
  color: #07100c;
}

.theme-industrial .chat-dot {
  background: #0a8f43;
}

.theme-industrial .bubble {
  background: rgba(237,242,240,.1);
}

.theme-industrial .bubble.user {
  color: #07100c;
  background: #8ee2a8;
}

.theme-industrial .chat-input input {
  color: #edf2f0;
  background: rgba(237,242,240,.1);
}

/* Bold */
.theme-bold {
  color: #111111;
  background: #f4f0e8;
}

.theme-bold .topbar {
  background: rgba(244,240,232,.84);
  border-bottom: 2px solid #111;
}

.theme-bold .mark,
.theme-bold .btn.primary,
.theme-bold .chat-input button {
  color: #fff;
  background: #111;
}

.theme-bold .btn.secondary,
.theme-bold .icon-btn {
  color: #111;
  background: #ffcf24;
  border: 2px solid #111;
}

.theme-bold .hero {
  background:
    linear-gradient(118deg, #f4f0e8 0%, #f4f0e8 52%, #ffcf24 52%, #ffcf24 69%, #f0642f 69%, #f0642f 100%);
}

.theme-bold .eyebrow,
.theme-bold .metric,
.theme-bold .floating-card,
.theme-bold .model-card,
.theme-bold .compare-col,
.theme-bold .sticky-chat,
.theme-bold .mobile-bar {
  background: #fffaf0;
  border: 2px solid #111;
  box-shadow: 8px 8px 0 #111;
}

.theme-bold .lead,
.theme-bold .section-head p,
.theme-bold .floating-card span,
.theme-bold .metric span {
  color: #4c4038;
}

.theme-bold .model-media {
  background: #f0642f;
}

.theme-bold .tag,
.theme-bold .quick span,
.theme-bold .recipe-item {
  color: #111;
  background: #ffcf24;
  border: 2px solid #111;
}

.theme-bold .recipe-band {
  background: #111;
  color: #fffaf0;
  border: 2px solid #111;
}

.theme-bold .chat-head {
  background: #111;
  color: #fffaf0;
}

.theme-bold .chat-dot {
  background: #ffcf24;
}

.theme-bold .bubble {
  background: #f4f0e8;
  border: 2px solid #111;
}

.theme-bold .bubble.user {
  background: #ffcf24;
}

.theme-bold .chat-input input {
  border: 2px solid #111;
  background: #fffaf0;
  color: #111;
}

.theme-bold h1 {
  font-size: var(--type-hero);
  line-height: .82;
  text-transform: uppercase;
}

/* Index */
.index-page {
  background: #101216;
  color: #f7f2e8;
}

.index-hero {
  min-height: 100vh;
  padding: 44px 0;
  display: grid;
  align-items: center;
}

.index-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(220px, 1fr));
  gap: 14px;
  margin-top: 34px;
}

.index-card {
  min-height: 420px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  background: #1b1e24;
  display: flex;
  flex-direction: column;
}

.index-card img {
  height: 230px;
  width: 100%;
  object-fit: cover;
}

.index-card div {
  padding: 18px;
}

.index-card h2 {
  margin: 0;
  font-size: 24px;
  line-height: 1;
}

.index-card p {
  color: #b8c0c9;
  font-weight: 500;
  line-height: 1.4;
}

@media (max-width: 1280px) {
  .index-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .index-grid {
    grid-template-columns: 1fr;
  }
}

/* Traeger-inspired product storytelling */
.theme-traeger {
  --earth-red: #8c1c13;
  --earth-clay: #bf4342;
  --earth-ivory: #e7d7c1;
  --earth-taupe: #a78a7f;
  --earth-brown: #735751;
  --earth-ink: #17100f;
  --earth-paper: #f4eadb;
  color: var(--earth-ink);
  background: var(--earth-ivory);
}

.theme-traeger .topbar {
  background: rgba(231, 215, 193, .9);
  border-bottom: 1px solid rgba(115, 87, 81, .28);
}

.theme-traeger .mark {
  background: var(--earth-ink);
  color: var(--earth-ivory);
}

.theme-traeger .btn.primary,
.theme-traeger .chat-input button {
  background: var(--earth-red);
  color: #fff8ed;
}

.theme-traeger .btn.secondary,
.theme-traeger .icon-btn {
  background: var(--earth-brown);
  color: #fff8ed;
}

.theme-traeger .hero {
  background:
    linear-gradient(100deg, var(--earth-ivory) 0%, #f0e4d2 52%, var(--earth-brown) 52%, #2b1916 100%);
}

.theme-traeger .hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(390px, .96fr);
  gap: 34px;
}

.theme-traeger h1 {
  max-width: 650px;
  font-size: var(--type-hero);
  line-height: .96;
}

.theme-traeger .eyebrow {
  background: var(--earth-red);
  color: #fff8ed;
}

.theme-traeger .lead {
  color: #5f4741;
}

.theme-traeger .metric,
.theme-traeger .model-card,
.theme-traeger .compare-col,
.theme-traeger .sticky-chat,
.theme-traeger .floating-card {
  background: var(--earth-paper);
  border: 1px solid rgba(115, 87, 81, .28);
}

.theme-traeger .metric,
.theme-traeger .floating-card,
.lineup-card,
.catalog-card,
.catalog-hero-card,
.modal-card,
.food-card,
.use-card,
.chat-promo,
.function-stack article,
.support-card,
.recipe-band,
.ai-box,
.decision-main {
  box-shadow: 0 18px 42px rgba(71, 45, 38, .12);
}

.theme-traeger .metric span,
.theme-traeger .section-head p,
.theme-traeger .floating-card span {
  color: #735751;
}

.traeger-visual {
  min-height: 680px;
  place-items: center;
}

.smoker-wrap {
  --hero-shift-x: 0px;
  --hero-shift-y: 0px;
  position: relative;
  z-index: 3;
  max-height: 690px;
  width: min(84%, 520px);
  filter: drop-shadow(0 32px 30px rgba(0,0,0,.42));
  animation: none;
  transform: none;
}

.traeger-product {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  max-height: 690px;
  object-fit: contain;
}

.oven-window-fx {
  position: absolute;
  z-index: 3;
  left: 43.5%;
  top: 51.2%;
  width: 14.6%;
  height: 11.2%;
  border-radius: 4px;
  overflow: hidden;
  pointer-events: none;
  opacity: .95;
  background: transparent;
  box-shadow:
    inset 0 0 18px rgba(255,213,134,.24),
    inset 0 -12px 18px rgba(255,132,41,.22);
  clip-path: inset(4% 5% 6% 5% round 4px);
  mix-blend-mode: screen;
  animation: none;
}

.oven-window-fx::before,
.oven-window-fx::after,
.oven-window-fx i {
  content: "";
  position: absolute;
  pointer-events: none;
}

.oven-window-fx::before {
  left: 10%;
  right: 10%;
  bottom: 2%;
  height: 42%;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(255,232,146,.98), rgba(255,145,52,.62) 48%, rgba(255,91,34,.2) 70%, transparent 78%);
  animation: none;
}

.oven-window-fx::after {
  left: 9%;
  top: 8%;
  width: 82%;
  height: 92%;
  background:
    linear-gradient(90deg, transparent 0%, rgba(255,255,255,.28) 46%, transparent 82%),
    radial-gradient(ellipse at center, rgba(255,255,255,.22), transparent 66%);
  transform: translateY(22px);
  animation: none;
  opacity: .42;
}

.oven-window-fx i {
  bottom: 5%;
  width: 15%;
  height: 68%;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.46), rgba(255,255,255,.1) 54%, rgba(255,255,255,0));
  animation: none;
  opacity: .35;
}

.oven-window-fx i:nth-child(1) { left: 24%; animation-delay: -.7s; }
.oven-window-fx i:nth-child(2) { left: 45%; height: 66%; animation-delay: -1.8s; }
.oven-window-fx i:nth-child(3) { left: 64%; height: 50%; animation-delay: -2.8s; }

.product-halo {
  --hero-halo-x: 0px;
  --hero-halo-y: 0px;
  position: absolute;
  width: min(86%, 560px);
  height: 72%;
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(191,67,66,.34), rgba(231,215,193,.12)),
    linear-gradient(180deg, rgba(23,16,15,.4), rgba(23,16,15,.08));
  clip-path: polygon(10% 0, 100% 7%, 88% 100%, 0 92%);
  transform: translate3d(var(--hero-halo-x), var(--hero-halo-y), 0) translateY(24px) rotate(-2deg);
  animation: haloPulse 7s ease-in-out infinite;
}

.smoke-field {
  position: absolute;
  inset: 10% 6% auto auto;
  width: 440px;
  height: 420px;
  pointer-events: none;
  overflow: hidden;
}

.smoke-field i {
  position: absolute;
  bottom: 0;
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.3) 0 26%, rgba(255,255,255,.14) 42%, transparent 72%);
  filter: none;
  animation: smokeRise 7s ease-in-out infinite;
}

.smoke-field i:nth-child(1) { left: 40px; animation-delay: 0s; }
.smoke-field i:nth-child(2) { left: 130px; width: 120px; height: 120px; animation-delay: 1.4s; }
.smoke-field i:nth-child(3) { left: 250px; width: 92px; height: 92px; animation-delay: 2.7s; }
.smoke-field i:nth-child(4) { left: 320px; width: 70px; height: 70px; animation-delay: 4s; }

.lineup-carousel {
  overflow: hidden;
  padding: 2px 2px 24px;
}

.lineup {
  --lineup-gap: 14px;
  display: flex;
  gap: var(--lineup-gap);
  align-items: stretch;
  will-change: transform;
}

.lineup.is-sliding {
  transition: transform .54s cubic-bezier(.22, .78, .22, 1);
}

.lineup-card {
  flex: 0 0 calc((100% - 42px) / 4);
  min-height: 350px;
  border-radius: 8px;
  background: var(--earth-paper);
  border: 1px solid rgba(115,87,81,.25);
  padding: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  overflow: hidden;
}

.lineup-card img {
  height: 220px;
  width: 100%;
  object-fit: contain;
  filter: drop-shadow(0 18px 18px rgba(0,0,0,.22));
  transition: transform .35s ease;
}

.lineup-card:hover img {
  transform: translateY(-8px) scale(1.04);
}

.lineup-card h3 {
  margin: 12px 0 8px;
  font-size: 23px;
}

.lineup-card p {
  margin: 0;
  color: #735751;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 500;
}

.products-section {
  background:
    linear-gradient(180deg, rgba(167,138,127,.22), rgba(167,138,127,.12)),
    #d7c4aa;
}

.lineup-section {
  background:
    linear-gradient(180deg, #eadcc8 0%, #e7d7c1 100%);
}

.decision-section,
.use-section {
  background:
    linear-gradient(180deg, rgba(23,16,15,.06), rgba(23,16,15,0) 28%),
    linear-gradient(180deg, #cfb59b 0%, #e4d2ba 100%);
}

.flavor-section {
  background:
    radial-gradient(circle at 78% 28%, rgba(140,28,19,.18), transparent 34%),
    linear-gradient(180deg, #e7d7c1 0%, #d9c6ad 100%);
}

.ai-section,
.chat-promo-section {
  background:
    linear-gradient(180deg, #cdb39d 0%, #e7d7c1 100%);
}

.support-section {
  background:
    linear-gradient(180deg, #f0e4d2 0%, #e3d0b7 100%);
}

.lineup-section::after,
.use-section::after,
.chat-promo-section::after,
.ai-section::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: min(var(--page-max), calc(100% - 40px));
  height: 6px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(140,28,19,.42), transparent);
  transform: translateX(-50%);
}

.food-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  max-width: 760px;
  margin: 0 auto;
}

.food-card {
  position: relative;
  min-height: 390px;
  border-radius: 8px;
  padding: 18px;
  overflow: hidden;
  background: #f6ead8;
  border: 1px solid rgba(115,87,81,.24);
  box-shadow: 0 16px 36px rgba(115,87,81,.12);
}

.food-card span {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  border-radius: 6px;
  padding: 0 9px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.food-card h3 {
  margin: 14px 0 8px;
  font-size: 28px;
  line-height: 1;
}

.food-card p {
  margin: 0;
  color: #735751;
  font-weight: 500;
  line-height: 1.42;
}

.food-visual {
  position: relative;
  height: 170px;
  margin: -2px -2px 18px;
  border-radius: 8px;
  overflow: hidden;
  background: #8c1c13;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
}

.food-visual::before,
.food-visual::after {
  content: "";
  position: absolute;
  inset: 0;
}

.food-card.brisket .food-visual {
  background:
    linear-gradient(130deg, rgba(255,255,255,.2), transparent 34%),
    repeating-linear-gradient(105deg, #7a1711 0 18px, #bf4342 18px 32px, #e7d7c1 32px 37px);
}

.food-card.brisket .food-visual::after {
  inset: 26px 34px;
  border-radius: 36px 16px 30px 18px;
  background:
    linear-gradient(145deg, rgba(255,222,179,.85), rgba(255,222,179,0) 18%),
    repeating-linear-gradient(18deg, #682019 0 20px, #9a2b21 20px 36px, #d88a65 36px 41px);
  transform: rotate(-8deg);
}

.food-card.fish .food-visual {
  background: linear-gradient(135deg, #735751, #a78a7f);
}

.food-card.fish .food-visual::after {
  inset: 44px 24px 44px 34px;
  border-radius: 50% 44% 44% 50%;
  background:
    radial-gradient(circle at 24% 50%, #f5e7d2 0 6px, transparent 7px),
    repeating-linear-gradient(90deg, #8c1c13 0 13px, #bf4342 13px 22px, #e7d7c1 22px 26px);
  clip-path: polygon(0 50%, 14% 12%, 82% 0, 100% 50%, 82% 100%, 14% 88%);
}

.food-card.chicken .food-visual {
  background: linear-gradient(135deg, #e7d7c1, #a78a7f);
}

.food-card.chicken .food-visual::after {
  inset: 30px 46px;
  border-radius: 45% 55% 48% 52%;
  background:
    radial-gradient(circle at 70% 28%, rgba(255,244,220,.75), transparent 14%),
    linear-gradient(145deg, #bf4342, #8c1c13 60%, #5a231e);
  transform: rotate(8deg);
}

.food-card.sausage .food-visual {
  background: linear-gradient(135deg, #2b1916, #735751);
}

.food-card.sausage .food-visual::after {
  inset: 34px 24px;
  border-radius: 999px;
  background:
    repeating-linear-gradient(90deg, #8c1c13 0 42px, #bf4342 42px 76px, #e7d7c1 76px 82px);
  box-shadow: 0 34px 0 rgba(140,28,19,.72);
}

.food-card.cheese .food-visual {
  background: linear-gradient(135deg, #735751, #2b1916);
}

.food-card.cheese .food-visual::after {
  inset: 34px 46px;
  border-radius: 8px;
  background:
    radial-gradient(circle at 22% 34%, rgba(115,87,81,.5) 0 12px, transparent 13px),
    radial-gradient(circle at 68% 58%, rgba(115,87,81,.38) 0 16px, transparent 17px),
    linear-gradient(135deg, #e8bc6b, #f7d98e);
  transform: skewX(-9deg) rotate(-3deg);
}

.food-card.market .food-visual {
  background:
    linear-gradient(135deg, rgba(23,16,15,.22), rgba(23,16,15,.04)),
    repeating-linear-gradient(90deg, #8c1c13 0 26px, #bf4342 26px 44px, #e7d7c1 44px 52px);
}

.food-card.market .food-visual::after {
  inset: 34px 34px 26px;
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.45)),
    repeating-linear-gradient(0deg, transparent 0 26px, rgba(23,16,15,.45) 26px 30px);
  border: 8px solid rgba(23,16,15,.35);
}

.food-card .food-visual {
  background-size: cover;
  background-position: center;
}

.food-card .food-visual::before {
  z-index: 1;
  background: linear-gradient(180deg, rgba(23,16,15,.04), rgba(23,16,15,.32));
}

.food-card .food-visual::after {
  display: none;
}

.food-card.brisket .food-visual {
  background:
    linear-gradient(180deg, rgba(23,16,15,.02), rgba(23,16,15,.32)),
    url("assets/optimized/result-meat.webp") center / cover no-repeat;
}

.food-card.fish .food-visual {
  background:
    linear-gradient(180deg, rgba(23,16,15,.02), rgba(23,16,15,.32)),
    url("assets/optimized/result-fish.webp") center / cover no-repeat;
}

.food-card.chicken .food-visual {
  background:
    linear-gradient(180deg, rgba(23,16,15,.02), rgba(23,16,15,.32)),
    url("assets/optimized/food-chicken.webp") center / cover no-repeat;
}

.food-card.sausage .food-visual {
  background:
    linear-gradient(180deg, rgba(23,16,15,.02), rgba(23,16,15,.36)),
    url("assets/optimized/result-sausage.webp") center / cover no-repeat;
}

.food-card.cheese .food-visual {
  background:
    linear-gradient(180deg, rgba(23,16,15,.02), rgba(23,16,15,.32)),
    url("assets/optimized/food-cheese.webp") center / cover no-repeat;
}

.food-card.market .food-visual {
  background:
    linear-gradient(180deg, rgba(23,16,15,.02), rgba(23,16,15,.36)),
    url("assets/optimized/result-chicken.webp") center / cover no-repeat;
}

.use-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}

.use-head h2 {
  max-width: 920px;
}

.use-grid {
  display: grid;
  grid-template-columns: 1.08fr .96fr .96fr;
  grid-template-rows: minmax(250px, 1fr) minmax(250px, 1fr);
  gap: 18px;
}

.use-card {
  position: relative;
  min-height: 250px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.24);
  color: #fff8ed;
  background: var(--earth-ink);
  isolation: isolate;
  box-shadow: 0 26px 70px rgba(71,45,38,.2);
}

.use-card:first-child {
  grid-row: 1 / span 2;
}

.use-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: none;
  transform: scale(1.01);
  transition: transform .7s cubic-bezier(.2, .8, .2, 1);
}

.use-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(23,16,15,.02) 12%, rgba(23,16,15,.34) 54%, rgba(23,16,15,.82) 100%),
    linear-gradient(90deg, rgba(140,28,19,.42), transparent 58%);
}

.use-card-copy {
  position: absolute;
  z-index: 2;
  left: 24px;
  right: 24px;
  bottom: 22px;
}

.use-card-copy span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 10px;
  border-radius: 6px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.use-card-copy h3 {
  margin: 14px 0 0;
  max-width: 520px;
  color: #fff8ed;
  font-size: var(--type-card-title);
  line-height: .96;
}

.use-card-copy p {
  margin: 12px 0 0;
  max-width: 560px;
  color: #f4e5d1;
  font-weight: 500;
  line-height: 1.38;
}

.use-grid .use-card:not(:first-child) .use-card-copy {
  max-width: 310px;
}

.use-card:hover img {
  transform: scale(1.055);
}

.decision-grid {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 18px;
  align-items: stretch;
}

.decision-main,
.function-stack article {
  border-radius: 8px;
  border: 1px solid rgba(115,87,81,.24);
}

.decision-main {
  padding: 32px;
  background:
    radial-gradient(circle at 92% 12%, rgba(191,67,66,.24), transparent 32%),
    var(--earth-ink);
  color: #fff8ed;
}

.decision-main h2 {
  margin: 20px 0 0;
  font-size: var(--type-section);
  line-height: .94;
}

.decision-main p {
  margin: 18px 0 0;
  max-width: 640px;
  color: #ead9c4;
  font-weight: 500;
  line-height: 1.48;
}

.decision-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 28px;
}

.decision-steps div {
  min-height: 112px;
  border-radius: 8px;
  padding: 14px;
  background: rgba(231,215,193,.1);
  border: 1px solid rgba(231,215,193,.18);
}

.decision-steps strong {
  display: block;
  font-size: 28px;
  color: #f6d1a0;
}

.decision-steps span {
  display: block;
  margin-top: 12px;
  font-weight: 700;
  line-height: 1.25;
}

.function-stack {
  display: grid;
  gap: 14px;
}

.function-stack article {
  padding: 24px;
  background: var(--earth-paper);
}

.function-stack h3 {
  margin: 0;
  font-size: 26px;
}

.function-stack p {
  margin: 10px 0 0;
  color: #735751;
  font-weight: 500;
  line-height: 1.42;
}

.flavor-stage {
  position: relative;
  border-radius: 8px;
  min-height: 500px;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(23,16,15,.96), rgba(140,28,19,.68) 58%, rgba(23,16,15,.2)),
    url("assets/optimized/food-smoking-chamber.webp") center / cover no-repeat;
  color: #fff8ed;
  isolation: isolate;
}

.flavor-copy {
  position: relative;
  z-index: 4;
  width: min(620px, calc(100% - 40px));
  padding: 46px;
}

.flavor-copy h2 {
  margin: 0;
  font-size: var(--type-section);
  line-height: .9;
}

.flavor-copy p {
  max-width: 500px;
  color: #ead9c4;
  font-weight: 500;
  line-height: 1.45;
}

.meat-orbit {
  position: absolute;
  inset: 0 0 0 46%;
  overflow: hidden;
  z-index: 3;
}

.meat-card {
  --card-scale: 1;
  --card-rotate: 0deg;
  position: absolute;
  top: 170px;
  right: -340px;
  width: 238px;
  height: 118px;
  border-radius: 8px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.2);
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.04)),
    repeating-linear-gradient(110deg, #8c1c13 0 18px, #bf4342 18px 30px, #e7d7c1 30px 34px);
  box-shadow: 0 26px 54px rgba(0,0,0,.35);
  transform: translate3d(0, 0, 0) scale(var(--card-scale)) rotate(var(--card-rotate));
  animation: meatFloatLine 26s linear infinite;
}

.meat-card strong,
.meat-card span {
  position: relative;
  z-index: 2;
  display: block;
  text-shadow: 0 2px 10px rgba(0,0,0,.42);
}

.meat-card strong {
  font-size: 20px;
}

.meat-card span {
  margin-top: 8px;
  color: #fff1d8;
  font-size: 12px;
  font-weight: 700;
}

.meat-card:nth-child(1) {
  animation-delay: 0s;
  background:
    linear-gradient(90deg, rgba(23,16,15,.24), rgba(23,16,15,0)),
    url("assets/optimized/result-meat.webp") center / cover no-repeat;
}

.meat-card:nth-child(2) {
  animation-delay: -5.2s;
  background:
    linear-gradient(90deg, rgba(23,16,15,.54), rgba(23,16,15,.08)),
    url("assets/optimized/result-fish.webp") center / cover no-repeat;
}

.meat-card:nth-child(3) {
  animation-delay: -10.4s;
  background:
    linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)),
    url("assets/optimized/result-sausage.webp") center / cover no-repeat;
}

.meat-card:nth-child(4) {
  animation-delay: -15.6s;
  background:
    linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)),
    url("assets/optimized/result-meat.webp") center / cover no-repeat;
}

.meat-card:nth-child(5) {
  animation-delay: -20.8s;
  background:
    linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)),
    url("assets/optimized/result-chicken.webp") center / cover no-repeat;
}

.ai-panel {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: 18px;
  align-items: stretch;
}

.ai-box {
  border-radius: 8px;
  padding: 28px;
  background:
    radial-gradient(circle at 80% 10%, rgba(191,67,66,.2), transparent 36%),
    var(--earth-ink);
  color: #fff8ed;
  min-height: 370px;
}

.ai-box h2 {
  margin: 0;
  font-size: var(--type-section);
  line-height: .98;
}

.ai-box p {
  color: #ead9c4;
  line-height: 1.45;
  font-weight: 500;
}

.ai-chat-demo {
  display: grid;
  align-content: end;
  gap: 10px;
  min-height: 270px;
}

.ai-chat-demo .bubble {
  background: #ead9c4;
  color: #241713;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}

.ai-chat-demo .bubble.user {
  background: var(--earth-red);
  color: #fff8ed;
}

.chat-promo {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .7fr);
  gap: 22px;
  align-items: stretch;
  border-radius: 8px;
  padding: 34px;
  color: #fff8ed;
  background:
    radial-gradient(circle at 82% 18%, rgba(191,67,66,.32), transparent 34%),
    linear-gradient(135deg, #17100f 0%, #241311 48%, #8c1c13 100%);
  border: 1px solid rgba(231,215,193,.22);
  overflow: hidden;
  position: relative;
}

.chat-promo::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(115deg, rgba(255,255,255,.08), transparent 34%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 90px);
}

.chat-promo-copy,
.chat-promo-demo {
  position: relative;
  z-index: 1;
}

.chat-promo-copy {
  align-self: center;
}

.chat-promo-copy h2 {
  margin: 18px 0 0;
  max-width: 760px;
  color: #fff8ed;
  font-size: var(--type-section);
  line-height: .94;
}

.chat-promo-copy p {
  margin: 20px 0 0;
  max-width: 680px;
  color: #f0dfc8;
  font-size: var(--type-lead);
  font-weight: 500;
  line-height: 1.35;
}

.chat-promo-copy .btn {
  margin-top: 26px;
}

.chat-promo-demo {
  align-self: stretch;
  display: grid;
  grid-template-rows: auto 1fr;
  min-height: 330px;
  border-radius: 8px;
  overflow: hidden;
  background: #f4eadb;
  color: #17100f;
  box-shadow: 0 22px 54px rgba(0,0,0,.28);
}

.chat-demo-head {
  min-height: 58px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  background: #17100f;
  color: #fff8ed;
}

.chat-demo-body {
  display: grid;
  align-content: end;
  gap: 10px;
  padding: 16px;
}

.chat-demo-body .bubble {
  background: #ead9c4;
  color: #241713;
}

.chat-demo-body .bubble.user {
  justify-self: end;
  background: var(--earth-red);
  color: #fff8ed;
}

.catalog-page {
  background:
    radial-gradient(circle at 82% 10%, rgba(140,28,19,.16), transparent 28%),
    linear-gradient(180deg, #e7d7c1 0%, #d6bea4 52%, #e7d7c1 100%);
}

.catalog-hero {
  padding: 78px 0 38px;
  background:
    linear-gradient(180deg, rgba(23,16,15,.04), transparent 58%),
    #e7d7c1;
}

.catalog-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 390px);
  gap: 26px;
  align-items: end;
}

.catalog-hero h1 {
  margin: 18px 0 0;
  max-width: 920px;
  font-size: var(--type-hero);
  line-height: .92;
}

.catalog-hero p {
  margin: 22px 0 0;
  max-width: 720px;
  color: #735751;
  font-size: var(--type-lead);
  font-weight: 700;
  line-height: 1.38;
}

.catalog-hero-card {
  border-radius: 8px;
  padding: 22px;
  color: #fff8ed;
  background:
    radial-gradient(circle at 92% 14%, rgba(191,67,66,.36), transparent 32%),
    linear-gradient(135deg, #17100f 0%, #351815 100%);
  border: 1px solid rgba(231,215,193,.22);
}

.catalog-hero-card strong {
  display: block;
  font-size: 26px;
  line-height: 1;
}

.catalog-hero-card span {
  display: block;
  margin-top: 12px;
  color: #f0dfc8;
  font-weight: 700;
  line-height: 1.45;
}

.catalog-section {
  padding-top: 34px;
  background:
    linear-gradient(180deg, #d6bea4 0%, #e7d7c1 100%);
}

.catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.catalog-card {
  display: grid;
  grid-template-rows: 310px 1fr;
  min-height: 570px;
  border-radius: 8px;
  overflow: hidden;
  background: #f4eadb;
  border: 1px solid rgba(115,87,81,.24);
}

.catalog-media {
  border: 0;
  width: 100%;
  height: 100%;
  padding: 22px;
  cursor: pointer;
  background:
    radial-gradient(circle at 50% 56%, rgba(140,28,19,.14), transparent 34%),
    linear-gradient(180deg, #fff4e6 0%, #ead8c1 100%);
}

.catalog-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 22px 22px rgba(0,0,0,.24));
  transition: transform .42s cubic-bezier(.2, .8, .2, 1), filter .42s ease;
}

.catalog-card:hover .catalog-media img {
  transform: translateY(-10px) scale(1.05);
  filter: drop-shadow(0 30px 28px rgba(0,0,0,.3));
}

.catalog-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 22px;
}

.catalog-body span {
  width: fit-content;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  border-radius: 6px;
  padding: 0 10px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 11px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .09em;
}

.catalog-body h2 {
  margin: 0;
  font-size: 34px;
  line-height: 1;
}

.catalog-body p {
  margin: 0;
  color: #735751;
  font-weight: 500;
  line-height: 1.42;
}

.catalog-price {
  margin-top: auto;
  color: var(--earth-ink);
  font-size: 25px;
  font-weight: 700;
}

.package-preview {
  display: grid;
  gap: 8px;
  margin-top: 2px;
}

.package-preview strong {
  color: var(--earth-brown);
  font-size: 13px;
  font-weight: 700;
}

.package-preview div {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.package-preview span,
.package-preview small {
  min-height: 26px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 0 9px;
  background: rgba(140,28,19,.1);
  color: var(--earth-red);
  font-size: 11px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
}

.catalog-body .btn {
  width: 100%;
  margin-top: 4px;
}

.model-modal {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .24s ease, visibility .24s ease;
}

.model-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(23,16,15,.68);
}

.modal-card {
  position: relative;
  width: min(1040px, 100%);
  max-height: min(86vh, 760px);
  display: grid;
  grid-template-columns: minmax(280px, .88fr) minmax(0, 1.12fr);
  overflow: auto;
  border-radius: 8px;
  color: #fff8ed;
  background:
    radial-gradient(circle at 20% 20%, rgba(191,67,66,.18), transparent 32%),
    linear-gradient(135deg, #17100f 0%, #281411 52%, #8c1c13 100%);
  border: 1px solid rgba(231,215,193,.22);
}

.modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 7px;
  cursor: pointer;
  color: #fff8ed;
  background: rgba(255,255,255,.12);
  font-size: 28px;
  line-height: 1;
}

.modal-image-wrap {
  display: grid;
  place-items: center;
  min-height: 560px;
  padding: 30px;
  background:
    radial-gradient(circle at 50% 58%, rgba(231,215,193,.22), transparent 38%),
    linear-gradient(180deg, rgba(255,248,237,.08), rgba(255,248,237,.02));
}

.modal-image-wrap img {
  width: 100%;
  height: 100%;
  max-height: 520px;
  object-fit: contain;
  filter: drop-shadow(0 32px 28px rgba(0,0,0,.42));
}

.modal-copy {
  padding: 42px;
}

.modal-copy h2 {
  margin: 18px 0 0;
  font-size: var(--type-section);
  line-height: .94;
  color: #fff8ed;
}

.modal-price {
  margin: 16px 0 0;
  color: #ffd08f;
  font-size: 28px;
  font-weight: 700;
}

.modal-specs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 24px;
}

.modal-specs span {
  display: grid;
  gap: 5px;
  border-radius: 8px;
  padding: 13px;
  background: rgba(231,215,193,.14);
  border: 1px solid rgba(231,215,193,.14);
  color: #f5e6d0;
  font-size: 12px;
  font-weight: 700;
}

.modal-specs strong {
  color: #fff8ed;
  font-size: 17px;
}

.modal-packages {
  margin-top: 22px;
}

.modal-packages h3 {
  margin: 0 0 12px;
  color: #fff8ed;
  font-size: 24px;
  line-height: 1.05;
}

.package-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px;
  max-height: 280px;
  overflow: auto;
  padding-right: 4px;
}

.package-card {
  flex: 1 1 calc(50% - 10px);
  min-width: 240px;
  display: grid;
  gap: 8px;
  border-radius: 8px;
  padding: 13px;
  background: rgba(255,248,237,.92);
  color: var(--earth-ink);
}

.package-card div {
  display: grid;
  gap: 5px;
}

.package-card span {
  width: fit-content;
  border-radius: 999px;
  padding: 4px 8px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.package-card strong {
  font-size: 15px;
  line-height: 1.1;
}

.package-card small {
  color: var(--earth-red);
  font-size: 15px;
  font-weight: 700;
}

.package-card p {
  margin: 0;
  color: #735751;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.package-details {
  border-top: 1px solid rgba(115,87,81,.18);
  padding-top: 8px;
}

.package-details summary {
  cursor: pointer;
  color: var(--earth-red);
  font-size: 12px;
  font-weight: 700;
}

.package-details ol {
  display: grid;
  gap: 5px;
  margin: 8px 0 0;
  padding-left: 18px;
  color: #513f3a;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.32;
}

.modal-description {
  margin: 22px 0 0;
  color: #f0dfc8;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.45;
}

.modal-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px;
}

body.modal-open {
  overflow: hidden;
}

.support-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.support-card {
  border-radius: 8px;
  padding: 20px;
  min-height: 150px;
  background: var(--earth-paper);
  border: 1px solid rgba(115,87,81,.24);
}

.support-card h3 {
  margin: 0 0 12px;
}

.support-card p {
  margin: 0;
  color: #735751;
  font-weight: 500;
  line-height: 1.4;
}

.reviews-section {
  background:
    radial-gradient(circle at 14% 0%, rgba(140,28,19,.13), transparent 34%),
    linear-gradient(180deg, #eadcc8 0%, #dfc5aa 100%);
}

@media (min-width: 781px) {
  .reviews-section .section-head {
    align-items: start;
  }

  .reviews-section .section-head p {
    margin-top: 32px;
  }
}

.review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.review-dots {
  display: none;
}

.review-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(240px, 1.08fr);
  gap: 18px;
  min-height: 318px;
  border-radius: 8px;
  padding: 18px;
  overflow: hidden;
  color: #fff8ed;
  background:
    radial-gradient(circle at 18% 0%, rgba(255,248,237,.08), transparent 34%),
    linear-gradient(135deg, #17100f 0%, #2b1d1a 48%, #3b2520 100%);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 24px 64px rgba(71,45,38,.22);
  isolation: isolate;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.review-card::before {
  content: "";
  position: absolute;
  inset: 18px;
  z-index: 6;
  border: 1px solid rgba(255,248,237,.08);
  border-radius: 6px;
  pointer-events: none;
}

.review-copy {
  position: relative;
  z-index: 2;
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 14px 0 14px 12px;
}

.review-stars {
  color: #ffc13d;
  font-size: 20px;
  letter-spacing: .08em;
}

.review-person {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}

.review-avatar {
  width: 54px;
  height: 54px;
  flex: 0 0 auto;
  overflow: hidden;
  border-radius: 50%;
  background: rgba(255,248,237,.1);
  box-shadow: inset 0 0 0 1px rgba(255,248,237,.14);
}

.review-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.95) contrast(1.05);
}

.review-person strong {
  display: block;
  color: #fff8ed;
  font-size: 22px;
  line-height: 1.05;
}

.review-person small,
.review-copy time {
  display: block;
  color: rgba(255,248,237,.62);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.25;
}

.review-copy p {
  margin: 22px 0 0;
  color: rgba(255,248,237,.82);
  font-size: var(--type-base);
  font-weight: 500;
  line-height: 1.45;
}

.review-copy time {
  margin-top: 18px;
}

.map-review-block {
  margin-top: 28px;
}

.map-review-head {
  max-width: 760px;
  margin-bottom: 16px;
}

.map-review-head h3 {
  margin: 12px 0 8px;
  font-size: 34px;
  line-height: 1.06;
}

.map-review-head p {
  margin: 0;
  color: #735751;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.45;
}

.map-review-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.map-review-card {
  min-height: 292px;
  grid-template-columns: 1fr;
  text-decoration: none;
}

.map-review-card .review-copy {
  justify-content: flex-start;
  padding: 16px 14px;
}

.map-review-card .review-person {
  align-items: center;
  gap: 14px;
}

.map-review-card .review-person > div {
  min-width: 0;
}

.map-review-card .review-person strong {
  font-size: 20px;
  overflow-wrap: anywhere;
}

.map-review-card time {
  margin-top: auto;
}

.map-review-avatar {
  display: grid;
  place-items: center;
  color: #17100f;
  background: #ffd44d;
  font-size: 24px;
  font-weight: 700;
}

.map-review-avatar.is-2gis {
  color: #fff8ed;
  background: #159447;
}

.review-video {
  position: relative;
  z-index: 2;
  min-height: 230px;
  margin: 8px 16px 8px 0;
  overflow: hidden;
  border-radius: 8px;
  align-self: center;
  background: #2a2828;
  box-shadow: inset 0 0 0 1px rgba(255,248,237,.12);
}

.review-video img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  filter: saturate(1.05) contrast(1.04) brightness(.76);
  transition: transform .7s cubic-bezier(.2, .8, .2, 1), filter .35s ease;
}

.review-video::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(23,16,15,.05), rgba(23,16,15,.36)),
    radial-gradient(circle at 50% 50%, rgba(255,248,237,.13), transparent 32%);
}

.review-duration {
  position: absolute;
  z-index: 2;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 6px;
  background: rgba(23,16,15,.62);
  color: rgba(255,248,237,.9);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
}

.review-play {
  position: absolute;
  z-index: 2;
  inset: 50% auto auto 50%;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background:
    linear-gradient(135deg, #17100f 0 48%, transparent 49%) 30px 22px / 22px 28px no-repeat,
    rgba(255,248,237,.96);
  box-shadow: 0 18px 38px rgba(0,0,0,.32);
  transform: translate(-50%, -50%);
  transition: transform .25s ease, background .25s ease;
}

.review-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,248,237,.28);
  box-shadow: 0 30px 72px rgba(71,45,38,.28);
}

.review-card:hover .review-video img {
  transform: scale(1.08);
  filter: saturate(1.08) contrast(1.06) brightness(.88);
}

.review-card:hover .review-play {
  transform: translate(-50%, -50%) scale(1.06);
}

@media (max-width: 900px) {
  .review-grid {
    grid-template-columns: 1fr;
  }

  .review-card {
    grid-template-columns: minmax(0, .92fr) minmax(260px, 1.08fr);
  }
}

.seo-editable-section {
  background:
    radial-gradient(circle at 75% 20%, rgba(140,28,19,.12), transparent 34%),
    linear-gradient(180deg, #e5d3bc 0%, #f0e4d2 100%);
}

.seo-editable-card,
.seo-cta-band {
  border-radius: 8px;
  padding: clamp(24px, 4vw, 44px);
  background:
    linear-gradient(135deg, rgba(23,16,15,.96), rgba(64,29,24,.9) 52%, rgba(140,28,19,.82)),
    var(--earth-ink);
  color: #fff8ed;
  box-shadow: 0 28px 80px rgba(71,45,38,.2);
  overflow: hidden;
}

.seo-editable-card h2,
.seo-cta-band h2 {
  margin: 10px 0 14px;
  color: #fff8ed;
  max-width: 900px;
}

.seo-editable-card p,
.seo-cta-band p {
  margin: 0;
  max-width: 920px;
  color: #f4e5d1;
  font-weight: 700;
  line-height: 1.55;
}

.custom-blocks-section {
  background:
    radial-gradient(circle at 14% 20%, rgba(140,28,19,.10), transparent 32%),
    linear-gradient(180deg, #f0e4d2 0%, #e5d3bc 100%);
}

.custom-blocks {
  display: grid;
  gap: 18px;
}

.custom-content-block {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr);
  gap: clamp(18px, 4vw, 48px);
  align-items: center;
  border-radius: 8px;
  padding: clamp(22px, 4vw, 48px);
  background:
    radial-gradient(circle at 85% 18%, rgba(191,67,66,.18), transparent 30%),
    linear-gradient(135deg, rgba(23,16,15,.96), rgba(64,29,24,.9) 52%, rgba(140,28,19,.82));
  border: 1px solid rgba(255,248,237,.12);
  box-shadow: 0 28px 68px rgba(23,16,15,.18);
}

.custom-content-block.image-left figure {
  order: -1;
}

.custom-content-block.text-only {
  grid-template-columns: 1fr;
}

.custom-content-block figure {
  position: relative;
  overflow: hidden;
  margin: 0;
  min-height: 260px;
  border-radius: 8px;
  background: rgba(255,248,237,.08);
  box-shadow: inset 0 0 0 1px rgba(255,248,237,.12);
}

.custom-content-block figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(23,16,15,.24));
  pointer-events: none;
}

.custom-content-block img {
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
  display: block;
  transform: scale(1.03);
}

.custom-block-copy {
  color: #fff8ed;
}

.custom-block-copy h2 {
  margin: 10px 0 14px;
  max-width: 720px;
  color: #fff8ed;
}

.custom-block-copy p {
  margin: 0 0 22px;
  max-width: 760px;
  color: #f4e5d1;
  font-size: var(--type-lead);
  font-weight: 500;
  line-height: 1.45;
}

.contacts-section {
  background:
    radial-gradient(circle at 84% 26%, rgba(191,67,66,.13), transparent 30%),
    linear-gradient(180deg, #f0e4d2 0%, #dfc5aa 100%);
}

.contacts-grid {
  display: grid;
  grid-template-columns: 1fr minmax(320px, .72fr);
  gap: 18px;
  align-items: stretch;
}

.contacts-grid h2 {
  margin: 10px 0 12px;
}

.contacts-grid p {
  margin: 0;
  max-width: 680px;
  color: #735751;
  font-weight: 500;
  line-height: 1.45;
}

.contact-card {
  display: grid;
  gap: 14px;
  align-content: center;
  border-radius: 8px;
  padding: 24px;
  background: var(--earth-paper);
  border: 1px solid rgba(115,87,81,.24);
  box-shadow: 0 22px 52px rgba(23,16,15,.12);
}

.contact-card strong {
  font-size: var(--type-card-title);
  line-height: .95;
}

.contact-card span {
  color: #735751;
  font-weight: 500;
}

.social-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.social-pill,
.seo-link-grid a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border-radius: 6px;
  padding: 0 14px;
  background: var(--earth-red);
  color: #fff8ed;
  font-weight: 700;
  text-decoration: none;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}

.social-pill {
  position: relative;
  width: 46px;
  min-width: 46px;
  height: 46px;
  min-height: 46px;
  border-radius: 8px;
  padding: 0;
}

.social-icon {
  width: 24px;
  height: 24px;
  display: block;
  color: currentColor;
  fill: currentColor;
}

.social-icon-img {
  object-fit: contain;
}

.social-max .social-icon-img {
  width: 28px;
  height: 28px;
}

.social-telegram .social-icon {
  transform: translateX(-1.85px);
}

.social-pill:hover,
.seo-link-grid a:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(140,28,19,.22);
  background: #74140f;
}

.seo-page .topbar {
  position: sticky;
  top: 0;
  z-index: 20;
}

.seo-hero {
  min-height: auto;
  background:
    radial-gradient(circle at 74% 20%, rgba(191,67,66,.18), transparent 32%),
    linear-gradient(180deg, #eadcc8 0%, #dfc5aa 100%);
}

.seo-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: clamp(18px, 4vw, 46px);
  align-items: center;
}

.seo-hero-copy h1 {
  margin: 12px 0 18px;
  font-size: var(--type-hero);
  line-height: .93;
}

.seo-hero-copy p {
  margin: 0;
  max-width: 720px;
  color: #735751;
  font-size: var(--type-lead);
  font-weight: 700;
  line-height: 1.35;
}

.seo-hero-media {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  min-height: 430px;
  margin: 0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(71,45,38,.22);
}

.seo-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, transparent 25%, rgba(23,16,15,.32) 100%),
    radial-gradient(circle at 70% 20%, rgba(255,214,148,.2), transparent 28%);
}

.seo-hero-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  animation: slowImageDrift 14s ease-in-out infinite alternate;
}

.seo-hero-caption {
  position: absolute;
  left: clamp(16px, 2.2vw, 28px);
  right: clamp(16px, 2.2vw, 28px);
  bottom: clamp(16px, 2.2vw, 28px);
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 8px;
  color: #fff8ed;
  background: linear-gradient(90deg, rgba(23,16,15,.86), rgba(140,28,19,.72));
  border: 1px solid rgba(255,248,237,.22);
  box-shadow: 0 18px 44px rgba(23,16,15,.28);
  backdrop-filter: blur(8px);
}

.seo-hero-caption span {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  border-radius: 6px;
  padding: 0 10px;
  background: var(--earth-red);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.seo-hero-caption strong {
  font-size: 14px;
  line-height: 1.05;
  text-align: right;
}

.seo-points-section {
  padding-top: 0;
  padding-bottom: 38px;
  background: #dfc5aa;
}

.seo-pill-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.seo-pill {
  position: relative;
  overflow: hidden;
  min-height: 96px;
  display: grid;
  align-content: end;
  gap: 10px;
  border-radius: 8px;
  padding: 18px;
  background:
    radial-gradient(circle at 86% 0%, rgba(140,28,19,.16), transparent 42%),
    linear-gradient(145deg, #fff8ed, #ead7bd);
  border: 1px solid rgba(115,87,81,.24);
  color: var(--earth-ink);
  box-shadow: 0 16px 40px rgba(71,45,38,.12);
}

.seo-pill::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, transparent 0%, rgba(255,255,255,.42) 48%, transparent 54%);
  transform: translateX(-120%);
  transition: transform .6s ease;
}

.seo-pill:hover::before {
  transform: translateX(120%);
}

.seo-pill span {
  position: relative;
  z-index: 1;
  width: max-content;
  border-radius: 6px;
  padding: 6px 8px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 12px;
  font-weight: 700;
}

.seo-pill strong {
  position: relative;
  z-index: 1;
  font-size: var(--type-card-title);
  line-height: 1.02;
  font-weight: 700;
}

.seo-content-section {
  background:
    linear-gradient(180deg, #f0e4d2 0%, #e5d3bc 100%);
}

.seo-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .75fr);
  gap: 18px;
  align-items: stretch;
}

.seo-text-block,
.seo-model-card {
  border-radius: 8px;
  background: var(--earth-paper);
  border: 1px solid rgba(115,87,81,.24);
  box-shadow: 0 22px 52px rgba(23,16,15,.12);
}

.seo-text-block {
  padding: clamp(24px, 3.5vw, 42px);
}

.seo-text-block h2 {
  margin: 10px 0 16px;
}

.seo-text-block p {
  margin: 0 0 14px;
  color: #735751;
  font-weight: 700;
  line-height: 1.58;
}

.seo-text-block p:last-child {
  margin-bottom: 0;
}

.seo-models {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.seo-model-card {
  cursor: pointer;
  overflow: hidden;
  display: grid;
  grid-template-rows: 144px minmax(126px, 1fr);
  padding: 0;
  min-height: 292px;
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.seo-model-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 26px 62px rgba(23,16,15,.18);
  border-color: rgba(140,28,19,.4);
}

.seo-model-image {
  position: relative;
  overflow: hidden;
  display: grid;
  place-items: center;
  padding: 12px;
  background:
    radial-gradient(circle at 50% 20%, rgba(255,248,237,.9), rgba(239,201,149,.4) 48%, rgba(167,138,127,.18) 100%),
    linear-gradient(145deg, #fff8ed, #e7d7c1);
}

.seo-model-image::before {
  content: "";
  position: absolute;
  inset: 12px;
  border-radius: 8px;
  border: 1px solid rgba(255,248,237,.68);
  background: linear-gradient(145deg, rgba(255,255,255,.28), transparent 52%);
}

.seo-model-image::after {
  content: "";
  position: absolute;
  inset: auto 14% 8% 14%;
  height: 22px;
  border-radius: 999px;
  background: rgba(23,16,15,.18);
  filter: blur(14px);
}

.seo-model-image img {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 42%;
  width: auto;
  height: min(128px, calc(100% - 18px));
  max-width: 86%;
  object-fit: contain;
  filter: drop-shadow(0 18px 22px rgba(23,16,15,.22));
  transform: translate(-50%, -50%);
  transition: transform .28s ease;
}

.seo-model-card:hover .seo-model-image img {
  transform: translate(-50%, -54%) scale(1.06);
}

.seo-model-image span,
.seo-model-info span {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 10px;
  border-radius: 6px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 12px;
  font-weight: 700;
}

.seo-model-image span {
  position: absolute;
  z-index: 2;
  left: 14px;
  top: 14px;
  box-shadow: 0 10px 24px rgba(140,28,19,.25);
}

.seo-model-info {
  display: grid;
  align-content: start;
  gap: 8px;
  position: relative;
  z-index: 2;
  padding: 18px;
  background: linear-gradient(180deg, #fff8ed, #f0e4d2);
}

.seo-model-info strong {
  display: block;
  font-size: var(--type-card-title);
  line-height: 1;
}

.seo-model-info small {
  color: #735751;
  font-weight: 700;
}

.seo-model-info b {
  color: var(--earth-red);
  font-size: 18px;
  line-height: 1.05;
}

.seo-link-section {
  background:
    linear-gradient(180deg, #e5d3bc 0%, #d9bea0 100%);
}

.seo-link-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.seo-link-head {
  display: block;
  max-width: 820px;
  margin-bottom: 24px;
}

.seo-link-head .eyebrow {
  margin-bottom: 12px;
}

.seo-link-head h2 {
  max-width: 680px;
  margin: 0 0 12px;
}

.seo-link-head p {
  max-width: 620px;
}

.seo-link-group {
  position: relative;
  overflow: hidden;
  min-height: 220px;
  border-radius: 8px;
  padding: 18px;
  background:
    radial-gradient(circle at 90% 0%, rgba(140,28,19,.18), transparent 46%),
    linear-gradient(145deg, #fff8ed, #ead7bd);
  border: 1px solid rgba(115,87,81,.24);
  box-shadow: 0 18px 48px rgba(71,45,38,.14);
}

.seo-link-group::after {
  content: "";
  position: absolute;
  right: -26px;
  bottom: -38px;
  width: 120px;
  height: 120px;
  border-radius: 999px;
  background: rgba(140,28,19,.08);
}

.seo-link-group > span {
  position: relative;
  z-index: 1;
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 0 10px;
  border-radius: 6px;
  background: var(--earth-red);
  color: #fff8ed;
  font-size: 12px;
  font-weight: 700;
}

.seo-link-group div {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 8px;
  margin-top: 18px;
}

.seo-link-grid .seo-link-group a {
  justify-content: flex-start;
  min-height: 42px;
  border-radius: 7px;
  padding: 0 12px;
  background: rgba(255,248,237,.74);
  color: var(--earth-ink);
  border: 1px solid rgba(115,87,81,.18);
  box-shadow: none;
  font-size: 14px;
}

.seo-link-grid .seo-link-group a:hover {
  color: #fff8ed;
  background: var(--earth-red);
  border-color: transparent;
}

.seo-cta-section {
  background: #f0e4d2;
}

.seo-cta-band {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

@keyframes slowImageDrift {
  from { transform: scale(1.02) translate3d(-6px, -4px, 0); }
  to { transform: scale(1.07) translate3d(8px, 5px, 0); }
}

.theme-traeger .model-media {
  background: linear-gradient(145deg, var(--earth-paper), var(--earth-ivory));
}

.theme-traeger .tag,
.theme-traeger .quick span,
.theme-traeger .recipe-item {
  color: var(--earth-ink);
  background: #efc995;
}

.theme-traeger .recipe-band {
  background: linear-gradient(135deg, var(--earth-ink), var(--earth-brown) 52%, var(--earth-red));
  color: #fff8ed;
}

.theme-traeger .chat-head {
  background: var(--earth-ink);
  color: #fff8ed;
}

.theme-traeger .chat-launch,
.theme-traeger .chat-demo-head {
  background: var(--earth-ink);
  color: #fff8ed;
}

.theme-traeger .chat-dot {
  background: var(--earth-clay);
}

.theme-traeger .bubble {
  background: #ead9c4;
  color: #241713;
}

.theme-traeger .bubble.user {
  background: var(--earth-red);
  color: #fff8ed;
}

.theme-traeger .chat-input input {
  color: var(--earth-ink);
  background: #deccb4;
}

.section > .wrap,
.theme-traeger .hero > .wrap {
  position: relative;
  z-index: 2;
}

.theme-traeger .topbar {
  box-shadow: 0 14px 34px rgba(71, 45, 38, .08);
}

.theme-traeger .hero {
  overflow: hidden;
}

.theme-traeger .hero::before {
  content: "";
  position: absolute;
  inset: -24%;
  pointer-events: none;
  background:
    radial-gradient(circle at 24% 24%, rgba(191,67,66,.18), transparent 30%),
    radial-gradient(circle at 78% 28%, rgba(231,215,193,.28), transparent 34%),
    linear-gradient(115deg, transparent 20%, rgba(255,255,255,.12) 45%, transparent 62%);
  opacity: .82;
  transform: translate3d(var(--hero-bg-x, 0px), var(--hero-bg-y, 0px), 0);
  animation: heroAmberDrift 12s ease-in-out infinite;
}

.theme-traeger .hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 110px;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(231,215,193,0), #eadcc8 74%);
}

.links a {
  position: relative;
  padding: 10px 0;
}

.links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .28s ease;
}

.links a:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

.btn {
  position: relative;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.btn::after {
  content: "";
  position: absolute;
  top: -40%;
  bottom: -40%;
  left: -70%;
  width: 48%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.45), transparent);
  transform: translateX(0) skewX(-18deg);
  transition: transform .55s ease;
  pointer-events: none;
}

.btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(140,28,19,.22);
}

.btn:hover::after {
  transform: translateX(360%) skewX(-18deg);
}

.icon-btn {
  transition: transform .24s ease, filter .24s ease;
}

.icon-btn:hover {
  transform: translateY(-2px) rotate(-3deg);
}

.js-ready .reveal {
  --reveal-y: 28px;
  --reveal-scale: .985;
  opacity: 0;
  filter: none;
  transform: translate3d(0, var(--reveal-y), 0) scale(var(--reveal-scale));
  transition:
    opacity .72s ease var(--stagger, 0ms),
    transform .72s cubic-bezier(.2, .8, .2, 1) var(--stagger, 0ms);
  will-change: opacity, transform;
}

.js-ready .reveal.is-visible {
  --reveal-y: 0px;
  --reveal-scale: 1;
  opacity: 1;
}

.tilt-card {
  --tilt-x: 0deg;
  --tilt-y: 0deg;
  --glow-x: 50%;
  --glow-y: 50%;
  --hover-lift: 0px;
  position: relative;
  transform-style: preserve-3d;
  transform:
    translate3d(0, calc(var(--reveal-y, 0px) + var(--hover-lift)), 0)
    scale(var(--reveal-scale, 1))
    perspective(1000px)
    rotateX(var(--tilt-x))
    rotateY(var(--tilt-y));
  transition:
    opacity .72s ease var(--stagger, 0ms),
    transform .22s ease,
    box-shadow .22s ease;
  will-change: transform;
}

.tilt-card:hover {
  --hover-lift: -6px;
  box-shadow: 0 28px 70px rgba(71, 45, 38, .24);
}

.lineup-card.tilt-card::before,
.catalog-card.tilt-card::before,
.food-card.tilt-card::before,
.use-card.tilt-card::before,
.decision-main.tilt-card::before,
.function-stack article.tilt-card::before,
.ai-box.tilt-card::before,
.recipe-band.tilt-card::before,
.support-card.tilt-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
  opacity: 0;
  background: radial-gradient(circle at var(--glow-x) var(--glow-y), rgba(255,255,255,.34), transparent 34%);
  transition: opacity .22s ease;
}

.lineup-card.tilt-card:hover::before,
.catalog-card.tilt-card:hover::before,
.food-card.tilt-card:hover::before,
.use-card.tilt-card:hover::before,
.decision-main.tilt-card:hover::before,
.function-stack article.tilt-card:hover::before,
.ai-box.tilt-card:hover::before,
.recipe-band.tilt-card:hover::before,
.support-card.tilt-card:hover::before {
  opacity: .75;
}

.lineup-card.tilt-card > *,
.catalog-card.tilt-card > *,
.food-card.tilt-card > *,
.decision-main.tilt-card > *,
.function-stack article.tilt-card > *,
.ai-box.tilt-card > *,
.recipe-band.tilt-card > *,
.support-card.tilt-card > * {
  position: relative;
  z-index: 1;
}

.food-visual {
  transition: transform .55s cubic-bezier(.2, .8, .2, 1), filter .55s ease;
}

.food-card:hover .food-visual {
  transform: scale(1.045);
  filter: saturate(1.15) contrast(1.06);
}

.products-section {
  overflow: hidden;
}

.products-section::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 18%, rgba(140,28,19,.16), transparent 30%),
    url("assets/optimized/food-smoking-chamber.webp") center / cover no-repeat;
  opacity: .16;
  filter: saturate(1.15);
}

.lineup-card img {
  transform: translateY(0) scale(1);
}

.lineup-card:hover img {
  transform: translateY(-12px) scale(1.06);
}

.flavor-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 78% 18%, rgba(255,209,160,.24), transparent 26%),
    radial-gradient(circle at 62% 74%, rgba(191,67,66,.22), transparent 34%),
    linear-gradient(100deg, rgba(23,16,15,.28), transparent 62%);
  animation: flavorGlow 9s ease-in-out infinite;
}

.flavor-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(23,16,15,.62), rgba(23,16,15,.18) 58%, rgba(23,16,15,.06)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 90px);
  mix-blend-mode: screen;
  opacity: .42;
}

.ai-chat-demo .bubble {
  opacity: .92;
  transform-origin: left bottom;
}

.js-ready .ai-chat-demo .bubble {
  opacity: 0;
  transform: translateY(12px) scale(.96);
  transition: opacity .42s ease, transform .42s cubic-bezier(.2, .8, .2, 1);
}

.js-ready .ai-chat-demo.is-visible .bubble {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.js-ready .ai-chat-demo.is-visible .bubble:nth-child(1) { transition-delay: .08s; }
.js-ready .ai-chat-demo.is-visible .bubble:nth-child(2) { transition-delay: .34s; }
.js-ready .ai-chat-demo.is-visible .bubble:nth-child(3) { transition-delay: .62s; }

.sticky-chat {
  border: 1px solid rgba(231,215,193,.24);
  transform-origin: 90% 100%;
  animation: none;
}

.sticky-chat:not(.is-collapsed) {
  animation: chatFloat 5.5s ease-in-out infinite;
}

.sticky-chat::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(circle at 88% 12%, rgba(191,67,66,.24), transparent 35%);
}

.sticky-chat.is-collapsed::before {
  display: none;
}

.sticky-chat > * {
  position: relative;
  z-index: 2;
}

.chat-dot {
  box-shadow: 0 0 0 0 rgba(191,67,66,.55);
  animation: dotPulse 1.7s ease-out infinite;
}

.quick span,
.chat-input button {
  transition: transform .22s ease, filter .22s ease, background .22s ease;
}

.quick span:hover,
.quick span.is-active {
  transform: translateY(-2px);
  filter: brightness(1.04);
  background: #f4be7d;
}

.chat-input button:hover {
  transform: translateX(2px);
  filter: brightness(1.08);
}

@keyframes smokeRise {
  0% { opacity: 0; transform: translate3d(0, 80px, 0) scale(.65); }
  18% { opacity: .72; }
  100% { opacity: 0; transform: translate3d(-44px, -360px, 0) scale(1.8); }
}

@keyframes productBreath {
  0%, 100% { transform: translate3d(var(--hero-shift-x, 0px), var(--hero-shift-y, 0px), 0) translateY(0) rotate(-1deg); }
  50% { transform: translate3d(var(--hero-shift-x, 0px), var(--hero-shift-y, 0px), 0) translateY(-14px) rotate(1deg); }
}

@keyframes meatFloatLine {
  0% {
    right: -340px;
    opacity: 0;
    transform: translate3d(0, 0, 0) scale(var(--card-scale, 1)) rotate(var(--card-rotate, 0deg));
  }
  8% { opacity: 1; }
  88% { opacity: 1; }
  100% {
    right: 170%;
    opacity: 0;
    transform: translate3d(0, 0, 0) scale(var(--card-scale, 1)) rotate(var(--card-rotate, 0deg));
  }
}

@keyframes mobileMeatRibbon {
  0% {
    opacity: 0;
    transform: translate3d(8vw, 0, 0);
  }
  5% { opacity: 1; }
  92% { opacity: 1; }
  100% {
    opacity: 0;
    transform: translate3d(-430vw, 0, 0);
  }
}

@keyframes mobileMeatSwap {
  0% {
    opacity: 0;
    transform: translate3d(18px, 0, 0) scale(.98);
  }
  5% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
  17% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
  22%, 100% {
    opacity: 0;
    transform: translate3d(-18px, 0, 0) scale(.98);
  }
}

@keyframes ovenGlow {
  0%, 100% { opacity: .76; filter: saturate(1.08) brightness(1); }
  50% { opacity: 1; filter: saturate(1.3) brightness(1.16); }
}

@keyframes emberPulse {
  0%, 100% { transform: scaleX(.86); opacity: .62; }
  50% { transform: scaleX(1.16); opacity: 1; }
}

@keyframes steamInside {
  0% { opacity: 0; transform: translate3d(-6px, 28px, 0) scale(.75); }
  24% { opacity: .72; }
  100% { opacity: 0; transform: translate3d(8px, -32px, 0) scale(1.35); }
}

@keyframes haloPulse {
  0%, 100% { opacity: .78; }
  50% { opacity: .96; }
}

@keyframes heroAmberDrift {
  0%, 100% { transform: translate3d(-1%, 0, 0) rotate(0deg); }
  50% { transform: translate3d(1.5%, 1%, 0) rotate(1deg); }
}

@keyframes flavorGlow {
  0%, 100% { opacity: .66; transform: translate3d(0, 0, 0) scale(1); }
  50% { opacity: .95; transform: translate3d(-1%, 1%, 0) scale(1.03); }
}

@keyframes chatFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes dotPulse {
  0% { box-shadow: 0 0 0 0 rgba(191,67,66,.55); }
  78%, 100% { box-shadow: 0 0 0 12px rgba(191,67,66,0); }
}

@media (max-width: 980px) {
  .theme-traeger .hero {
    background:
      linear-gradient(180deg, var(--earth-ivory) 0%, #f0e4d2 72%, #d7bea5 100%);
  }

  .theme-traeger .hero-grid,
  .catalog-hero-grid,
  .ai-panel,
  .support-grid,
  .food-grid,
  .use-head,
  .use-grid,
  .decision-grid {
    grid-template-columns: 1fr;
  }

  .use-grid {
    grid-template-rows: none;
  }

  .use-card:first-child {
    grid-row: auto;
  }

  .use-card {
    min-height: 360px;
  }

  .lineup-card {
    flex-basis: calc((100% - 14px) / 2);
  }

  .chat-promo {
    grid-template-columns: 1fr;
    padding: 28px;
  }

  .chat-promo-demo {
    min-height: 280px;
  }

  .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .modal-card {
    grid-template-columns: 1fr;
    max-height: 88vh;
  }

  .modal-image-wrap {
    min-height: 360px;
  }

  .decision-steps {
    grid-template-columns: 1fr;
  }

  .traeger-visual {
    min-height: 520px;
  }

  .smoker-wrap {
    width: min(84%, 430px);
    max-height: 500px;
  }

  .traeger-product {
    max-height: 500px;
  }

  .flavor-copy {
    padding: 30px;
  }

  .meat-orbit {
    left: 46%;
  }

  .food-card {
    min-height: 330px;
  }
}

@media (max-width: 620px) {
  .theme-traeger .metrics {
    display: none;
  }

  .traeger-visual {
    min-height: 500px;
    overflow: hidden;
  }

  .smoker-wrap {
    width: min(82%, 330px);
    max-height: 430px;
  }

  .traeger-product {
    width: 100%;
    max-height: 430px;
  }

  .smoke-field {
    width: 300px;
    height: 300px;
  }

  .flavor-stage {
    min-height: 560px;
  }

  .meat-orbit {
    display: none;
  }

  .food-visual {
    height: 140px;
  }

  .lineup-card {
    flex-basis: 100%;
    min-height: 320px;
  }

  .chat-promo {
    padding: 22px;
  }

  .chat-promo-copy h2 {
    font-size: 38px;
  }

  .chat-promo-demo {
    min-height: 260px;
  }

  .chat-launch {
    min-height: 48px;
    padding: 9px 12px;
  }

  .catalog-hero {
    padding-top: 48px;
  }

  .catalog-hero h1 {
    font-size: 43px;
  }

  .catalog-home-mobile {
    display: none;
  }

  .catalog-page .nav-actions .btn.secondary {
    display: inline-flex;
    min-height: 34px;
    padding: 0 10px;
    font-size: 11px;
  }

  .catalog-page .nav-actions .btn.primary {
    display: none;
  }

  .catalog-grid {
    grid-template-columns: 1fr;
  }

  .catalog-card {
    grid-template-rows: 270px 1fr;
    min-height: 0;
  }

  .modal-card {
    max-height: 92vh;
  }

  .modal-copy {
    padding: 24px;
  }

  .modal-specs {
    grid-template-columns: 1fr;
  }

  .use-card {
    min-height: 320px;
  }

  .use-card-copy {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }

  .decision-main,
  .function-stack article {
    padding: 22px;
  }
}

/* Dynamic catalog, admin and chat */
.lineup-card[data-model-open],
.catalog-media,
.catalog-body [data-model-open],
.chat-product-card {
  cursor: pointer;
}

.catalog-page .catalog-card.reveal {
  --reveal-y: 0px;
  --reveal-scale: 1;
  opacity: 1;
}

.lineup-card:focus-visible,
.catalog-media:focus-visible,
.chat-product-card:focus-visible,
.admin-model-row:focus-visible,
.quick button:focus-visible {
  outline: 3px solid rgba(191, 67, 66, .45);
  outline-offset: 3px;
}

.chat-panel {
  display: flex;
  max-height: min(650px, 76vh);
  flex-direction: column;
}

.sticky-chat:not(.is-collapsed) {
  animation: none;
}

.sticky-chat.is-collapsed .chat-launch {
  animation: chatFloat 5.5s ease-in-out infinite;
}

.chat-body {
  display: flex;
  max-height: 390px;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
  overflow-y: auto;
  padding-bottom: 10px;
  scrollbar-width: thin;
}

.quick button {
  min-height: 26px;
  border: 0;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  padding: 0 9px;
  color: var(--earth-ink);
  background: #efc995;
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.quick button,
.chat-product-card,
.chat-input button {
  transition: transform .22s ease, filter .22s ease, background .22s ease, box-shadow .22s ease;
}

.quick button:hover,
.quick button.is-active,
.chat-product-card:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
}

.chat-products {
  display: grid;
  gap: 8px;
  margin-top: 2px;
}

.chat-product-card {
  width: 100%;
  min-height: 88px;
  border: 1px solid rgba(115, 87, 81, .2);
  border-radius: 8px;
  padding: 8px;
  display: grid;
  grid-template-columns: 74px 1fr;
  grid-template-areas:
    "image tag"
    "image title"
    "image price";
  column-gap: 10px;
  align-items: center;
  color: var(--earth-ink);
  background:
    radial-gradient(circle at 16% 50%, rgba(191, 67, 66, .12), transparent 36%),
    #fff6e8;
  box-shadow: 0 10px 24px rgba(23, 16, 15, .1);
  font-family: inherit;
  text-align: left;
}

.chat-product-card img {
  grid-area: image;
  width: 74px;
  height: 74px;
  object-fit: contain;
  filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .22));
}

.chat-product-card span {
  grid-area: tag;
  color: var(--earth-red);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.chat-product-card strong {
  grid-area: title;
  font-size: 13px;
  line-height: 1.05;
}

.chat-product-card small {
  grid-area: price;
  color: #735751;
  font-size: 11px;
  font-weight: 700;
}

.admin-login {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 20px;
  background:
    radial-gradient(circle at 75% 18%, rgba(191, 67, 66, .28), transparent 34%),
    linear-gradient(135deg, rgba(23, 16, 15, .92), rgba(53, 24, 21, .96));
}

.admin-login[hidden] {
  display: none;
}

.admin-login-card {
  width: min(440px, 100%);
  border-radius: 8px;
  padding: 30px;
  display: grid;
  gap: 14px;
  color: #fff8ed;
  background:
    radial-gradient(circle at 90% 10%, rgba(231, 215, 193, .18), transparent 32%),
    #17100f;
  border: 1px solid rgba(231, 215, 193, .22);
  box-shadow: 0 30px 80px rgba(0, 0, 0, .38);
}

.admin-login-card .brand-logo {
  width: 76px;
  height: 76px;
}

.admin-login-card h1 {
  margin: 0;
  font-size: 44px;
  line-height: .95;
  color: #fff8ed;
}

.admin-login-card p {
  margin: 0;
  color: #f0dfc8;
  font-weight: 700;
  line-height: 1.45;
}

.admin-login-card label {
  display: grid;
  gap: 8px;
  color: #f0dfc8;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.admin-login-card input {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(231, 215, 193, .28);
  border-radius: 8px;
  padding: 0 14px;
  color: var(--earth-ink);
  background: #fffaf0;
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
  outline: none;
}

.admin-login-card input:focus {
  border-color: rgba(191, 67, 66, .78);
  box-shadow: 0 0 0 3px rgba(191, 67, 66, .18);
}

.admin-login-card small {
  min-height: 18px;
  color: #ffd08f;
  font-weight: 700;
}

.admin-locked [data-admin-content] {
  display: none;
}

.admin-page {
  color: var(--earth-ink);
  background: #e7d7c1;
}

.admin-hero {
  min-height: auto;
  padding: 118px 0 48px;
  background:
    radial-gradient(circle at 80% 22%, rgba(140, 28, 19, .16), transparent 32%),
    linear-gradient(180deg, #f0e4d2 0%, #d9c6ad 100%);
}

.admin-section {
  padding-top: 42px;
  background:
    linear-gradient(180deg, #d9c6ad 0%, #e7d7c1 100%);
}

.admin-page .catalog-hero-grid {
  grid-template-columns: minmax(0, 1fr);
}

.admin-page .catalog-hero h1 {
  max-width: 980px;
}

.admin-page .catalog-hero p {
  max-width: 760px;
}

.admin-grid {
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: 18px;
  align-items: start;
}

.admin-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.admin-panel,
.settings-card {
  border-radius: 8px;
  background: #f4eadb;
  border: 1px solid rgba(115, 87, 81, .24);
  box-shadow: 0 22px 52px rgba(23, 16, 15, .14);
}

.admin-panel {
  padding: 18px;
}

.admin-quick-nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  max-width: 760px;
  margin-top: 22px;
}

.admin-quick-nav a {
  display: grid;
  gap: 4px;
  min-height: 76px;
  border-radius: 8px;
  padding: 14px;
  color: #fff8ed;
  background: rgba(23, 16, 15, .78);
  border: 1px solid rgba(255, 248, 237, .18);
}

.admin-quick-nav strong {
  font-size: 17px;
  line-height: 1;
}

.admin-quick-nav span,
.admin-panel-note {
  color: #735751;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}

.admin-quick-nav span {
  color: #e7d7c1;
}

.admin-panel-note {
  margin: 10px 0 0;
}

.admin-panel-head,
.admin-actions,
.admin-form-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.admin-panel-head {
  flex-wrap: wrap;
}

.admin-panel-head .btn {
  min-height: 42px;
  padding: 0 12px;
  font-size: 12px;
}

.admin-panel h2,
.admin-form h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1;
}

.admin-model-list {
  display: grid;
  gap: 10px;
  max-height: 650px;
  margin: 18px 0;
  overflow-y: auto;
  padding-right: 2px;
}

.admin-model-row {
  width: 100%;
  border: 1px solid rgba(115, 87, 81, .22);
  border-radius: 8px;
  padding: 8px;
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 10px;
  align-items: center;
  color: var(--earth-ink);
  background: #fff6e8;
  font-family: inherit;
  text-align: left;
  cursor: pointer;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}

.admin-model-row:hover,
.admin-model-row.is-active {
  border-color: rgba(140, 28, 19, .52);
  background: #f7d8ad;
  transform: translateY(-1px);
}

.admin-model-row img {
  width: 72px;
  height: 78px;
  object-fit: contain;
  filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .18));
}

.admin-model-row strong,
.admin-model-row small {
  display: block;
}

.admin-model-row strong {
  font-size: 14px;
  line-height: 1.1;
}

.admin-model-row small {
  margin-top: 5px;
  color: #735751;
  font-size: 11px;
  font-weight: 700;
}

.admin-reset {
  width: 100%;
}

.admin-form {
  display: grid;
  gap: 18px;
}

.admin-form-top img {
  width: 150px;
  height: 150px;
  object-fit: contain;
  border-radius: 8px;
  background:
    radial-gradient(circle at 50% 55%, rgba(140, 28, 19, .14), transparent 38%),
    #fff6e8;
  filter: drop-shadow(0 18px 18px rgba(0, 0, 0, .22));
}

.admin-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.admin-fields label,
.settings-card {
  display: grid;
  gap: 8px;
  color: #735751;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.admin-fields .wide {
  grid-column: 1 / -1;
}

.admin-fields input,
.admin-fields textarea,
.settings-card input {
  width: 100%;
  border: 1px solid rgba(115, 87, 81, .24);
  border-radius: 8px;
  padding: 12px 13px;
  color: var(--earth-ink);
  background: #fffaf0;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  outline: none;
}

.admin-fields textarea {
  resize: vertical;
  line-height: 1.45;
}

.admin-fields input:focus,
.admin-fields textarea:focus,
.settings-card input:focus {
  border-color: rgba(140, 28, 19, .58);
  box-shadow: 0 0 0 3px rgba(191, 67, 66, .14);
}

.file-field input {
  padding: 10px;
}

.settings-card {
  padding: 22px;
  color: #f0dfc8;
  background:
    radial-gradient(circle at 92% 14%, rgba(191, 67, 66, .36), transparent 32%),
    linear-gradient(135deg, #17100f 0%, #351815 100%);
  border-color: rgba(231, 215, 193, .22);
}

.settings-card strong {
  color: #fff8ed;
}

.settings-card span {
  color: #f0dfc8;
  text-transform: none;
  letter-spacing: 0;
}

.settings-card label {
  display: grid;
  gap: 5px;
  color: #f0dfc8;
}

.settings-card input {
  margin-top: 4px;
  background: rgba(255, 250, 240, .96);
}

.settings-card textarea,
.settings-card select {
  width: 100%;
  border: 1px solid rgba(115, 87, 81, .24);
  border-radius: 8px;
  padding: 12px 13px;
  color: var(--earth-ink);
  background: rgba(255, 250, 240, .96);
  font: inherit;
  font-weight: 700;
  resize: vertical;
}

.page-editor-card {
  grid-column: 1 / -1;
}

.editor-subhead {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  border-radius: 8px;
  padding: 12px;
  background: rgba(255, 250, 240, .08);
  border: 1px solid rgba(255, 248, 237, .14);
}

.editor-subhead strong {
  color: #fff8ed;
  font-size: 15px;
  line-height: 1;
}

.editor-subhead span {
  color: #f0dfc8;
  font-size: 12px;
  line-height: 1.35;
}

.page-selector-row {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  gap: 12px;
  align-items: end;
}

.page-selector-row label {
  display: grid;
  gap: 5px;
  color: #f0dfc8;
}

.page-editor-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.page-editor-layout {
  display: grid;
  grid-template-columns: minmax(0, 650px) minmax(300px, 1fr);
  gap: 14px;
  align-items: start;
}

.page-editor-main {
  display: grid;
  gap: 12px;
}

.page-editor-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.page-editor-fields label,
.page-block-editor label {
  display: grid;
  gap: 5px;
  color: #f0dfc8;
}

.page-blocks-toolbar,
.page-block-editor-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.page-blocks-editor {
  display: grid;
  gap: 12px;
}

.page-block-editor {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border-radius: 8px;
  background: rgba(255, 250, 240, .08);
  border: 1px solid rgba(255, 248, 237, .14);
}

.page-block-editor-head {
  grid-column: 1 / -1;
}

.page-block-editor label:nth-child(4),
.page-block-editor label:nth-child(5) {
  grid-column: 1 / -1;
}

.variant-image-editor {
  display: grid;
  gap: 10px;
}

.variant-image-card {
  display: grid;
  grid-template-columns: 138px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  border-radius: 8px;
  padding: 10px;
  background: rgba(255, 250, 240, .78);
  border: 1px solid rgba(115, 87, 81, .18);
}

.variant-image-card img {
  width: 100%;
  height: 150px;
  border-radius: 8px;
  object-fit: contain;
  background: rgba(255, 248, 237, .72);
}

.variant-image-card > div {
  display: grid;
  gap: 8px;
}

.variant-image-card > div > strong {
  color: var(--earth-ink);
  font-size: 15px;
  line-height: 1;
}

.page-preview {
  position: sticky;
  top: 90px;
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(255, 248, 237, .14);
  border-radius: 8px;
  background: rgba(255, 250, 240, .08);
}

.page-preview-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  color: #f0dfc8;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.page-preview-head a {
  color: #ffcfb8;
  text-transform: none;
  letter-spacing: 0;
}

.page-preview figure {
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
  aspect-ratio: 16 / 10;
  background: rgba(23, 16, 15, .3);
}

.page-preview img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-preview small {
  color: #ffcfb8;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.page-preview h3 {
  margin: 0;
  color: #fff8ed;
  font-size: var(--type-card-title);
  line-height: 1;
}

.page-preview p {
  margin: 0;
  color: #f0dfc8;
  font-weight: 700;
  line-height: 1.35;
}

.page-preview-points {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.page-preview-points span {
  min-height: 24px;
  border-radius: 6px;
  padding: 5px 8px;
  color: #fff8ed;
  background: rgba(155, 29, 20, .86);
  font-size: 11px;
  font-weight: 700;
}

.admin-actions small,
.settings-card small {
  min-height: 18px;
  color: var(--earth-red);
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
}

@media (max-width: 980px) {
  .admin-grid,
  .admin-settings-grid {
    grid-template-columns: 1fr;
  }

  .page-selector-row,
  .page-editor-layout {
    grid-template-columns: 1fr;
  }

  .page-editor-tools {
    justify-content: flex-start;
  }

  .page-preview {
    position: static;
  }

  .admin-model-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: none;
  }
}

@media (max-width: 620px) {
  .js-ready .reveal {
    --reveal-y: 0px;
    --reveal-scale: 1;
    opacity: 1;
    transform: none;
  }

  .theme-traeger .hero-grid {
    gap: 18px;
    padding-top: 26px;
  }

  .theme-traeger h1 {
    font-size: 38px;
    line-height: .96;
  }

  .theme-traeger .lead {
    font-size: 15px;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero-actions .btn {
    min-height: 44px;
    padding: 0 12px;
    font-size: 12px;
  }

  .lineup {
    --lineup-gap: 10px;
  }

  .lineup-carousel {
    padding-bottom: 14px;
  }

  .lineup-card {
    flex-basis: calc((100% - var(--lineup-gap)) / 2);
    min-height: 246px;
    padding: 12px;
  }

  .lineup-card img {
    height: 128px;
  }

  .lineup-card h3 {
    margin: 8px 0 6px;
    font-size: 19px;
  }

  .lineup-card p {
    font-size: 10.5px;
    line-height: 1.28;
  }

  .catalog-hero {
    padding-top: 42px;
  }

  .catalog-hero h1 {
    font-size: 36px;
  }

  .catalog-hero p {
    font-size: 15px;
  }

  .catalog-hero-card {
    padding: 18px;
  }

  .catalog-hero-card strong {
    font-size: 22px;
  }

  .catalog-section {
    padding-top: 28px;
  }

  .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .food-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    max-width: none;
  }

  .food-card {
    min-height: 258px;
    padding: 10px;
  }

  .food-visual {
    height: 94px;
    margin: -2px -2px 10px;
  }

  .food-card span {
    min-height: 22px;
    padding: 0 7px;
    font-size: 8.5px;
  }

  .food-card h3 {
    margin: 9px 0 6px;
    font-size: 18px;
  }

  .food-card p {
    font-size: 10.5px;
    line-height: 1.3;
  }

  .use-section .wrap,
  .support-section .wrap {
    width: min(100% - 24px, var(--page-max));
  }

  .use-section .section-head,
  .support-section .section-head {
    width: 100%;
  }

  .use-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
    gap: 10px;
    overflow: visible;
    padding: 0;
    mask-image: none;
  }

  .use-card {
    min-height: 244px;
  }

  .use-card:first-child {
    grid-column: auto;
    grid-row: auto;
    min-height: 244px;
  }

  .use-card:nth-child(3) {
    grid-column: 1 / -1;
    min-height: 270px;
  }

  .use-grid .use-card:not(:first-child) .use-card-copy {
    max-width: none;
  }

  .use-card-copy {
    left: 14px;
    right: 14px;
    bottom: 14px;
  }

  .use-card:nth-child(-n+2) .use-card-copy {
    min-height: 158px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }

  .use-card:nth-child(-n+2) .use-card-copy h3 {
    min-height: 46px;
  }

  .use-card-copy span {
    min-height: 24px;
    padding: 4px 8px;
    font-size: 9.5px;
  }

  .use-card-copy h3 {
    margin-top: 10px;
    font-size: 22px;
    line-height: 1.02;
  }

  .use-card:nth-child(3) .use-card-copy h3 {
    font-size: var(--type-card-title);
  }

  .use-card-copy p {
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.28;
  }

  .support-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
    padding: 0;
    mask-image: none;
  }

  .support-card {
    min-height: 168px;
    padding: 16px;
    box-shadow: 0 16px 34px rgba(71,45,38,.12);
  }

  .support-card:nth-child(3) {
    grid-column: 1 / -1;
    min-height: 128px;
  }

  .support-card h3 {
    font-size: 18px;
    line-height: 1.05;
  }

  .support-card p {
    font-size: 12.5px;
    line-height: 1.35;
  }

  .review-grid {
    display: flex;
    gap: 12px;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-padding-inline: 2px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .review-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 14px;
  }

  .review-dots span {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: #a31c14;
    opacity: .38;
    box-shadow: 0 0 0 3px rgba(163,28,20,.12);
    transition: opacity .2s ease, transform .2s ease;
  }

  .review-dots span.is-active {
    opacity: 1;
    transform: scale(1.22);
  }

  .review-card {
    flex: 0 0 min(88vw, 360px);
    grid-template-columns: 1fr;
    gap: 12px;
    min-height: 0;
    padding: 14px;
    scroll-snap-align: start;
  }

  .review-card::before {
    inset: 14px;
  }

  .review-video {
    order: -1;
    min-height: 176px;
    margin: 8px 16px 8px 0;
  }

  .review-copy {
    padding: 4px 4px 2px;
  }

  .review-stars {
    font-size: 17px;
  }

  .review-person {
    margin-top: 12px;
  }

  .review-avatar {
    width: 46px;
    height: 46px;
  }

  .review-person strong {
    font-size: 18px;
  }

  .map-review-block {
    margin-top: 24px;
  }

  .map-review-head h3 {
    font-size: 26px;
  }

  .map-review-head p {
    font-size: 14px;
  }

  .map-review-card {
    min-height: 278px;
  }

  .map-review-card .review-person strong {
    font-size: 18px;
  }

  .review-person small,
  .review-copy time {
    font-size: 12px;
  }

  .review-copy p {
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.38;
  }

  .review-play {
    width: 58px;
    height: 58px;
    background:
      linear-gradient(135deg, #17100f 0 48%, transparent 49%) 24px 18px / 18px 23px no-repeat,
      rgba(255,248,237,.96);
  }

  .review-duration {
    top: 10px;
    right: 10px;
    min-height: 24px;
    font-size: 10px;
  }

  .catalog-card {
    grid-template-rows: 148px 1fr;
    min-height: 0;
    border-radius: 8px;
  }

  .catalog-media {
    padding: 10px;
  }

  .catalog-body {
    gap: 8px;
    padding: 10px;
  }

  .catalog-body span {
    min-height: 24px;
    padding: 0 8px;
    font-size: 10.5px;
    letter-spacing: .09em;
  }

  .catalog-body h2 {
    font-size: 18px;
    line-height: 1.02;
  }

  .catalog-body p {
    font-size: 10.5px;
    line-height: 1.28;
  }

  .catalog-price {
    font-size: 16px;
  }

  .package-preview {
    gap: 5px;
  }

  .package-preview strong {
    font-size: 10.5px;
  }

  .package-preview span,
  .package-preview small {
    min-height: 20px;
    padding: 0 6px;
    font-size: 8.5px;
  }

  .catalog-body .btn {
    min-height: 34px;
    padding: 0 10px;
    font-size: 10.5px;
  }

  .sticky-chat {
    right: 12px;
    bottom: 12px;
    width: min(310px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    transition: bottom .18s ease, transform .18s ease;
  }

  .sticky-chat:not(.is-collapsed) {
    right: 10px;
    left: 10px;
    bottom: 10px;
    width: auto;
    max-width: none;
  }

  .sticky-chat.is-input-focused:not(.is-collapsed) {
    top: calc(env(safe-area-inset-top, 0px) + 32px);
    bottom: auto;
  }

  .chat-panel {
    max-height: min(560px, 74vh);
  }

  .chat-body {
    max-height: 330px;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }

  .sticky-chat.is-keyboard-open:not(.is-collapsed) .chat-panel {
    max-height: clamp(220px, calc(var(--visual-vh, 100vh) - 44px), 430px);
  }

  .sticky-chat.is-keyboard-open:not(.is-collapsed) .chat-body {
    max-height: clamp(92px, calc(var(--visual-vh, 100vh) - 190px), 250px);
  }

  body.chat-open-mobile {
    overscroll-behavior: contain;
  }

  .chat-product-card {
    min-height: 80px;
    grid-template-columns: 62px 1fr;
    padding: 7px;
  }

  .chat-product-card img {
    width: 62px;
    height: 62px;
  }

  .chat-product-card strong {
    font-size: 12px;
  }

  .model-modal {
    padding: 12px;
  }

  .modal-card {
    width: 100%;
    max-height: 92vh;
    grid-template-columns: 1fr;
  }

  .modal-image-wrap {
    min-height: 176px;
    max-height: 196px;
    padding: 14px 58px 6px;
  }

  .modal-image-wrap img {
    width: 100%;
    height: auto;
    max-height: 176px;
  }

  .modal-copy {
    padding: 16px;
  }

  .modal-copy h2 {
    margin-top: 10px;
    font-size: 29px;
    line-height: .96;
  }

  .modal-price {
    margin-top: 10px;
    font-size: 23px;
  }

  .modal-specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
  }

  .modal-specs span {
    padding: 9px;
    font-size: 10px;
  }

  .modal-specs strong {
    font-size: 13px;
    line-height: 1.22;
  }

  .modal-packages {
    margin-top: 14px;
  }

  .modal-packages h3 {
    margin-bottom: 8px;
    font-size: 18px;
  }

  .package-list {
    gap: 8px;
    max-height: 178px;
  }

  .package-card {
    flex-basis: 100%;
    min-width: 0;
    gap: 6px;
    padding: 9px;
  }

  .package-card strong,
  .package-card small {
    font-size: 12px;
  }

  .package-card p {
    font-size: 10.5px;
  }

  .package-details summary {
    font-size: 10.5px;
  }

  .package-details ol {
    font-size: 10px;
  }

  .modal-description {
    margin-top: 12px;
    font-size: 12.5px;
    line-height: 1.4;
  }

  .modal-actions {
    margin-top: 14px;
  }

  .modal-actions .btn {
    min-height: 40px;
    padding: 0 12px;
    font-size: 12px;
  }

  .admin-hero {
    padding: 96px 0 34px;
  }

  .admin-grid {
    gap: 12px;
  }

  .admin-panel,
  .settings-card {
    padding: 14px;
  }

  .admin-panel-head,
  .admin-actions,
  .admin-form-top {
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-form-top img {
    width: 118px;
    height: 118px;
  }

  .admin-model-list,
  .admin-fields {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .contacts-grid,
  .seo-hero-grid,
  .seo-content-grid {
    grid-template-columns: 1fr;
  }

  .seo-hero-media {
    min-height: 320px;
  }

  .seo-link-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .seo-cta-band {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 620px) {
  .product-halo {
    width: min(78%, 340px);
    height: 60%;
    transform: translateY(42px) rotate(-2deg);
    opacity: .8;
  }

  .theme-traeger .hero {
    overflow: hidden;
  }

  .food-card {
    min-height: 286px;
    background: rgba(244,234,219,.96);
  }

  .food-visual {
    height: 118px;
    background-color: #2b1916;
  }

  .flavor-stage {
    min-height: 0;
    padding-bottom: 28px;
    background-position: 58% center;
  }

  .flavor-copy {
    width: 100%;
    padding: 24px 18px 0;
  }

  .flavor-copy h2 {
    font-size: 44px;
    line-height: .92;
  }

  .flavor-copy p {
    font-size: 14px;
  }

  .meat-orbit {
    position: relative;
    inset: auto;
    display: block;
    width: calc(100% - 36px);
    height: 138px;
    margin: 22px 18px 0;
    overflow: hidden;
    mask-image: none;
  }

  .meat-card,
  .meat-card:nth-child(n) {
    position: absolute;
    top: 10px;
    right: auto;
    left: 0;
    width: 100%;
    height: 112px;
    padding: 16px;
    opacity: 0;
    animation: mobileMeatSwap 26s ease-in-out infinite;
    transform: translate3d(18px, 0, 0) scale(.98);
  }

  .meat-card:nth-child(1) {
    animation-delay: 0s;
  }

  .meat-card:nth-child(2) {
    animation-delay: -5.2s;
  }

  .meat-card:nth-child(3) {
    animation-delay: -10.4s;
  }

  .meat-card:nth-child(4) {
    animation-delay: -15.6s;
  }

  .meat-card:nth-child(5) {
    animation-delay: -20.8s;
  }

  .meat-card strong {
    font-size: 24px;
  }

  .meat-card span {
    max-width: 240px;
    font-size: 13px;
  }

  .seo-hero {
    padding-top: 28px;
  }

  .seo-hero-copy h1 {
    font-size: var(--type-hero);
  }

  .seo-hero-copy p {
    font-size: 15px;
  }

  .seo-hero-media {
    min-height: 236px;
  }

  .seo-hero-caption {
    left: 12px;
    right: 12px;
    bottom: 12px;
    align-items: flex-start;
    flex-direction: column;
    padding: 10px;
  }

  .seo-hero-caption strong {
    text-align: left;
  }

  .seo-pill-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .seo-pill {
    min-height: 86px;
    padding: 14px;
  }

  .seo-pill:first-child {
    grid-column: 1 / -1;
    min-height: 94px;
  }

  .seo-pill strong {
    font-size: 17px;
  }

  .seo-content-grid {
    gap: 12px;
  }

  .seo-text-block,
  .contact-card,
  .seo-editable-card,
  .seo-cta-band,
  .custom-content-block {
    padding: 18px;
  }

  .custom-content-block {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .custom-content-block.image-left figure {
    order: initial;
  }

  .custom-content-block figure,
  .custom-content-block img {
    min-height: 210px;
  }

  .page-editor-fields,
  .page-block-editor {
    grid-template-columns: 1fr;
  }

  .seo-models {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .seo-model-card {
    grid-template-rows: 112px minmax(130px, 1fr);
    min-height: 250px;
  }

  .seo-model-image {
    padding: 8px;
  }

  .seo-model-image img {
    top: 43%;
    width: auto;
    height: min(92px, calc(100% - 16px));
    max-width: 82%;
  }

  .seo-model-image span {
    left: 10px;
    top: 10px;
    min-height: 26px;
    padding: 0 8px;
    font-size: 10px;
  }

  .seo-model-info {
    gap: 7px;
    padding: 12px;
  }

  .seo-model-info strong {
    font-size: 18px;
  }

  .seo-model-info small {
    font-size: 11px;
  }

  .seo-model-info b {
    font-size: 14px;
  }

  .seo-link-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .seo-link-group {
    min-height: 176px;
    padding: 12px;
  }

  .seo-link-group > span {
    min-height: 26px;
    padding: 0 8px;
    font-size: 10px;
  }

  .seo-link-group div {
    gap: 6px;
    margin-top: 12px;
  }

  .seo-link-grid .seo-link-group a {
    min-height: 36px;
    padding: 0 9px;
    font-size: 12px;
    line-height: 1.05;
  }

  .contacts-grid {
    gap: 12px;
  }

  .contact-card strong {
    font-size: 24px;
  }

  .social-links {
    display: flex;
    grid-template-columns: none;
  }

  .social-pill {
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 42px;
    padding: 0;
  }
}

@media (max-width: 420px) {
  .theme-traeger h1,
  .catalog-hero h1 {
    font-size: 32px;
  }

  .lineup-card {
    min-height: 228px;
    padding: 10px;
  }

  .lineup-card img {
    height: 112px;
  }

  .catalog-card {
    grid-template-rows: 132px 1fr;
  }

  .catalog-body h2 {
    font-size: 16px;
  }

  .catalog-body p {
    font-size: 10px;
  }

  .seo-models {
    gap: 8px;
  }

  .seo-model-card {
    grid-template-rows: 98px minmax(126px, 1fr);
    min-height: 230px;
  }

  .seo-model-image img {
    top: 43%;
    width: auto;
    height: min(78px, calc(100% - 14px));
    max-width: 82%;
  }

  .seo-model-info {
    padding: 10px;
  }

  .seo-model-info strong {
    font-size: 16px;
  }

  .seo-model-info small {
    font-size: 10px;
  }

  .seo-link-group {
    min-height: 164px;
  }

  .seo-pill strong {
    font-size: 15px;
  }
}

/* Mobile cleanup for a calmer first screen and tighter content blocks. */
.theme-traeger .hero {
  background: linear-gradient(180deg, #f4eadb 0%, #e7d7c1 100%);
}

.theme-traeger .hero::before,
.theme-traeger .hero::after,
.theme-traeger .hero .floating-card,
.theme-traeger .metrics,
.product-halo,
.smoke-field {
  display: none;
}

.theme-traeger .hero-modes {
  display: block;
  width: min(100%, 560px);
  margin-top: 18px;
  padding: 15px 16px 16px;
  border-color: rgba(155, 29, 20, .2);
  border-left: 5px solid #9b1d14;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 250, 240, .96), rgba(244, 224, 201, .74));
  box-shadow: 0 12px 26px rgba(23, 16, 15, .08);
}

.theme-traeger .hero-modes strong {
  margin-bottom: 9px;
  color: #8c1c13;
  font-size: var(--type-lead);
  line-height: 1.08;
}

.theme-traeger .hero-mode-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 10px;
}

.theme-traeger .hero-mode-list span {
  justify-content: flex-start;
  min-height: 30px;
  border-radius: 0;
  border-left: 2px solid rgba(155, 29, 20, .46);
  padding: 5px 0 5px 14px;
  background: transparent;
  color: #8c1c13;
  box-shadow: none;
  text-align: left;
  line-height: 1.1;
  white-space: normal;
}

.theme-traeger .hero-grid {
  min-height: auto;
  align-items: center;
}

.theme-traeger .hero-actions .secondary {
  display: none;
}

.mobile-model-link {
  display: none;
}

.traeger-visual {
  min-height: clamp(420px, 48vw, 610px);
}

.roof-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 26px;
  border-radius: 6px;
  padding: 0 9px;
  color: #fff8ed;
  background: #735751;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.lineup-card .roof-badge {
  margin-top: 8px;
}

.catalog-body small.roof-badge {
  min-height: 24px;
  color: #fff8ed;
  background: #735751;
  font-size: 11px;
  font-weight: 500;
  text-transform: none;
  letter-spacing: .04em;
}

.modal-inside {
  overflow: hidden;
  margin: 18px 0 0;
  border-radius: 8px;
  background: rgba(255,248,237,.1);
  border: 1px solid rgba(231,215,193,.16);
}

.modal-inside img {
  display: block;
  width: 100%;
  max-height: 260px;
  object-fit: cover;
}

.modal-inside figcaption {
  padding: 10px 12px;
  color: #f0dfc8;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.35;
}

@keyframes mobileFoodOrbit {
  0% {
    right: -170px;
    opacity: 0;
    transform: rotate(-4deg) scale(.92);
  }
  8%,
  84% {
    opacity: 1;
  }
  48% {
    transform: rotate(5deg) scale(.98);
  }
  100% {
    right: calc(100% + 170px);
    opacity: 0;
    transform: rotate(-7deg) scale(.92);
  }
}

@media (max-width: 620px) {
  :root {
    --type-hero: clamp(34px, 9vw, 42px);
    --type-section: clamp(30px, 8vw, 36px);
    --type-lead: 16px;
    --type-card-title: 22px;
  }

  .wrap {
    width: min(100% - 32px, var(--page-max));
  }

  .section {
    padding: 44px 0;
  }

  .theme-traeger .hero-grid {
    gap: 14px;
    padding-top: 18px;
  }

  .theme-traeger h1 {
    max-width: 100%;
    font-size: var(--type-hero);
    line-height: 1.03;
  }

  .theme-traeger .lead {
    margin-top: 12px;
    font-size: var(--type-lead);
    line-height: 1.42;
  }

  .hero-actions {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 16px;
  }

  .hero-actions .btn {
    min-height: 46px;
    padding: 0 12px;
    font-size: 13px;
  }

  .theme-traeger .nav-actions .mobile-model-link {
    display: inline-flex;
    min-height: 38px;
    padding: 0 14px;
    font-size: 12px;
  }

  .traeger-visual {
    min-height: 330px;
  }

  .smoker-wrap {
    width: min(76%, 280px);
    max-height: 320px;
  }

  .traeger-product {
    max-height: 320px;
  }

  .section-head {
    gap: 10px;
    margin-bottom: 18px;
  }

  .section-head h2,
  .contacts-section h2 {
    max-width: 100%;
    font-size: var(--type-section);
    line-height: 1.08;
  }

  .eyebrow {
    max-width: 100%;
    min-height: 0;
    padding: 8px 12px;
    line-height: 1.1;
    white-space: normal;
  }

  .food-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .food-card {
    min-height: 220px;
    padding: 10px;
  }

  .food-visual {
    height: 84px;
    margin: 0 0 9px;
  }

  .food-card span {
    min-height: 21px;
    padding: 0 7px;
    font-size: 8.5px;
    line-height: 1;
  }

  .food-card h3 {
    margin: 8px 0 6px;
    font-size: 16px;
    line-height: 1.1;
  }

  .food-card p {
    font-size: 10.5px;
    line-height: 1.34;
  }

  .use-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: none;
    gap: 10px;
  }

  .use-card,
  .use-card:first-child,
  .use-card:nth-child(3) {
    grid-column: auto;
    grid-row: auto;
    min-height: 238px;
  }

  .use-card:nth-child(3) {
    grid-column: 1 / -1;
    min-height: 248px;
  }

  .use-card-copy {
    left: 14px;
    right: 14px;
    bottom: 14px;
  }

  .use-card:nth-child(-n+2) .use-card-copy {
    min-height: 0;
  }

  .use-card:nth-child(-n+2) .use-card-copy h3 {
    min-height: 0;
  }

  .use-card-copy span {
    min-height: 24px;
    padding: 4px 8px;
    font-size: 9px;
  }

  .use-card-copy h3,
  .use-card:nth-child(3) .use-card-copy h3 {
    margin-top: 9px;
    font-size: 19px;
    line-height: 1.06;
  }

  .use-card:nth-child(3) .use-card-copy h3 {
    font-size: 24px;
  }

  .use-card-copy p {
    margin-top: 7px;
    font-size: 10.5px;
    line-height: 1.3;
  }

  .use-card:nth-child(3) .use-card-copy p {
    font-size: 12.5px;
  }

  .flavor-stage {
    min-height: 0;
    padding-bottom: 18px;
    background-position: 58% center;
  }

  .flavor-copy {
    width: 100%;
    padding: 20px;
  }

  .flavor-copy h2 {
    font-size: 38px;
    line-height: 1;
  }

  .flavor-copy p {
    font-size: 14px;
    line-height: 1.45;
  }

  .meat-orbit {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    height: 112px;
    margin: 6px 0 0;
    overflow: hidden;
  }

  .meat-card,
  .meat-card:nth-child(n) {
    position: absolute;
    top: 16px;
    right: -170px;
    left: auto;
    width: 150px;
    height: 78px;
    padding: 10px;
    opacity: 0;
    animation: mobileFoodOrbit 18s linear infinite;
    transform: rotate(-4deg) scale(.92);
  }

  .meat-card:nth-child(1) { animation-delay: 0s; }
  .meat-card:nth-child(2) { animation-delay: -3.6s; }
  .meat-card:nth-child(3) { animation-delay: -7.2s; }
  .meat-card:nth-child(4) { animation-delay: -10.8s; }
  .meat-card:nth-child(5) { animation-delay: -14.4s; }

  .meat-card strong {
    font-size: 16px;
    line-height: 1.05;
  }

  .meat-card span {
    max-width: 116px;
    margin-top: 5px;
    font-size: 10px;
    line-height: 1.2;
  }

  .contacts-grid {
    gap: 14px;
  }

  .contacts-grid p {
    font-size: 15px;
    line-height: 1.45;
  }

  .contact-card {
    gap: 12px;
    padding: 16px;
  }

  .contact-card strong {
    font-size: var(--type-card-title);
    line-height: 1.1;
    white-space: nowrap;
  }

  .contact-card span {
    font-size: 13px;
    line-height: 1.35;
  }

  .social-links {
    display: flex;
    grid-template-columns: none;
    gap: 8px;
  }

  .social-pill {
    width: 42px;
    min-width: 42px;
    height: 42px;
    min-height: 40px;
    padding: 0;
  }

  .contacts-section {
    padding-bottom: 86px;
  }

  .modal-inside {
    margin-top: 14px;
  }

  .modal-inside img {
    max-height: 150px;
  }

  .admin-quick-nav {
    grid-template-columns: 1fr;
  }

  .variant-image-card {
    grid-template-columns: 1fr;
  }

  .variant-image-card img {
    height: 180px;
  }

  .use-card,
  .use-card:first-child {
    min-height: 270px;
  }

  .use-card:nth-child(3) {
    min-height: 310px;
  }

  .use-card-copy {
    left: 12px;
    right: 12px;
    bottom: 12px;
    align-items: flex-start;
  }

  .use-card-copy span {
    width: fit-content;
    max-width: 100%;
    align-self: flex-start;
  }

  .use-card-copy h3,
  .use-card:nth-child(3) .use-card-copy h3 {
    font-size: 20px;
    line-height: 1.06;
  }

  .use-card:nth-child(3) .use-card-copy h3 {
    font-size: 27px;
  }

  .use-card-copy p {
    font-size: 10.5px;
    line-height: 1.28;
  }

  .use-card:nth-child(3) .use-card-copy p {
    font-size: 12px;
    line-height: 1.32;
  }

  .meat-orbit {
    width: 100%;
    height: 112px;
    margin: 8px 0 0;
    overflow: hidden;
  }

  .meat-card,
  .meat-card:nth-child(n) {
    top: 16px;
    right: -170px;
    left: auto;
    width: 132px;
    height: 78px;
    padding: 10px;
    opacity: 0;
    animation: mobileFoodOrbit 26s linear infinite;
    transform: rotate(-4deg) scale(.92);
  }

  .meat-card:nth-child(1) { animation-delay: 0s; }
  .meat-card:nth-child(2) { animation-delay: -5.2s; }
  .meat-card:nth-child(3) { animation-delay: -10.4s; }
  .meat-card:nth-child(4) { animation-delay: -15.6s; }
  .meat-card:nth-child(5) { animation-delay: -20.8s; }

  .meat-card strong {
    font-size: 15px;
    line-height: 1.05;
  }

  .meat-card span {
    max-width: 106px;
    margin-top: 5px;
    font-size: 9.5px;
    line-height: 1.16;
  }
}

@media (max-width: 420px) {
  .food-card {
    min-height: 210px;
  }

  .catalog-card {
    grid-template-rows: 138px 1fr;
  }

  .catalog-body small.roof-badge {
    font-size: 10px;
  }

  .contact-card strong {
    font-size: 23px;
  }

  .use-card,
  .use-card:first-child {
    min-height: 286px;
  }

  .use-card:nth-child(3) {
    min-height: 318px;
  }

  .meat-orbit {
    height: 108px;
  }

  .meat-card,
  .meat-card:nth-child(n) {
    width: 128px;
    height: 76px;
  }
}

/* Final readability polish: softer mode accent, medium copy, clearer roof labels. */
.theme-traeger .hero-modes {
  border-left: 5px solid #9b1d14;
  background: linear-gradient(135deg, rgba(255, 250, 240, .96), rgba(244, 224, 201, .74));
  box-shadow: 0 12px 26px rgba(23, 16, 15, .08);
}

.theme-traeger .hero-mode-list span {
  justify-content: flex-start;
  border-radius: 0;
  border-left: 2px solid rgba(155, 29, 20, .46);
  padding: 5px 0 5px 14px;
  background: transparent;
  color: #8c1c13;
  box-shadow: none;
  text-align: left;
}

.theme-traeger :is(
  .lead,
  .section-head p,
  .lineup-card p,
  .food-card p,
  .use-card-copy p,
  .decision-main p,
  .function-stack p,
  .flavor-copy p,
  .ai-box p,
  .chat-promo-copy p,
  .catalog-hero p,
  .catalog-body p,
  .support-card p,
  .reviews-section .section-head p,
  .seo-hero-copy p,
  .seo-text-block p,
  .seo-cta-band p,
  .custom-block-copy p,
  .selection-card p,
  .contacts-grid p,
  .contact-card span,
  .page-preview p
) {
  font-weight: 500;
}

.theme-traeger :is(.roof-badge, .catalog-body > span) {
  font-weight: 500;
  letter-spacing: .09em;
}

.theme-traeger .catalog-body small.roof-badge {
  letter-spacing: .045em;
}

.theme-traeger .eyebrow {
  width: fit-content;
  max-width: 100%;
  flex: 0 0 auto;
  align-self: flex-start;
  justify-self: start;
}

.theme-traeger .eyebrow + :is(h1, h2, h3) {
  margin-top: 12px;
}

.theme-traeger :is(.proof-intro, .faq-layout, .contacts-grid, .chat-promo-copy, .seo-editable-card) .eyebrow + h2 {
  margin-top: 12px;
}

.theme-traeger .use-head {
  gap: 0;
}

/* Checklist improvements: proof, process, FAQ, footer, utility pages. */
.hero-assurance {
  max-width: 590px;
  margin: 12px 0 0;
  color: #735751;
  font-size: var(--type-sm);
  font-weight: 500;
  line-height: 1.45;
}

.selection-section {
  background: linear-gradient(180deg, #e7d7c1 0%, #f0e4d2 100%);
}

.selection-card {
  max-width: 980px;
  border: 1px solid rgba(115,87,81,.2);
  border-radius: 8px;
  padding: clamp(22px, 3vw, 36px);
  background: rgba(255,248,237,.78);
  box-shadow: 0 18px 44px rgba(23,16,15,.08);
}

.selection-card h2 {
  max-width: 840px;
  margin: 12px 0 16px;
  font-size: var(--type-section);
  line-height: 1;
}

.selection-card p {
  max-width: 860px;
  margin: 0 0 12px;
  color: #735751;
  line-height: 1.45;
}

.selection-card p:last-child {
  margin-bottom: 0;
}

.proof-section {
  background:
    linear-gradient(180deg, #e7d7c1 0%, #f0e4d2 100%);
}

.proof-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: 18px;
  align-items: stretch;
}

.proof-intro,
.proof-card,
.process-card,
.faq-item {
  border: 1px solid rgba(115,87,81,.2);
  border-radius: 8px;
  background: rgba(255,248,237,.74);
  box-shadow: 0 18px 44px rgba(23,16,15,.08);
}

.proof-intro {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  justify-content: center;
  padding: clamp(22px, 3vw, 36px);
}

.proof-intro h2,
.faq-layout h2 {
  margin: 12px 0 14px;
  font-size: var(--type-section);
  line-height: 1;
}

.proof-intro p,
.proof-card p,
.process-card p,
.process-cta p,
.faq-layout > div > p,
.faq-item p,
.site-footer p {
  color: #735751;
  font-weight: 500;
  line-height: 1.45;
}

.proof-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.proof-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.proof-card {
  display: flex;
  min-height: 186px;
  flex-direction: column;
  justify-content: flex-end;
  padding: 18px;
  overflow: hidden;
}

.proof-card span,
.process-card span {
  width: fit-content;
  border-left: 5px solid #9b1d14;
  padding-left: 11px;
  color: #8c1c13;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.process-card span {
  font-size: 15px;
  color: #9b1d14;
}

.proof-card h3,
.process-card h3 {
  margin: 12px 0 8px;
  font-size: 24px;
  line-height: 1.04;
}

.proof-card p {
  margin: 0;
}

.proof-photo {
  position: relative;
  grid-column: 1 / -1;
  min-height: 270px;
  padding: 0;
  background: #17100f;
  color: #fff8ed;
}

.proof-photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .74;
}

.proof-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 28%, rgba(23,16,15,.78));
}

.proof-photo > div {
  position: relative;
  z-index: 1;
  max-width: 520px;
  padding: 18px;
}

.proof-photo h3,
.proof-photo p {
  color: #fff8ed;
}

.process-section {
  background:
    linear-gradient(180deg, #d7c4aa 0%, #eadcc8 100%);
}

.process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.process-grid::-webkit-scrollbar,
.proof-card-grid::-webkit-scrollbar,
.review-grid::-webkit-scrollbar {
  display: none;
}

.process-card {
  min-height: 220px;
  padding: 22px;
}

.process-card p {
  margin: 0;
}

.process-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 14px;
  border-radius: 8px;
  padding: 18px;
  background: #17100f;
  color: #fff8ed;
}

.process-cta .btn {
  flex: 0 0 auto;
  white-space: nowrap;
}

.process-cta p {
  max-width: 760px;
  margin: 0;
  color: #f4e5d1;
}

.faq-section {
  background:
    linear-gradient(180deg, #eadcc8 0%, #f0e4d2 100%);
}

.faq-layout {
  display: grid;
  grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
  gap: 18px;
  align-items: start;
}

.faq-layout > div:first-child {
  position: sticky;
  top: 96px;
}

.faq-layout > div > p {
  max-width: 460px;
  margin: 0 0 20px;
}

.faq-list {
  display: grid;
  gap: 10px;
}

.faq-item {
  padding: 0;
  overflow: hidden;
}

.faq-item summary {
  cursor: pointer;
  list-style: none;
  padding: 18px 20px;
  color: #17100f;
  font-size: var(--type-base);
  font-weight: 700;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item summary::after {
  content: "+";
  float: right;
  color: #8c1c13;
}

.faq-item[open] summary::after {
  content: "-";
}

.faq-item p {
  margin: -4px 20px 18px;
}

.contact-phone {
  width: fit-content;
  color: inherit;
}

.contact-phone:hover {
  color: #8c1c13;
}

.contact-note {
  color: #735751;
  font-size: var(--type-sm);
  font-weight: 500;
  line-height: 1.35;
}

.site-footer {
  padding: 28px 0 34px;
  background: #17100f;
  color: #fff8ed;
}

.footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(180px, .55fr) minmax(220px, .7fr);
  gap: 18px;
}

.site-footer strong,
.site-footer span {
  display: block;
  margin-bottom: 8px;
  font-weight: 700;
}

.site-footer p {
  max-width: 620px;
  margin: 0;
  color: #d9c6ad;
}

.site-footer a,
.site-footer button {
  display: block;
  width: fit-content;
  margin: 6px 0 0;
  border: 0;
  padding: 0;
  background: transparent;
  color: #f4e5d1;
  font: inherit;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
}

.site-footer a:hover,
.site-footer button:hover {
  color: #fff8ed;
}

.utility-page {
  background: #eadcc8;
  color: #17100f;
}

.utility-main {
  min-height: 100vh;
  padding: clamp(28px, 6vw, 72px) 0;
}

.utility-card {
  width: min(900px, calc(100% - 32px));
  margin: 0 auto;
  border-radius: 8px;
  padding: clamp(24px, 5vw, 48px);
  background: rgba(255,248,237,.86);
  border: 1px solid rgba(115,87,81,.2);
  box-shadow: 0 24px 80px rgba(23,16,15,.12);
}

.utility-card h1 {
  margin: 0 0 14px;
  font-size: var(--type-section);
  line-height: 1;
}

.utility-card p,
.utility-card li {
  color: #735751;
  font-weight: 500;
  line-height: 1.55;
}

.utility-card ul {
  padding-left: 20px;
}

.utility-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

@media (max-width: 1100px) {
  .process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .proof-grid,
  .faq-layout {
    grid-template-columns: 1fr;
  }

  .faq-layout > div:first-child {
    position: static;
  }

  .process-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    max-width: 100%;
    overflow: visible;
    scrollbar-width: none;
  }

  .process-card {
    min-height: 0;
    scroll-snap-align: none;
  }

  .process-cta {
    align-items: flex-start;
    flex-direction: column;
  }

  .footer-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .hero-assurance {
    font-size: 13px;
  }

  .sticky-chat.is-collapsed {
    display: none;
  }

  .sticky-chat.is-collapsed .chat-launch {
    min-height: 42px;
    gap: 8px;
    padding: 8px 10px;
  }

  .sticky-chat.is-collapsed .chat-dot {
    width: 8px;
    height: 8px;
  }

  .sticky-chat.is-collapsed .chat-launch strong {
    font-size: 12px;
  }

  .sticky-chat.is-collapsed .chat-launch small {
    display: none;
  }

  .proof-section .wrap,
  .selection-section .wrap,
  .process-section .wrap,
  .faq-section .wrap {
    width: min(100% - 24px, var(--page-max));
  }

  .selection-card {
    padding: 20px;
  }

  .selection-card h2 {
    font-size: 33px;
    line-height: 1.05;
  }

  .selection-card p {
    font-size: 14px;
  }

  .proof-intro {
    padding: 20px;
  }

  .proof-intro h2,
  .faq-layout h2 {
    font-size: 33px;
    line-height: 1.05;
  }

  .proof-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    max-width: 100%;
    overflow: visible;
    scrollbar-width: none;
  }

  .proof-photo {
    grid-column: 1 / -1;
    min-height: 224px;
  }

  .proof-card {
    min-height: 144px;
    justify-content: flex-start;
    padding: 14px;
    scroll-snap-align: none;
  }

  .proof-card:not(.proof-photo) h3,
  .process-card h3 {
    font-size: 18px;
    line-height: 1.08;
  }

  .proof-card:not(.proof-photo) p,
  .process-card p {
    font-size: 12.5px;
    line-height: 1.34;
  }

  .proof-card span,
  .process-card span {
    font-size: 12px;
  }

  .process-card {
    padding: 15px;
  }

  .process-cta {
    padding: 16px;
  }

  .faq-item summary {
    padding: 16px;
  }

  .faq-item p {
    margin: -2px 16px 16px;
  }

  .site-footer {
    padding-bottom: 96px;
  }
}

.sticky-chat.is-collapsed {
  display: none;
}

.theme-traeger .use-head {
  gap: 0;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
  }

  .js-ready .reveal,
  .tilt-card {
    --reveal-y: 0px;
    --reveal-scale: 1;
    --hover-lift: 0px;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
}


/* Client edits: brand mark, load labels and clickable business cards */
.brand {
  position: relative;
  z-index: 1;
}

.brand::before {
  content: "";
  position: absolute;
  left: -7px;
  top: 50%;
  width: 58px;
  height: 58px;
  transform: translateY(-50%);
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background: linear-gradient(135deg, rgba(155, 29, 20, .95), rgba(191, 67, 66, .82));
  opacity: .96;
  z-index: -1;
  filter: drop-shadow(0 12px 18px rgba(23, 16, 15, .16));
}

.model-load {
  display: block;
  width: fit-content;
  margin: 4px 0 10px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(155, 29, 20, .08);
  color: #8c1c13;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  white-space: nowrap;
}

.lineup-card h3,
.catalog-body h2,
.modal-copy h2,
.seo-model-info strong,
.seo-model-image span {
  word-spacing: normal;
}

.use-card[data-model-open] {
  cursor: pointer;
}

.use-card[data-model-open]:focus-visible {
  outline: 3px solid rgba(191, 67, 66, .45);
  outline-offset: 4px;
}

.vk-review-card .review-avatar {
  font-size: 12px;
  font-weight: 900;
  letter-spacing: -.03em;
}

/* === Fix 2026-05-21: restore carousel, improve readability, spacing and review blocks === */
.theme-traeger .wrap { width: min(100% - 32px, var(--page-max)); }
.theme-traeger .section { padding-block: clamp(42px, 6vw, 82px); }
.theme-traeger .section-head { margin-bottom: clamp(20px, 3vw, 34px); gap: 18px; }
.theme-traeger .section-head p { max-width: 560px; color: #6f554f; line-height: 1.5; }
.theme-traeger .brand-logo { width: 54px !important; height: 54px !important; object-fit: contain !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; filter: contrast(1.05) brightness(.92) !important; }
.theme-traeger .brand { gap: 12px; }

.refined-card {
  display: grid;
  gap: 14px;
  max-width: 1098px;
  padding: clamp(26px, 4vw, 44px) !important;
  overflow: visible !important;
}
.refined-card h2 { max-width: 760px; margin-bottom: 0 !important; }
.refined-card p { max-width: 690px; margin: 0 !important; font-size: clamp(17px, 1.6vw, 20px); }
.selection-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.selection-tags span,
.review-platforms a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  border-radius: 999px;
  padding: 0 14px;
  color: #fff8ed;
  background: #17100f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-decoration: none;
}

.balanced-proof-grid { align-items: stretch; }
.proof-card-grid-fixed { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; align-content: stretch; }
.proof-card-grid-fixed .proof-card { min-height: 174px; justify-content: flex-start; }
.proof-card-grid-fixed .proof-photo { min-height: 258px; justify-content: flex-end; }
.proof-card-grid-fixed .proof-card h3 { font-size: clamp(21px, 2vw, 27px); }
.proof-card-grid-fixed .proof-card p { font-size: 15px; line-height: 1.45; }
.proof-intro h2 { max-width: 560px; }
.proof-intro p { max-width: 590px; font-size: clamp(16px, 1.5vw, 18px); }

.lineup-head-clean p { max-width: 680px; }
.lineup-carousel { overflow: hidden !important; padding: 4px 2px 28px !important; }
.lineup { display: flex !important; gap: var(--lineup-gap, 14px) !important; align-items: stretch !important; }
.lineup-card {
  flex: 0 0 calc((100% - 42px) / 4) !important;
  min-width: 0 !important;
  min-height: 378px !important;
  padding: 18px 16px !important;
  border-radius: 14px !important;
  background: #f7eddf !important;
  box-shadow: 0 18px 42px rgba(43, 29, 26, .10) !important;
}
.lineup-card img { height: 205px !important; max-width: 100%; object-fit: contain; }
.lineup-card h3 {
  display: block !important;
  min-height: 54px;
  margin: 12px 0 8px !important;
  color: #17100f !important;
  font-size: clamp(20px, 1.8vw, 25px) !important;
  line-height: 1.1 !important;
  letter-spacing: .01em !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
}
.lineup-card p {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: #6f554f !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
}
.lineup-card .roof-badge { margin-top: -2px; }

.products-head-clean { align-items: end; }
.food-grid-clean {
  max-width: none !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
.food-grid-clean .food-card {
  min-height: 360px !important;
  padding: 16px !important;
  border-radius: 16px !important;
  background: #fff8ed !important;
  color: #17100f !important;
  box-shadow: 0 18px 42px rgba(43, 29, 26, .12) !important;
}
.food-grid-clean .food-visual {
  height: 150px !important;
  margin: 0 0 16px !important;
  border-radius: 12px !important;
  background-color: #d7c4aa !important;
}
.food-grid-clean .food-card span { position: relative; z-index: 2; }
.food-grid-clean .food-card h3 {
  color: #17100f !important;
  margin: 14px 0 8px !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  line-height: 1.08 !important;
}
.food-grid-clean .food-card p {
  color: #5f4945 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

.compact-head p { margin-top: 0; }
.process-grid-clean { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 14px !important; }
.process-grid-clean .process-card {
  min-height: 210px;
  padding: 20px !important;
  border-radius: 16px !important;
  background: #fff8ed !important;
}
.process-grid-clean .process-card h3 { font-size: clamp(22px, 2vw, 27px); margin-bottom: 10px; }
.process-grid-clean .process-card p { margin: 0; font-size: 15px; line-height: 1.45; }
.process-cta-clean {
  margin-top: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-radius: 16px;
  padding: 18px 20px;
  background: #17100f;
  color: #fff8ed;
}
.process-cta-clean p { margin: 0 !important; max-width: 720px; color: #f0dfc8 !important; }

.flavor-stage-clean {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr);
  gap: clamp(18px, 3vw, 34px);
  min-height: 0 !important;
  padding: clamp(24px, 4vw, 46px);
  align-items: center;
  background:
    linear-gradient(90deg, rgba(23,16,15,.94), rgba(49,31,27,.84)),
    url("assets/optimized/food-smoking-chamber.webp") center / cover no-repeat !important;
}
.flavor-stage-clean .flavor-copy { width: auto !important; padding: 0 !important; }
.flavor-stage-clean .flavor-copy h2 { color: #fff8ed; line-height: .98; }
.flavor-stage-clean .flavor-copy p { max-width: 560px; font-size: clamp(16px, 1.45vw, 19px); }
.support-cards { position: relative; z-index: 5; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.support-cards article {
  min-height: 132px;
  border-radius: 16px;
  padding: 18px;
  background: rgba(255,248,237,.95);
  color: #17100f;
  border: 1px solid rgba(255,255,255,.34);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
}
.support-cards strong { display: block; font-size: clamp(21px, 2vw, 28px); line-height: 1.05; }
.support-cards span { display: block; margin-top: 8px; color: #6f554f; font-weight: 700; line-height: 1.35; }

.chat-promo-clean { grid-template-columns: minmax(0, 1fr) minmax(340px, .74fr) !important; border-radius: 20px !important; padding: clamp(24px, 4vw, 42px) !important; }
.chat-promo-clean .chat-promo-copy h2 { max-width: 660px; font-size: clamp(38px, 5vw, 70px); line-height: .96; }
.chat-promo-clean .chat-promo-copy p { max-width: 620px; font-size: clamp(17px, 1.55vw, 20px); line-height: 1.4; }
.chat-promo-clean .chat-promo-demo { min-height: 300px; border-radius: 18px; }

.seo-card-visible {
  display: grid;
  gap: 12px;
  max-width: 1000px;
  border-radius: 20px !important;
  padding: clamp(26px, 4vw, 44px) !important;
  background: #17100f !important;
  color: #fff8ed !important;
  box-shadow: 0 22px 54px rgba(43,29,26,.18) !important;
}
.seo-card-visible h2 { color: #fff8ed !important; margin: 0 !important; }
.seo-card-visible p { max-width: 780px; margin: 0 !important; color: #f0dfc8 !important; font-size: clamp(16px, 1.5vw, 19px); }

.reviews-head-clean p { max-width: 520px; }
.review-platforms {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: -8px 0 18px;
  border-radius: 14px;
  padding: 14px 16px;
  background: rgba(255,248,237,.7);
  border: 1px solid rgba(115,87,81,.18);
}
.review-platforms span { color: #6f554f; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; font-size: 12px; }
.review-grid-readable { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important; }
.review-grid-readable .review-card,
.vk-video-grid .review-card {
  min-height: 0 !important;
  border-radius: 18px !important;
  box-shadow: 0 20px 46px rgba(43, 29, 26, .14) !important;
}
.review-grid-readable .review-card {
  background: #17100f !important;
  color: #fff8ed !important;
  grid-template-columns: 1fr !important;
  padding: 18px !important;
}
.review-grid-readable .review-copy { padding: 0 !important; justify-content: flex-start !important; }
.review-grid-readable .review-person strong { font-size: clamp(18px, 1.6vw, 22px); color: #fff8ed; }
.review-grid-readable .review-copy p { min-height: 86px; margin-top: 18px; color: #ead9c4; font-size: 15px; line-height: 1.48; }
.review-grid-readable .review-copy time { margin-top: auto; color: #fff8ed; font-weight: 800; }
.review-grid-readable .review-avatar { width: 48px; height: 48px; }
.vk-video-block { margin-top: clamp(26px, 4vw, 46px); }
.vk-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.vk-video-card {
  display: grid !important;
  grid-template-columns: minmax(240px, .92fr) minmax(0, 1fr) !important;
  gap: 16px !important;
  padding: 16px !important;
  background: linear-gradient(135deg, #17100f, #2c1d19) !important;
}
.vk-video-card .review-video { min-height: 210px; margin: 0 !important; }
.vk-video-card .review-copy { padding: 0 !important; justify-content: center; }
.vk-video-card .review-copy p { font-size: 15px; color: #ead9c4; }
.vk-video-card .review-person strong { font-size: 22px; }

@media (max-width: 1100px) {
  .lineup-card { flex-basis: calc((100% - 14px) / 2) !important; }
  .food-grid-clean { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .process-grid-clean { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .review-grid-readable { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .flavor-stage-clean { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .theme-traeger .wrap { width: min(100% - 24px, var(--page-max)); }
  .theme-traeger .section { padding-block: 34px; }
  .proof-card-grid-fixed { grid-template-columns: 1fr !important; }
  .proof-card-grid-fixed .proof-photo { min-height: 220px; }
  .lineup-card { flex-basis: 82% !important; min-height: 350px !important; }
  .lineup-card img { height: 185px !important; }
  .food-grid-clean,
  .process-grid-clean,
  .review-grid-readable,
  .vk-video-grid { grid-template-columns: 1fr !important; }
  .food-grid-clean .food-card { min-height: 0 !important; }
  .products-head-clean { align-items: start; }
  .support-cards { grid-template-columns: 1fr; }
  .chat-promo-clean { grid-template-columns: 1fr !important; }
  .chat-promo-clean .chat-promo-demo { min-height: 250px; }
  .process-cta-clean { align-items: flex-start; flex-direction: column; }
  .vk-video-card { grid-template-columns: 1fr !important; }
  .vk-video-card .review-video { min-height: 190px; }
  .review-grid-readable .review-copy p { min-height: 0; }
}


/* === Fix 2026-05-21 fix6: logo, model labels, product readability, launch carousel, reviews === */
.theme-traeger .brand-logo {
  width: 58px !important;
  height: 58px !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}
.theme-traeger .brand { letter-spacing: .035em; }
.theme-traeger .brand-word strong { font-size: 16px; }
.theme-traeger .brand-word small { font-size: 11px; color: #58443f; }

.lineup-card .model-title {
  display: grid !important;
  gap: 4px !important;
  min-height: 62px !important;
  margin: 12px 0 8px !important;
  text-align: center !important;
  white-space: normal !important;
  word-spacing: normal !important;
  letter-spacing: normal !important;
  line-height: 1.08 !important;
}
.lineup-card .model-volume {
  display: block !important;
  color: #17100f !important;
  font-size: clamp(24px, 2.2vw, 31px) !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
}
.lineup-card .model-load {
  display: block !important;
  color: #7a5f58 !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  letter-spacing: .015em !important;
  line-height: 1.25 !important;
  text-transform: none !important;
}
.lineup-card p { -webkit-line-clamp: 3 !important; }

.products-section { background: linear-gradient(180deg, #e7d7c1, #d8c4aa) !important; }
.product-strip.food-grid-clean {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 16px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory;
  padding: 4px 4px 18px !important;
  scrollbar-width: none;
}
.product-strip.food-grid-clean::-webkit-scrollbar { display: none; }
.product-strip.food-grid-clean .food-card {
  flex: 0 0 calc((100% - 48px) / 4) !important;
  scroll-snap-align: start;
  min-height: 355px !important;
  background: #fff8ed !important;
  color: #17100f !important;
  border: 1px solid rgba(115,87,81,.20) !important;
  box-shadow: 0 18px 46px rgba(43,29,26,.13) !important;
}
.product-strip .food-card p,
.product-strip .food-card h3,
.product-strip .food-card span { text-shadow: none !important; }
.product-strip .food-card span {
  display: inline-flex !important;
  width: fit-content;
  border-radius: 999px;
  padding: 8px 12px;
  background: #8c1c13 !important;
  color: #fff8ed !important;
  font-size: 11px !important;
}
.product-strip .food-card h3 { color: #17100f !important; }
.product-strip .food-card p { color: #5f4945 !important; }

.flavor-stage-orbit {
  position: relative !important;
  display: block !important;
  min-height: 520px !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background:
    linear-gradient(90deg, rgba(23,16,15,.96), rgba(140,28,19,.72) 56%, rgba(23,16,15,.22)),
    url("assets/optimized/food-smoking-chamber.webp") center / cover no-repeat !important;
  color: #fff8ed !important;
  isolation: isolate;
}
.flavor-stage-orbit::before { content: ""; position: absolute; inset: 0; z-index: 1; background: radial-gradient(circle at 76% 28%, rgba(255,198,107,.20), transparent 34%); pointer-events: none; }
.flavor-stage-orbit .launch-copy {
  position: relative !important;
  z-index: 4 !important;
  width: min(560px, 48%) !important;
  padding: clamp(28px, 4vw, 52px) !important;
}
.flavor-stage-orbit .launch-copy h2 { color: #fff8ed !important; line-height: .92 !important; }
.flavor-stage-orbit .launch-copy p { max-width: 520px !important; color: #f0dfc8 !important; font-size: clamp(16px, 1.45vw, 19px) !important; line-height: 1.45 !important; }
.launch-pills {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 20px;
  max-width: 500px;
}
.launch-pills span {
  display: grid;
  gap: 3px;
  min-height: 74px;
  border-radius: 14px;
  padding: 14px 16px;
  background: rgba(255,248,237,.94);
  color: #6f554f;
  border: 1px solid rgba(255,255,255,.35);
  box-shadow: 0 18px 42px rgba(0,0,0,.18);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}
.launch-pills strong { display: block; color: #17100f; font-size: 19px; line-height: 1; }
.flavor-stage-orbit .product-orbit {
  position: absolute !important;
  inset: 0 0 0 44% !important;
  display: block !important;
  overflow: hidden !important;
  z-index: 3 !important;
}
.flavor-stage-orbit .meat-card {
  border-radius: 16px !important;
  box-shadow: 0 26px 54px rgba(0,0,0,.35) !important;
}
.flavor-stage-orbit .meat-card strong { font-size: 21px !important; }
.flavor-stage-orbit .meat-card span { font-size: 12px !important; line-height: 1.25 !important; }

.review-platforms { display: none !important; }
.review-template-good {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
.review-template-good .vk-video-card {
  min-height: 250px !important;
  display: grid !important;
  grid-template-columns: minmax(230px, .78fr) minmax(0, 1fr) !important;
  gap: 18px !important;
  padding: 16px !important;
  background: linear-gradient(135deg, #17100f, #2a1b18) !important;
  color: #fff8ed !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 20px !important;
}
.review-template-good .review-video {
  min-height: 210px !important;
  margin: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  background: #0f0b0a !important;
}
.review-template-good .review-video img { width: 100%; height: 100%; object-fit: cover; opacity: .82; }
.review-template-good .review-copy { padding: 4px 2px !important; justify-content: center !important; }
.review-template-good .review-person strong { color: #fff8ed !important; font-size: clamp(22px, 2vw, 28px) !important; }
.review-template-good .review-person small { color: #d9c7b2 !important; }
.review-template-good .review-copy p { margin-top: 18px !important; color: #ead9c4 !important; font-size: 16px !important; line-height: 1.45 !important; }
.review-template-good .review-copy time { margin-top: 14px !important; color: #fff8ed !important; font-weight: 900 !important; }
.restored-map-reviews { margin-top: clamp(30px, 5vw, 56px) !important; }
.restored-map-reviews .map-review-head { margin-bottom: 18px !important; }
.restored-map-reviews .map-review-grid {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 16px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory;
  padding: 2px 2px 18px !important;
  scrollbar-width: none;
}
.restored-map-reviews .map-review-grid::-webkit-scrollbar { display: none; }
.restored-map-reviews .map-review-card {
  flex: 0 0 calc((100% - 32px) / 3) !important;
  min-height: 260px !important;
  scroll-snap-align: start;
  background: #17100f !important;
  color: #fff8ed !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.restored-map-reviews .map-review-card .review-copy { padding: 18px !important; }
.restored-map-reviews .map-review-card p { color: #ead9c4 !important; line-height: 1.45 !important; }
.restored-map-reviews .map-review-card strong { color: #fff8ed !important; }

@media (max-width: 1100px) {
  .product-strip.food-grid-clean .food-card { flex-basis: calc((100% - 16px) / 2) !important; }
  .review-template-good { grid-template-columns: 1fr !important; }
  .restored-map-reviews .map-review-card { flex-basis: calc((100% - 16px) / 2) !important; }
}
@media (max-width: 760px) {
  .theme-traeger .brand-logo { width: 48px !important; height: 48px !important; }
  .theme-traeger .brand-word strong { font-size: 14px; }
  .theme-traeger .brand-word small { font-size: 9px; }
  .product-strip.food-grid-clean .food-card { flex-basis: 84% !important; min-height: 330px !important; }
  .flavor-stage-orbit { min-height: 0 !important; padding-bottom: 18px !important; }
  .flavor-stage-orbit .launch-copy { width: 100% !important; padding: 22px !important; }
  .launch-pills { grid-template-columns: 1fr 1fr; gap: 8px; }
  .launch-pills span { min-height: 68px; padding: 12px; font-size: 12px; }
  .launch-pills strong { font-size: 17px; }
  .flavor-stage-orbit .product-orbit {
    position: relative !important;
    inset: auto !important;
    height: 116px !important;
    margin: 0 0 4px !important;
    display: block !important;
  }
  .review-template-good .vk-video-card { grid-template-columns: 1fr !important; }
  .review-template-good .review-video { min-height: 190px !important; }
  .restored-map-reviews .map-review-card { flex-basis: 86% !important; }
}
@media (max-width: 430px) {
  .launch-pills { grid-template-columns: 1fr; }
}

/* === Fix 2026-05-21 fix7: logo without red triangle, full reviews, reliable chat buttons === */
.theme-traeger .brand::before,
.theme-traeger .brand::after,
.brand::before,
.brand::after {
  content: none !important;
  display: none !important;
  background: none !important;
  clip-path: none !important;
}
.theme-traeger .brand {
  isolation: auto !important;
  z-index: auto !important;
}
.theme-traeger .brand-logo {
  width: 58px !important;
  height: 58px !important;
  object-fit: contain !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.reviews-section .reviews-head-clean h2 {
  max-width: 720px;
}
.reviews-section .reviews-head-clean p {
  max-width: 520px;
}
.restored-map-reviews .map-review-head .eyebrow {
  background: #9b1d14;
  color: #fff8ed;
}
.restored-map-reviews .map-review-head h3 {
  font-size: clamp(34px, 4vw, 56px) !important;
  letter-spacing: -.04em;
}
.restored-map-reviews .map-review-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
  padding: 0 !important;
}
.restored-map-reviews .map-review-card {
  flex: initial !important;
  min-height: 260px !important;
  width: auto !important;
  scroll-snap-align: none !important;
}
.restored-map-reviews .map-review-dots {
  display: none !important;
}
.review-template-good .vk-video-card .review-copy time,
.restored-map-reviews .map-review-card time {
  display: inline-flex !important;
  width: fit-content;
  padding: 0 !important;
  color: #fff8ed !important;
  font-weight: 900 !important;
}
.review-template-good .vk-video-card:hover,
.restored-map-reviews .map-review-card:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 212, 77, .35) !important;
}
@media (max-width: 1100px) {
  .restored-map-reviews .map-review-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .restored-map-reviews .map-review-card {
    flex-basis: initial !important;
  }
}
@media (max-width: 760px) {
  .theme-traeger .brand-logo {
    width: 48px !important;
    height: 48px !important;
  }
  .restored-map-reviews .map-review-grid,
  .review-template-good {
    grid-template-columns: 1fr !important;
  }
  .restored-map-reviews .map-review-card {
    flex-basis: initial !important;
    min-height: 232px !important;
  }
}

/* === Fix 2026-05-21 fix8: model carousel, readable 6 modes, mobile carousels/dots === */
.theme-traeger .hero-modes.mode-panel {
  display: grid !important;
  grid-template-columns: minmax(145px, .72fr) minmax(0, 1.5fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
  margin: 26px 0 22px !important;
  padding: 14px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(140, 28, 19, .18) !important;
  background:
    linear-gradient(135deg, rgba(255, 248, 237, .94), rgba(239, 222, 197, .72)),
    radial-gradient(circle at 8% 0%, rgba(255, 206, 97, .28), transparent 35%) !important;
  box-shadow: 0 22px 60px rgba(52, 34, 27, .11) !important;
}
.theme-traeger .mode-panel-head {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  min-height: 100% !important;
  padding: 14px 16px !important;
  border-radius: 17px !important;
  background: linear-gradient(135deg, #17100f, #331c18) !important;
  color: #fff8ed !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08) !important;
}
.theme-traeger .mode-panel-head span {
  width: fit-content !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: #ffd24a !important;
  color: #17100f !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.theme-traeger .mode-panel-head strong {
  color: #fff8ed !important;
  font-size: clamp(21px, 2.1vw, 32px) !important;
  line-height: .96 !important;
  letter-spacing: -.035em !important;
}
.theme-traeger .mode-panel-head small {
  max-width: 230px !important;
  color: #ead9c4 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 750 !important;
}
.theme-traeger .mode-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.theme-traeger .mode-card {
  display: grid !important;
  gap: 5px !important;
  min-height: 82px !important;
  padding: 14px 14px 12px !important;
  border-radius: 16px !important;
  background: rgba(255, 248, 237, .96) !important;
  color: #17100f !important;
  border: 1px solid rgba(115, 87, 81, .16) !important;
  box-shadow: 0 12px 28px rgba(43, 29, 26, .08) !important;
}
.theme-traeger .mode-card b {
  color: #8c1c13 !important;
  font-size: 15px !important;
  line-height: 1.05 !important;
  letter-spacing: -.015em !important;
}
.theme-traeger .mode-card em {
  color: #69504a !important;
  font-style: normal !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  font-weight: 750 !important;
}

.lineup-section .section-head p { max-width: 600px !important; }
.lineup-carousel {
  position: relative !important;
  overflow: hidden !important;
  padding: 8px 4px 72px !important;
}
.lineup {
  will-change: transform !important;
}
.lineup.is-sliding {
  transition: transform .52s cubic-bezier(.22, .75, .28, 1) !important;
}
.carousel-ui {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin-top: 16px !important;
}
.model-carousel-ui {
  position: absolute !important;
  left: 50% !important;
  bottom: 16px !important;
  transform: translateX(-50%) !important;
  z-index: 6 !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: rgba(255, 248, 237, .88) !important;
  border: 1px solid rgba(115, 87, 81, .15) !important;
  box-shadow: 0 18px 45px rgba(42, 28, 23, .13) !important;
  backdrop-filter: blur(10px) !important;
}
.carousel-arrow {
  display: inline-grid !important;
  place-items: center !important;
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #17100f !important;
  color: #fff8ed !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.16) !important;
}
.carousel-arrow:hover { background: #8c1c13 !important; transform: translateY(-1px); }
.carousel-dots,
.review-dots {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
}
.carousel-dots button,
.review-dots span,
.review-dots button {
  display: block !important;
  width: 8px !important;
  height: 8px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(23, 16, 15, .26) !important;
  cursor: pointer !important;
  transition: width .2s ease, background .2s ease, transform .2s ease !important;
}
.carousel-dots button.is-active,
.review-dots span.is-active,
.review-dots button.is-active {
  width: 24px !important;
  background: #8c1c13 !important;
}
.product-carousel-ui {
  margin-top: 10px !important;
}
.product-carousel-ui .carousel-arrow {
  background: #8c1c13 !important;
}
.product-strip.food-grid-clean {
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
}
.product-strip.food-grid-clean .food-card {
  overflow: hidden !important;
}
.product-strip.food-grid-clean .food-card::after {
  opacity: .18 !important;
}
.product-strip.food-grid-clean .food-card h3 {
  max-width: 92% !important;
  line-height: 1.05 !important;
}
.product-strip.food-grid-clean .food-card p {
  max-width: 90% !important;
  line-height: 1.38 !important;
}

/* Startup carousel: compact, visible and not overlapping text */
.flavor-stage-orbit {
  display: grid !important;
  grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr) !important;
  gap: clamp(18px, 3vw, 36px) !important;
  align-items: center !important;
  padding: clamp(22px, 4vw, 48px) !important;
}
.flavor-stage-orbit .launch-copy {
  width: auto !important;
  padding: 0 !important;
}
.flavor-stage-orbit .product-orbit {
  position: relative !important;
  inset: auto !important;
  display: flex !important;
  gap: 14px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  height: auto !important;
  min-width: 0 !important;
  padding: 6px 6px 18px !important;
  scrollbar-width: none !important;
}
.flavor-stage-orbit .product-orbit::-webkit-scrollbar { display: none !important; }
.flavor-stage-orbit .meat-card {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  flex: 0 0 230px !important;
  min-height: 136px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  scroll-snap-align: start !important;
  padding: 18px !important;
  background: linear-gradient(135deg, rgba(23, 16, 15, .74), rgba(140, 28, 19, .5)), rgba(23, 16, 15, .68) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  color: #fff8ed !important;
}
.flavor-stage-orbit .meat-card strong { color: #fff8ed !important; }
.flavor-stage-orbit .meat-card span { color: #f1dec4 !important; }

/* Mobile: cards as neat swipeable cards, not a long flat list */
@media (max-width: 760px) {
  .theme-traeger .hero-modes.mode-panel {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 10px !important;
    border-radius: 18px !important;
  }
  .theme-traeger .mode-panel-head {
    min-height: auto !important;
    padding: 14px !important;
  }
  .theme-traeger .mode-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .theme-traeger .mode-card {
    min-height: 72px !important;
    padding: 12px !important;
  }
  .lineup-carousel {
    padding-bottom: 66px !important;
    margin-inline: -4px !important;
  }
  .model-carousel-ui {
    bottom: 10px !important;
    max-width: calc(100vw - 30px) !important;
    overflow: hidden !important;
  }
  .carousel-arrow {
    width: 34px !important;
    height: 34px !important;
    font-size: 24px !important;
  }
  .carousel-dots button,
  .review-dots span,
  .review-dots button {
    width: 7px !important;
    height: 7px !important;
  }
  .carousel-dots button.is-active,
  .review-dots span.is-active,
  .review-dots button.is-active {
    width: 20px !important;
  }
  .product-strip.food-grid-clean,
  .proof-card-grid-fixed,
  .process-grid-clean,
  .use-grid {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding: 4px 14px 18px !important;
    margin-inline: -14px !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .product-strip.food-grid-clean::-webkit-scrollbar,
  .proof-card-grid-fixed::-webkit-scrollbar,
  .process-grid-clean::-webkit-scrollbar,
  .use-grid::-webkit-scrollbar {
    display: none !important;
  }
  .product-strip.food-grid-clean .food-card,
  .proof-card-grid-fixed .proof-card,
  .process-grid-clean .process-card,
  .use-grid .use-card {
    flex: 0 0 84% !important;
    min-width: 0 !important;
    scroll-snap-align: center !important;
    border-radius: 18px !important;
    box-shadow: 0 18px 44px rgba(42, 28, 23, .15) !important;
  }
  .proof-card-grid-fixed .proof-photo {
    flex-basis: 88% !important;
  }
  .process-grid-clean .process-card {
    min-height: 190px !important;
  }
  .use-grid .use-card {
    min-height: 360px !important;
  }
  .product-strip.food-grid-clean .food-card {
    flex-basis: 82% !important;
    min-height: 342px !important;
  }
  .product-carousel-ui {
    margin-top: 0 !important;
  }
  .flavor-stage-orbit {
    grid-template-columns: 1fr !important;
    padding: 22px !important;
    border-radius: 18px !important;
  }
  .flavor-stage-orbit .product-orbit {
    margin: 0 !important;
    height: auto !important;
    padding: 4px 2px 16px !important;
  }
  .flavor-stage-orbit .meat-card {
    flex-basis: 78% !important;
    min-height: 132px !important;
  }
  .review-template-good,
  .restored-map-reviews .map-review-grid {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding: 2px 14px 18px !important;
    margin-inline: -14px !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .review-template-good::-webkit-scrollbar,
  .restored-map-reviews .map-review-grid::-webkit-scrollbar {
    display: none !important;
  }
  .review-template-good .vk-video-card,
  .restored-map-reviews .map-review-card {
    flex: 0 0 86% !important;
    width: auto !important;
    min-height: 0 !important;
    scroll-snap-align: center !important;
  }
  .review-template-good .vk-video-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    padding: 14px !important;
  }
  .review-template-good .review-video {
    min-height: 178px !important;
  }
  .review-dots,
  .restored-map-reviews .map-review-dots {
    display: flex !important;
    margin-top: 8px !important;
    margin-bottom: 18px !important;
  }
  .restored-map-reviews .map-review-head h3 {
    font-size: 32px !important;
  }
}
@media (max-width: 430px) {
  .theme-traeger .mode-grid {
    grid-template-columns: 1fr !important;
  }
  .theme-traeger .mode-card {
    min-height: auto !important;
  }
  .product-strip.food-grid-clean .food-card,
  .proof-card-grid-fixed .proof-card,
  .process-grid-clean .process-card,
  .use-grid .use-card,
  .review-template-good .vk-video-card,
  .restored-map-reviews .map-review-card {
    flex-basis: 88% !important;
  }
  .lineup-card {
    flex-basis: 86% !important;
  }
}


/* === Fix 2026-05-21 fix9: working carousels/chat, review dots, modes and startup block === */
.sticky-chat.is-collapsed {
  display: block !important;
  width: auto !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.sticky-chat.is-collapsed .chat-panel { display: none !important; }
.sticky-chat.is-collapsed .chat-launch { display: inline-flex !important; }
.chat-close { cursor: pointer !important; }

.review-dots { display: none !important; }
@media (max-width: 760px) {
  .review-dots,
  .restored-map-reviews .map-review-dots {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    margin: 10px 0 18px !important;
    min-height: 12px !important;
  }
}

.lineup-card .model-title {
  display: grid !important;
  gap: 6px !important;
  min-height: 64px !important;
  text-align: center !important;
}
.lineup-card .model-volume {
  display: block !important;
  font-size: clamp(25px, 2.15vw, 32px) !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: .01em !important;
  color: #17100f !important;
}
.lineup-card .model-load {
  display: inline-flex !important;
  justify-content: center !important;
  justify-self: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  border-radius: 999px !important;
  padding: 7px 10px !important;
  background: rgba(140, 28, 19, .10) !important;
  color: #7a241d !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

.theme-traeger .hero-modes.mode-panel {
  grid-template-columns: minmax(190px, .6fr) minmax(0, 1.4fr) !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 12% 10%, rgba(255, 210, 74, .34), transparent 32%),
    linear-gradient(135deg, rgba(255,248,237,.96), rgba(232,213,187,.80)) !important;
  border: 1px solid rgba(140, 28, 19, .16) !important;
  box-shadow: 0 24px 70px rgba(43, 29, 26, .12) !important;
}
.theme-traeger .mode-panel-head {
  border-radius: 19px !important;
  padding: 16px !important;
  background: linear-gradient(135deg, #17100f, #3a211d) !important;
}
.theme-traeger .mode-panel-head strong {
  max-width: 190px !important;
  font-size: clamp(26px, 2.6vw, 38px) !important;
  line-height: .92 !important;
}
.theme-traeger .mode-panel-head small {
  margin-top: 4px !important;
  color: #f2dfc6 !important;
}
.theme-traeger .mode-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
}
.theme-traeger .mode-card {
  position: relative !important;
  min-height: 92px !important;
  padding: 15px 14px 13px 16px !important;
  border-radius: 18px !important;
  background: #fff8ed !important;
  border: 1px solid rgba(115, 87, 81, .16) !important;
  box-shadow: 0 14px 32px rgba(43, 29, 26, .08) !important;
  overflow: hidden !important;
}
.theme-traeger .mode-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  bottom: 14px;
  width: 4px;
  border-radius: 0 999px 999px 0;
  background: #8c1c13;
}
.theme-traeger .mode-card b {
  font-size: 15px !important;
  line-height: 1.12 !important;
  color: #17100f !important;
}
.theme-traeger .mode-card em {
  color: #735751 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
}

.flavor-stage-orbit {
  position: relative !important;
  display: block !important;
  min-height: 520px !important;
  overflow: hidden !important;
  border-radius: 22px !important;
  background:
    linear-gradient(90deg, rgba(23,16,15,.96), rgba(140,28,19,.72) 56%, rgba(23,16,15,.18)),
    url("assets/optimized/food-smoking-chamber.webp") center / cover no-repeat !important;
  color: #fff8ed !important;
}
.flavor-stage-orbit .launch-copy {
  position: relative !important;
  z-index: 4 !important;
  width: min(575px, 48%) !important;
  padding: clamp(30px, 4vw, 54px) !important;
}
.flavor-stage-orbit .launch-copy h2 { line-height: .94 !important; color: #fff8ed !important; }
.flavor-stage-orbit .launch-copy p { color: #f1dfc8 !important; }
.flavor-stage-orbit .product-orbit {
  position: absolute !important;
  inset: 0 0 0 45% !important;
  display: block !important;
  height: auto !important;
  overflow: hidden !important;
  z-index: 3 !important;
  padding: 0 !important;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: absolute !important;
  top: 172px !important;
  right: -340px !important;
  left: auto !important;
  width: 238px !important;
  height: 118px !important;
  min-height: 118px !important;
  flex: none !important;
  display: block !important;
  padding: 16px !important;
  opacity: 1 !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255,255,255,.20) !important;
  box-shadow: 0 26px 54px rgba(0,0,0,.35) !important;
  animation: meatFloatLine 26s linear infinite !important;
}
.flavor-stage-orbit .meat-card:nth-child(1) {
  animation-delay: 0s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.34), rgba(23,16,15,0)), url("assets/optimized/result-meat.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(2) {
  animation-delay: -5.2s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)), url("assets/optimized/result-fish.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(3) {
  animation-delay: -10.4s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/result-sausage.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(4) {
  animation-delay: -15.6s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.55), rgba(23,16,15,.08)), url("assets/optimized/result-chicken.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(5) {
  animation-delay: -20.8s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/food-cheese.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card strong,
.flavor-stage-orbit .meat-card span {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.50) !important;
}
.flavor-stage-orbit .meat-card strong { color: #fff8ed !important; font-size: 21px !important; }
.flavor-stage-orbit .meat-card span { color: #fff1d8 !important; font-size: 12px !important; line-height: 1.25 !important; }

@media (max-width: 760px) {
  .theme-traeger .hero-modes.mode-panel { grid-template-columns: 1fr !important; }
  .theme-traeger .mode-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .theme-traeger .mode-card { min-height: 86px !important; }
  .lineup-card .model-load { white-space: normal !important; text-align: center !important; }
  .flavor-stage-orbit { min-height: 0 !important; padding: 0 0 22px !important; }
  .flavor-stage-orbit .launch-copy { width: 100% !important; padding: 24px !important; }
  .flavor-stage-orbit .product-orbit {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: 126px !important;
    margin: 2px 0 0 !important;
    overflow: hidden !important;
  }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    top: 18px !important;
    right: -170px !important;
    width: 158px !important;
    height: 84px !important;
    min-height: 84px !important;
    padding: 11px !important;
    animation: mobileFoodOrbit 22s linear infinite !important;
    transform: rotate(-4deg) scale(.92) !important;
  }
  .flavor-stage-orbit .meat-card:nth-child(1) { animation-delay: 0s !important; }
  .flavor-stage-orbit .meat-card:nth-child(2) { animation-delay: -4.4s !important; }
  .flavor-stage-orbit .meat-card:nth-child(3) { animation-delay: -8.8s !important; }
  .flavor-stage-orbit .meat-card:nth-child(4) { animation-delay: -13.2s !important; }
  .flavor-stage-orbit .meat-card:nth-child(5) { animation-delay: -17.6s !important; }
}
@media (max-width: 430px) {
  .theme-traeger .mode-grid { grid-template-columns: 1fr !important; }
}


/* === Fix 2026-05-21 fix10: static products, startup carousel restored, copy cleanup === */
.products-head-clean {
  align-items: flex-end !important;
}
.products-head-clean > p {
  display: none !important;
}
.products-static.food-grid-clean {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.products-static.food-grid-clean .food-card {
  flex: initial !important;
  min-width: 0 !important;
  min-height: 355px !important;
  scroll-snap-align: none !important;
}
.product-carousel-ui { display: none !important; }

.flavor-stage-orbit {
  display: block !important;
  position: relative !important;
  min-height: 520px !important;
  padding: 0 !important;
  overflow: hidden !important;
  background:
    linear-gradient(90deg, rgba(23,16,15,.96), rgba(140,28,19,.72) 56%, rgba(23,16,15,.20)),
    url("assets/optimized/food-smoking-chamber.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .launch-copy {
  position: relative !important;
  z-index: 4 !important;
  width: min(575px, 48%) !important;
  padding: clamp(30px, 4vw, 54px) !important;
}
.flavor-stage-orbit .product-orbit {
  position: absolute !important;
  inset: 0 0 0 45% !important;
  display: block !important;
  overflow: hidden !important;
  height: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  z-index: 3 !important;
  pointer-events: none;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: absolute !important;
  top: 172px !important;
  right: -340px !important;
  left: auto !important;
  width: 238px !important;
  height: 118px !important;
  min-height: 118px !important;
  flex: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: 16px !important;
  opacity: 0;
  transform: translate3d(0, 0, 0) scale(1) rotate(0deg) !important;
  border-radius: 16px !important;
  border: 1px solid rgba(255,255,255,.20) !important;
  box-shadow: 0 26px 54px rgba(0,0,0,.35) !important;
  color: #fff8ed !important;
  animation: meatFloatLine 26s linear infinite !important;
  scroll-snap-align: none !important;
}
.flavor-stage-orbit .meat-card:nth-child(1) {
  animation-delay: 0s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.34), rgba(23,16,15,0)), url("assets/optimized/result-meat.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(2) {
  animation-delay: -5.2s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)), url("assets/optimized/result-fish.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(3) {
  animation-delay: -10.4s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/result-sausage.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(4) {
  animation-delay: -15.6s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.55), rgba(23,16,15,.08)), url("assets/optimized/result-chicken.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(5) {
  animation-delay: -20.8s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/food-cheese.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card strong,
.flavor-stage-orbit .meat-card span {
  display: block !important;
  position: relative !important;
  z-index: 2 !important;
  color: #fff8ed !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.50) !important;
}
.flavor-stage-orbit .meat-card span { color: #fff1d8 !important; }

.lineup-card .model-load,
.catalog-card .model-load {
  word-spacing: normal !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
}

@media (max-width: 1100px) {
  .products-static.food-grid-clean {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 760px) {
  .products-static.food-grid-clean {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .products-static.food-grid-clean .food-card {
    flex: initial !important;
    width: 100% !important;
    min-height: 0 !important;
    scroll-snap-align: none !important;
  }
  .flavor-stage-orbit {
    min-height: 0 !important;
    padding-bottom: 18px !important;
  }
  .flavor-stage-orbit .launch-copy {
    width: 100% !important;
    padding: 24px !important;
  }
  .flavor-stage-orbit .product-orbit {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: 126px !important;
    margin: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
  }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    top: 18px !important;
    right: -170px !important;
    width: 158px !important;
    height: 84px !important;
    min-height: 84px !important;
    padding: 11px !important;
    animation: mobileFoodOrbit 22s linear infinite !important;
    transform: rotate(-4deg) scale(.92) !important;
  }
  .flavor-stage-orbit .meat-card:nth-child(1) { animation-delay: 0s !important; }
  .flavor-stage-orbit .meat-card:nth-child(2) { animation-delay: -4.4s !important; }
  .flavor-stage-orbit .meat-card:nth-child(3) { animation-delay: -8.8s !important; }
  .flavor-stage-orbit .meat-card:nth-child(4) { animation-delay: -13.2s !important; }
  .flavor-stage-orbit .meat-card:nth-child(5) { animation-delay: -17.6s !important; }
}

@keyframes launchFoodLineFix10 {
  0% { opacity: 0; translate: 0 0; }
  8% { opacity: 1; }
  84% { opacity: 1; }
  100% { opacity: 0; translate: calc(-100vw - 680px) 0; }
}
@keyframes launchFoodLineMobileFix10 {
  0% { opacity: 0; translate: 0 0; }
  8% { opacity: 1; }
  84% { opacity: 1; }
  100% { opacity: 0; translate: calc(-100vw - 280px) 0; }
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  animation-name: launchFoodLineFix10 !important;
}
@media (max-width: 760px) {
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    animation-name: launchFoodLineMobileFix10 !important;
  }
}


/* === Fix 2026-05-22 fix11: aligned carousel controls, compact products, mobile product slider, startup carousel spacing === */
/* Remove the duplicated second hero line after the main buttons. */
.hero-assurance { display: none !important; }

/* Carousel control: arrows and dots exactly on one visual center line. */
.carousel-ui,
.model-carousel-ui {
  min-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  padding: 9px 14px !important;
  line-height: 1 !important;
}
.carousel-dots,
.review-dots {
  display: flex;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  min-height: 38px !important;
  line-height: 1 !important;
}
.carousel-arrow {
  display: grid !important;
  place-items: center !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 0 3px !important;
  margin: 0 !important;
  line-height: 1 !important;
  font-family: Arial, sans-serif !important;
  font-weight: 900 !important;
}
.carousel-arrow:hover { transform: none !important; }

/* Basic section/card spacing cleanup for desktop. */
.section { scroll-margin-top: 86px; }
.section-head { margin-bottom: clamp(18px, 2.5vw, 30px) !important; }
.lineup-section .wrap,
.products-section .wrap,
.use-section .wrap,
.flavor-section .wrap,
.reviews-section .wrap { max-width: 1180px; }

/* Products: compact 5-card row on desktop. */
.products-static.food-grid-clean {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
  max-width: none !important;
  overflow: visible !important;
  padding: 0 !important;
  margin: 0 !important;
}
.products-static.food-grid-clean .food-card {
  min-height: 278px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
}
.products-static.food-grid-clean .food-visual {
  height: 108px !important;
  margin: 0 0 12px !important;
  border-radius: 12px !important;
}
.products-static.food-grid-clean .food-card span {
  min-height: 24px !important;
  padding: 0 8px !important;
  font-size: 10px !important;
  letter-spacing: .045em !important;
}
.products-static.food-grid-clean .food-card h3 {
  margin: 10px 0 7px !important;
  font-size: clamp(17px, 1.35vw, 21px) !important;
  line-height: 1.05 !important;
}
.products-static.food-grid-clean .food-card p {
  font-size: 13px !important;
  line-height: 1.32 !important;
}
.product-mobile-dots { display: none !important; }

/* Use-cases: keep badges visually aligned, including “Свои продажи” and “Производство и бизнес”. */
.use-grid .use-card:not(:first-child) .use-card-copy { max-width: 340px !important; }
.use-sales .use-card-copy,
.use-production .use-card-copy { bottom: 24px !important; }
.use-card-copy span {
  min-height: 30px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* First-launch product carousel: real moving strip, no frozen absolute cards, tighter distance. */
.flavor-stage-orbit { min-height: 500px !important; }
.flavor-stage-orbit .product-orbit {
  position: absolute !important;
  inset: auto auto 86px 46% !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 14px !important;
  width: max-content !important;
  height: auto !important;
  overflow: visible !important;
  padding: 0 !important;
  z-index: 3 !important;
  pointer-events: none !important;
  animation: startupTrackFix11 20s linear infinite !important;
  will-change: transform !important;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  flex: 0 0 220px !important;
  width: 220px !important;
  height: 116px !important;
  min-height: 116px !important;
  margin: 0 !important;
  opacity: 1 !important;
  translate: none !important;
  transform: none !important;
  animation: none !important;
  padding: 15px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}
.flavor-stage-orbit .meat-card:nth-child(5n+1) {
  background: linear-gradient(90deg, rgba(23,16,15,.34), rgba(23,16,15,0)), url("assets/optimized/result-meat.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(5n+2) {
  background: linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)), url("assets/optimized/result-fish.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(5n+3) {
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/result-sausage.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(5n+4) {
  background: linear-gradient(90deg, rgba(23,16,15,.55), rgba(23,16,15,.08)), url("assets/optimized/result-chicken.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(5n+5) {
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/food-cheese.webp") center / cover no-repeat !important;
}
@keyframes startupTrackFix11 {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(calc(-50% - 35px), 0, 0); }
}

@media (max-width: 1180px) {
  .products-static.food-grid-clean { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
  .theme-traeger .wrap { width: min(100% - 24px, var(--page-max)) !important; }
  .theme-traeger .section { padding-block: 34px !important; }
  .section-head { margin-bottom: 16px !important; }

  .carousel-ui,
  .model-carousel-ui {
    width: min(92vw, 340px) !important;
    min-height: 50px !important;
    padding: 8px 12px !important;
    gap: 10px !important;
  }
  .carousel-arrow {
    width: 38px !important;
    height: 38px !important;
    padding: 0 0 3px !important;
  }

  /* Products mobile: same behavior as review cards — swipe + dots. */
  .products-static.food-grid-clean {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding: 4px 16px 12px !important;
    margin-inline: -16px !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .products-static.food-grid-clean::-webkit-scrollbar { display: none !important; }
  .products-static.food-grid-clean .food-card {
    flex: 0 0 82% !important;
    width: auto !important;
    min-height: 300px !important;
    scroll-snap-align: center !important;
    border-radius: 18px !important;
  }
  .products-static.food-grid-clean .food-visual { height: 132px !important; }
  .product-mobile-dots {
    display: flex !important;
    margin: 10px auto 0 !important;
  }

  .use-grid .use-card { min-height: 340px !important; }
  .use-sales .use-card-copy,
  .use-production .use-card-copy { bottom: 22px !important; }

  .flavor-stage-orbit {
    min-height: 0 !important;
    padding-bottom: 18px !important;
    border-radius: 20px !important;
  }
  .flavor-stage-orbit .launch-copy {
    width: 100% !important;
    padding: 24px !important;
  }
  .flavor-stage-orbit .product-orbit {
    position: relative !important;
    left: 0 !important;
    bottom: auto !important;
    margin-top: 6px !important;
    animation-duration: 16s !important;
  }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    flex-basis: 176px !important;
    width: 176px !important;
    height: 96px !important;
    min-height: 96px !important;
    padding: 12px !important;
  }
  .flavor-stage-orbit .meat-card strong { font-size: 18px !important; }
  .flavor-stage-orbit .meat-card span { font-size: 11px !important; }
}

/* === Fix 2026-05-22 fix12: cleaner modes, factory banner, simple model carousel, startup layout === */
/* Hero text and direct-production proof */
.factory-banner-main {
  margin-top: 18px !important;
  padding: 16px 18px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #17100f, #3a211c) !important;
  color: #fff8ed !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 10px 14px !important;
  align-items: center !important;
  border: 1px solid rgba(255, 210, 74, .28) !important;
  box-shadow: 0 18px 44px rgba(38, 24, 20, .16) !important;
}
.factory-banner-main strong {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #ffd24a !important;
  color: #17100f !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
.factory-banner-main span {
  color: #f2dfc7 !important;
  font-size: 15px !important;
  line-height: 1.38 !important;
  font-weight: 760 !important;
}
.factory-support-card {
  background: linear-gradient(135deg, rgba(255,248,237,.98), rgba(255,210,74,.14)) !important;
  border-color: rgba(140, 28, 19, .24) !important;
}
.factory-support-card h3::before {
  content: "без посредников" !important;
  display: inline-flex !important;
  margin: 0 0 10px !important;
  padding: 6px 9px !important;
  border-radius: 999px !important;
  background: #8c1c13 !important;
  color: #fff8ed !important;
  font-size: 10px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

/* 6 modes: calmer, more premium and readable. */
.theme-traeger .hero-modes.mode-panel {
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  padding: 16px !important;
  border-radius: 24px !important;
  background:
    linear-gradient(135deg, rgba(255,248,237,.98), rgba(241,224,198,.84)),
    radial-gradient(circle at 96% 0%, rgba(255,210,74,.24), transparent 32%) !important;
  border: 1px solid rgba(140,28,19,.18) !important;
  box-shadow: 0 22px 58px rgba(43, 29, 26, .12) !important;
}
.theme-traeger .mode-panel-head {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  gap: 8px 12px !important;
  align-items: center !important;
  padding: 0 !important;
  background: transparent !important;
  color: #17100f !important;
  box-shadow: none !important;
}
.theme-traeger .mode-panel-head span {
  grid-row: 1 / span 2 !important;
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border-radius: 16px !important;
  background: #8c1c13 !important;
  color: #fff8ed !important;
  font-size: 22px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: -.03em !important;
  text-transform: none !important;
}
.theme-traeger .mode-panel-head strong {
  color: #17100f !important;
  font-size: clamp(24px, 2.4vw, 34px) !important;
  line-height: 1 !important;
  letter-spacing: -.04em !important;
}
.theme-traeger .mode-panel-head small {
  max-width: none !important;
  color: #6a514b !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 740 !important;
}
.theme-traeger .mode-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.theme-traeger .mode-card {
  min-height: 92px !important;
  padding: 15px !important;
  border-radius: 18px !important;
  background: #fff8ed !important;
  border: 1px solid rgba(115, 87, 81, .16) !important;
  box-shadow: 0 12px 26px rgba(43, 29, 26, .08) !important;
  position: relative !important;
  overflow: hidden !important;
}
.theme-traeger .mode-card::before {
  content: "" !important;
  width: 4px !important;
  border-radius: 99px !important;
  background: #8c1c13 !important;
  position: absolute !important;
  left: 0 !important;
  top: 15px !important;
  bottom: 15px !important;
}
.theme-traeger .mode-card b {
  color: #17100f !important;
  font-size: 15px !important;
  line-height: 1.14 !important;
  letter-spacing: -.01em !important;
  padding-left: 4px !important;
}
.theme-traeger .mode-card em {
  color: #6d514b !important;
  font-size: 12px !important;
  line-height: 1.28 !important;
  padding-left: 4px !important;
}

/* Models: not an auto-spinning thing; just a clean horizontal carousel. */
.lineup-carousel {
  overflow: hidden !important;
  padding: 4px 0 8px !important;
}
.lineup {
  display: flex !important;
  gap: 14px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 4px 2px 18px !important;
  transform: none !important;
  scrollbar-width: none !important;
}
.lineup::-webkit-scrollbar { display: none !important; }
.lineup.is-sliding { transition: none !important; }
.lineup-card {
  scroll-snap-align: start !important;
  flex: 0 0 calc((100% - 28px) / 3) !important;
}
.model-carousel-ui {
  display: none !important;
}
.lineup-head-clean p {
  max-width: 720px !important;
  color: #6f544d !important;
  font-size: 17px !important;
  line-height: 1.45 !important;
  font-weight: 760 !important;
  margin-top: 10px !important;
}
.lineup-card .model-load {
  white-space: normal !important;
  letter-spacing: .02em !important;
}

/* Products: remove bottom explanatory text completely. */
.products-static.food-grid-clean .food-card p {
  display: none !important;
}
.products-static.food-grid-clean .food-card {
  min-height: 226px !important;
  justify-content: flex-start !important;
}
.products-static.food-grid-clean .food-visual {
  height: 112px !important;
}
.products-static.food-grid-clean .food-card h3 {
  margin-bottom: 0 !important;
}

/* First launch: pills in the upper-right, carousel below them without overlap. */
.flavor-stage-orbit {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(330px, .82fr) minmax(0, 1.18fr) !important;
  grid-template-areas:
    "copy pills"
    "copy carousel" !important;
  gap: 18px 30px !important;
  align-items: start !important;
  min-height: 430px !important;
  overflow: hidden !important;
  padding: clamp(28px, 4vw, 54px) !important;
}
.flavor-stage-orbit .launch-copy {
  grid-area: copy !important;
  max-width: 500px !important;
  width: auto !important;
  padding: 0 !important;
  align-self: center !important;
  position: relative !important;
  z-index: 4 !important;
}
.flavor-stage-orbit .launch-copy p {
  max-width: 460px !important;
}
.launch-pills-corner {
  grid-area: pills !important;
  justify-self: stretch !important;
  align-self: start !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  position: relative !important;
  z-index: 5 !important;
  margin: 0 !important;
  max-width: 620px !important;
}
.launch-pills-corner span {
  min-height: 72px !important;
  padding: 12px 14px !important;
  border-radius: 16px !important;
  background: rgba(255,248,237,.92) !important;
  color: #251816 !important;
  border: 1px solid rgba(255,255,255,.26) !important;
  box-shadow: 0 16px 34px rgba(23,16,15,.16) !important;
  display: grid !important;
  align-content: center !important;
  gap: 4px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 760 !important;
}
.launch-pills-corner strong {
  color: #8c1c13 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .075em !important;
}
.flavor-stage-orbit .product-orbit {
  grid-area: carousel !important;
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  bottom: auto !important;
  display: flex !important;
  gap: 12px !important;
  width: max-content !important;
  height: auto !important;
  overflow: visible !important;
  padding: 0 !important;
  z-index: 3 !important;
  pointer-events: none !important;
  animation: startupTrackFix12 22s linear infinite !important;
  will-change: transform !important;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  flex: 0 0 210px !important;
  width: 210px !important;
  height: 118px !important;
  min-height: 118px !important;
  margin: 0 !important;
  opacity: 1 !important;
  translate: none !important;
  transform: none !important;
  animation: none !important;
  padding: 15px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  box-shadow: 0 20px 48px rgba(0,0,0,.18) !important;
}
@keyframes startupTrackFix12 {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(calc(-50% - 30px), 0, 0); }
}

@media (max-width: 980px) {
  .lineup-card { flex-basis: calc((100% - 14px) / 2) !important; }
  .theme-traeger .mode-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .flavor-stage-orbit {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "copy"
      "pills"
      "carousel" !important;
  }
  .flavor-stage-orbit .launch-copy { align-self: start !important; }
}

@media (max-width: 760px) {
  .factory-banner-main {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 14px !important;
  }
  .factory-banner-main strong { width: fit-content !important; }
  .factory-banner-main span { font-size: 14px !important; }

  .theme-traeger .hero-modes.mode-panel { padding: 14px !important; }
  .theme-traeger .mode-panel-head {
    grid-template-columns: auto 1fr !important;
  }
  .theme-traeger .mode-panel-head span {
    width: 48px !important;
    height: 48px !important;
    border-radius: 14px !important;
    font-size: 20px !important;
  }
  .theme-traeger .mode-panel-head strong { font-size: 24px !important; }
  .theme-traeger .mode-grid {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .theme-traeger .mode-card {
    min-height: 74px !important;
    padding: 13px 14px !important;
  }

  .lineup-card { flex-basis: 84% !important; scroll-snap-align: center !important; }
  .lineup { padding-inline: 12px !important; margin-inline: -12px !important; }
  .lineup-head-clean p { font-size: 15px !important; }

  .products-static.food-grid-clean .food-card { min-height: 236px !important; }

  .flavor-stage-orbit {
    min-height: 0 !important;
    padding: 22px !important;
    border-radius: 20px !important;
    gap: 16px !important;
  }
  .flavor-stage-orbit .launch-copy {
    width: 100% !important;
    padding: 0 !important;
  }
  .flavor-stage-orbit .launch-copy p { max-width: none !important; }
  .launch-pills-corner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .launch-pills-corner span {
    min-height: 66px !important;
    padding: 10px !important;
    font-size: 12px !important;
  }
  .launch-pills-corner strong { font-size: 11px !important; }
  .flavor-stage-orbit .product-orbit {
    margin-top: 0 !important;
    animation-duration: 18s !important;
  }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    flex-basis: 174px !important;
    width: 174px !important;
    height: 98px !important;
    min-height: 98px !important;
    padding: 12px !important;
  }
}

@media (max-width: 420px) {
  .launch-pills-corner { grid-template-columns: 1fr !important; }
}

/* === Fix 2026-05-22 fix13: mobile cards as compact desktop-style grids === */
@media (max-width: 760px) {
  /* Main card sections should look like compact desktop grids, not long one-by-one lists. */
  .proof-card-grid-fixed,
  .process-grid-clean,
  .use-grid,
  .support-grid,
  .products-static.food-grid-clean {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
    padding: 0 !important;
    margin-inline: 0 !important;
    width: 100% !important;
    mask-image: none !important;
  }

  .proof-card-grid-fixed .proof-card,
  .process-grid-clean .process-card,
  .use-grid .use-card,
  .support-grid .support-card,
  .products-static.food-grid-clean .food-card {
    flex: initial !important;
    width: auto !important;
    min-width: 0 !important;
    scroll-snap-align: none !important;
    border-radius: 16px !important;
    box-shadow: 0 14px 34px rgba(42, 28, 23, .13) !important;
  }

  .proof-card-grid-fixed .proof-photo,
  .support-grid .factory-support-card {
    grid-column: 1 / -1 !important;
  }

  /* Product cards: compact grid instead of a mobile list/slider. */
  .products-static.food-grid-clean .food-card {
    min-height: 190px !important;
    padding: 10px !important;
  }
  .products-static.food-grid-clean .food-visual {
    height: 96px !important;
    margin-bottom: 9px !important;
    border-radius: 12px !important;
  }
  .products-static.food-grid-clean .food-card span {
    min-height: 22px !important;
    padding: 4px 8px !important;
    font-size: 9px !important;
  }
  .products-static.food-grid-clean .food-card h3 {
    margin-top: 8px !important;
    font-size: 15px !important;
    line-height: 1.12 !important;
  }
  .products-static.food-grid-clean .food-card p,
  .product-mobile-dots {
    display: none !important;
  }

  /* Proof cards: two small cards in a row, photo stays wide. */
  .proof-card-grid-fixed .proof-card {
    min-height: 154px !important;
    padding: 14px !important;
  }
  .proof-card-grid-fixed .proof-photo {
    min-height: 220px !important;
  }
  .proof-card-grid-fixed .proof-card span,
  .process-grid-clean .process-card span {
    font-size: 11px !important;
    padding-left: 8px !important;
    border-left-width: 4px !important;
  }
  .proof-card-grid-fixed .proof-card h3,
  .process-grid-clean .process-card h3 {
    margin: 10px 0 7px !important;
    font-size: 17px !important;
    line-height: 1.08 !important;
  }
  .proof-card-grid-fixed .proof-card p,
  .process-grid-clean .process-card p {
    font-size: 12px !important;
    line-height: 1.34 !important;
  }

  /* Selection steps: compact two-column grid. */
  .process-grid-clean .process-card {
    min-height: 158px !important;
    padding: 14px !important;
  }
  .process-cta-clean {
    margin-top: 12px !important;
    padding: 16px !important;
    border-radius: 16px !important;
  }

  /* Use cases: same visual card format as desktop, just smaller. */
  .use-grid {
    grid-template-rows: none !important;
  }
  .use-grid .use-card,
  .use-grid .use-card:first-child,
  .use-grid .use-card:nth-child(3) {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 238px !important;
  }
  .use-card img {
    opacity: .82 !important;
  }
  .use-card-copy,
  .use-grid .use-card:not(:first-child) .use-card-copy,
  .use-sales .use-card-copy,
  .use-production .use-card-copy {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    max-width: none !important;
    min-height: 0 !important;
    padding: 0 !important;
  }
  .use-card-copy span {
    min-height: 22px !important;
    padding: 4px 8px !important;
    font-size: 8.5px !important;
    letter-spacing: .05em !important;
  }
  .use-card-copy h3,
  .use-card:nth-child(3) .use-card-copy h3 {
    min-height: 0 !important;
    margin-top: 8px !important;
    font-size: 16px !important;
    line-height: 1.06 !important;
  }
  .use-card-copy p {
    margin-top: 6px !important;
    font-size: 10.5px !important;
    line-height: 1.24 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  /* Support cards: compact grid, production card remains visible and strong. */
  .support-grid .support-card {
    min-height: 150px !important;
    padding: 14px !important;
  }
  .support-grid .factory-support-card {
    min-height: 138px !important;
  }
  .support-card h3 {
    font-size: 17px !important;
    line-height: 1.08 !important;
  }
  .support-card p {
    font-size: 12px !important;
    line-height: 1.34 !important;
  }

  /* Keep real carousel blocks as carousels, but make the cards cleaner on mobile. */
  .lineup-card {
    flex-basis: 78% !important;
    min-height: 330px !important;
  }
  .lineup-card p {
    font-size: 12px !important;
    line-height: 1.32 !important;
  }
  .review-template-good .vk-video-card,
  .restored-map-reviews .map-review-card,
  .map-review-card {
    flex-basis: 86% !important;
    border-radius: 18px !important;
  }
}

@media (max-width: 430px) {
  .proof-card-grid-fixed,
  .process-grid-clean,
  .use-grid,
  .support-grid,
  .products-static.food-grid-clean {
    gap: 9px !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 176px !important;
    padding: 9px !important;
  }
  .products-static.food-grid-clean .food-visual {
    height: 86px !important;
  }
  .products-static.food-grid-clean .food-card h3 {
    font-size: 14px !important;
  }

  .proof-card-grid-fixed .proof-card,
  .process-grid-clean .process-card,
  .support-grid .support-card {
    padding: 12px !important;
  }
  .proof-card-grid-fixed .proof-card h3,
  .process-grid-clean .process-card h3,
  .support-card h3 {
    font-size: 15.5px !important;
  }
  .proof-card-grid-fixed .proof-card p,
  .process-grid-clean .process-card p,
  .support-card p {
    font-size: 11px !important;
  }
  .use-grid .use-card,
  .use-grid .use-card:first-child,
  .use-grid .use-card:nth-child(3) {
    min-height: 222px !important;
  }
  .use-card-copy h3,
  .use-card:nth-child(3) .use-card-copy h3 {
    font-size: 14.5px !important;
  }
  .use-card-copy p {
    font-size: 10px !important;
    -webkit-line-clamp: 3 !important;
  }
}


/* === Fix 2026-05-22 fix14: cleaner mobile modes, factory block, 5-card model carousel, startup spacing === */
.brand,
.brand-logo,
.brand::before,
.brand::after,
.brand-logo::before,
.brand-logo::after {
  background-image: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.brand-logo { object-fit: contain !important; }

.selection-card.refined-card { background: #f7efe3 !important; }
.factory-banner-main { display: none !important; }
.factory-proof-section { padding-top: 0 !important; }
.factory-proof-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr) !important;
  gap: 18px !important;
  padding: clamp(24px, 4vw, 36px) !important;
  border-radius: 28px !important;
  background: linear-gradient(180deg, #fbf3e7 0%, #f3e4d0 100%) !important;
  border: 1px solid rgba(140, 28, 19, .16) !important;
  box-shadow: 0 18px 48px rgba(43,29,26,.10) !important;
}
.factory-proof-copy h2 { margin: 10px 0 12px !important; }
.factory-proof-copy p { margin: 0 !important; color: #5f4945 !important; font-size: 17px !important; line-height: 1.55 !important; font-weight: 620 !important; }
.factory-proof-points { display: grid !important; grid-template-columns: 1fr !important; gap: 12px !important; align-content: center !important; }
.factory-proof-points article {
  padding: 16px 18px !important; border-radius: 18px !important; background: #fff8ed !important;
  border: 1px solid rgba(140,28,19,.12) !important; box-shadow: 0 10px 28px rgba(43,29,26,.08) !important;
}
.factory-proof-points strong { display: inline-block !important; padding: 7px 10px !important; border-radius: 999px !important; background: #8c1c13 !important; color: #fff8ed !important; font-size: 11px !important; letter-spacing: .08em !important; text-transform: uppercase !important; margin-bottom: 8px !important; }
.factory-proof-points span { display: block !important; color: #3d2a26 !important; font-size: 14px !important; line-height: 1.42 !important; font-weight: 650 !important; }

.theme-traeger .hero-modes.mode-panel {
  gap: 14px !important;
  padding: 18px !important;
}
.theme-traeger .mode-panel-head {
  grid-template-columns: 74px minmax(0, 1fr) !important;
  gap: 6px 14px !important;
  align-items: center !important;
}
.theme-traeger .mode-panel-head span {
  grid-row: 1 / span 3 !important;
  width: 74px !important;
  height: 74px !important;
  border-radius: 24px !important;
  font-size: 20px !important;
  line-height: 1.02 !important;
  text-align: center !important;
  padding: 8px !important;
  white-space: normal !important;
}
.theme-traeger .mode-panel-head strong { font-size: clamp(26px, 2.8vw, 36px) !important; line-height: .98 !important; }
.theme-traeger .mode-panel-head small { margin-top: 2px !important; }
.theme-traeger .mode-grid { margin-top: 2px !important; }
.theme-traeger .mode-card b { font-size: 15px !important; }

.lineup-carousel { overflow: hidden !important; padding: 4px 0 28px !important; }
.lineup { gap: 16px !important; padding: 4px 2px 14px !important; }
.lineup-card { flex: 0 0 calc((100% - 64px) / 5) !important; }
.model-carousel-ui { display: flex !important; margin-top: 8px !important; }
.model-carousel-ui .carousel-dots { display: flex !important; }
.model-carousel-ui .carousel-arrow { position: static !important; top: auto !important; transform: none !important; }
.carousel-ui, .model-carousel-ui { align-items: center !important; justify-content: center !important; gap: 14px !important; }
.carousel-arrow { display: inline-flex !important; align-items: center !important; justify-content: center !important; }

.products-static.food-grid-clean { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)) !important; gap: 16px !important; overflow: visible !important; }
.products-static.food-grid-clean .food-card { min-height: 210px !important; }
.products-static.food-grid-clean .food-card span { display: inline-flex !important; width: fit-content !important; max-width: max-content !important; align-self: flex-start !important; padding: 7px 11px !important; }

.use-grid .use-sales .use-card-copy span,
.use-grid .use-production .use-card-copy span { align-self: flex-start !important; }

.flavor-stage-orbit { grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr) !important; gap: 18px 26px !important; }
.flavor-stage-orbit .launch-copy { padding-right: 12px !important; }
.flavor-stage-orbit .launch-copy p { max-width: 430px !important; margin-bottom: 0 !important; }
.launch-pills-corner { justify-self: end !important; width: min(100%, 420px) !important; }
.flavor-stage-orbit .product-orbit { margin-top: 8px !important; gap: 10px !important; animation-duration: 19s !important; }
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) { flex-basis: 198px !important; width: 198px !important; }

.process-grid-clean .process-card { min-height: 0 !important; }
.process-grid-clean .process-card:nth-child(3) { background: #fff8ed !important; transform: none !important; }

@media (max-width: 1100px) {
  .lineup-card { flex-basis: calc((100% - 32px) / 3) !important; }
  .products-static.food-grid-clean { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
  .factory-proof-card { grid-template-columns: 1fr !important; gap: 14px !important; padding: 20px !important; border-radius: 22px !important; }
  .factory-proof-copy p { font-size: 15px !important; }
  .theme-traeger .hero-modes.mode-panel { padding: 16px !important; }
  .theme-traeger .mode-panel-head { grid-template-columns: 62px minmax(0, 1fr) !important; gap: 6px 12px !important; }
  .theme-traeger .mode-panel-head span { width: 62px !important; height: 62px !important; font-size: 18px !important; border-radius: 20px !important; }
  .theme-traeger .mode-panel-head strong { font-size: 22px !important; }

  .lineup-card { flex-basis: 78% !important; }
  .model-carousel-ui { display: flex !important; }
  .products-static.food-grid-clean { display: flex !important; overflow-x: auto !important; scroll-snap-type: x mandatory !important; gap: 12px !important; padding: 0 0 6px !important; }
  .products-static.food-grid-clean .food-card { flex: 0 0 82% !important; scroll-snap-align: start !important; min-width: 82% !important; }
  .product-mobile-dots { display: flex !important; }

  .flavor-stage-orbit { grid-template-columns: 1fr !important; grid-template-areas: "copy" "pills" "carousel" !important; gap: 14px !important; }
  .flavor-stage-orbit .launch-copy { padding-right: 0 !important; }
  .launch-pills-corner { justify-self: stretch !important; width: 100% !important; }
  .flavor-stage-orbit .product-orbit { margin-top: 4px !important; }
}

/* === Fix 2026-05-22 fix15: audit-based conversion rewrite === */
.hero-help-note {
  grid-column: 1 / -1;
  display: block;
  margin-top: -2px;
  color: #735751;
  font-size: 14px;
  font-weight: 760;
  line-height: 1.35;
}
.hero-actions {
  align-items: center !important;
  flex-wrap: wrap !important;
}
.theme-traeger .hero-modes.mode-panel {
  margin-top: 22px !important;
}
.theme-traeger .mode-card em {
  display: block !important;
  margin-top: 7px !important;
  font-style: normal !important;
}
.theme-traeger .mode-card b {
  display: block !important;
}

/* Production proof: real visual evidence above the rest of the page */
.factory-proof-section {
  padding-top: clamp(32px, 5vw, 64px) !important;
}
.factory-proof-card-visual {
  grid-template-columns: minmax(290px, .78fr) minmax(0, 1.22fr) !important;
  align-items: stretch !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(255, 210, 74, .16), transparent 36%),
    linear-gradient(180deg, #fbf3e7 0%, #f2e2ca 100%) !important;
}
.factory-proof-card-visual .factory-proof-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
}
.factory-proof-card-visual .factory-proof-copy h2 {
  max-width: 600px !important;
}
.factory-media-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.factory-media-card {
  position: relative !important;
  overflow: hidden !important;
  min-height: 210px !important;
  border-radius: 22px !important;
  background: #170f0e !important;
  box-shadow: 0 18px 44px rgba(43, 29, 26, .18) !important;
}
.factory-media-card img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: .74 !important;
  transform: scale(1.02) !important;
}
.factory-media-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(23, 15, 14, .05), rgba(23, 15, 14, .82)) !important;
}
.factory-media-card strong,
.factory-media-card span {
  position: relative !important;
  z-index: 2 !important;
  display: block !important;
  padding-inline: 18px !important;
}
.factory-media-card strong {
  margin-top: 126px !important;
  color: #fff8ed !important;
  font-size: 22px !important;
  line-height: 1.05 !important;
  letter-spacing: -.03em !important;
}
.factory-media-card span {
  margin-top: 8px !important;
  padding-bottom: 18px !important;
  color: #ead4bd !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 650 !important;
}

/* Trust block */
.trust-section {
  padding-top: clamp(22px, 4vw, 48px) !important;
}
.trust-head {
  margin-bottom: 18px !important;
}
.trust-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.trust-grid article {
  min-height: 178px !important;
  padding: 18px !important;
  border-radius: 22px !important;
  background: #fff8ed !important;
  border: 1px solid rgba(115, 87, 81, .14) !important;
  box-shadow: 0 16px 38px rgba(43, 29, 26, .10) !important;
}
.trust-grid strong {
  display: block !important;
  padding-left: 12px !important;
  border-left: 5px solid #8c1c13 !important;
  color: #17100f !important;
  font-size: 20px !important;
  line-height: 1.08 !important;
  letter-spacing: -.02em !important;
}
.trust-grid span {
  display: block !important;
  margin-top: 12px !important;
  color: #5f4945 !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
  font-weight: 650 !important;
}

/* Model cards: 5 visible, all models available, clearer purpose + CTA */
.lineup-card {
  min-height: 470px !important;
  display: flex !important;
  flex-direction: column !important;
}
.lineup-card p {
  flex: 1 1 auto !important;
}
.model-card-meta {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
  margin: 12px 0 !important;
}
.model-card-meta span {
  display: inline-flex !important;
  width: fit-content !important;
  padding: 5px 9px !important;
  border-radius: 999px !important;
  background: rgba(140, 28, 19, .08) !important;
  color: #5f2f29 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
}
.model-card-btn {
  width: 100% !important;
  min-height: 42px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #8c1c13 !important;
  color: #fff8ed !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}
.model-card-btn:hover { filter: brightness(1.05) !important; }

/* Products: clearer cards; red badge hugs only text */
.products-static.food-grid-clean {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
.products-static.food-grid-clean .food-card {
  min-height: 222px !important;
  padding: 12px !important;
}
.products-static.food-grid-clean .food-card span {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: max-content !important;
  min-width: 0 !important;
  align-self: flex-start !important;
  white-space: normal !important;
  padding: 7px 10px !important;
}
.products-static.food-grid-clean .food-card h3 {
  font-size: 17px !important;
  line-height: 1.16 !important;
}

/* Choose-volume and support blocks */
.process-grid-clean .process-card:nth-child(3),
.support-grid .support-card:nth-child(3) {
  background: #fff8ed !important;
  color: inherit !important;
  transform: none !important;
}
.support-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.support-grid .support-card {
  min-height: 190px !important;
}

/* First launch: no AI messaging; clean support cards */
.launch-pills-corner {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  width: 100% !important;
  max-width: none !important;
}
.launch-pills-corner span {
  min-height: 86px !important;
}
.flavor-stage-orbit {
  grid-template-columns: minmax(330px, .78fr) minmax(0, 1.22fr) !important;
}
.flavor-stage-orbit .product-orbit {
  margin-top: 14px !important;
}

/* Reviews are moved higher; make the jump cleaner */
.reviews-section {
  scroll-margin-top: 90px !important;
}

/* Sticky mobile conversion button via existing chat launcher */
@media (max-width: 1180px) {
  .trust-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .products-static.food-grid-clean { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .support-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
  .hero-help-note {
    font-size: 12px !important;
    margin-top: 0 !important;
  }
  .theme-traeger .mode-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .theme-traeger .mode-card {
    min-height: 118px !important;
  }
  .theme-traeger .mode-card b {
    font-size: 13px !important;
  }
  .theme-traeger .mode-card em {
    font-size: 11px !important;
  }
  .factory-proof-card-visual {
    grid-template-columns: 1fr !important;
  }
  .factory-media-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .factory-media-card {
    min-height: 168px !important;
    border-radius: 16px !important;
  }
  .factory-media-card strong {
    margin-top: 92px !important;
    font-size: 16px !important;
    padding-inline: 12px !important;
  }
  .factory-media-card span {
    font-size: 11px !important;
    padding-inline: 12px !important;
    padding-bottom: 12px !important;
  }
  .trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .trust-grid article {
    min-height: 150px !important;
    padding: 14px !important;
    border-radius: 16px !important;
  }
  .trust-grid strong {
    font-size: 16px !important;
    padding-left: 9px !important;
    border-left-width: 4px !important;
  }
  .trust-grid span {
    font-size: 12px !important;
    line-height: 1.34 !important;
  }
  .lineup-card {
    min-height: 440px !important;
    flex-basis: 82% !important;
  }
  .products-static.food-grid-clean {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    gap: 12px !important;
  }
  .products-static.food-grid-clean .food-card {
    flex: 0 0 82% !important;
    min-width: 82% !important;
    scroll-snap-align: start !important;
  }
  .support-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .support-grid .support-card {
    min-height: 162px !important;
    padding: 14px !important;
  }
  .launch-pills-corner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .launch-pills-corner span {
    min-height: 74px !important;
  }
  .flavor-stage-orbit {
    grid-template-columns: 1fr !important;
  }
  .sticky-chat.is-collapsed .chat-launch small::after {
    content: " — подобрать коптильню";
  }
}

@media (max-width: 420px) {
  .factory-media-grid,
  .trust-grid,
  .support-grid {
    grid-template-columns: 1fr !important;
  }
  .theme-traeger .mode-grid {
    grid-template-columns: 1fr !important;
  }
}


/* === Fix 2026-05-22 fix16: no overlap in first-start block + auto model carousel without buttons === */
.lineup-carousel {
  overflow: hidden !important;
  padding: 4px 0 18px !important;
}
.lineup {
  display: flex !important;
  gap: 14px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  padding: 4px 2px 14px !important;
  mask-image: linear-gradient(90deg, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%) !important;
}
.lineup::-webkit-scrollbar { display: none !important; }
.lineup-card {
  flex: 0 0 calc((100% - 56px) / 5) !important;
  min-height: 318px !important;
  padding: 14px !important;
  scroll-snap-align: start !important;
  cursor: pointer !important;
}
.lineup-card img {
  height: 132px !important;
  object-fit: contain !important;
  margin-bottom: 12px !important;
}
.lineup-card p,
.lineup-card .model-card-btn,
.model-carousel-ui,
.lineup-carousel .carousel-ui {
  display: none !important;
}
.lineup-card .model-title {
  margin: 6px 0 10px !important;
  gap: 7px !important;
}
.lineup-card .model-volume {
  font-size: 25px !important;
  line-height: .95 !important;
}
.lineup-card .model-load {
  font-size: 12px !important;
  line-height: 1.18 !important;
  white-space: normal !important;
}
.lineup-card .model-card-meta {
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  justify-content: center !important;
}
.lineup-card .model-card-meta span {
  width: fit-content !important;
  max-width: 100% !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: rgba(140, 28, 19, .08) !important;
  color: #5d312b !important;
  font-size: 11px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
  text-align: center !important;
}

.flavor-stage-orbit {
  display: grid !important;
  grid-template-columns: minmax(340px, .82fr) minmax(0, 1.18fr) !important;
  grid-template-areas: "copy right" !important;
  gap: clamp(22px, 3vw, 42px) !important;
  align-items: center !important;
  overflow: hidden !important;
  min-height: 430px !important;
}
.flavor-stage-orbit .launch-copy {
  grid-area: copy !important;
  position: relative !important;
  z-index: 4 !important;
  max-width: 520px !important;
  width: 100% !important;
  padding: 0 !important;
}
.flavor-stage-orbit .launch-copy p {
  max-width: 470px !important;
}
.startup-right {
  grid-area: right !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-rows: auto auto !important;
  gap: 20px !important;
  position: relative !important;
  z-index: 3 !important;
}
.launch-pills-corner {
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(96px, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
.launch-pills-corner span {
  min-height: 86px !important;
  padding: 13px 12px !important;
  border-radius: 16px !important;
  background: rgba(255, 248, 237, .96) !important;
  color: #221513 !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  box-shadow: 0 16px 36px rgba(23,16,15,.16) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 6px !important;
  overflow: hidden !important;
}
.launch-pills-corner strong {
  display: block !important;
  color: #8c1c13 !important;
  font-size: clamp(11px, .9vw, 13px) !important;
  line-height: 1 !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
}
.launch-pills-corner small {
  display: block !important;
  color: #2d1e1a !important;
  font-size: clamp(11px, .9vw, 13px) !important;
  line-height: 1.16 !important;
  font-weight: 850 !important;
}
.flavor-stage-orbit .product-orbit {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  top: auto !important;
  width: max-content !important;
  max-width: none !important;
  display: flex !important;
  gap: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  animation: startupTrackFix16 20s linear infinite !important;
  will-change: transform !important;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  translate: none !important;
  animation: none !important;
  opacity: 1 !important;
  flex: 0 0 205px !important;
  width: 205px !important;
  height: 116px !important;
  min-height: 116px !important;
  margin: 0 !important;
  padding: 14px !important;
  border-radius: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}
@keyframes startupTrackFix16 {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(calc(-50% - 30px),0,0); }
}

@media (max-width: 1180px) {
  .lineup-card { flex-basis: calc((100% - 28px) / 3) !important; }
  .launch-pills-corner { grid-template-columns: repeat(3, minmax(110px, 1fr)) !important; }
}
@media (max-width: 760px) {
  .lineup-card { flex-basis: 78% !important; min-height: 300px !important; scroll-snap-align: center !important; }
  .lineup { padding-inline: 12px !important; margin-inline: -12px !important; }
  .flavor-stage-orbit {
    grid-template-columns: 1fr !important;
    grid-template-areas: "copy" "right" !important;
    min-height: 0 !important;
    gap: 18px !important;
  }
  .startup-right { gap: 14px !important; }
  .launch-pills-corner { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 8px !important; }
  .launch-pills-corner span { min-height: 70px !important; padding: 11px !important; }
  .flavor-stage-orbit .product-orbit { animation-duration: 17s !important; }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) { flex-basis: 172px !important; width: 172px !important; height: 96px !important; min-height: 96px !important; padding: 12px !important; }
}


/* === Fix 2026-05-23 fix17: clean model cards, bigger product visuals, first-start no overlap === */
.lineup-head-clean p {
  display: none !important;
}
.lineup-card .model-card-meta {
  display: none !important;
}
.products-static.food-grid-clean .food-card,
.food-grid-clean .food-card {
  min-height: 382px !important;
}
.products-static.food-grid-clean .food-visual,
.food-grid-clean .food-visual {
  height: 182px !important;
  margin-bottom: 18px !important;
  background-size: cover !important;
}

.flavor-stage-orbit {
  padding: clamp(28px, 4vw, 54px) !important;
  grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr) !important;
  align-items: center !important;
  overflow: hidden !important;
}
.flavor-stage-orbit .launch-copy {
  padding: 0 !important;
}
.startup-right {
  display: grid !important;
  grid-template-rows: auto 142px !important;
  gap: 22px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  align-self: center !important;
}
.launch-pills-corner {
  position: relative !important;
  z-index: 4 !important;
  align-self: start !important;
}
.flavor-stage-orbit .product-orbit {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 142px !important;
  min-height: 142px !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  animation: none !important;
  z-index: 2 !important;
  pointer-events: none !important;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: absolute !important;
  top: 12px !important;
  left: calc(100% + 24px) !important;
  right: auto !important;
  bottom: auto !important;
  flex: none !important;
  width: 220px !important;
  height: 116px !important;
  min-height: 116px !important;
  margin: 0 !important;
  opacity: 0 !important;
  transform: translate3d(0,0,0);
  animation: startupCardSlideFix17 28s linear infinite !important;
}
.flavor-stage-orbit .meat-card:nth-child(1) { animation-delay: 0s !important; }
.flavor-stage-orbit .meat-card:nth-child(2) { animation-delay: -2.8s !important; }
.flavor-stage-orbit .meat-card:nth-child(3) { animation-delay: -5.6s !important; }
.flavor-stage-orbit .meat-card:nth-child(4) { animation-delay: -8.4s !important; }
.flavor-stage-orbit .meat-card:nth-child(5) { animation-delay: -11.2s !important; }
.flavor-stage-orbit .meat-card:nth-child(6) {
  animation-delay: -14s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.34), rgba(23,16,15,0)), url("assets/optimized/result-meat.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(7) {
  animation-delay: -16.8s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)), url("assets/optimized/result-fish.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(8) {
  animation-delay: -19.6s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/result-sausage.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(9) {
  animation-delay: -22.4s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.55), rgba(23,16,15,.08)), url("assets/optimized/result-chicken.webp") center / cover no-repeat !important;
}
.flavor-stage-orbit .meat-card:nth-child(10) {
  animation-delay: -25.2s !important;
  background: linear-gradient(90deg, rgba(23,16,15,.60), rgba(23,16,15,.08)), url("assets/optimized/food-cheese.webp") center / cover no-repeat !important;
}
@keyframes startupCardSlideFix17 {
  0% { opacity: 0; transform: translate3d(0,0,0); }
  6% { opacity: 1; }
  42% { opacity: 1; }
  52% { opacity: 0; transform: translate3d(-1200px,0,0); }
  100% { opacity: 0; transform: translate3d(-1200px,0,0); }
}

@media (max-width: 1180px) {
  .products-static.food-grid-clean .food-visual,
  .food-grid-clean .food-visual { height: 176px !important; }
  .launch-pills-corner { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 760px) {
  .products-static.food-grid-clean .food-card,
  .food-grid-clean .food-card { min-height: 360px !important; }
  .products-static.food-grid-clean .food-visual,
  .food-grid-clean .food-visual { height: 196px !important; }
  .flavor-stage-orbit {
    padding: 24px !important;
    grid-template-columns: 1fr !important;
    grid-template-areas: "copy" "right" !important;
  }
  .startup-right { grid-template-rows: auto 118px !important; gap: 14px !important; }
  .launch-pills-corner { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .flavor-stage-orbit .product-orbit { height: 118px !important; min-height: 118px !important; }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    top: 8px !important;
    width: 176px !important;
    height: 96px !important;
    min-height: 96px !important;
  }
}

/* fix17b: first-start product carousel is a separate strip under gift cards */
.startup-right {
  grid-template-rows: auto auto !important;
  overflow: hidden !important;
}
.flavor-stage-orbit .product-orbit {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  display: flex !important;
  gap: 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scrollbar-width: none !important;
  padding: 2px 0 8px !important;
  margin: 0 !important;
  animation: none !important;
  pointer-events: auto !important;
}
.flavor-stage-orbit .product-orbit::-webkit-scrollbar {
  display: none !important;
}
.flavor-stage-orbit .meat-card,
.flavor-stage-orbit .meat-card:nth-child(n) {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  flex: 0 0 220px !important;
  width: 220px !important;
  height: 116px !important;
  min-height: 116px !important;
  opacity: 1 !important;
  transform: none !important;
  translate: none !important;
  animation: none !important;
  scroll-snap-align: start !important;
}
@media (max-width: 760px) {
  .flavor-stage-orbit .product-orbit {
    padding-bottom: 6px !important;
  }
  .flavor-stage-orbit .meat-card,
  .flavor-stage-orbit .meat-card:nth-child(n) {
    flex-basis: 176px !important;
    width: 176px !important;
    height: 96px !important;
    min-height: 96px !important;
  }
}


/* === Fix 2026-05-23 fix18: align production/trust blocks + mini model descriptions === */
.factory-proof-card-visual {
  align-items: center !important;
  gap: clamp(24px, 4vw, 56px) !important;
}
.factory-proof-card-visual .factory-proof-copy {
  align-self: center !important;
}
.factory-media-grid {
  align-self: center !important;
}
.trust-head {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  max-width: 760px !important;
  margin: 0 0 22px !important;
}
.trust-head .eyebrow {
  margin: 0 !important;
}
.trust-head h2 {
  max-width: 760px !important;
  margin: 0 !important;
  text-align: left !important;
}
.trust-grid {
  align-items: stretch !important;
}
.trust-grid article {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}
.lineup-card {
  min-height: 390px !important;
}
.lineup-card p {
  display: block !important;
  margin: 8px 0 0 !important;
  color: #5f4945 !important;
  font-size: 13px !important;
  line-height: 1.34 !important;
  font-weight: 700 !important;
  text-align: center !important;
  flex: 0 0 auto !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
}
.lineup-card .model-title {
  margin-bottom: 6px !important;
}
@media (max-width: 1180px) {
  .lineup-card { min-height: 370px !important; }
}
@media (max-width: 760px) {
  .trust-head { max-width: 100% !important; margin-bottom: 18px !important; }
  .trust-head h2 { max-width: 100% !important; }
  .lineup-card { min-height: 360px !important; }
  .lineup-card p { font-size: 12px !important; -webkit-line-clamp: 3 !important; }
}

/* === Fix 19: cleaner first-launch support block === */
.flavor-stage-orbit.flavor-stage-support {
  display: grid !important;
  grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr) !important;
  grid-template-areas: "copy support" !important;
  gap: clamp(24px, 4vw, 58px) !important;
  align-items: center !important;
  min-height: 500px !important;
  padding: clamp(34px, 5vw, 62px) !important;
  overflow: hidden !important;
}
.flavor-stage-support .launch-copy {
  grid-area: copy !important;
  max-width: 520px !important;
  align-self: center !important;
}
.flavor-stage-support .launch-copy h2 {
  max-width: 540px !important;
}
.flavor-stage-support .launch-copy p {
  max-width: 460px !important;
  font-size: clamp(16px, 1.35vw, 19px) !important;
}
.startup-right-clean {
  grid-area: support !important;
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 640px !important;
  justify-self: end !important;
}
.launch-support-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.launch-support-grid article {
  min-height: 154px !important;
  padding: 18px 18px 16px !important;
  border-radius: 20px !important;
  background: rgba(255, 248, 237, .94) !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  box-shadow: 0 20px 44px rgba(23,16,15,.18) !important;
  color: #211514 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}
.launch-support-grid article strong {
  color: #8c1c13 !important;
  font-size: clamp(17px, 1.5vw, 22px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.03em !important;
}
.launch-support-grid article span {
  color: #35231f !important;
  font-size: 14px !important;
  line-height: 1.38 !important;
  font-weight: 720 !important;
}
.launch-support-note {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 16px 18px !important;
  border-radius: 18px !important;
  background: rgba(140, 28, 19, .92) !important;
  color: #fff8ed !important;
  box-shadow: 0 18px 42px rgba(23,16,15,.2) !important;
}
.launch-support-note strong {
  font-size: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: .07em !important;
  white-space: nowrap !important;
}
.launch-support-note span {
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 760 !important;
}
.flavor-stage-support .launch-pills-corner,
.flavor-stage-support .product-orbit,
.flavor-stage-support .meat-orbit {
  display: none !important;
}
@media (max-width: 980px) {
  .flavor-stage-orbit.flavor-stage-support {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "copy"
      "support" !important;
    min-height: 0 !important;
    gap: 22px !important;
  }
  .startup-right-clean {
    justify-self: stretch !important;
    max-width: none !important;
  }
}
@media (max-width: 620px) {
  .flavor-stage-orbit.flavor-stage-support {
    padding: 22px !important;
    border-radius: 22px !important;
  }
  .launch-support-grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .launch-support-grid article {
    min-height: 0 !important;
    padding: 15px !important;
    border-radius: 16px !important;
  }
  .launch-support-note {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 5px !important;
  }
  .launch-support-note strong {
    white-space: normal !important;
  }
}


/* === Fix 20: return product carousel in first-start block, no text overlap === */
.flavor-stage-orbit.flavor-stage-support {
  grid-template-columns: minmax(300px, .8fr) minmax(560px, 1.2fr) !important;
  grid-template-areas: "copy support" !important;
  gap: clamp(24px, 3.8vw, 54px) !important;
  align-items: center !important;
  min-height: 470px !important;
}
.flavor-stage-support .launch-copy {
  max-width: 430px !important;
  padding-right: 8px !important;
}
.flavor-stage-support .launch-copy h2 {
  max-width: 430px !important;
  line-height: .94 !important;
}
.flavor-stage-support .launch-copy p {
  max-width: 390px !important;
  margin-bottom: 0 !important;
}
.flavor-stage-support .startup-right-carousel {
  grid-area: support !important;
  position: relative !important;
  z-index: 5 !important;
  display: grid !important;
  grid-template-rows: auto auto !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 720px !important;
  justify-self: end !important;
  align-self: center !important;
  min-width: 0 !important;
}
.flavor-stage-support .launch-pills-corner {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 3 !important;
}
.flavor-stage-support .launch-pills-corner span {
  min-height: 88px !important;
  padding: 14px 12px !important;
  border-radius: 16px !important;
  background: rgba(255, 248, 237, .96) !important;
  color: #241614 !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  box-shadow: 0 16px 34px rgba(23,16,15,.16) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 6px !important;
  overflow: hidden !important;
}
.flavor-stage-support .launch-pills-corner strong {
  display: block !important;
  color: #8c1c13 !important;
  font-size: clamp(11px, .92vw, 13px) !important;
  line-height: 1 !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
}
.flavor-stage-support .launch-pills-corner small {
  display: block !important;
  color: #2d1e1a !important;
  font-size: clamp(11px, .88vw, 13px) !important;
  line-height: 1.18 !important;
  font-weight: 850 !important;
}
.flavor-stage-support .launch-carousel-window {
  position: relative !important;
  width: 100% !important;
  overflow: hidden !important;
  padding: 3px 0 10px !important;
  min-width: 0 !important;
}
.flavor-stage-support .product-orbit,
.flavor-stage-support .meat-orbit {
  display: flex !important;
  gap: 12px !important;
  width: max-content !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  pointer-events: none !important;
  animation: startupTrackFix20 20s linear infinite !important;
  will-change: transform !important;
}
.flavor-stage-support .meat-card,
.flavor-stage-support .meat-card:nth-child(n) {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  flex: 0 0 205px !important;
  width: 205px !important;
  height: 116px !important;
  min-height: 116px !important;
  margin: 0 !important;
  padding: 14px !important;
  border-radius: 16px !important;
  opacity: 1 !important;
  transform: none !important;
  translate: none !important;
  animation: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  box-shadow: 0 16px 34px rgba(23,16,15,.18) !important;
}
.flavor-stage-support .meat-card strong,
.flavor-stage-support .meat-card span {
  position: relative !important;
  z-index: 2 !important;
}
.flavor-stage-support .meat-card strong {
  color: #fff8ed !important;
  font-size: 20px !important;
  line-height: 1 !important;
}
.flavor-stage-support .meat-card span {
  color: #f2dfc4 !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}
.flavor-stage-support .meat-card:nth-child(5n+1) {
  background: linear-gradient(90deg, rgba(23,16,15,.58), rgba(23,16,15,.08)), url("assets/optimized/result-meat.webp") center / cover no-repeat !important;
}
.flavor-stage-support .meat-card:nth-child(5n+2) {
  background: linear-gradient(90deg, rgba(23,16,15,.56), rgba(23,16,15,.08)), url("assets/optimized/result-fish.webp") center / cover no-repeat !important;
}
.flavor-stage-support .meat-card:nth-child(5n+3) {
  background: linear-gradient(90deg, rgba(23,16,15,.56), rgba(23,16,15,.08)), url("assets/optimized/result-sausage.webp") center / cover no-repeat !important;
}
.flavor-stage-support .meat-card:nth-child(5n+4) {
  background: linear-gradient(90deg, rgba(23,16,15,.52), rgba(23,16,15,.08)), url("assets/optimized/result-chicken.webp") center / cover no-repeat !important;
}
.flavor-stage-support .meat-card:nth-child(5n+5) {
  background: linear-gradient(90deg, rgba(23,16,15,.52), rgba(23,16,15,.08)), url("assets/optimized/food-cheese.webp") center / cover no-repeat !important;
}
@keyframes startupTrackFix20 {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(calc(-50% - 30px),0,0); }
}
.flavor-stage-support .launch-support-grid,
.flavor-stage-support .launch-support-note {
  display: none !important;
}
@media (max-width: 1180px) {
  .flavor-stage-orbit.flavor-stage-support {
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr) !important;
  }
  .flavor-stage-support .launch-pills-corner {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 980px) {
  .flavor-stage-orbit.flavor-stage-support {
    grid-template-columns: 1fr !important;
    grid-template-areas: "copy" "support" !important;
    min-height: 0 !important;
    gap: 22px !important;
  }
  .flavor-stage-support .launch-copy,
  .flavor-stage-support .launch-copy h2,
  .flavor-stage-support .launch-copy p {
    max-width: 100% !important;
  }
  .flavor-stage-support .startup-right-carousel {
    justify-self: stretch !important;
    max-width: none !important;
  }
}
@media (max-width: 620px) {
  .flavor-stage-orbit.flavor-stage-support {
    padding: 22px !important;
    border-radius: 22px !important;
  }
  .flavor-stage-support .launch-pills-corner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .flavor-stage-support .launch-pills-corner span {
    min-height: 76px !important;
    padding: 12px 10px !important;
  }
  .flavor-stage-support .product-orbit,
  .flavor-stage-support .meat-orbit {
    animation-duration: 17s !important;
  }
  .flavor-stage-support .meat-card,
  .flavor-stage-support .meat-card:nth-child(n) {
    flex-basis: 172px !important;
    width: 172px !important;
    height: 96px !important;
    min-height: 96px !important;
    padding: 12px !important;
  }
  .flavor-stage-support .meat-card strong {
    font-size: 17px !important;
  }
  .flavor-stage-support .meat-card span {
    font-size: 11px !important;
  }
}


/* === Fix 21: lineup cards with mini descriptions + clearer autoplay carousel === */
.lineup-carousel {
  overflow: hidden !important;
  padding: 6px 0 22px !important;
}
.lineup {
  display: flex !important;
  gap: 16px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  padding: 4px 2px 16px !important;
}
.lineup::-webkit-scrollbar {
  display: none !important;
}
.lineup-card {
  flex: 0 0 calc((100% - 48px) / 4) !important;
  min-height: 382px !important;
  padding: 16px 16px 18px !important;
  scroll-snap-align: start !important;
  cursor: pointer !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
.lineup-card img {
  height: 150px !important;
  object-fit: contain !important;
  margin-bottom: 12px !important;
}
.lineup-card .model-title {
  margin: 6px 0 10px !important;
  gap: 7px !important;
}
.lineup-card .model-volume {
  font-size: 24px !important;
  line-height: .95 !important;
}
.lineup-card .model-load {
  font-size: 12px !important;
  line-height: 1.18 !important;
  white-space: normal !important;
}
.lineup-card p {
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 8px 0 0 !important;
  color: #5f4945 !important;
  font-size: 13px !important;
  line-height: 1.38 !important;
  font-weight: 700 !important;
  text-align: center !important;
}
.lineup-card .model-card-btn,
.model-carousel-ui,
.lineup-carousel .carousel-ui {
  display: none !important;
}
@media (max-width: 1180px) {
  .lineup-card {
    flex-basis: calc((100% - 32px) / 3) !important;
    min-height: 374px !important;
  }
}
@media (max-width: 760px) {
  .lineup-card {
    flex-basis: calc((100% - 16px) / 2) !important;
    min-height: 360px !important;
  }
}
@media (max-width: 620px) {
  .lineup {
    padding-inline: 12px !important;
    margin-inline: -12px !important;
  }
  .lineup-card {
    flex-basis: 84% !important;
    min-height: 350px !important;
    scroll-snap-align: center !important;
  }
  .lineup-card img {
    height: 138px !important;
  }
  .lineup-card p {
    font-size: 12px !important;
    -webkit-line-clamp: 4 !important;
  }
}


/* === Fix 22: clean support block layout, readable pills and proper carousel placement === */
.flavor-stage-orbit.flavor-stage-support {
  grid-template-columns: minmax(320px, .82fr) minmax(620px, 1.18fr) !important;
  gap: clamp(26px, 4vw, 58px) !important;
  align-items: center !important;
}
.flavor-stage-support .launch-copy {
  max-width: 450px !important;
}
.flavor-stage-support .launch-copy h2 {
  max-width: 450px !important;
}
.flavor-stage-support .launch-copy p {
  max-width: 400px !important;
}
.flavor-stage-support .startup-right-carousel {
  width: 100% !important;
  max-width: 700px !important;
  justify-self: end !important;
  display: grid !important;
  grid-template-areas:
    "pills"
    "carousel" !important;
  grid-template-rows: auto auto !important;
  gap: 16px !important;
}
.flavor-stage-support .launch-pills-corner {
  grid-area: pills !important;
  order: 1 !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-self: start !important;
}
.flavor-stage-support .launch-pills-corner span {
  grid-column: span 2 !important;
  min-height: 98px !important;
  padding: 14px 14px !important;
  border-radius: 18px !important;
}
.flavor-stage-support .launch-pills-corner span:nth-child(4) {
  grid-column: 2 / span 2 !important;
}
.flavor-stage-support .launch-pills-corner span:nth-child(5) {
  grid-column: 4 / span 2 !important;
}
.flavor-stage-support .launch-pills-corner strong {
  font-size: 13px !important;
}
.flavor-stage-support .launch-pills-corner small {
  font-size: 14px !important;
  line-height: 1.22 !important;
}
.flavor-stage-support .launch-carousel-window {
  grid-area: carousel !important;
  order: 2 !important;
  width: 100% !important;
  overflow: hidden !important;
  padding: 2px 0 6px !important;
}
.flavor-stage-support .product-orbit,
.flavor-stage-support .meat-orbit {
  animation-duration: 18s !important;
}
.flavor-stage-support .meat-card,
.flavor-stage-support .meat-card:nth-child(n) {
  flex-basis: 220px !important;
  width: 220px !important;
  height: 122px !important;
  min-height: 122px !important;
}
@media (max-width: 1280px) {
  .flavor-stage-orbit.flavor-stage-support {
    grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr) !important;
  }
  .flavor-stage-support .startup-right-carousel {
    max-width: 640px !important;
  }
}
@media (max-width: 1180px) {
  .flavor-stage-support .launch-pills-corner {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .flavor-stage-support .launch-pills-corner span,
  .flavor-stage-support .launch-pills-corner span:nth-child(4),
  .flavor-stage-support .launch-pills-corner span:nth-child(5) {
    grid-column: auto !important;
  }
  .flavor-stage-support .launch-pills-corner small {
    font-size: 13px !important;
  }
}
@media (max-width: 980px) {
  .flavor-stage-support .startup-right-carousel {
    max-width: none !important;
  }
}
@media (max-width: 620px) {
  .flavor-stage-support .launch-pills-corner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .flavor-stage-support .launch-pills-corner span:last-child {
    grid-column: 1 / -1 !important;
  }
  .flavor-stage-support .launch-pills-corner span {
    min-height: 82px !important;
    padding: 12px !important;
  }
  .flavor-stage-support .launch-pills-corner small {
    font-size: 12px !important;
  }
  .flavor-stage-support .meat-card,
  .flavor-stage-support .meat-card:nth-child(n) {
    flex-basis: 176px !important;
    width: 176px !important;
    height: 98px !important;
    min-height: 98px !important;
  }
}


/* === Fix 23: support block more harmonious and balanced === */
.flavor-stage-orbit.flavor-stage-support {
  grid-template-columns: minmax(380px, .92fr) minmax(560px, 1.08fr) !important;
  gap: clamp(30px, 4vw, 64px) !important;
  align-items: center !important;
  padding: clamp(34px, 4.5vw, 58px) !important;
}
.flavor-stage-support .launch-copy {
  max-width: 500px !important;
}
.flavor-stage-support .launch-copy h2 {
  max-width: 500px !important;
  font-size: clamp(58px, 5.3vw, 74px) !important;
  line-height: .92 !important;
  letter-spacing: -.045em !important;
  margin-bottom: 18px !important;
}
.flavor-stage-support .launch-copy p {
  max-width: 420px !important;
  font-size: clamp(17px, 1.35vw, 20px) !important;
  line-height: 1.42 !important;
  color: #f0dfc8 !important;
}
.flavor-stage-support .startup-right-carousel {
  max-width: 680px !important;
  gap: 18px !important;
  align-self: center !important;
}
.flavor-stage-support .launch-pills-corner {
  gap: 12px !important;
  max-width: 620px !important;
  justify-self: center !important;
}
.flavor-stage-support .launch-pills-corner span {
  min-height: 92px !important;
  padding: 15px 16px !important;
  border-radius: 20px !important;
  background: rgba(255, 248, 237, .95) !important;
  box-shadow: 0 14px 30px rgba(23,16,15,.14) !important;
}
.flavor-stage-support .launch-pills-corner strong {
  font-size: 12px !important;
  line-height: 1.02 !important;
}
.flavor-stage-support .launch-pills-corner small {
  font-size: 13px !important;
  line-height: 1.24 !important;
}
.flavor-stage-support .launch-carousel-window {
  max-width: 620px !important;
  justify-self: center !important;
  padding-top: 2px !important;
}
.flavor-stage-support .product-orbit,
.flavor-stage-support .meat-orbit {
  gap: 14px !important;
  animation-duration: 19s !important;
}
.flavor-stage-support .meat-card,
.flavor-stage-support .meat-card:nth-child(n) {
  flex-basis: 210px !important;
  width: 210px !important;
  height: 118px !important;
  min-height: 118px !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 28px rgba(23,16,15,.16) !important;
}
@media (max-width: 1280px) {
  .flavor-stage-orbit.flavor-stage-support {
    grid-template-columns: minmax(330px, .84fr) minmax(0, 1.16fr) !important;
  }
  .flavor-stage-support .launch-copy h2 {
    font-size: clamp(52px, 5vw, 68px) !important;
  }
}
@media (max-width: 980px) {
  .flavor-stage-orbit.flavor-stage-support {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .flavor-stage-support .launch-copy,
  .flavor-stage-support .launch-copy h2,
  .flavor-stage-support .launch-copy p,
  .flavor-stage-support .startup-right-carousel,
  .flavor-stage-support .launch-pills-corner,
  .flavor-stage-support .launch-carousel-window {
    max-width: 100% !important;
  }
  .flavor-stage-support .launch-copy h2 {
    font-size: clamp(46px, 8vw, 62px) !important;
  }
}
@media (max-width: 620px) {
  .flavor-stage-orbit.flavor-stage-support {
    padding: 22px !important;
  }
  .flavor-stage-support .launch-copy h2 {
    font-size: clamp(38px, 11vw, 52px) !important;
  }
  .flavor-stage-support .launch-copy p {
    font-size: 16px !important;
  }
  .flavor-stage-support .launch-pills-corner {
    gap: 8px !important;
  }
  .flavor-stage-support .launch-pills-corner span {
    min-height: 78px !important;
    padding: 12px !important;
  }
  .flavor-stage-support .launch-pills-corner strong {
    font-size: 11px !important;
  }
  .flavor-stage-support .launch-pills-corner small {
    font-size: 12px !important;
  }
}


/* === Fix 24: move support block product carousel slightly lower === */
.flavor-stage-support .launch-carousel-window {
  margin-top: 14px !important;
}
@media (max-width: 980px) {
  .flavor-stage-support .launch-carousel-window {
    margin-top: 10px !important;
  }
}
@media (max-width: 620px) {
  .flavor-stage-support .launch-carousel-window {
    margin-top: 8px !important;
  }
}


/* === Fix 25: cleaner and more balanced hero block === */
.theme-traeger .hero-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr) !important;
  gap: clamp(28px, 4vw, 52px) !important;
  align-items: start !important;
}
.theme-traeger h1 {
  max-width: 760px !important;
  font-size: clamp(58px, 5.5vw, 74px) !important;
  line-height: .95 !important;
  letter-spacing: -.045em !important;
}
.theme-traeger .lead {
  max-width: 640px !important;
  margin-top: 18px !important;
  font-size: clamp(18px, 1.45vw, 22px) !important;
  line-height: 1.42 !important;
}
.theme-traeger .hero-modes.mode-panel {
  width: min(100%, 620px) !important;
  margin-top: 24px !important;
  padding: 18px !important;
}
.theme-traeger .mode-panel-head {
  gap: 8px 14px !important;
}
.theme-traeger .mode-panel-head small {
  max-width: 460px !important;
}
.theme-traeger .mode-grid {
  gap: 12px !important;
}
.theme-traeger .mode-card {
  min-height: 96px !important;
}
.hero-actions {
  margin-top: 20px !important;
  gap: 12px !important;
}
.hero-help-note {
  margin-top: 2px !important;
  max-width: 520px !important;
}
.traeger-visual {
  min-height: 620px !important;
  align-items: end !important;
}
.smoker-wrap {
  width: min(80%, 470px) !important;
  max-height: 640px !important;
  transform: translateY(10px) !important;
}
.traeger-product {
  max-height: 640px !important;
}
@media (max-width: 1180px) {
  .theme-traeger .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(320px, .88fr) !important;
  }
  .theme-traeger h1 {
    font-size: clamp(52px, 5vw, 66px) !important;
    max-width: 680px !important;
  }
  .theme-traeger .hero-modes.mode-panel {
    width: min(100%, 580px) !important;
  }
}
@media (max-width: 900px) {
  .theme-traeger .hero-grid {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }
  .theme-traeger h1,
  .theme-traeger .lead,
  .theme-traeger .hero-modes.mode-panel,
  .hero-help-note {
    max-width: 100% !important;
  }
  .traeger-visual {
    min-height: 420px !important;
  }
  .smoker-wrap {
    transform: none !important;
    width: min(72%, 360px) !important;
    max-height: 460px !important;
  }
  .traeger-product {
    max-height: 460px !important;
  }
}
@media (max-width: 620px) {
  .theme-traeger h1 {
    font-size: clamp(38px, 10.6vw, 52px) !important;
    line-height: .97 !important;
  }
  .theme-traeger .lead {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
  .theme-traeger .hero-modes.mode-panel {
    padding: 16px !important;
  }
  .theme-traeger .mode-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .theme-traeger .mode-card {
    min-height: 90px !important;
  }
}


/* === Fix 26: rebalance hero block, cleaner 6-modes panel and better smoker alignment === */
.hero-grid {
  min-height: 0 !important;
  padding: 42px 0 54px !important;
  gap: clamp(28px, 4vw, 48px) !important;
  align-items: center !important;
}
.theme-traeger .hero-grid {
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .82fr) !important;
  gap: clamp(28px, 4vw, 52px) !important;
  align-items: center !important;
}
.theme-traeger h1 {
  max-width: 620px !important;
  font-size: clamp(56px, 4.8vw, 72px) !important;
  line-height: .94 !important;
  letter-spacing: -.04em !important;
}
.theme-traeger .lead {
  max-width: 610px !important;
  margin-top: 16px !important;
  font-size: clamp(17px, 1.3vw, 20px) !important;
}
.theme-traeger .hero-modes.mode-panel {
  width: min(100%, 590px) !important;
  margin-top: 20px !important;
  padding: 18px !important;
  border-radius: 26px !important;
}
.theme-traeger .mode-panel-head {
  grid-template-columns: 62px minmax(0, 1fr) !important;
  gap: 8px 14px !important;
}
.theme-traeger .mode-panel-head span {
  width: 62px !important;
  height: 62px !important;
  border-radius: 18px !important;
  font-size: 18px !important;
}
.theme-traeger .mode-panel-head strong {
  font-size: clamp(20px, 2vw, 30px) !important;
  line-height: 1 !important;
}
.theme-traeger .mode-panel-head small {
  max-width: 430px !important;
  font-size: 13px !important;
  line-height: 1.32 !important;
}
.theme-traeger .mode-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.theme-traeger .mode-card {
  min-height: 86px !important;
  padding: 14px 14px 13px !important;
  border-radius: 16px !important;
}
.theme-traeger .mode-card b {
  font-size: 14px !important;
  line-height: 1.12 !important;
}
.theme-traeger .mode-card em {
  font-size: 11px !important;
  line-height: 1.28 !important;
}
.hero-actions {
  margin-top: 18px !important;
  gap: 10px !important;
}
.hero-help-note {
  margin-top: 0 !important;
  max-width: 500px !important;
}
.traeger-visual {
  min-height: 0 !important;
  width: 100% !important;
  place-items: center !important;
  align-self: center !important;
  justify-self: center !important;
}
.smoker-wrap {
  width: min(76%, 430px) !important;
  max-height: 580px !important;
  transform: translateY(6px) !important;
}
.traeger-product {
  max-height: 580px !important;
}
@media (max-width: 1100px) {
  .theme-traeger .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr) !important;
  }
  .theme-traeger h1 {
    max-width: 560px !important;
    font-size: clamp(48px, 4.8vw, 64px) !important;
  }
  .smoker-wrap {
    width: min(82%, 390px) !important;
    max-height: 520px !important;
  }
  .traeger-product {
    max-height: 520px !important;
  }
}
@media (max-width: 900px) {
  .hero-grid,
  .theme-traeger .hero-grid {
    grid-template-columns: 1fr !important;
    padding: 28px 0 40px !important;
    gap: 20px !important;
    align-items: start !important;
  }
  .theme-traeger h1,
  .theme-traeger .lead,
  .theme-traeger .hero-modes.mode-panel,
  .hero-help-note {
    max-width: 100% !important;
  }
  .traeger-visual {
    min-height: 0 !important;
  }
  .smoker-wrap {
    width: min(72%, 340px) !important;
    max-height: 420px !important;
    transform: none !important;
  }
  .traeger-product {
    max-height: 420px !important;
  }
}
@media (max-width: 620px) {
  .theme-traeger h1 {
    font-size: clamp(38px, 10vw, 50px) !important;
  }
  .theme-traeger .hero-modes.mode-panel {
    padding: 16px !important;
  }
  .theme-traeger .mode-panel-head {
    grid-template-columns: 56px minmax(0, 1fr) !important;
  }
  .theme-traeger .mode-panel-head span {
    width: 56px !important;
    height: 56px !important;
    font-size: 17px !important;
  }
  .theme-traeger .mode-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* === Fix 27: cohesive hero composition based on design review === */
.theme-traeger .hero-grid {
  grid-template-columns: minmax(0, 1.02fr) minmax(330px, .76fr) !important;
  gap: clamp(18px, 2.4vw, 34px) !important;
  align-items: center !important;
}
.theme-traeger h1 {
  max-width: 640px !important;
  font-size: clamp(56px, 4.9vw, 72px) !important;
  line-height: .95 !important;
}
.theme-traeger .lead {
  max-width: 560px !important;
  margin-top: 14px !important;
  font-size: clamp(18px, 1.35vw, 21px) !important;
  line-height: 1.38 !important;
  color: #654f49 !important;
}
.theme-traeger .hero-modes.mode-panel {
  width: min(100%, 560px) !important;
  margin-top: 18px !important;
  padding: 18px !important;
  border-radius: 24px !important;
  border-left: 0 !important;
  background: linear-gradient(180deg, rgba(255,249,241,.98), rgba(244,228,205,.92)) !important;
  box-shadow: 0 18px 44px rgba(43,29,26,.10) !important;
}
.theme-traeger .mode-panel-head {
  display: block !important;
  margin-bottom: 12px !important;
}
.theme-traeger .mode-panel-head span {
  display: inline-flex !important;
  width: auto !important;
  height: auto !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  margin-bottom: 10px !important;
}
.theme-traeger .mode-panel-head strong {
  display: block !important;
  color: #17100f !important;
  font-size: clamp(26px, 2.15vw, 34px) !important;
  line-height: 1 !important;
  margin-bottom: 8px !important;
}
.theme-traeger .mode-panel-head small {
  display: block !important;
  max-width: 500px !important;
  color: #6a514b !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 720 !important;
}
.theme-traeger .mode-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.theme-traeger .mode-card {
  min-height: 82px !important;
  padding: 13px 13px 12px !important;
  border-radius: 16px !important;
  background: rgba(255,248,237,.96) !important;
  box-shadow: 0 10px 22px rgba(43,29,26,.06) !important;
}
.theme-traeger .mode-card::before {
  top: 12px !important;
  bottom: 12px !important;
}
.theme-traeger .mode-card b {
  font-size: 14px !important;
  line-height: 1.12 !important;
}
.theme-traeger .mode-card em {
  margin-top: 6px !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
}
.hero-actions {
  margin-top: 14px !important;
  gap: 10px !important;
}
.hero-help-note {
  max-width: 460px !important;
  color: #715953 !important;
}
.traeger-visual {
  position: relative !important;
  min-height: 560px !important;
  justify-self: start !important;
  align-self: center !important;
  width: 100% !important;
  margin-left: -26px !important;
}
.hero-smoker-glow {
  position: absolute !important;
  inset: 56px 20px 78px 30px !important;
  border-radius: 44px !important;
  background: radial-gradient(circle at 50% 45%, rgba(255,248,237,.95) 0%, rgba(243,228,204,.82) 48%, rgba(230,212,186,.18) 74%, rgba(230,212,186,0) 100%) !important;
  filter: blur(2px) !important;
  z-index: 1 !important;
}
.smoker-wrap {
  position: relative !important;
  z-index: 3 !important;
  width: min(88%, 420px) !important;
  max-height: 560px !important;
  margin-inline: auto !important;
  transform: translateX(-18px) translateY(4px) !important;
}
.traeger-product {
  max-height: 560px !important;
}
.hero-visual-badges {
  position: absolute !important;
  z-index: 4 !important;
  left: 8px !important;
  bottom: 34px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-width: 300px !important;
}
.hero-visual-badges span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: rgba(255,248,237,.94) !important;
  border: 1px solid rgba(140,28,19,.14) !important;
  box-shadow: 0 10px 24px rgba(43,29,26,.10) !important;
  color: #452d27 !important;
  font-size: 12px !important;
  font-weight: 840 !important;
  white-space: nowrap !important;
}
.theme-traeger .floating-card.ai-card,
.theme-traeger .floating-card.gift-card {
  display: none !important;
}
@media (max-width: 1180px) {
  .theme-traeger .hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(300px, .72fr) !important;
    gap: 22px !important;
  }
  .traeger-visual {
    margin-left: -18px !important;
  }
  .smoker-wrap {
    width: min(90%, 380px) !important;
    max-height: 520px !important;
  }
  .traeger-product {
    max-height: 520px !important;
  }
}
@media (max-width: 900px) {
  .theme-traeger .hero-grid {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }
  .traeger-visual {
    min-height: 420px !important;
    margin-left: 0 !important;
    justify-self: center !important;
  }
  .hero-smoker-glow {
    inset: 30px 18px 54px 18px !important;
  }
  .smoker-wrap {
    width: min(74%, 340px) !important;
    max-height: 430px !important;
    transform: none !important;
  }
  .traeger-product {
    max-height: 430px !important;
  }
  .hero-visual-badges {
    left: 50% !important;
    bottom: 10px !important;
    transform: translateX(-50%) !important;
    justify-content: center !important;
    max-width: 100% !important;
  }
}
@media (max-width: 620px) {
  .theme-traeger h1 {
    font-size: clamp(38px, 10vw, 52px) !important;
  }
  .theme-traeger .mode-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .hero-visual-badges span {
    min-height: 30px !important;
    padding: 0 10px !important;
    font-size: 11px !important;
  }
}


/* === Fix 28: simplify 6-modes block and remove helper note === */
.hero-help-note {
  display: none !important;
}
.theme-traeger .hero-modes.hero-modes-simple {
  width: min(100%, 540px) !important;
  margin-top: 16px !important;
  padding: 18px !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, rgba(255,249,241,.98), rgba(245,232,212,.92)) !important;
  border: 1px solid rgba(140,28,19,.10) !important;
  box-shadow: 0 14px 34px rgba(43,29,26,.08) !important;
}
.theme-traeger .mode-panel-head-simple {
  display: block !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
}
.theme-traeger .mode-panel-head-simple strong {
  display: block !important;
  margin: 0 !important;
  color: #17100f !important;
  font-size: clamp(25px, 2.1vw, 32px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.03em !important;
}
.theme-traeger .mode-panel-head-simple span,
.theme-traeger .mode-panel-head-simple small {
  display: none !important;
}
.theme-traeger .mode-grid.mode-grid-simple {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 0 !important;
}
.theme-traeger .mode-card.mode-card-simple {
  min-height: 52px !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  background: #fff8ed !important;
  border: 1px solid rgba(140,28,19,.12) !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
.theme-traeger .mode-card.mode-card-simple::before,
.theme-traeger .mode-card.mode-card-simple em {
  display: none !important;
  content: none !important;
}
.theme-traeger .mode-card.mode-card-simple b {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #8c1c13 !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  letter-spacing: -.01em !important;
}
@media (max-width: 620px) {
  .theme-traeger .hero-modes.hero-modes-simple {
    width: 100% !important;
    padding: 16px !important;
  }
  .theme-traeger .mode-panel-head-simple strong {
    font-size: 22px !important;
  }
  .theme-traeger .mode-grid.mode-grid-simple {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .theme-traeger .mode-card.mode-card-simple {
    min-height: 48px !important;
    padding: 11px 12px !important;
  }
  .theme-traeger .mode-card.mode-card-simple b {
    font-size: 13px !important;
  }
}


/* === Fix 29: remove hero eyebrow and text ovals on smoker === */
[data-page-label]:empty {
  display: none !important;
}
.theme-traeger .hero .eyebrow {
  display: none !important;
}
.hero-visual-badges {
  display: none !important;
}


/* === Fix 2026-05-23 fix31: rebuild factory-direct block into clean proof cards === */
.factory-proof-card-direct {
  grid-template-columns: minmax(320px, .96fr) minmax(0, 1.04fr) !important;
  align-items: center !important;
  gap: clamp(24px, 4vw, 52px) !important;
  background:
    radial-gradient(circle at 15% 10%, rgba(255, 213, 143, .35), transparent 36%),
    linear-gradient(180deg, #fbf3e7 0%, #f4e7d4 100%) !important;
}
.factory-proof-card-direct .factory-proof-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  max-width: 560px !important;
}
.factory-proof-card-direct .factory-proof-copy h2 {
  max-width: 720px !important;
  margin: 12px 0 14px !important;
}
.factory-proof-card-direct .factory-proof-copy p {
  max-width: 560px !important;
}
.factory-proof-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 24px !important;
}
.factory-ghost-btn {
  background: transparent !important;
  color: #8c1c13 !important;
  border: 1px solid rgba(140, 28, 19, .22) !important;
  box-shadow: none !important;
}
.factory-ghost-btn:hover {
  background: rgba(140, 28, 19, .06) !important;
}
.factory-direct-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-self: stretch !important;
}
.factory-direct-card {
  min-height: 184px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 22px 22px 20px !important;
  border-radius: 22px !important;
  background: rgba(255, 249, 241, .92) !important;
  border: 1px solid rgba(140, 28, 19, .12) !important;
  box-shadow: 0 14px 34px rgba(43, 29, 26, .08) !important;
}
.factory-direct-num {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;
  background: #a72618 !important;
  color: #fff8ed !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
}
.factory-direct-card strong {
  display: block !important;
  color: #201413 !important;
  font-size: 24px !important;
  line-height: 1.06 !important;
  letter-spacing: -.03em !important;
}
.factory-direct-card p {
  margin: 0 !important;
  color: #5f4945 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 650 !important;
}
.factory-direct-note {
  grid-column: 1 / -1 !important;
  margin-top: 8px !important;
  padding: 16px 22px !important;
  border-radius: 18px !important;
  background: linear-gradient(90deg, #9b2115 0%, #bf321a 100%) !important;
  color: #fff6ea !important;
  font-size: 16px !important;
  line-height: 1.45 !important;
  font-weight: 780 !important;
  box-shadow: 0 14px 32px rgba(140, 28, 19, .18) !important;
}

@media (max-width: 1020px) {
  .factory-proof-card-direct {
    grid-template-columns: 1fr !important;
  }
  .factory-proof-card-direct .factory-proof-copy {
    max-width: none !important;
  }
}

@media (max-width: 760px) {
  .factory-direct-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .factory-direct-card {
    min-height: 0 !important;
    border-radius: 18px !important;
    padding: 18px 16px !important;
  }
  .factory-direct-card strong {
    font-size: 20px !important;
  }
  .factory-direct-card p {
    font-size: 14px !important;
  }
  .factory-direct-note {
    padding: 14px 16px !important;
    font-size: 14px !important;
    border-radius: 16px !important;
  }
  .factory-proof-actions {
    width: 100% !important;
  }
  .factory-proof-actions .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* === Fix 32: remove trust and selection sections, hide factory buttons === */
.factory-proof-actions { display: none !important; }


/* === Fix 33: calmer proof-before-order block === */
.proof-grid-soft {
  gap: clamp(24px, 4vw, 42px) !important;
}
.proof-intro-soft {
  padding: clamp(28px, 4vw, 42px) !important;
}
.proof-intro-soft h2 {
  max-width: 590px !important;
  font-size: clamp(44px, 4.1vw, 56px) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}
.proof-intro-soft p {
  max-width: 600px !important;
  font-size: clamp(16px, 1.28vw, 18px) !important;
  line-height: 1.55 !important;
}
.proof-actions-soft {
  align-items: center !important;
  gap: 16px !important;
  margin-top: 26px !important;
}
.proof-text-link {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px !important;
  color: #8c1c13 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  border-bottom: 2px solid rgba(140, 28, 19, .22) !important;
}
.proof-text-link:hover {
  border-color: rgba(140, 28, 19, .7) !important;
}
.proof-card-grid-soft .proof-photo {
  min-height: 248px !important;
}
.proof-photo-soft img {
  opacity: .86 !important;
  filter: contrast(1.04) brightness(1.04) !important;
}
.proof-photo-soft::after {
  background: linear-gradient(180deg, rgba(23,15,14,.04), rgba(23,15,14,.58)) !important;
}
.proof-card-grid-soft .proof-card:not(.proof-photo) {
  min-height: 178px !important;
}
.proof-card-grid-soft .proof-card h3 {
  font-size: clamp(23px, 2vw, 28px) !important;
  line-height: 1.02 !important;
}
.proof-card-grid-soft .proof-card p {
  font-size: 15px !important;
  line-height: 1.42 !important;
}
.proof-card-grid-soft .proof-card span {
  color: #8c1c13 !important;
  font-weight: 900 !important;
}
@media (max-width: 760px) {
  .proof-intro-soft h2 {
    font-size: clamp(34px, 9vw, 44px) !important;
  }
  .proof-actions-soft {
    align-items: flex-start !important;
  }
  .proof-text-link {
    min-height: 34px !important;
  }
  .proof-card-grid-soft .proof-card:not(.proof-photo) {
    min-height: 0 !important;
  }
}

/* === Fix 35: make products cards wider and images larger === */
.products-static.food-grid-clean {
  max-width: 1120px !important;
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 170px)) !important;
  justify-content: center !important;
  gap: 12px !important;
  overflow: visible !important;
  margin-inline: auto !important;
}
.products-static.food-grid-clean .food-card {
  width: 170px !important;
  min-height: 305px !important;
  padding: 12px 12px 18px !important;
  border-radius: 14px !important;
}
.products-static.food-grid-clean .food-visual {
  width: 100% !important;
  height: 145px !important;
  border-radius: 10px !important;
  background-size: cover !important;
  background-position: center !important;
}
.products-static.food-grid-clean .food-card span {
  font-size: 10px !important;
  padding: 6px 9px !important;
  margin-top: 12px !important;
  margin-bottom: 10px !important;
  line-height: 1 !important;
}
.products-static.food-grid-clean .food-card h3,
.products-static.food-grid-clean .food-card p {
  font-size: 15px !important;
  line-height: 1.15 !important;
}
.products-static.food-grid-clean .food-card h3 {
  margin-top: 0 !important;
}
@media (max-width: 1180px) {
  .products-static.food-grid-clean {
    grid-template-columns: repeat(3, minmax(0, 170px)) !important;
  }
}
@media (max-width: 680px) {
  .products-static.food-grid-clean {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding-bottom: 8px !important;
  }
  .products-static.food-grid-clean .food-card {
    flex: 0 0 170px !important;
    min-width: 170px !important;
    scroll-snap-align: start !important;
  }
}


/* === Fix 39: make volume block about the selection service === */
.process-help-head h2 {
  max-width: 900px !important;
}
.process-help-head p {
  max-width: 760px !important;
  margin: 14px 0 0 !important;
  color: #6a514b !important;
  font-size: clamp(18px, 1.35vw, 21px) !important;
  line-height: 1.45 !important;
  font-weight: 760 !important;
}
.process-grid-clean .process-card h3 {
  line-height: 1.08 !important;
}
.process-cta-clean .btn {
  white-space: nowrap !important;
}
@media (max-width: 900px) {
  .process-help-head p {
    font-size: 16px !important;
  }
  .process-cta-clean .btn {
    white-space: normal !important;
  }
}


/* === Fix 40: rebuild scenario selection block into clean light cards === */
.use-head-cleaner {
  max-width: 980px !important;
}
.use-head-cleaner h2 {
  max-width: 920px !important;
}
.use-head-cleaner p {
  max-width: 880px !important;
  color: #6b544d !important;
  font-size: clamp(17px, 1.35vw, 20px) !important;
  line-height: 1.46 !important;
  margin: 0 !important;
}
.use-grid-soft {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
}
.use-card-soft {
  min-height: 238px !important;
  padding: 22px 18px 20px !important;
  border-radius: 20px !important;
  background: linear-gradient(180deg, rgba(255,249,241,.98), rgba(245,232,212,.94)) !important;
  border: 1px solid rgba(140, 28, 19, .10) !important;
  box-shadow: 0 16px 36px rgba(43, 29, 26, .08) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
.use-card-soft-num {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;
  background: #a72618 !important;
  color: #fff8ed !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
}
.use-card-soft h3 {
  margin: 0 !important;
  color: #17100f !important;
  font-size: clamp(22px, 1.8vw, 28px) !important;
  line-height: 1.06 !important;
  letter-spacing: -.03em !important;
}
.use-card-soft p {
  margin: 0 !important;
  color: #614b45 !important;
  font-size: 15px !important;
  line-height: 1.44 !important;
  font-weight: 650 !important;
}
.use-note-bar {
  margin-top: 18px !important;
  padding: 16px 18px !important;
  border-radius: 18px !important;
  background: #170f0f !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  box-shadow: 0 18px 38px rgba(23, 16, 15, .16) !important;
}
.use-note-bar p {
  margin: 0 !important;
  color: #fff1df !important;
  font-size: 16px !important;
  line-height: 1.42 !important;
  font-weight: 780 !important;
}
.use-note-bar .btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}
@media (max-width: 1320px) {
  .use-grid-soft {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 900px) {
  .use-grid-soft {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .use-note-bar {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}
@media (max-width: 620px) {
  .use-grid-soft {
    grid-template-columns: 1fr !important;
  }
  .use-card-soft {
    min-height: 0 !important;
    padding: 18px 16px !important;
    border-radius: 18px !important;
  }
  .use-card-soft h3 {
    font-size: 22px !important;
  }
  .use-card-soft p {
    font-size: 14px !important;
  }
  .use-note-bar {
    padding: 14px 16px !important;
    border-radius: 16px !important;
  }
  .use-note-bar p {
    font-size: 14px !important;
  }
  .use-note-bar .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* === Fix 44: add step infographic to scenario block === */
.use-head-cleaner h2 {
  max-width: 980px !important;
}
.use-head-cleaner p {
  max-width: 760px !important;
}
.use-steps-info {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr) 32px minmax(0, 1fr) 32px minmax(0, 1.18fr) !important;
  gap: 10px !important;
  align-items: stretch !important;
  margin: 22px 0 18px !important;
}
.use-step-card {
  min-height: 150px !important;
  padding: 18px 16px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(255,249,241,.98), rgba(246,234,215,.94)) !important;
  border: 1px solid rgba(140, 28, 19, .10) !important;
  box-shadow: 0 12px 28px rgba(43, 29, 26, .06) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
.use-step-num {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  min-width: 42px !important;
  height: 34px !important;
  padding: 0 10px !important;
  border-radius: 12px !important;
  background: #a72618 !important;
  color: #fff8ed !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
}
.use-step-card h3 {
  margin: 0 !important;
  color: #17100f !important;
  font-size: 26px !important;
  line-height: 1.04 !important;
  letter-spacing: -.03em !important;
}
.use-step-card p {
  margin: 0 !important;
  color: #634d46 !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
  font-weight: 700 !important;
}
.use-step-arrow {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #8c1c13 !important;
  font-size: 26px !important;
  font-weight: 900 !important;
}
.use-step-card-result {
  background: linear-gradient(135deg, #1a1010 0%, #2b1110 100%) !important;
  border-color: rgba(140, 28, 19, .18) !important;
  box-shadow: 0 16px 34px rgba(23, 16, 15, .16) !important;
}
.use-step-card-result h3,
.use-step-card-result p {
  color: #fff2df !important;
}
.use-step-card-result .use-step-num {
  background: #c5301d !important;
}
@media (max-width: 1200px) {
  .use-steps-info {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .use-step-arrow {
    display: none !important;
  }
}
@media (max-width: 620px) {
  .use-steps-info {
    grid-template-columns: 1fr !important;
    margin: 18px 0 16px !important;
  }
  .use-step-card {
    min-height: 0 !important;
    padding: 16px 14px !important;
    border-radius: 16px !important;
  }
  .use-step-card h3 {
    font-size: 22px !important;
  }
  .use-step-card p {
    font-size: 13px !important;
  }
}


/* === Fix 45: restore hero title and move scenario CTA closer in note bar === */
.use-note-bar {
  justify-content: flex-start !important;
  gap: 18px !important;
}
.use-note-bar p {
  flex: 0 1 auto !important;
  max-width: 760px !important;
}
.use-note-bar .btn {
  margin-left: 8px !important;
}
@media (max-width: 900px) {
  .use-note-bar .btn {
    margin-left: 0 !important;
  }
}


/* === Fix 46: restore CTA button position and move the black note bar closer to cards === */
.use-note-bar {
  margin-top: 8px !important;
  justify-content: space-between !important;
  gap: 16px !important;
}
.use-note-bar p {
  flex: initial !important;
  max-width: none !important;
}
.use-note-bar .btn {
  margin-left: 0 !important;
}
@media (max-width: 900px) {
  .use-note-bar {
    margin-top: 8px !important;
  }
}


/* === Fix 47: raise scenario CTA strip and make model block a 5-visible auto carousel === */
.use-note-bar {
  position: relative !important;
  z-index: 4 !important;
  margin-top: -64px !important;
}
@media (max-width: 1100px) {
  .use-note-bar {
    margin-top: -28px !important;
  }
}
@media (max-width: 900px) {
  .use-note-bar {
    margin-top: 10px !important;
  }
}

.lineup-carousel {
  overflow: hidden !important;
  padding: 4px 0 22px !important;
}
.lineup {
  display: flex !important;
  gap: 14px !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none !important;
  padding: 4px 2px 14px !important;
}
.lineup::-webkit-scrollbar {
  display: none !important;
}
.lineup-card {
  flex: 0 0 calc((100% - 56px) / 5) !important;
  min-height: 368px !important;
  padding: 14px !important;
  scroll-snap-align: start !important;
  display: flex !important;
  flex-direction: column !important;
}
.lineup-card img {
  height: 148px !important;
  object-fit: contain !important;
  margin-bottom: 12px !important;
}
.lineup-card .model-title {
  margin: 6px 0 10px !important;
}
.lineup-card p {
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin-top: 0 !important;
  color: #5f4945 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  flex: 1 1 auto !important;
}
.model-carousel-ui,
.lineup-carousel .carousel-ui,
.lineup-card .model-card-btn {
  display: none !important;
}
@media (max-width: 1100px) {
  .lineup-card {
    flex-basis: calc((100% - 28px) / 3) !important;
  }
}
@media (max-width: 760px) {
  .lineup-card {
    flex-basis: 82% !important;
    min-height: 344px !important;
  }
}


/* === Fix 48: move scenario note bar much closer and speed up model carousel === */
.use-note-bar {
  margin-top: -118px !important;
}
@media (max-width: 1300px) {
  .use-note-bar {
    margin-top: -98px !important;
  }
}
@media (max-width: 1100px) {
  .use-note-bar {
    margin-top: -52px !important;
  }
}
@media (max-width: 900px) {
  .use-note-bar {
    margin-top: 10px !important;
  }
}


/* === Fix 49: place scenario note bar in highlighted gap and make model carousel nearly continuous === */
.use-note-bar {
  margin-top: -188px !important;
}
@media (max-width: 1400px) {
  .use-note-bar {
    margin-top: -168px !important;
  }
}
@media (max-width: 1200px) {
  .use-note-bar {
    margin-top: -118px !important;
  }
}
@media (max-width: 900px) {
  .use-note-bar {
    margin-top: 12px !important;
  }
}


/* === Fix 50: short model descriptions and continuous model movement === */
.lineup {
  scroll-snap-type: none !important;
}
.lineup-card {
  scroll-snap-align: none !important;
}
.lineup-card p {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  font-size: 13px !important;
  line-height: 1.28 !important;
}

/* === Fix 52: roof labels back, working model modal and visible continuous carousel === */
.lineup-carousel {
  overflow: hidden !important;
}
.lineup {
  width: max-content !important;
  min-width: 100% !important;
  overflow: visible !important;
}
.lineup.is-marquee {
  animation: lineupMarquee 22s linear infinite;
  will-change: transform;
}
.lineup.is-paused {
  animation-play-state: paused;
}
@keyframes lineupMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-1 * var(--lineup-shift, 0px))); }
}
.lineup-card {
  position: relative;
  cursor: pointer;
}
.lineup-card .roof-badge {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin: 0 0 8px !important;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: #e9d5cb !important;
  color: #8f2416 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .04em;
  text-transform: uppercase;
}
@media (max-width: 760px) {
  .lineup {
    width: auto !important;
    min-width: 0 !important;
  }
  .lineup.is-marquee {
    animation: none !important;
    transform: none !important;
  }
}

/* === Fix 53: restore normal model card size while keeping roof badges, modal clicks and carousel === */
.lineup-carousel {
  overflow: hidden !important;
  padding: 4px 0 28px !important;
}

.lineup-carousel .lineup {
  display: flex !important;
  align-items: stretch !important;
  gap: 14px !important;
  width: max-content !important;
  min-width: auto !important;
  overflow: visible !important;
  padding: 4px 2px 14px !important;
  scroll-snap-type: none !important;
}

.lineup-carousel .lineup-card {
  flex: 0 0 222px !important;
  width: 222px !important;
  max-width: 222px !important;
  min-width: 222px !important;
  min-height: 368px !important;
  padding: 14px !important;
  border-radius: 14px !important;
  scroll-snap-align: none !important;
}

.lineup-carousel .lineup-card img {
  width: 100% !important;
  height: 132px !important;
  object-fit: contain !important;
  margin-bottom: 10px !important;
}

.lineup-carousel .lineup-card .roof-badge {
  display: inline-flex !important;
  margin: 0 0 8px !important;
}

.lineup-carousel .lineup-card .model-title {
  margin: 6px 0 10px !important;
}

.lineup-carousel .lineup-card p {
  -webkit-line-clamp: 2 !important;
  font-size: 13px !important;
  line-height: 1.28 !important;
}

@media (max-width: 1100px) {
  .lineup-carousel .lineup-card {
    flex-basis: 220px !important;
    width: 220px !important;
    max-width: 220px !important;
    min-width: 220px !important;
  }
}

@media (max-width: 760px) {
  .lineup-carousel .lineup {
    width: auto !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
  }
  .lineup-carousel .lineup.is-marquee {
    animation: none !important;
    transform: none !important;
  }
  .lineup-carousel .lineup-card {
    flex-basis: 82% !important;
    width: 82% !important;
    max-width: 82% !important;
    min-width: 82% !important;
    scroll-snap-align: center !important;
  }
}

/* === Fix 55: real compact mobile version only — fewer words, more product, less scrolling === */
@media (max-width: 760px) {
  html { scroll-padding-top: 66px; }

  .theme-traeger .wrap {
    width: calc(100% - 24px) !important;
  }

  .theme-traeger .section {
    padding-block: 28px !important;
  }

  .topbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 90 !important;
    background: rgba(231, 215, 193, .92) !important;
    backdrop-filter: blur(14px) !important;
  }

  .nav {
    min-height: 58px !important;
    gap: 10px !important;
  }

  .brand-logo {
    width: 42px !important;
    height: 42px !important;
  }

  .brand-word strong {
    font-size: 14px !important;
    line-height: 1 !important;
  }

  .brand-word small,
  .links,
  .nav-actions .btn.primary {
    display: none !important;
  }

  .theme-traeger .nav-actions .mobile-model-link {
    display: inline-flex !important;
    min-height: 38px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
  }

  .theme-traeger .hero {
    min-height: 0 !important;
    padding: 16px 0 22px !important;
  }

  .theme-traeger .hero-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  .theme-traeger h1,
  h1[data-page-h1] {
    max-width: 10.8em !important;
    margin: 0 0 10px !important;
    font-size: clamp(32px, 9.2vw, 42px) !important;
    line-height: .94 !important;
    letter-spacing: -.055em !important;
  }

  .theme-traeger .lead,
  p[data-page-lead] {
    max-width: 31ch !important;
    margin: 0 0 12px !important;
    font-size: 15px !important;
    line-height: 1.36 !important;
  }

  .metrics,
  .hero-assurance,
  .theme-traeger .hero .floating-card,
  .hero-smoker-glow,
  .product-halo {
    display: none !important;
  }

  .theme-traeger .hero-modes.mode-panel,
  .theme-traeger .hero-modes,
  .hero-modes-simple {
    margin: 10px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mode-panel-head,
  .mode-panel-head-simple {
    margin: 0 0 8px !important;
  }

  .mode-panel-head strong,
  .mode-panel-head-simple strong {
    font-size: 12px !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  .theme-traeger .mode-grid,
  .mode-grid-simple {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 0 12px 2px !important;
    margin-inline: -12px !important;
  }

  .theme-traeger .mode-grid::-webkit-scrollbar,
  .mode-grid-simple::-webkit-scrollbar {
    display: none !important;
  }

  .theme-traeger .mode-card,
  .mode-card-simple {
    flex: 0 0 auto !important;
    min-height: 36px !important;
    min-width: auto !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    scroll-snap-align: start !important;
    background: rgba(255, 248, 237, .82) !important;
    border: 1px solid rgba(140, 28, 19, .16) !important;
    box-shadow: none !important;
  }

  .theme-traeger .mode-card::before,
  .mode-card-simple::before {
    display: none !important;
  }

  .theme-traeger .mode-card b,
  .mode-card-simple b {
    font-size: 12.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
    margin-top: 13px !important;
  }

  .hero-actions .btn,
  .btn.big {
    min-height: 46px !important;
    padding: 0 12px !important;
    border-radius: 15px !important;
    font-size: 13px !important;
    line-height: 1.05 !important;
  }

  .visual.traeger-visual,
  .traeger-visual {
    min-height: 218px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .smoker-wrap {
    min-height: 218px !important;
    display: grid !important;
    place-items: center !important;
  }

  .traeger-product {
    width: min(82vw, 292px) !important;
    max-height: 220px !important;
    object-fit: contain !important;
    transform: none !important;
    animation: none !important;
  }

  .factory-proof-section {
    padding-top: 22px !important;
  }

  .factory-proof-card,
  .factory-proof-card-direct {
    padding: 18px !important;
    border-radius: 22px !important;
  }

  .factory-proof-copy h2 {
    max-width: 15em !important;
    font-size: 24px !important;
    line-height: 1 !important;
    letter-spacing: -.035em !important;
  }

  .factory-proof-copy p,
  .factory-direct-note {
    display: none !important;
  }

  .factory-direct-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }

  .factory-direct-card {
    min-height: 0 !important;
    padding: 12px !important;
    border-radius: 14px !important;
  }

  .factory-direct-num,
  .factory-direct-card p {
    display: none !important;
  }

  .factory-direct-card strong {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  /* On mobile this duplicated proof block becomes a text wall, so it is removed. */
  .proof-section,
  .process-section {
    display: none !important;
  }

  .section-head {
    margin-bottom: 14px !important;
  }

  .section-head h2,
  .lineup-head-clean h2,
  .products-head-clean h2,
  .reviews-head-clean h2,
  .map-review-head h3,
  .faq-layout h2,
  .contacts-grid h2 {
    font-size: 25px !important;
    line-height: 1 !important;
    letter-spacing: -.035em !important;
  }

  .eyebrow {
    margin-bottom: 7px !important;
    font-size: 11px !important;
  }

  .lineup-section {
    padding-block: 30px !important;
  }

  .lineup-carousel {
    overflow: visible !important;
    padding: 0 !important;
  }

  .lineup-carousel .lineup {
    width: auto !important;
    min-width: 0 !important;
    gap: 10px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding: 2px 12px 12px !important;
    margin-inline: -12px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .lineup-carousel .lineup::-webkit-scrollbar {
    display: none !important;
  }

  .lineup-carousel .lineup.is-marquee {
    animation: none !important;
    transform: none !important;
  }

  .lineup-carousel .lineup-card {
    flex: 0 0 74vw !important;
    width: 74vw !important;
    min-width: 74vw !important;
    max-width: 74vw !important;
    min-height: 248px !important;
    padding: 12px !important;
    border-radius: 18px !important;
    scroll-snap-align: center !important;
  }

  .lineup-carousel .lineup-card img {
    height: 138px !important;
    margin-bottom: 10px !important;
  }

  .lineup-carousel .lineup-card p {
    display: none !important;
  }

  .lineup-carousel .lineup-card .roof-badge {
    min-height: 24px !important;
    margin-bottom: 6px !important;
    font-size: 10px !important;
  }

  .lineup-card .model-title {
    gap: 6px !important;
    margin: 0 !important;
  }

  .lineup-card .model-volume {
    font-size: 24px !important;
    line-height: 1 !important;
  }

  .lineup-card .model-load {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .products-section {
    padding-block: 28px !important;
  }

  .products-head-clean {
    align-items: flex-start !important;
  }

  .products-head-clean > p,
  .product-mobile-dots {
    display: none !important;
  }

  .products-static.food-grid-clean {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    scroll-snap-type: none !important;
  }

  .products-static.food-grid-clean .food-card {
    flex: initial !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 126px !important;
    padding: 8px !important;
    border-radius: 16px !important;
    scroll-snap-align: none !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 76px !important;
    margin: 0 0 7px !important;
    border-radius: 12px !important;
  }

  .products-static.food-grid-clean .food-card span {
    min-height: 24px !important;
    width: fit-content !important;
    padding: 0 8px !important;
    font-size: 10px !important;
    letter-spacing: .05em !important;
  }

  .products-static.food-grid-clean .food-card h3,
  .products-static.food-grid-clean .food-card p {
    display: none !important;
  }

  .reviews-section {
    padding-block: 30px !important;
  }

  .review-template-good,
  .map-review-grid {
    display: flex !important;
    gap: 10px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    margin-inline: -12px !important;
    padding: 0 12px 10px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .review-template-good::-webkit-scrollbar,
  .map-review-grid::-webkit-scrollbar {
    display: none !important;
  }

  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    flex: 0 0 82vw !important;
    min-width: 82vw !important;
    border-radius: 18px !important;
    scroll-snap-align: center !important;
  }

  .review-copy {
    padding: 12px !important;
  }

  .review-copy p {
    display: none !important;
  }

  .review-person strong,
  .review-copy time {
    font-size: 12px !important;
  }

  .review-dots {
    margin-top: 6px !important;
  }

  .map-review-block {
    margin-top: 22px !important;
  }

  .use-section {
    padding-block: 30px !important;
  }

  .use-head-cleaner,
  .use-head {
    margin-bottom: 14px !important;
  }

  .use-head h2,
  .use-head p {
    display: none !important;
  }

  .use-head::after {
    content: "Подберём модель без переплаты";
    display: block !important;
    max-width: 11em !important;
    color: #17100f !important;
    font-size: 28px !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    font-weight: 950 !important;
  }

  .use-steps-info {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 14px 0 12px !important;
  }

  .use-step-arrow {
    display: none !important;
  }

  .use-step-card {
    min-height: 82px !important;
    padding: 12px !important;
    border-radius: 16px !important;
    gap: 8px !important;
  }

  .use-step-num {
    min-width: 34px !important;
    height: 28px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
  }

  .use-step-card h3 {
    font-size: 18px !important;
    line-height: 1 !important;
  }

  .use-step-card p {
    display: none !important;
  }

  .use-grid-soft {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding: 0 12px 8px !important;
    margin-inline: -12px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .use-grid-soft::-webkit-scrollbar {
    display: none !important;
  }

  .use-card-soft {
    flex: 0 0 auto !important;
    min-width: auto !important;
    width: auto !important;
    min-height: 42px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    scroll-snap-align: start !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .use-card-soft-num,
  .use-card-soft p {
    display: none !important;
  }

  .use-card-soft h3 {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .use-note-bar {
    margin-top: 8px !important;
    padding: 14px !important;
    border-radius: 18px !important;
    display: grid !important;
    gap: 10px !important;
  }

  .use-note-bar p {
    display: none !important;
  }

  .use-note-bar::before {
    content: "Ответьте на 3 вопроса — покажем 1–2 подходящие модели.";
    color: #fff8ed !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
  }

  .use-note-bar .btn {
    width: 100% !important;
    min-height: 46px !important;
    border-radius: 14px !important;
    font-size: 13px !important;
  }

  .flavor-section {
    padding-block: 30px !important;
  }

  .flavor-stage-orbit,
  .flavor-stage-support {
    min-height: 0 !important;
    padding: 18px !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, #17100f, #3a1612) !important;
  }

  .flavor-stage-orbit .launch-copy,
  .flavor-copy {
    width: 100% !important;
    padding: 0 !important;
  }

  .flavor-copy h2,
  .launch-copy h2 {
    font-size: 25px !important;
    line-height: 1 !important;
    letter-spacing: -.035em !important;
  }

  .flavor-copy p,
  .launch-copy p,
  .launch-carousel-window,
  .meat-orbit,
  .product-orbit {
    display: none !important;
  }

  .startup-right-carousel {
    width: 100% !important;
    margin-top: 12px !important;
  }

  .launch-pills-corner {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 8px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    padding: 0 18px 2px !important;
    margin-inline: -18px !important;
    scrollbar-width: none !important;
  }

  .launch-pills-corner::-webkit-scrollbar {
    display: none !important;
  }

  .launch-pills-corner span {
    flex: 0 0 auto !important;
    min-height: 40px !important;
    padding: 0 13px !important;
    border-radius: 999px !important;
    scroll-snap-align: start !important;
  }

  .launch-pills-corner strong {
    font-size: 13px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .launch-pills-corner small {
    display: none !important;
  }

  .chat-promo-section {
    padding-block: 28px !important;
  }

  .chat-promo,
  .chat-promo-clean {
    display: block !important;
    padding: 18px !important;
    border-radius: 22px !important;
  }

  .chat-promo-copy h2 {
    font-size: 25px !important;
    line-height: 1 !important;
    letter-spacing: -.035em !important;
  }

  .chat-promo-copy p,
  .chat-promo-demo,
  .chat-promo-copy .btn + .btn {
    display: none !important;
  }

  .chat-promo-copy .btn {
    width: 100% !important;
    margin-top: 12px !important;
    min-height: 48px !important;
  }

  .faq-section {
    padding-block: 30px !important;
  }

  .faq-layout {
    display: block !important;
  }

  .faq-layout > div:first-child p,
  .faq-layout > div:first-child .btn {
    display: none !important;
  }

  .faq-list {
    margin-top: 14px !important;
    gap: 8px !important;
  }

  .faq-item {
    border-radius: 15px !important;
  }

  .faq-item summary {
    min-height: 48px !important;
    padding: 12px 40px 12px 13px !important;
    font-size: 14px !important;
    line-height: 1.22 !important;
  }

  .faq-item p {
    padding: 0 13px 13px !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
  }

  .contacts-section {
    padding-block: 30px !important;
  }

  .contacts-grid {
    display: block !important;
  }

  .contacts-grid > div:first-child p {
    display: none !important;
  }

  .contact-card {
    margin-top: 14px !important;
    padding: 15px !important;
    border-radius: 20px !important;
  }

  .contact-phone {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    border-radius: 14px !important;
    background: #fff8ed !important;
    border: 1px solid rgba(140, 28, 19, .16) !important;
  }

  .contact-card strong {
    font-size: 20px !important;
    line-height: 1 !important;
  }

  .contact-card span,
  .contact-note {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  .social-links {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 8px !important;
  }

  .social-pill {
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    border-radius: 14px !important;
  }

  .site-footer {
    padding-bottom: 88px !important;
  }

  .site-footer p {
    display: none !important;
  }

  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .sticky-chat {
    left: 12px !important;
    right: 12px !important;
    bottom: max(10px, env(safe-area-inset-bottom)) !important;
    width: auto !important;
    max-width: none !important;
    z-index: 120 !important;
  }

  .sticky-chat.is-collapsed {
    width: auto !important;
  }

  .sticky-chat.is-collapsed .chat-launch {
    display: flex !important;
    width: 100% !important;
    min-height: 56px !important;
    justify-content: center !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #9b2115, #c7331c) !important;
    color: #fff8ed !important;
    box-shadow: 0 16px 36px rgba(86, 20, 14, .26) !important;
  }

  .sticky-chat.is-collapsed .chat-dot,
  .sticky-chat.is-collapsed .chat-launch small {
    display: none !important;
  }

  .sticky-chat.is-collapsed .chat-launch strong {
    font-size: 0 !important;
    line-height: 1 !important;
  }

  .sticky-chat.is-collapsed .chat-launch strong::after {
    content: "Подобрать модель";
    font-size: 15px !important;
  }

  .sticky-chat:not(.is-collapsed) {
    top: auto !important;
    bottom: 10px !important;
  }

  .sticky-chat:not(.is-collapsed) .chat-panel {
    max-height: min(76vh, 560px) !important;
    border-radius: 20px !important;
  }

  .chat-head {
    min-height: 52px !important;
  }

  .chat-body {
    max-height: 52vh !important;
  }
}

@media (max-width: 430px) {
  .hero-actions {
    grid-template-columns: 1fr !important;
  }

  .lineup-carousel .lineup-card,
  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    flex-basis: 82vw !important;
    width: 82vw !important;
    min-width: 82vw !important;
    max-width: 82vw !important;
  }

  .products-static.food-grid-clean {
    gap: 7px !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 118px !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 70px !important;
  }

  .use-step-card h3 {
    font-size: 17px !important;
  }

  .social-links {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}


/* === Fix 56: mobile readability, visible swipe hints, no text overlap === */
.mobile-scroll-hint { display: none; }

@media (max-width: 760px) {
  html,
  body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .theme-traeger * {
    min-width: 0;
  }

  .theme-traeger h1,
  .theme-traeger h2,
  .theme-traeger h3,
  .theme-traeger p,
  .theme-traeger a,
  .theme-traeger button,
  .theme-traeger span,
  .theme-traeger strong,
  .theme-traeger small {
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .theme-traeger .wrap {
    width: calc(100% - 28px) !important;
  }

  .theme-traeger .section {
    padding-block: 24px !important;
  }

  .section-head h2,
  .lineup-head-clean h2,
  .products-head-clean h2,
  .reviews-head-clean h2,
  .map-review-head h3,
  .faq-layout h2,
  .contacts-grid h2 {
    max-width: 13em !important;
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  .products-head-clean h2,
  .reviews-head-clean h2,
  .map-review-head h3 {
    font-size: 0 !important;
  }

  .products-head-clean h2::after {
    content: "Что можно готовить";
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  .reviews-head-clean h2::after {
    content: "Видеоотзывы";
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  .map-review-head h3::after {
    content: "Отзывы на картах";
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  .mobile-scroll-hint {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    width: fit-content !important;
    max-width: 100% !important;
    min-height: 26px !important;
    margin: 8px auto 0 !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: rgba(255, 248, 237, .72) !important;
    border: 1px solid rgba(140, 28, 19, .16) !important;
    color: #7b261c !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .02em !important;
  }

  .mobile-scroll-hint i {
    display: block !important;
    width: 5px !important;
    height: 5px !important;
    border-radius: 999px !important;
    background: rgba(140, 28, 19, .32) !important;
  }

  .mobile-scroll-hint i:first-of-type {
    width: 16px !important;
    background: #a42418 !important;
  }

  .mobile-scroll-hint-muted {
    margin-top: 0 !important;
    background: rgba(255, 248, 237, .48) !important;
  }

  .lineup-section {
    padding-block: 26px !important;
  }

  .lineup-carousel {
    overflow: visible !important;
    position: relative !important;
  }

  .lineup-carousel::after,
  .review-template-good::after,
  .map-review-grid::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: -14px !important;
    bottom: 0 !important;
    width: 42px !important;
    pointer-events: none !important;
    background: linear-gradient(90deg, rgba(231, 215, 193, 0), rgba(231, 215, 193, .92)) !important;
    z-index: 2 !important;
  }

  .lineup-carousel .lineup {
    gap: 10px !important;
    padding: 2px 14px 10px !important;
    margin-inline: -14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-inline: 14px !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .lineup-carousel .lineup-card {
    flex: 0 0 78vw !important;
    width: 78vw !important;
    min-width: 78vw !important;
    max-width: 78vw !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 12px 12px 14px !important;
    border-radius: 18px !important;
    scroll-snap-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    overflow: hidden !important;
  }

  .lineup-carousel .lineup-card img {
    width: 100% !important;
    height: 124px !important;
    max-height: 124px !important;
    object-fit: contain !important;
    margin: 0 !important;
  }

  .lineup-carousel .lineup-card .roof-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    max-width: 100% !important;
    min-height: 23px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    font-size: 9.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .lineup-card .model-title,
  .lineup-carousel .lineup-card .model-title {
    display: grid !important;
    gap: 4px !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    text-align: center !important;
    overflow: visible !important;
  }

  .lineup-card .model-volume,
  .lineup-carousel .lineup-card .model-volume {
    font-size: 24px !important;
    line-height: 1 !important;
    letter-spacing: -.02em !important;
    white-space: nowrap !important;
  }

  .lineup-card .model-load,
  .lineup-carousel .lineup-card .model-load {
    max-width: 22ch !important;
    margin-inline: auto !important;
    font-size: 12px !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .lineup-carousel .lineup-card p,
  .lineup-card p {
    display: none !important;
  }

  .review-template-good,
  .map-review-grid {
    position: relative !important;
    gap: 10px !important;
    padding: 0 14px 10px !important;
    margin-inline: -14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-inline: 14px !important;
  }

  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    flex: 0 0 82vw !important;
    width: 82vw !important;
    min-width: 82vw !important;
    max-width: 82vw !important;
    overflow: hidden !important;
  }

  .review-dots,
  .map-review-dots,
  .product-mobile-dots {
    display: flex !important;
    justify-content: center !important;
    gap: 6px !important;
    margin: 8px auto 6px !important;
  }

  .review-dots span,
  .map-review-dots span,
  .product-mobile-dots span {
    width: 6px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: rgba(140, 28, 19, .26) !important;
  }

  .review-dots span.is-active,
  .map-review-dots span.is-active,
  .product-mobile-dots span.is-active {
    width: 20px !important;
    background: #a42418 !important;
  }

  .use-section {
    padding-block: 26px !important;
  }

  .use-head::after {
    max-width: 10.5em !important;
    content: "Подберём модель без переплаты" !important;
    font-size: 24px !important;
    line-height: 1.02 !important;
  }

  .use-steps-info {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    margin: 12px 0 10px !important;
  }

  .use-step-card {
    min-height: 0 !important;
    height: auto !important;
    padding: 10px 12px !important;
    border-radius: 15px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    overflow: hidden !important;
  }

  .use-step-card h3 {
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.08 !important;
    white-space: normal !important;
  }

  .use-step-card-result h3 {
    font-size: 0 !important;
  }

  .use-step-card-result h3::after {
    content: "1–2 модели" !important;
    font-size: 16px !important;
    line-height: 1.08 !important;
  }

  .use-step-card p {
    display: none !important;
  }

  .use-step-num {
    flex: 0 0 auto !important;
    min-width: 34px !important;
    height: 28px !important;
    border-radius: 10px !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
  }

  .use-grid-soft {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .use-card-soft {
    width: auto !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 9px 10px !important;
    border-radius: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    overflow: hidden !important;
  }

  .use-card-soft h3 {
    font-size: 12.5px !important;
    line-height: 1.08 !important;
    white-space: normal !important;
  }

  .use-note-bar {
    margin-top: 10px !important;
    padding: 12px !important;
    border-radius: 17px !important;
  }

  .use-note-bar::before {
    content: "Подберём 1–2 модели без переплаты." !important;
    font-size: 12.5px !important;
    line-height: 1.25 !important;
  }

  .use-note-bar .btn {
    min-height: 44px !important;
    font-size: 12.5px !important;
  }

  .launch-pills-corner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    overflow: visible !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    scroll-snap-type: none !important;
  }

  .launch-pills-corner span {
    width: 100% !important;
    min-height: 38px !important;
    padding: 0 12px !important;
    justify-content: center !important;
  }

  .launch-pills-corner strong {
    font-size: 12.5px !important;
  }

  .chat-promo-copy h2,
  .flavor-copy h2,
  .launch-copy h2 {
    max-width: 13em !important;
    font-size: 22px !important;
    line-height: 1.05 !important;
  }

  .faq-item summary {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 430px) {
  .theme-traeger h1,
  h1[data-page-h1] {
    max-width: 11em !important;
    font-size: 31px !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
  }

  .theme-traeger .lead,
  p[data-page-lead] {
    max-width: 29ch !important;
    font-size: 14px !important;
    line-height: 1.32 !important;
  }

  .hero-actions {
    grid-template-columns: 1fr !important;
  }

  .lineup-carousel .lineup-card,
  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    flex-basis: 84vw !important;
    width: 84vw !important;
    min-width: 84vw !important;
    max-width: 84vw !important;
  }

  .lineup-carousel .lineup-card img {
    height: 118px !important;
    max-height: 118px !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 112px !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 66px !important;
  }

  .use-grid-soft {
    grid-template-columns: 1fr 1fr !important;
  }

  .use-card-soft h3 {
    font-size: 12px !important;
  }
}

@media (max-width: 760px) {
  /* Products are shown as a compact grid on mobile, so no slider dots here. */
  .product-mobile-dots {
    display: none !important;
  }
}

/* === Fix 57: mobile design cleanup after visual QA === */
@media (max-width: 760px) {
  /* Do not let section titles collapse into one-letter columns. */
  .products-head-clean,
  .reviews-head-clean,
  .map-review-head {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 14px !important;
  }

  .products-head-clean > div,
  .reviews-head-clean > div,
  .map-review-head > div {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .products-head-clean h2,
  .reviews-head-clean h2,
  .map-review-head h3 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .products-head-clean h2::after,
  .reviews-head-clean h2::after,
  .map-review-head h3::after {
    display: block !important;
    width: 100% !important;
    max-width: min(100%, 12.5em) !important;
    color: #17100f !important;
    font-size: clamp(27px, 8.2vw, 34px) !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .products-head-clean h2::after { content: "Что можно готовить" !important; }
  .reviews-head-clean h2::after { content: "Видеоотзывы" !important; }
  .map-review-head h3::after { content: "Отзывы на картах" !important; }

  /* Keep product and review sections compact after fixing the title collapse. */
  .products-section,
  .reviews-section {
    overflow: hidden !important;
    padding-block: 26px !important;
  }

  .products-static.food-grid-clean {
    align-items: stretch !important;
    margin-top: 0 !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 128px !important;
    height: auto !important;
    overflow: hidden !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 78px !important;
  }

  .products-static.food-grid-clean .food-card span {
    max-width: 100% !important;
    line-height: 1 !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    min-height: 0 !important;
  }

  .review-template-good .review-video {
    height: 168px !important;
    min-height: 168px !important;
    overflow: hidden !important;
  }

  .review-template-good .review-copy,
  .map-review-grid .review-copy {
    min-height: 120px !important;
  }

  .map-review-block,
  .restored-map-reviews {
    margin-top: 24px !important;
  }

  /* The wide sticky CTA was covering headings, cards and FAQ answers on real phones. */
  .sticky-chat.is-collapsed {
    display: none !important;
  }

  .sticky-chat:not(.is-collapsed) {
    display: block !important;
    left: 10px !important;
    right: 10px !important;
    bottom: max(10px, env(safe-area-inset-bottom)) !important;
    width: auto !important;
    z-index: 200 !important;
  }

  .sticky-chat:not(.is-collapsed) .chat-panel {
    max-height: min(78vh, 590px) !important;
  }

  .site-footer {
    padding-bottom: 34px !important;
  }

  /* Safer spacing for blocks that had CTA/buttons visually touching the next section. */
  .factory-proof-section,
  .lineup-section,
  .products-section,
  .reviews-section,
  .use-section,
  .support-section,
  .faq-section,
  .contact-section {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .support-card,
  .use-note-bar,
  .faq-card,
  .contact-panel {
    overflow: hidden !important;
  }

  .support-card .btn,
  .use-note-bar .btn,
  .chat-promo-card .btn,
  .process-cta .btn,
  .factory-proof-card .btn,
  .factory-proof-card-direct .btn,
  .hero-actions .btn {
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .faq-item[open] {
    padding-bottom: 6px !important;
  }

  .faq-answer,
  .faq-item p {
    font-size: 14px !important;
    line-height: 1.42 !important;
  }
}

@media (max-width: 430px) {
  .products-head-clean h2::after,
  .reviews-head-clean h2::after,
  .map-review-head h3::after {
    font-size: clamp(28px, 8.6vw, 33px) !important;
    max-width: 11.5em !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 124px !important;
    padding: 8px !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 72px !important;
  }

  .review-template-good .review-video {
    height: 156px !important;
    min-height: 156px !important;
  }
}

/* === Fix 58: final mobile QA cleanup — no overlaps, no horizontal page scroll, shorter blocks === */
@media (max-width: 760px) {
  html, body, .shell {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
  }

  .theme-traeger .wrap {
    width: calc(100% - 32px) !important;
    max-width: 440px !important;
    margin-inline: auto !important;
  }

  .theme-traeger .section {
    padding-block: 22px !important;
  }

  .theme-traeger :is(h1,h2,h3,p,summary,strong,span,a,button,small) {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .theme-traeger :is(h1,h2,h3) {
    text-wrap: balance;
  }

  .topbar {
    overflow: hidden !important;
  }

  /* Remove duplicated long sections on mobile. */
  .proof-section,
  .process-section,
  .chat-promo-section {
    display: none !important;
  }

  /* Stop decorative fades / negative margins from creating horizontal body scroll. */
  .lineup-carousel::after,
  .review-template-good::after,
  .map-review-grid::after {
    display: none !important;
  }

  .lineup-carousel,
  .review-template-good,
  .map-review-grid,
  .products-static.food-grid-clean,
  .use-grid-soft,
  .launch-pills-corner {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Common mobile typography. */
  .section-head h2,
  .lineup-head-clean h2,
  .faq-layout h2,
  .contacts-grid h2,
  .factory-proof-copy h2 {
    max-width: 12em !important;
    font-size: clamp(26px, 7.8vw, 34px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }

  .eyebrow {
    width: fit-content !important;
    max-width: 100% !important;
    min-height: 34px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
  }

  /* Factory block: keep the selling point, remove the text wall. */
  .factory-proof-card-direct {
    padding: 20px !important;
    border-radius: 24px !important;
  }

  .factory-direct-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .factory-direct-card {
    min-height: 58px !important;
    padding: 12px !important;
    display: flex !important;
    align-items: center !important;
  }

  .factory-direct-card strong {
    font-size: 14px !important;
    line-height: 1.08 !important;
  }

  /* Model carousel: clean internal scroll only, no page-width overflow. */
  .lineup-section {
    overflow: hidden !important;
  }

  .lineup-carousel {
    overflow: hidden !important;
    padding: 0 !important;
  }

  .lineup-carousel .lineup {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    gap: 10px !important;
    padding: 2px 0 10px !important;
    margin: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-inline: 0 !important;
    scrollbar-width: none !important;
  }

  .lineup-carousel .lineup::-webkit-scrollbar { display: none !important; }

  .lineup-carousel .lineup-card {
    flex: 0 0 86% !important;
    width: 86% !important;
    min-width: 86% !important;
    max-width: 86% !important;
    min-height: 292px !important;
    padding: 14px !important;
    border-radius: 22px !important;
    scroll-snap-align: start !important;
    overflow: hidden !important;
  }

  .lineup-carousel .lineup-card img {
    height: 126px !important;
    max-height: 126px !important;
    margin: 0 auto 8px !important;
  }

  .lineup-carousel .lineup-card .roof-badge {
    min-height: 24px !important;
    padding: 0 10px !important;
    font-size: 10px !important;
    white-space: nowrap !important;
  }

  .lineup-card .model-volume { font-size: 30px !important; }
  .lineup-card .model-load {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 38px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  /* Products: no giant blank space, no vertical letters. */
  .products-section {
    overflow: hidden !important;
    padding-block: 22px !important;
    background-position: center !important;
  }

  .products-head-clean h2,
  .reviews-head-clean h2,
  .map-review-head h3 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
  }

  .products-head-clean h2::after,
  .reviews-head-clean h2::after,
  .map-review-head h3::after {
    display: block !important;
    width: 100% !important;
    max-width: 10.6em !important;
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    color: #17100f !important;
  }

  .products-head-clean h2::after { content: "Что можно готовить" !important; }
  .reviews-head-clean h2::after { content: "Видеоотзывы" !important; }
  .map-review-head h3::after { content: "Отзывы на картах" !important; }

  .products-static.food-grid-clean {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 116px !important;
    height: auto !important;
    padding: 8px !important;
    border-radius: 18px !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 70px !important;
    margin-bottom: 8px !important;
    border-radius: 13px !important;
  }

  .products-static.food-grid-clean .food-card span {
    min-height: 26px !important;
    max-width: 100% !important;
    padding: 0 9px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    letter-spacing: .055em !important;
    white-space: nowrap !important;
  }

  .products-static.food-grid-clean .food-card h3,
  .products-static.food-grid-clean .food-card p { display: none !important; }

  /* Review carousels: contained cards and fixed map heading. */
  .reviews-section {
    overflow: hidden !important;
    padding-block: 22px !important;
  }

  .review-template-good,
  .map-review-grid {
    width: 100% !important;
    display: flex !important;
    gap: 10px !important;
    padding: 0 0 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
  }

  .review-template-good::-webkit-scrollbar,
  .map-review-grid::-webkit-scrollbar { display: none !important; }

  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    flex: 0 0 88% !important;
    width: 88% !important;
    min-width: 88% !important;
    max-width: 88% !important;
    border-radius: 22px !important;
    scroll-snap-align: start !important;
  }

  .review-template-good .review-video {
    height: 144px !important;
    min-height: 144px !important;
  }

  .review-copy,
  .map-review-grid .review-copy {
    min-height: 96px !important;
    padding: 12px !important;
  }

  .review-copy p { display: none !important; }

  .review-person { gap: 10px !important; }
  .review-avatar { width: 46px !important; height: 46px !important; font-size: 18px !important; }
  .review-person strong { font-size: 18px !important; line-height: 1 !important; }
  .review-person small, .review-copy time { font-size: 12px !important; }

  .review-dots,
  .map-review-dots {
    margin: 8px auto 8px !important;
  }

  .map-review-block,
  .restored-map-reviews {
    margin-top: 20px !important;
  }

  .map-review-head {
    margin-bottom: 12px !important;
  }

  /* Selection block: compact, no endless text. */
  .use-section { padding-block: 22px !important; overflow: hidden !important; }
  .use-head h2, .use-head p { display: none !important; }
  .use-head::after {
    content: "Подберём модель без переплаты" !important;
    display: block !important;
    max-width: 10.4em !important;
    color: #17100f !important;
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    font-weight: 950 !important;
  }

  .use-steps-info {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin: 14px 0 12px !important;
  }

  .use-step-card {
    min-height: 54px !important;
    padding: 10px 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    border-radius: 16px !important;
  }

  .use-step-card h3 { font-size: 16px !important; line-height: 1.1 !important; }
  .use-step-card p, .use-step-arrow { display: none !important; }
  .use-step-card-result h3 { font-size: 0 !important; }
  .use-step-card-result h3::after { content: "1–2 модели" !important; font-size: 16px !important; }

  .use-grid-soft {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .use-card-soft {
    min-height: 44px !important;
    padding: 8px 9px !important;
    border-radius: 14px !important;
  }

  .use-card-soft h3 { font-size: 12.5px !important; line-height: 1.1 !important; white-space: normal !important; }
  .use-card-soft p, .use-card-soft-num { display: none !important; }

  .use-note-bar {
    margin-top: 10px !important;
    padding: 14px !important;
    border-radius: 18px !important;
    display: grid !important;
    gap: 10px !important;
  }

  .use-note-bar::before { content: "Подберём 1–2 модели без переплаты." !important; }
  .use-note-bar .btn { min-height: 46px !important; font-size: 13px !important; border-radius: 14px !important; }

  /* After-purchase support: shorter title and pills, no bulky text boxes. */
  .flavor-section { padding-block: 22px !important; overflow: hidden !important; }

  .flavor-stage-orbit,
  .flavor-stage-support {
    min-height: 0 !important;
    padding: 20px !important;
    border-radius: 24px !important;
  }

  .launch-copy h2,
  .flavor-copy h2 {
    font-size: 0 !important;
    line-height: 0 !important;
    margin: 0 !important;
  }

  .launch-copy h2::after,
  .flavor-copy h2::after {
    content: "Поможем после покупки" !important;
    display: block !important;
    max-width: 10em !important;
    color: #fff8ed !important;
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }

  .launch-copy p,
  .flavor-copy p,
  .launch-carousel-window,
  .meat-orbit,
  .product-orbit { display: none !important; }

  .startup-right-carousel { margin-top: 14px !important; width: 100% !important; }

  .launch-pills-corner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .launch-pills-corner span {
    min-height: 48px !important;
    width: 100% !important;
    padding: 10px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .launch-pills-corner strong { font-size: 12.5px !important; line-height: 1.08 !important; white-space: normal !important; }
  .launch-pills-corner small { display: none !important; }
  .launch-pills-corner span:last-child { grid-column: 1 / -1 !important; }

  /* FAQ: no first huge open card on mobile; answers become readable when user opens them. */
  .faq-section { padding-block: 22px !important; }
  .faq-layout { display: block !important; }
  .faq-layout > div:first-child p,
  .faq-layout > div:first-child .btn { display: none !important; }
  .faq-list { margin-top: 14px !important; gap: 8px !important; }
  .faq-item { border-radius: 17px !important; overflow: hidden !important; }
  .faq-item summary {
    min-height: 54px !important;
    padding: 13px 42px 13px 14px !important;
    font-size: 14.5px !important;
    line-height: 1.16 !important;
  }
  .faq-item p {
    padding: 0 14px 14px !important;
    font-size: 13px !important;
    line-height: 1.38 !important;
  }

  /* Contact/footer: remove sticky-button bottom gap, keep neat actions. */
  .sticky-chat.is-collapsed { display: none !important; }
  .site-footer { padding-bottom: 28px !important; }
  .contact-card { padding: 16px !important; border-radius: 22px !important; }
  .contact-phone { width: fit-content !important; max-width: 100% !important; padding: 0 12px !important; }
  .social-links { grid-template-columns: repeat(3, 1fr) !important; gap: 8px !important; }
  .social-pill { min-height: 48px !important; height: 48px !important; border-radius: 14px !important; }
}

@media (max-width: 430px) {
  .theme-traeger .wrap { width: calc(100% - 30px) !important; }
  .theme-traeger h1, h1[data-page-h1] {
    max-width: 10.8em !important;
    font-size: clamp(32px, 9vw, 38px) !important;
    line-height: .97 !important;
  }
  .factory-proof-copy h2,
  .section-head h2,
  .lineup-head-clean h2,
  .faq-layout h2,
  .contacts-grid h2 {
    font-size: clamp(27px, 8vw, 32px) !important;
  }
  .products-head-clean h2::after,
  .reviews-head-clean h2::after,
  .map-review-head h3::after,
  .use-head::after,
  .launch-copy h2::after,
  .flavor-copy h2::after {
    font-size: clamp(28px, 8.3vw, 33px) !important;
  }
  .lineup-carousel .lineup-card,
  .review-template-good .vk-video-card,
  .map-review-grid .map-review-card,
  .restored-map-reviews .map-review-card {
    flex-basis: 89% !important;
    width: 89% !important;
    min-width: 89% !important;
    max-width: 89% !important;
  }
  .products-static.food-grid-clean .food-card { min-height: 112px !important; }
  .products-static.food-grid-clean .food-visual { height: 66px !important; }
  .review-template-good .review-video { height: 138px !important; min-height: 138px !important; }
}

/* === Fix 58b: force mobile replacement headings after all previous max-430 overrides === */
@media (max-width: 760px) {
  .products-head-clean h2,
  .reviews-head-clean h2,
  .map-review-head h3 {
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    color: transparent !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .products-head-clean h2::after,
  .reviews-head-clean h2::after,
  .map-review-head h3::after {
    color: #17100f !important;
    font-size: clamp(28px, 8.3vw, 34px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    font-weight: 950 !important;
  }
}

/* === Fix 58c: hard overrides for remaining bulky mobile blocks === */
@media (max-width: 760px) {
  .flavor-stage-support,
  .flavor-stage-orbit {
    padding: 18px !important;
    border-radius: 24px !important;
  }

  .launch-copy h2,
  .flavor-copy h2 {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    margin: 0 !important;
  }

  .launch-copy h2::after,
  .flavor-copy h2::after {
    content: "Поможем после покупки" !important;
    display: block !important;
    color: #fff8ed !important;
    font-size: clamp(28px, 8.2vw, 34px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    font-weight: 950 !important;
  }

  .launch-pills-corner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .launch-pills-corner span {
    width: 100% !important;
    min-height: 46px !important;
    height: auto !important;
    padding: 9px 10px !important;
    border-radius: 16px !important;
  }

  .launch-pills-corner strong {
    font-size: 12.5px !important;
    line-height: 1.08 !important;
    text-align: center !important;
    white-space: normal !important;
  }

  .launch-pills-corner small {
    display: none !important;
  }

  .launch-pills-corner span:last-child {
    grid-column: 1 / -1 !important;
  }

  .use-steps-info {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .use-step-card,
  .use-step-card-result {
    min-height: 54px !important;
    height: 54px !important;
    padding: 8px 12px !important;
    border-radius: 16px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .use-step-card .use-step-num,
  .use-step-num {
    min-width: 38px !important;
    width: 38px !important;
    height: 30px !important;
    border-radius: 10px !important;
    margin: 0 !important;
  }

  .use-step-card h3 {
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.08 !important;
    text-align: left !important;
  }

  .use-step-card-result h3 { font-size: 0 !important; }
  .use-step-card-result h3::after { content: "1–2 модели" !important; font-size: 16px !important; }

  .use-note-bar {
    padding: 13px !important;
  }

  .use-note-bar .btn {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;
    padding: 0 12px !important;
    font-size: 12.5px !important;
  }
}

/* === Fix 58d: specificity bump for support title and support pills === */
@media (max-width: 760px) {
  .theme-traeger .flavor-stage-support .flavor-copy.launch-copy h2,
  .theme-traeger .flavor-stage-orbit .flavor-copy.launch-copy h2,
  .theme-traeger .flavor-stage-support .launch-copy h2 {
    font-size: 0 !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    color: transparent !important;
    margin: 0 !important;
    max-width: 100% !important;
  }

  .theme-traeger .flavor-stage-support .flavor-copy.launch-copy h2::after,
  .theme-traeger .flavor-stage-orbit .flavor-copy.launch-copy h2::after,
  .theme-traeger .flavor-stage-support .launch-copy h2::after {
    content: "Поможем после покупки" !important;
    display: block !important;
    color: #fff8ed !important;
    font-size: clamp(28px, 8.2vw, 34px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    font-weight: 950 !important;
  }

  .theme-traeger .flavor-stage-support .launch-pills-corner span small,
  .theme-traeger .flavor-stage-orbit .launch-pills-corner span small {
    display: none !important;
  }
}

/* === Fix 58e: Android-safe horizontal overflow lock === */
@media (max-width: 760px) {
  html, body, .shell {
    overflow-x: hidden !important;
  }
}


/* === Fix 59: force hero smoker to exact center on mobile === */
@media (max-width: 760px) {
  .visual.traeger-visual,
  .traeger-visual {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    text-align: center !important;
  }

  .smoker-wrap {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  .traeger-product {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-self: center !important;
    align-self: center !important;
  }
}

/* === Fix 60: purpose-only infographic block for desktop and mobile === */
.use-purpose-section {
  padding: clamp(72px, 7vw, 112px) 0 !important;
  overflow: hidden !important;
}

.use-purpose-section .wrap {
  max-width: 1180px !important;
}

.purpose-panel {
  position: relative;
  overflow: hidden;
  padding: clamp(30px, 4.2vw, 54px);
  border-radius: 38px;
  background:
    radial-gradient(circle at 10% 0%, rgba(255, 248, 237, .98), rgba(255, 248, 237, .72) 38%, transparent 64%),
    radial-gradient(circle at 86% 10%, rgba(151, 25, 15, .22), transparent 34%),
    linear-gradient(135deg, rgba(255, 246, 231, .94), rgba(234, 210, 178, .72));
  border: 1px solid rgba(93, 46, 28, .12);
  box-shadow: 0 28px 78px rgba(73, 39, 24, .16);
}

.purpose-panel::before {
  content: "";
  position: absolute;
  inset: 16px;
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, .48);
  pointer-events: none;
}

.purpose-panel::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -160px;
  width: 380px;
  height: 380px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(153, 31, 21, .22), transparent 65%);
  pointer-events: none;
}

.purpose-head,
.purpose-grid,
.purpose-cta {
  position: relative;
  z-index: 1;
}

.purpose-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(18px, 3vw, 34px);
  align-items: end;
  margin-bottom: clamp(22px, 3vw, 36px);
}

.purpose-title .eyebrow {
  margin-bottom: 18px !important;
}

.purpose-title h2 {
  max-width: 780px;
  margin: 0;
  color: #120c0a;
  font-size: clamp(46px, 5.2vw, 72px);
  line-height: .94;
  letter-spacing: -.06em;
  font-weight: 950;
}

.purpose-title p {
  max-width: 620px;
  margin: 18px 0 0;
  color: rgba(58, 40, 34, .72);
  font-size: clamp(17px, 1.35vw, 20px);
  line-height: 1.45;
  font-weight: 760;
}

.purpose-proof {
  display: grid;
  grid-template-columns: repeat(3, 96px);
  gap: 10px;
}

.purpose-proof span {
  min-height: 96px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 24px;
  background: linear-gradient(180deg, #21100f, #120a09);
  color: #fff8ed;
  box-shadow: 0 18px 42px rgba(32, 14, 12, .22);
}

.purpose-proof b {
  font-size: 34px;
  line-height: .9;
  font-weight: 950;
}

.purpose-proof small {
  margin-top: 8px;
  color: rgba(255, 248, 237, .76);
  font-size: 11px;
  line-height: 1;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 900;
}

.purpose-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.purpose-card {
  position: relative;
  min-height: 258px;
  padding: 20px 18px 18px;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 251, 244, .98), rgba(255, 242, 220, .9));
  border: 1px solid rgba(109, 62, 40, .13);
  box-shadow: 0 18px 42px rgba(75, 42, 24, .12);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.purpose-card:hover {
  transform: translateY(-5px);
  border-color: rgba(158, 31, 20, .28);
  box-shadow: 0 26px 58px rgba(75, 42, 24, .18);
}

.purpose-card::before {
  content: attr(data-icon);
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin-bottom: 30px;
  border-radius: 20px;
  background: linear-gradient(135deg, #a82116, #e13422);
  color: #fff8ed;
  font-size: 25px;
  font-weight: 950;
  box-shadow: 0 16px 32px rgba(159, 29, 18, .25);
}

.purpose-card::after {
  content: "";
  position: absolute;
  right: -30px;
  top: -30px;
  width: 96px;
  height: 96px;
  border-radius: 999px;
  background: rgba(159, 29, 18, .07);
}

.purpose-num {
  position: absolute;
  top: 20px;
  right: 18px;
  color: rgba(140, 33, 22, .34);
  font-size: 13px;
  line-height: 1;
  letter-spacing: .08em;
  font-weight: 950;
}

.purpose-card h3 {
  margin: 0;
  color: #120c0a;
  font-size: clamp(19px, 1.7vw, 25px);
  line-height: .98;
  letter-spacing: -.04em;
  font-weight: 950;
}

.purpose-card p {
  margin: 12px 0 0;
  color: rgba(43, 27, 22, .74);
  font-size: 14px;
  line-height: 1.34;
  font-weight: 760;
}

.purpose-cta {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin-top: 18px;
  padding: 16px 16px 16px 20px;
  border-radius: 24px;
  background: linear-gradient(135deg, #150b0b, #281010);
  color: #fff8ed;
  box-shadow: 0 22px 50px rgba(28, 10, 8, .2);
}

.purpose-cta strong {
  font-size: 15px;
  line-height: 1.12;
  font-weight: 950;
  white-space: nowrap;
}

.purpose-cta span {
  color: rgba(255, 248, 237, .78);
  font-size: 14px;
  line-height: 1.28;
  font-weight: 760;
}

.purpose-cta .btn {
  min-height: 48px;
  padding: 0 22px;
  border-radius: 16px;
  white-space: nowrap;
}

@media (max-width: 1100px) {
  .purpose-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .purpose-card {
    min-height: 220px;
  }

  .purpose-head {
    grid-template-columns: 1fr;
  }

  .purpose-proof {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 420px;
  }
}

@media (max-width: 760px) {
  .use-purpose-section {
    padding: 44px 0 !important;
  }

  .use-purpose-section .wrap {
    padding-inline: 14px !important;
  }

  .purpose-panel {
    padding: 20px;
    border-radius: 28px;
  }

  .purpose-panel::before {
    inset: 8px;
    border-radius: 22px;
  }

  .purpose-head {
    display: block;
    margin-bottom: 18px;
  }

  .purpose-title .eyebrow {
    margin-bottom: 14px !important;
  }

  .purpose-title h2 {
    max-width: 9.8em;
    font-size: clamp(34px, 10.8vw, 44px);
    line-height: .94;
    letter-spacing: -.06em;
  }

  .purpose-title p {
    max-width: 31ch;
    margin-top: 12px;
    font-size: 14.5px;
    line-height: 1.35;
  }

  .purpose-proof {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
    max-width: none;
  }

  .purpose-proof span {
    min-height: 66px;
    border-radius: 18px;
  }

  .purpose-proof b {
    font-size: 24px;
  }

  .purpose-proof small {
    margin-top: 5px;
    font-size: 9px;
  }

  .purpose-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .purpose-card {
    min-height: 0 !important;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 14px;
    align-items: start;
    padding: 14px 14px 14px 12px;
    border-radius: 20px;
  }

  .purpose-card:hover {
    transform: none;
  }

  .purpose-card::before {
    grid-row: 1 / 3;
    width: 54px;
    height: 54px;
    margin: 0;
    border-radius: 18px;
    font-size: 22px;
  }

  .purpose-num {
    top: 13px;
    right: 14px;
    font-size: 10px;
  }

  .purpose-card h3 {
    padding-right: 30px;
    font-size: 18px;
    line-height: 1.02;
  }

  .purpose-card p {
    margin-top: 7px;
    font-size: 13px;
    line-height: 1.25;
  }

  .purpose-cta {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 12px;
    padding: 15px;
    border-radius: 20px;
  }

  .purpose-cta strong {
    white-space: normal;
    font-size: 14px;
  }

  .purpose-cta span {
    font-size: 13px;
    line-height: 1.25;
  }

  .purpose-cta .btn {
    width: 100%;
    min-height: 46px;
    margin-top: 4px;
    border-radius: 15px;
    font-size: 13px;
  }
}

@media (max-width: 390px) {
  .purpose-panel {
    padding: 18px 14px;
  }

  .purpose-title h2 {
    font-size: 32px;
  }

  .purpose-card {
    grid-template-columns: 50px minmax(0, 1fr);
    column-gap: 12px;
  }

  .purpose-card::before {
    width: 50px;
    height: 50px;
  }
}

/* === Fix 61: question chat block + centered purpose icons + lighter mobile === */
.chat-promo-section {
  padding-block: clamp(46px, 6vw, 78px) !important;
}

.chat-promo-clean {
  grid-template-columns: minmax(0, 1fr) minmax(360px, .78fr) !important;
  gap: clamp(20px, 3vw, 34px) !important;
  border-radius: 26px !important;
  padding: clamp(28px, 4.6vw, 52px) !important;
  box-shadow: 0 30px 80px rgba(35, 13, 10, .24) !important;
}

.chat-promo-clean .chat-promo-copy h2 {
  max-width: 620px !important;
  margin-top: 16px !important;
  font-size: clamp(48px, 5.6vw, 78px) !important;
  line-height: .92 !important;
  letter-spacing: -.06em !important;
}

.chat-promo-clean .chat-promo-copy p {
  max-width: 650px !important;
  color: rgba(255, 248, 237, .82) !important;
  font-weight: 760 !important;
}

.chat-promo-clean .chat-promo-demo {
  min-height: 320px !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, #f7ecdc, #efe0cc) !important;
}

.chat-promo-clean .chat-demo-head {
  min-height: 58px !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}

.chat-promo-clean .chat-demo-body {
  gap: 12px !important;
  padding: 18px !important;
}

.chat-promo-clean .chat-demo-body .bubble {
  max-width: 82% !important;
  border-radius: 14px !important;
  padding: 13px 14px !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
  box-shadow: 0 10px 24px rgba(39, 20, 13, .08) !important;
}

.chat-promo-clean .chat-demo-body .bubble.user {
  max-width: 76% !important;
  border-radius: 14px 14px 4px 14px !important;
}

.purpose-card {
  text-align: center !important;
}

.purpose-card::before {
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 24px !important;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", system-ui, sans-serif !important;
  font-size: 27px !important;
  line-height: 1 !important;
}

.purpose-num {
  left: 18px !important;
  right: auto !important;
}

.purpose-card h3,
.purpose-card p {
  text-align: center !important;
}

@media (max-width: 760px) {
  .chat-promo-section {
    display: block !important;
    padding-block: 18px !important;
  }

  .chat-promo-section .wrap {
    width: calc(100% - 32px) !important;
    max-width: 440px !important;
    margin-inline: auto !important;
  }

  .chat-promo,
  .chat-promo-clean {
    display: block !important;
    padding: 20px !important;
    border-radius: 24px !important;
    min-height: 0 !important;
    box-shadow: 0 20px 50px rgba(35, 13, 10, .20) !important;
  }

  .chat-promo-clean::before {
    background:
      linear-gradient(115deg, rgba(255,255,255,.07), transparent 42%),
      repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 76px) !important;
  }

  .chat-promo-clean .chat-promo-copy h2 {
    max-width: 8.2em !important;
    margin-top: 12px !important;
    font-size: clamp(34px, 10vw, 42px) !important;
    line-height: .94 !important;
    letter-spacing: -.055em !important;
  }

  .chat-promo-clean .chat-promo-copy p {
    display: block !important;
    max-width: 29ch !important;
    margin-top: 12px !important;
    font-size: 14px !important;
    line-height: 1.34 !important;
  }

  .chat-promo-clean .chat-promo-demo {
    display: none !important;
  }

  .chat-promo-copy .btn,
  .chat-promo-clean .chat-promo-copy .btn {
    width: 100% !important;
    min-height: 48px !important;
    margin-top: 16px !important;
    border-radius: 15px !important;
    font-size: 14px !important;
  }

  .use-purpose-section {
    padding-block: 28px !important;
  }

  .use-purpose-section .wrap {
    width: calc(100% - 32px) !important;
    max-width: 440px !important;
    padding-inline: 0 !important;
  }

  .purpose-panel {
    padding: 20px 16px 16px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255, 248, 237, .88), rgba(238, 216, 186, .72)) !important;
    box-shadow: 0 18px 48px rgba(73, 39, 24, .13) !important;
  }

  .purpose-panel::before,
  .purpose-panel::after {
    display: none !important;
  }

  .purpose-head {
    margin-bottom: 14px !important;
  }

  .purpose-title .eyebrow {
    margin-bottom: 12px !important;
  }

  .purpose-title h2 {
    max-width: 8.5em !important;
    font-size: clamp(31px, 9.3vw, 39px) !important;
    line-height: .96 !important;
  }

  .purpose-title p {
    max-width: 28ch !important;
    margin-top: 10px !important;
    font-size: 13.5px !important;
    line-height: 1.32 !important;
  }

  .purpose-proof {
    display: none !important;
  }

  .purpose-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }

  .purpose-card {
    display: block !important;
    min-height: 132px !important;
    padding: 14px 10px 12px !important;
    border-radius: 18px !important;
    text-align: center !important;
  }

  .purpose-card:nth-child(5) {
    grid-column: 1 / -1 !important;
    min-height: 112px !important;
  }

  .purpose-card::before {
    width: 46px !important;
    height: 46px !important;
    margin: 0 auto 10px !important;
    border-radius: 16px !important;
    font-size: 22px !important;
  }

  .purpose-num {
    display: none !important;
  }

  .purpose-card h3 {
    padding-right: 0 !important;
    font-size: 16px !important;
    line-height: 1.05 !important;
  }

  .purpose-card p {
    display: none !important;
  }

  .purpose-card:nth-child(5) p {
    display: block !important;
    max-width: 28ch !important;
    margin: 7px auto 0 !important;
    font-size: 12.5px !important;
    line-height: 1.25 !important;
  }

  .purpose-cta {
    display: none !important;
  }
}

@media (max-width: 390px) {
  .chat-promo,
  .chat-promo-clean,
  .purpose-panel {
    border-radius: 22px !important;
  }

  .purpose-grid {
    gap: 8px !important;
  }

  .purpose-card {
    min-height: 126px !important;
    padding-inline: 8px !important;
  }

  .purpose-card::before {
    width: 44px !important;
    height: 44px !important;
  }
}


/* === Fix 62: remove purpose numbers, center icons, restore chat block font === */
.purpose-card {
  text-align: center !important;
}

.purpose-num {
  display: none !important;
}

.purpose-card::before {
  display: grid !important;
  place-items: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 24px !important;
  text-align: center !important;
}

.purpose-card h3,
.purpose-card p {
  text-align: center !important;
}

/* Return chat promo typography closer to the previous version */
.chat-promo-clean .chat-promo-copy h2 {
  max-width: 660px !important;
  font-size: clamp(38px, 5vw, 70px) !important;
  line-height: .96 !important;
  letter-spacing: -.045em !important;
  font-weight: 950 !important;
}

.chat-promo-clean .chat-promo-copy p {
  max-width: 620px !important;
  font-size: clamp(17px, 1.55vw, 20px) !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
}

.chat-promo-clean .chat-demo-body .bubble {
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  padding: 9px 11px !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

.chat-promo-clean .chat-demo-body .bubble.user {
  border-radius: 8px !important;
}

@media (max-width: 760px) {
  .purpose-card {
    display: block !important;
    text-align: center !important;
  }

  .purpose-card::before {
    margin: 0 auto 10px !important;
  }

  .purpose-num {
    display: none !important;
  }

  .chat-promo-clean .chat-promo-copy h2 {
    font-size: clamp(32px, 9.2vw, 40px) !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
  }

  .chat-promo-clean .chat-promo-copy p {
    font-size: 14px !important;
    line-height: 1.36 !important;
    font-weight: 500 !important;
  }
}

/* === Fix 64: mobile products block less empty and more informative === */
@media (max-width: 760px) {
  .products-section {
    padding-block: 24px !important;
  }

  .products-head-clean {
    margin-bottom: 14px !important;
  }

  .products-static.food-grid-clean {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  .products-static.food-grid-clean .food-card {
    min-height: 0 !important;
    height: auto !important;
    padding: 10px !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 28px rgba(42, 28, 23, .12) !important;
  }

  .products-static.food-grid-clean .food-visual {
    height: 96px !important;
    margin-bottom: 10px !important;
    border-radius: 14px !important;
  }

  .products-static.food-grid-clean .food-card span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    max-width: 100% !important;
    padding: 0 12px !important;
    font-size: 11px !important;
    line-height: 1 !important;
    letter-spacing: .035em !important;
    white-space: normal !important;
    text-align: left !important;
  }

  .products-static.food-grid-clean .food-card h3 {
    display: -webkit-box !important;
    margin: 10px 2px 0 !important;
    font-size: 13px !important;
    line-height: 1.28 !important;
    color: #6a5651 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 50px !important;
    text-align: left !important;
  }

  .products-static.food-grid-clean .food-card p {
    display: none !important;
  }
}

/* === Fix 65: soften purpose block so it blends better with the site === */
.purpose-panel {
  background:
    radial-gradient(circle at 10% 0%, rgba(248, 239, 226, .94), rgba(243, 232, 213, .82) 38%, transparent 64%),
    radial-gradient(circle at 86% 10%, rgba(151, 25, 15, .16), transparent 34%),
    linear-gradient(135deg, rgba(239, 226, 203, .96), rgba(228, 207, 180, .84)) !important;
  border: 1px solid rgba(117, 80, 56, .14) !important;
  box-shadow: 0 24px 60px rgba(73, 39, 24, .12) !important;
}

.purpose-panel::before {
  border-color: rgba(255, 255, 255, .30) !important;
}

.purpose-card {
  background: linear-gradient(180deg, rgba(250, 243, 233, .96), rgba(242, 229, 209, .94)) !important;
  border: 1px solid rgba(117, 80, 56, .12) !important;
  box-shadow: 0 14px 34px rgba(75, 42, 24, .10) !important;
}

.purpose-card::after {
  background: rgba(159, 29, 18, .05) !important;
}

@media (max-width: 760px) {
  .purpose-panel {
    background: linear-gradient(180deg, rgba(244, 234, 220, .92), rgba(232, 214, 189, .82)) !important;
    box-shadow: 0 16px 38px rgba(73, 39, 24, .11) !important;
  }

  .purpose-card {
    background: linear-gradient(180deg, rgba(249, 241, 230, .98), rgba(241, 229, 209, .95)) !important;
  }
}

/* === Fix 66: center text inside mobile factory direct cards === */
@media (max-width: 760px) {
  .factory-direct-card {
    text-align: center !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .factory-direct-card strong {
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto !important;
  }
}
