/** Shopify CDN: Minification failed

Line 7023:0 All "@import" rules must come first

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:affiliate-section (INDEX:0) */
.tf-affiliate {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-affiliate { padding: 7rem 1rem; }
}
.tf-affiliate--white { background: var(--tf-background, #ffffff); }
.tf-affiliate--gray { background: var(--tf-muted, #f5f5f5); }
.tf-affiliate--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-affiliate .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-affiliate-inner {
  display: grid;
  gap: 4rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-affiliate-inner {
    grid-template-columns: 1fr 380px;
  }
}
.tf-affiliate-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 1rem;
}
.tf-affiliate-title {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.15;
  margin-bottom: 1rem;
}
.tf-affiliate--dark .tf-affiliate-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-affiliate-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
  margin-bottom: 2rem;
}
.tf-affiliate--dark .tf-affiliate-subtitle { color: rgba(255,255,255,0.6); }
.tf-affiliate-steps {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 2rem;
}
.tf-affiliate-step {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.tf-affiliate-step-num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 800;
  font-size: 0.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-affiliate-step-body {
  padding-top: 0.25rem;
}
.tf-affiliate-step-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
}
.tf-affiliate--dark .tf-affiliate-step-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-affiliate-step-desc {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-affiliate--dark .tf-affiliate-step-desc { color: rgba(255,255,255,0.55); }
.tf-affiliate-cta {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-affiliate-cta:hover { background: hsl(45, 100%, 45%); transform: translateY(-2px); }
.tf-affiliate-cta-note {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 0.75rem;
}
.tf-affiliate--dark .tf-affiliate-cta-note { color: rgba(255,255,255,0.4); }
.tf-affiliate-card-wrap {
  display: flex;
  justify-content: center;
}
.tf-affiliate-earn-card {
  background: var(--tf-primary, #FACC15);
  border-radius: 1.5rem;
  padding: 2.5rem 2rem;
  text-align: center;
  width: 100%;
  max-width: 360px;
}
.tf-affiliate-earn-label {
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgba(0,0,0,0.55);
  margin-bottom: 1rem;
}
.tf-affiliate-earn-amount {
  font-size: 5rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.03em;
  line-height: 1;
  margin-bottom: 0.5rem;
}
.tf-affiliate-earn-desc {
  font-size: 1.125rem;
  font-weight: 600;
  color: rgba(0,0,0,0.7);
  margin-bottom: 1rem;
}
.tf-affiliate-earn-detail {
  font-size: 0.875rem;
  color: rgba(0,0,0,0.55);
  margin-bottom: 1.5rem;
}
.tf-affiliate-earn-stats {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  text-align: left;
  background: rgba(0,0,0,0.08);
  border-radius: 0.75rem;
  padding: 1rem;
}
.tf-affiliate-stat {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: rgba(0,0,0,0.7);
}
/* END_SECTION:affiliate-section */

/* START_SECTION:amazon-proof (INDEX:1) */
/* ===== AMAZON PROOF SECTION ===== */
.tf-ap {
  background: #0A0A0A;
  padding: 5rem 1.25rem 5rem;
  font-family: 'Montserrat', sans-serif;
  color: #fff;
  overflow: hidden;
}

@media (min-width: 768px) {
  .tf-ap {
    padding: 7rem 2rem 7rem;
  }
}

.tf-ap-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* ── HEADER ── */
.tf-ap-header {
  text-align: center;
  margin-bottom: 3.5rem;
}

.tf-ap-overline {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin: 0 0 1rem;
}

.tf-ap-heading {
  font-size: clamp(1.6rem, 4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.2;
  color: #fff;
  margin: 0 0 1.25rem;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.tf-ap-subtitle {
  font-size: clamp(0.95rem, 1.8vw, 1.1rem);
  color: #aaa;
  line-height: 1.6;
  max-width: 640px;
  margin: 0 auto;
  font-weight: 400;
}

/* ── RATING BLOCK ── */
.tf-ap-rating-block {
  margin-bottom: 4rem;
}

.tf-ap-rating-card {
  background: #111;
  border: 1px solid #222;
  border-radius: 16px;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  max-width: 780px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.tf-ap-rating-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #FF9900, #FFCC00);
  border-radius: 16px 16px 0 0;
}

@media (min-width: 640px) {
  .tf-ap-rating-card {
    flex-direction: row;
    align-items: center;
    padding: 3rem;
  }
}

/* Rating left */
.tf-ap-rating-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  min-width: 200px;
}

.tf-ap-big-score {
  font-size: clamp(4.5rem, 10vw, 6rem);
  font-weight: 900;
  color: #FFCC00;
  line-height: 1;
  margin-bottom: 0.5rem;
  font-variant-numeric: tabular-nums;
}

.tf-ap-stars {
  display: flex;
  gap: 3px;
  margin-bottom: 0.75rem;
}

.tf-ap-rating-source {
  font-size: 0.78rem;
  color: #888;
  text-align: center;
  line-height: 1.4;
  margin: 0 0 1rem;
  max-width: 180px;
}

.tf-ap-amazon-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #1a1a1a;
  border: 1px solid #FF9900;
  border-radius: 6px;
  padding: 0.35rem 0.75rem;
  font-size: 0.75rem;
  color: #ccc;
  white-space: nowrap;
}

.tf-ap-amazon-badge strong {
  color: #FF9900;
}

/* Rating right — breakdown bars */
.tf-ap-rating-right {
  flex: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.tf-ap-bar-row {
  display: grid;
  grid-template-columns: 36px 1fr 36px;
  align-items: center;
  gap: 10px;
}

.tf-ap-bar-label {
  font-size: 0.75rem;
  color: #888;
  text-align: right;
  white-space: nowrap;
}

.tf-ap-bar-track {
  height: 8px;
  background: #222;
  border-radius: 99px;
  overflow: hidden;
}

.tf-ap-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, #FF9900, #FFCC00);
  border-radius: 99px;
  width: 0%;
  transition: width 1.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.tf-ap-bar-pct {
  font-size: 0.73rem;
  color: #666;
  font-variant-numeric: tabular-nums;
  text-align: left;
}

/* ── REVIEW CARDS GRID ── */
.tf-ap-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: 3rem;
}

@media (min-width: 600px) {
  .tf-ap-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .tf-ap-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

/* ── REVIEW CARD ── */
.tf-ap-card {
  background: #111;
  border: 1px solid #1e1e1e;
  border-radius: 12px;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  transition: border-color 0.25s ease, transform 0.25s ease;
}

.tf-ap-card:hover {
  border-color: #2a2a2a;
  transform: translateY(-2px);
}

/* Scroll animation */
.tf-ap-card--fade {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.55s ease, transform 0.55s ease, border-color 0.25s ease;
}

.tf-ap-card--fade.tf-ap-visible {
  opacity: 1;
  transform: translateY(0);
}

.tf-ap-card--fade.tf-ap-visible:hover {
  transform: translateY(-2px);
}

/* Card top row */
.tf-ap-card-top {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.tf-ap-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.tf-ap-reviewer {
  font-size: 0.85rem;
  font-weight: 700;
  color: #ddd;
}

.tf-ap-verified {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.72rem;
  color: #22c55e;
  font-weight: 600;
  white-space: nowrap;
}

.tf-ap-card-stars {
  display: flex;
  gap: 2px;
}

/* Card content */
.tf-ap-card-title {
  font-size: 0.9rem;
  font-weight: 700;
  color: #FFCC00;
  line-height: 1.35;
  margin: 0;
}

.tf-ap-card-body {
  font-size: 0.84rem;
  color: #aaa;
  line-height: 1.65;
  margin: 0;
  flex: 1;
}

.tf-ap-card-biz {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #555;
  margin: 0;
  padding-top: 0.25rem;
  border-top: 1px solid #1e1e1e;
}

/* ── SEE ALL AMAZON LINK ── */
.tf-ap-amazon-link-wrap {
  text-align: center;
  margin-bottom: 3.5rem;
}

.tf-ap-amazon-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.9rem;
  font-weight: 700;
  color: #FF9900;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.tf-ap-amazon-link:hover {
  color: #FFCC00;
  border-bottom-color: #FFCC00;
}

/* ── CTA ── */
.tf-ap-cta-wrap {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.tf-ap-cta {
  display: inline-block;
  background: #FFCC00;
  color: #000;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  text-decoration: none;
  padding: 1rem 2.25rem;
  border-radius: 6px;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  box-shadow: 0 0 0 0 rgba(255, 204, 0, 0.4);
}

.tf-ap-cta:hover {
  background: #ffe033;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.25);
}

.tf-ap-cta-sub {
  font-size: 0.82rem;
  color: #555;
  margin: 0;
}
/* END_SECTION:amazon-proof */

/* START_SECTION:app-showcase (INDEX:3) */
.tf-apps {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-apps .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-apps-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-apps-heading {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-apps-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 580px;
  margin: 0 auto 3rem;
  line-height: 1.65;
}
.tf-apps-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 900px) {
  .tf-apps-layout {
    grid-template-columns: 1.4fr 1fr;
  }
  .tf-apps-layout--right .tf-apps-screen-wrap { order: 2; }
  .tf-apps-layout--right .tf-apps-content { order: 1; }
}
/* Screen */
.tf-apps-screen-wrap {
  border-radius: 1.25rem;
  overflow: hidden;
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.14), 0 0 0 1px rgba(0,0,0,0.06);
}
.tf-apps-screen-img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.2s ease;
}
.tf-apps-screen-placeholder {
  aspect-ratio: 16 / 10;
  background: var(--tf-muted, #f5f5f5);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #999;
  font-size: 0.875rem;
}
/* Tabs */
.tf-apps-tabs {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
.tf-apps-tab {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 1rem 1.25rem;
  border-radius: 0.875rem;
  border: 1px solid rgba(0, 0, 0, 0.07);
  background: var(--tf-muted, #f5f5f5);
  cursor: pointer;
  text-align: left;
  transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
}
.tf-apps-tab:hover {
  background: rgba(250, 204, 21, 0.08);
  border-color: rgba(250, 204, 21, 0.3);
}
.tf-apps-tab--active {
  background: rgba(250, 204, 21, 0.1);
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 2px 12px rgba(250, 204, 21, 0.15);
}
.tf-apps-tab-icon {
  font-size: 1.375rem;
  line-height: 1;
  flex-shrink: 0;
}
.tf-apps-tab-title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
/* Panels */
.tf-apps-panel-title {
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.75rem;
}
.tf-apps-panel-desc {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0 0 1rem;
}
.tf-apps-panel-badge {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.75rem;
  font-weight: 800;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
}
/* CTA */
.tf-apps-cta {
  margin-top: 1.75rem;
}
.tf-apps-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-apps-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* END_SECTION:app-showcase */

/* START_SECTION:awards-recognition (INDEX:5) */
.tf-awards { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-awards { padding: 7rem 1rem; } }
.tf-awards--white { background: var(--tf-background, #ffffff); }
.tf-awards--gray { background: var(--tf-muted, #f5f5f5); }
.tf-awards--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-awards .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-awards-header { text-align: center; margin-bottom: 3rem; }
.tf-awards-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-awards-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-awards--dark .tf-awards-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-awards-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-awards--dark .tf-awards-subtitle { color: rgba(255,255,255,0.6); }
.tf-awards-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
@media (min-width: 480px) { .tf-awards-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 768px) { .tf-awards-grid { grid-template-columns: repeat(4, 1fr); } }
.tf-award-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.75rem;
  padding: 1.75rem 1rem;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-award-item:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.tf-awards--dark .tf-award-item {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-award-badge-wrap {
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tf-award-badge-img {
  width: 80px;
  height: 80px;
  object-fit: contain;
  display: block;
}
.tf-award-icon-wrap {
  width: 72px;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-award-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.35;
}
.tf-awards--dark .tf-award-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-award-org {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.4;
}
.tf-awards--dark .tf-award-org { color: rgba(255,255,255,0.5); }
.tf-award-year {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  background: hsla(45, 100%, 51%, 0.1);
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
}
/* END_SECTION:awards-recognition */

/* START_SECTION:before-after-reviews (INDEX:6) */
/* ─── ROOT TOKENS ─────────────────────────────────────────── */
.tf-bar-section {
  --bar-gold:        #FFCC00;
  --bar-gold-dim:    rgba(255, 204, 0, 0.12);
  --bar-gold-border: rgba(255, 204, 0, 0.35);
  --bar-red:         #ef4444;
  --bar-red-dim:     rgba(239, 68, 68, 0.10);
  --bar-red-border:  rgba(239, 68, 68, 0.30);
  --bar-bg:          #0A0A0A;
  --bar-surface:     #111111;
  --bar-surface2:    #181818;
  --bar-border:      rgba(255, 255, 255, 0.07);
  --bar-text:        #ffffff;
  --bar-muted:       rgba(255, 255, 255, 0.55);
  --bar-faint:       rgba(255, 255, 255, 0.08);
  font-family: 'Montserrat', sans-serif;
  background: var(--bar-bg);
  color: var(--bar-text);
  padding: 5rem 1rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .tf-bar-section {
    padding: 6.5rem 1.5rem;
  }
}

/* ─── CONTAINER ──────────────────────────────────────────── */
.tf-bar-container {
  max-width: 1180px;
  margin: 0 auto;
}

/* ─── HEADER ─────────────────────────────────────────────── */
.tf-bar-header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.tf-bar-overline {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bar-gold);
  background: var(--bar-gold-dim);
  border: 1px solid var(--bar-gold-border);
  border-radius: 100px;
  padding: 0.3125rem 1rem;
  margin-bottom: 1.25rem;
}
.tf-bar-title {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.025em;
  color: var(--bar-text);
  margin: 0 0 1rem;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.tf-bar-subtitle {
  font-size: 1.0625rem;
  color: var(--bar-muted);
  max-width: 560px;
  margin: 0 auto;
  line-height: 1.65;
}

/* ─── SPLIT WRAPPER ──────────────────────────────────────── */
.tf-bar-split-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid var(--bar-border);
  background: var(--bar-surface);
  margin-bottom: 3.5rem;
}
@media (min-width: 900px) {
  .tf-bar-split-wrapper {
    grid-template-columns: 1fr auto 1fr;
  }
}

/* ─── EACH SIDE ──────────────────────────────────────────── */
.tf-bar-side {
  padding: 2rem 1.5rem 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (min-width: 900px) {
  .tf-bar-side {
    padding: 2.5rem 2rem 2.25rem;
  }
}
.tf-bar-before {
  background: linear-gradient(160deg, #150808 0%, var(--bar-surface) 100%);
  border-bottom: 1px solid var(--bar-red-border);
}
.tf-bar-after {
  background: linear-gradient(160deg, #111008 0%, var(--bar-surface) 100%);
  border-top: 1px solid var(--bar-gold-border);
}
@media (min-width: 900px) {
  .tf-bar-before {
    border-bottom: none;
    border-right: 1px solid var(--bar-red-border);
  }
  .tf-bar-after {
    border-top: none;
    border-left: 1px solid var(--bar-gold-border);
  }
}

/* ─── BADGES ─────────────────────────────────────────────── */
.tf-bar-badge {
  display: inline-block;
  font-size: 0.625rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  border-radius: 100px;
  padding: 0.3125rem 0.875rem;
  width: fit-content;
}
.tf-bar-badge--before {
  color: var(--bar-red);
  background: var(--bar-red-dim);
  border: 1px solid var(--bar-red-border);
}
.tf-bar-badge--after {
  color: var(--bar-gold);
  background: var(--bar-gold-dim);
  border: 1px solid var(--bar-gold-border);
}

/* ─── MAP MOCK ───────────────────────────────────────────── */
.tf-bar-map-mock {
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--bar-border);
  background: #1a1a2e;
  position: relative;
  min-height: 160px;
}
.tf-bar-map-mock--before {
  border-color: var(--bar-red-border);
}
.tf-bar-map-mock--after {
  border-color: var(--bar-gold-border);
}
.tf-bar-map-bg {
  position: relative;
  height: 100px;
  background: #1e2335;
  overflow: hidden;
}
.tf-bar-map-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size: 20px 20px;
}
.tf-bar-map-road--h {
  position: absolute;
  left: 0; right: 0;
  top: 50%;
  height: 10px;
  background: rgba(255,255,255,0.08);
  transform: translateY(-50%);
}
.tf-bar-map-road--v {
  position: absolute;
  top: 0; bottom: 0;
  left: 40%;
  width: 10px;
  background: rgba(255,255,255,0.08);
}
.tf-bar-map-blocks {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 6px;
  padding: 8px;
  pointer-events: none;
}
.tf-bar-map-block {
  background: rgba(255,255,255,0.05);
  border-radius: 3px;
}
.tf-bar-pin {
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -100%) translateY(-4px);
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.6));
}
.tf-bar-pin--gray { color: #9ca3af; }
.tf-bar-pin--gold { color: var(--bar-gold); }

/* map info card */
.tf-bar-map-card {
  padding: 0.625rem 0.875rem;
  background: #111;
}
.tf-bar-map-card--before { background: #120a0a; }
.tf-bar-map-card--after  { background: #0f1008; }
.tf-bar-map-biz {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--bar-text);
  margin-bottom: 0.25rem;
}
.tf-bar-map-stars {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-bottom: 0.3125rem;
}
.tf-bar-map-rating {
  font-size: 0.75rem;
  font-weight: 700;
  color: #f59e0b;
  margin-left: 4px;
}
.tf-bar-map-count {
  font-size: 0.6875rem;
  color: var(--bar-muted);
}
.tf-bar-map-status {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-wrap: wrap;
}
.tf-bar-open-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}
.tf-bar-open-dot--gray  { background: #6b7280; }
.tf-bar-open-dot--green { background: #22c55e; }
.tf-bar-open-txt {
  font-size: 0.6875rem;
  color: var(--bar-muted);
}
.tf-bar-rank {
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.125rem 0.5rem;
  border-radius: 4px;
}
.tf-bar-rank--bad  { color: #ef4444; background: rgba(239,68,68,0.12); }
.tf-bar-rank--good { color: var(--bar-gold); background: var(--bar-gold-dim); }
.tf-bar-highly-rated {
  margin-top: 0.375rem;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.625rem;
  font-weight: 700;
  color: var(--bar-gold);
  background: var(--bar-gold-dim);
  border: 1px solid var(--bar-gold-border);
  border-radius: 4px;
  padding: 0.1875rem 0.5rem;
}

/* ─── POINTS LIST ────────────────────────────────────────── */
.tf-bar-points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.tf-bar-point {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.tf-bar-point em {
  font-style: normal;
  opacity: 0.65;
  font-size: 0.8125rem;
}
.tf-bar-point-icon {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}
.tf-bar-point--bad .tf-bar-point-icon {
  background: var(--bar-red-dim);
  color: var(--bar-red);
}
.tf-bar-point--bad {
  color: rgba(255,255,255,0.80);
}
.tf-bar-point--good .tf-bar-point-icon {
  background: var(--bar-gold-dim);
  color: var(--bar-gold);
}
.tf-bar-point--good {
  color: rgba(255,255,255,0.90);
}

/* ─── TIMELINE BAR ───────────────────────────────────────── */
.tf-bar-timeline {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 0.5rem 0.875rem;
  border-radius: 6px;
  margin-top: auto;
}
.tf-bar-timeline--before {
  background: var(--bar-red-dim);
  color: var(--bar-red);
  border: 1px solid var(--bar-red-border);
}
.tf-bar-timeline--after {
  background: var(--bar-gold-dim);
  color: var(--bar-gold);
  border: 1px solid var(--bar-gold-border);
}

/* ─── CENTER DIVIDER ─────────────────────────────────────── */
.tf-bar-divider {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 1rem 0;
  gap: 0.75rem;
  background: var(--bar-surface);
  border-top: 1px solid var(--bar-border);
  border-bottom: 1px solid var(--bar-border);
}
@media (min-width: 900px) {
  .tf-bar-divider {
    flex-direction: column;
    padding: 2rem 1rem;
    border-top: none;
    border-bottom: none;
    border-left: 1px solid var(--bar-border);
    border-right: 1px solid var(--bar-border);
  }
}
.tf-bar-divider-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--bar-border), transparent);
}
@media (min-width: 900px) {
  .tf-bar-divider-line {
    flex: 1;
    width: 1px;
    height: auto;
    background: linear-gradient(180deg, transparent, var(--bar-border), transparent);
  }
}
.tf-bar-divider-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.75rem;
}
@media (min-width: 900px) {
  .tf-bar-divider-content {
    flex-direction: column;
    gap: 0.5rem;
  }
}
.tf-bar-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}
@media (max-width: 899px) {
  .tf-bar-arrow svg {
    transform: rotate(0deg);
  }
}
@media (min-width: 900px) {
  .tf-bar-arrow svg {
    transform: rotate(0deg);
  }
}
.tf-bar-divider-time {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--bar-text);
  white-space: nowrap;
}
.tf-bar-divider-cost {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--bar-gold);
  white-space: nowrap;
}

/* ─── STATS ROW ──────────────────────────────────────────── */
.tf-bar-stats-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  background: var(--bar-surface);
  border: 1px solid var(--bar-border);
  border-radius: 16px;
  padding: 2.5rem 1.5rem;
  margin-bottom: 3rem;
  position: relative;
}
@media (min-width: 640px) {
  .tf-bar-stats-row {
    grid-template-columns: 1fr auto 1fr auto 1fr;
    gap: 0;
    align-items: center;
    padding: 2.5rem 2rem;
  }
}
@media (min-width: 900px) {
  .tf-bar-stats-row {
    padding: 3rem 3rem;
  }
}

/* glow accent */
.tf-bar-stats-row::before {
  content: '';
  position: absolute;
  top: 0; left: 50%; transform: translateX(-50%);
  width: 60%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--bar-gold), transparent);
}

.tf-bar-stat {
  text-align: center;
  padding: 0 1rem;
}
.tf-bar-stat-sep {
  display: none;
}
@media (min-width: 640px) {
  .tf-bar-stat-sep {
    display: block;
    width: 1px;
    height: 60px;
    background: var(--bar-border);
    flex-shrink: 0;
  }
}
.tf-bar-stat-num {
  font-size: clamp(2.25rem, 5vw, 3.25rem);
  font-weight: 900;
  color: var(--bar-gold);
  line-height: 1;
  margin-bottom: 0.5rem;
  letter-spacing: -0.03em;
  font-feature-settings: 'tnum';
}
.tf-bar-stat-lbl {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--bar-text);
  margin-bottom: 0.375rem;
}
.tf-bar-stat-sub {
  font-size: 0.75rem;
  color: var(--bar-muted);
  line-height: 1.5;
  max-width: 200px;
  margin: 0 auto;
}

/* ─── CASE STUDIES ───────────────────────────────────────── */
.tf-bar-cases {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: 3.5rem;
}
@media (min-width: 640px) {
  .tf-bar-cases {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 900px) {
  .tf-bar-cases {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}
.tf-bar-case {
  background: var(--bar-surface);
  border: 1px solid var(--bar-border);
  border-radius: 12px;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  transition: border-color 0.2s ease, transform 0.2s ease;
}
.tf-bar-case:hover {
  border-color: var(--bar-gold-border);
  transform: translateY(-2px);
}
.tf-bar-case-top {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.tf-bar-case-emoji {
  font-size: 1.375rem;
  line-height: 1;
}
.tf-bar-case-type {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--bar-muted);
}
.tf-bar-case-metric {
  font-size: 1rem;
  font-weight: 800;
  color: var(--bar-gold);
  line-height: 1.3;
}
.tf-bar-case-time {
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--bar-muted);
}
.tf-bar-case-quote {
  margin: 0.25rem 0 0;
  padding-left: 0.875rem;
  border-left: 2px solid var(--bar-gold-border);
}
.tf-bar-case-quote p {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.75);
  line-height: 1.6;
  margin: 0;
  font-style: italic;
}

/* ─── CTA ────────────────────────────────────────────────── */
.tf-bar-cta-wrap {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.875rem;
}
.tf-bar-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--bar-gold);
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 800;
  text-decoration: none;
  padding: 0.9375rem 2.25rem;
  border-radius: 8px;
  letter-spacing: 0.01em;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  box-shadow: 0 0 0 0 rgba(255,204,0,0);
}
.tf-bar-cta-btn:hover,
.tf-bar-cta-btn:focus-visible {
  background: #ffd633;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255,204,0,0.35);
  outline: none;
}
.tf-bar-cta-btn:active {
  transform: translateY(0);
}
.tf-bar-cta-sub {
  font-size: 0.8125rem;
  color: var(--bar-muted);
  margin: 0;
}

/* ─── REDUCED MOTION ─────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .tf-bar-case,
  .tf-bar-cta-btn {
    transition: none;
  }
}
/* END_SECTION:before-after-reviews */

/* START_SECTION:before-after (INDEX:7) */
.tf-ba {
  padding: 4rem 1rem;
  background: var(--tf-muted, #f5f5f5);
}
@media (min-width: 768px) {
  .tf-ba {
    padding: 6rem 1rem;
  }
}
.tf-ba .tf-container {
  max-width: 960px;
  margin: 0 auto;
}
.tf-ba .tf-section-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-ba .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-ba .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
  font-size: 1.125rem;
}
.tf-ba-columns {
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media (min-width: 640px) {
  .tf-ba-columns {
    flex-direction: row;
    align-items: stretch;
  }
}
.tf-ba-col {
  flex: 1;
  background: var(--tf-card, #fafafa);
  border-radius: 1rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.tf-ba-before {
  border: 1px solid var(--tf-border, #e5e5e5);
  opacity: 0.85;
}
.tf-ba-after {
  border: 2px solid var(--tf-primary, #FACC15);
  box-shadow: 0 8px 32px rgba(250, 204, 21, 0.15);
}
@media (min-width: 640px) {
  .tf-ba-before {
    border-radius: 1rem 0 0 1rem;
  }
  .tf-ba-after {
    border-radius: 0 1rem 1rem 0;
  }
}
.tf-ba-divider {
  display: none;
}
@media (min-width: 640px) {
  .tf-ba-divider {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;
    z-index: 1;
  }
}
.tf-ba-divider-line {
  width: 1px;
  flex: 1;
  background: var(--tf-border, #e5e5e5);
}
.tf-ba-divider-vs {
  width: 40px;
  height: 40px;
  background: var(--tf-secondary, #1a1a1a);
  color: var(--tf-secondary-foreground, #fafafa);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  flex-shrink: 0;
  margin: 0 -20px;
  position: relative;
  z-index: 2;
}
.tf-ba-col-header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
}
.tf-ba-col-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-ba-col-icon--before {
  background: rgba(239, 68, 68, 0.1);
  color: #ef4444;
}
.tf-ba-col-icon--after {
  background: hsla(45, 100%, 51%, 0.15);
  color: var(--tf-primary, #FACC15);
}
.tf-ba-col-title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--tf-muted-foreground, #737373);
}
.tf-ba-col-title--after {
  color: var(--tf-foreground, #141414);
}
.tf-ba-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  flex: 1;
}
.tf-ba-item {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.9375rem;
  line-height: 1.5;
}
.tf-ba-item svg {
  flex-shrink: 0;
  margin-top: 2px;
}
.tf-ba-item--bad {
  color: var(--tf-muted-foreground, #737373);
}
.tf-ba-item--bad svg {
  color: #ef4444;
}
.tf-ba-item--good {
  color: var(--tf-foreground, #141414);
  font-weight: 500;
}
.tf-ba-item--good svg {
  color: #22c55e;
}
.tf-ba-cta {
  display: block;
  text-align: center;
  margin-top: 1rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.35);
}
.tf-ba-cta:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-1px);
}
/* END_SECTION:before-after */

/* START_SECTION:blog-grid (INDEX:8) */
.tf-blog {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-blog { padding: 7rem 1rem; }
}
.tf-blog--white { background: var(--tf-background, #ffffff); }
.tf-blog--gray { background: var(--tf-muted, #f5f5f5); }
.tf-blog--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-blog .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-blog-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-blog-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-blog-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-blog--dark .tf-blog-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-blog-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
}
.tf-blog--dark .tf-blog-subtitle { color: rgba(255,255,255,0.6); }
.tf-blog-grid {
  display: grid;
  gap: 2rem;
}
.tf-blog-grid--2 { grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); }
.tf-blog-grid--3 { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.tf-blog-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(0,0,0,0.07);
  transition: transform 0.25s, box-shadow 0.25s;
}
.tf-blog--dark .tf-blog-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-blog-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0,0,0,0.12);
}
.tf-blog-card-img-wrap {
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 10;
}
.tf-blog-card-img,
.tf-blog-card-img-placeholder {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-blog-placeholder-svg {
  width: 100%;
  height: 200px;
  display: block;
}
.tf-blog-card-img-wrap:hover .tf-blog-card-img {
  transform: scale(1.05);
}
.tf-blog-card-body {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex: 1;
}
.tf-blog-card-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.tf-blog-card-tag {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: hsl(45, 100%, 30%);
}
.tf-blog--dark .tf-blog-card-tag {
  color: var(--tf-primary, #FACC15);
}
.tf-blog-card-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
  flex: 1;
}
.tf-blog-card-link {
  color: var(--tf-foreground, #141414);
  text-decoration: none;
  transition: color 0.15s;
}
.tf-blog--dark .tf-blog-card-link { color: var(--tf-secondary-foreground, #fafafa); }
.tf-blog-card-link:hover { color: var(--tf-primary, #FACC15); }
.tf-blog-card-excerpt {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-blog--dark .tf-blog-card-excerpt { color: rgba(255,255,255,0.55); }
.tf-blog-card-meta {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  flex-wrap: wrap;
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  border-top: 1px solid rgba(0,0,0,0.07);
  padding-top: 0.75rem;
  margin-top: auto;
}
.tf-blog--dark .tf-blog-card-meta {
  color: rgba(255,255,255,0.4);
  border-top-color: rgba(255,255,255,0.08);
}
.tf-blog-card-author { font-weight: 600; }
.tf-blog-cta {
  text-align: center;
  margin-top: 2.5rem;
}
.tf-blog-cta-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 700;
  font-size: 1rem;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  transition: gap 0.2s;
}
.tf-blog-cta-link:hover { gap: 0.75rem; }
/* END_SECTION:blog-grid */

/* START_SECTION:brand-story (INDEX:9) */
.tf-story {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-story .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-story-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-story-layout {
    grid-template-columns: repeat(2, 1fr);
  }
  .tf-story-layout--right .tf-story-visual {
    order: 2;
  }
  .tf-story-layout--right .tf-story-content {
    order: 1;
  }
}
/* Visual */
.tf-story-img-wrap {
  position: relative;
}
.tf-story-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 1.5rem;
  box-shadow: 0 24px 72px rgba(0, 0, 0, 0.12);
  object-fit: cover;
}
.tf-story-badge {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.875rem;
  font-weight: 800;
  padding: 0.625rem 1rem;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}
.tf-story-badge-icon {
  font-size: 1rem;
  line-height: 1;
}
.tf-story-placeholder {
  aspect-ratio: 4 / 5;
  background: #e5e5e5;
  border-radius: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #999;
  font-size: 0.875rem;
}
/* Content */
.tf-story-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  margin: 0 0 0.75rem;
}
.tf-story-heading {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.15;
  margin: 0 0 1.5rem;
}
.tf-story-body {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
  margin: 0 0 1.25rem;
}
/* Blockquote */
.tf-story-blockquote {
  margin: 1.75rem 0;
  padding: 1.5rem 1.75rem;
  background: var(--tf-muted, #f5f5f5);
  border-left: 4px solid var(--tf-primary, #FACC15);
  border-radius: 0 1rem 1rem 0;
}
.tf-story-quote-text {
  font-size: 1.1875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  line-height: 1.55;
  font-style: italic;
  margin: 0 0 1rem;
}
.tf-story-attribution {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.tf-story-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.tf-story-cite {
  display: flex;
  flex-direction: column;
  font-style: normal;
}
.tf-story-cite-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-story-cite-title {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
/* Metrics */
.tf-story-metrics {
  display: flex;
  gap: 1.5rem;
  align-items: center;
  margin: 1.75rem 0;
  padding: 1.5rem;
  background: var(--tf-muted, #f5f5f5);
  border-radius: 1rem;
  flex-wrap: wrap;
}
.tf-story-metric {
  flex: 1;
  min-width: 80px;
  text-align: center;
}
.tf-story-metric-num {
  display: block;
  font-size: 1.875rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.02em;
  line-height: 1;
  margin-bottom: 0.25rem;
}
.tf-story-metric-label {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  font-weight: 500;
}
.tf-story-metric-divider {
  width: 1px;
  height: 40px;
  background: rgba(0, 0, 0, 0.1);
  flex-shrink: 0;
}
/* CTA */
.tf-story-cta {
  margin-top: 2rem;
}
.tf-story-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-story-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-story-secondary {
  margin: 0.75rem 0 0;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
/* END_SECTION:brand-story */

/* START_SECTION:breadcrumb (INDEX:10) */
.tf-breadcrumb {
  padding: 0.875rem 1rem;
  border-bottom: 1px solid rgba(0,0,0,0.07);
}
.tf-breadcrumb--white { background: var(--tf-background, #ffffff); }
.tf-breadcrumb--gray { background: var(--tf-muted, #f5f5f5); }
.tf-breadcrumb--dark {
  background: var(--tf-secondary, #1a1a1a);
  border-bottom-color: rgba(255,255,255,0.08);
}
.tf-breadcrumb .tf-container {
  max-width: 1280px;
  margin: 0 auto;
}
.tf-breadcrumb-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25rem;
}
.tf-breadcrumb-item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.tf-breadcrumb-sep {
  color: var(--tf-muted-foreground, #737373);
  flex-shrink: 0;
}
.tf-breadcrumb-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: none;
  transition: color 0.15s;
  font-weight: 500;
}
.tf-breadcrumb-link:hover { color: var(--tf-primary, #FACC15); }
.tf-breadcrumb--dark .tf-breadcrumb-link { color: rgba(255,255,255,0.5); }
.tf-breadcrumb--dark .tf-breadcrumb-link:hover { color: var(--tf-primary, #FACC15); }
.tf-breadcrumb-current {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-breadcrumb--dark .tf-breadcrumb-current { color: var(--tf-secondary-foreground, #fafafa); }
/* END_SECTION:breadcrumb */

/* START_SECTION:bulk-order (INDEX:11) */
.tf-bulk { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-bulk { padding: 7rem 1rem; } }
.tf-bulk--white { background: var(--tf-background, #ffffff); }
.tf-bulk--gray { background: var(--tf-muted, #f5f5f5); }
.tf-bulk--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-bulk .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-bulk-header { text-align: center; margin-bottom: 3rem; }
.tf-bulk-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-bulk-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-bulk--dark .tf-bulk-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-bulk-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-bulk--dark .tf-bulk-subtitle { color: rgba(255,255,255,0.6); }
.tf-bulk-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: start;
}
@media (min-width: 900px) { .tf-bulk-layout { grid-template-columns: 1fr 1.5fr; } }
.tf-bulk-tiers {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.tf-bulk-tier {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 1rem;
  padding: 1.25rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.tf-bulk--dark .tf-bulk-tier {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-bulk-tier--popular {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
  background: hsla(45,100%,51%,0.04);
}
.tf-bulk-popular-tag {
  position: absolute;
  top: -11px;
  left: 1.25rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
}
.tf-bulk-tier-qty {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  flex: 1;
}
.tf-bulk--dark .tf-bulk-tier-qty { color: var(--tf-secondary-foreground, #fafafa); }
.tf-bulk-tier-price { display: flex; align-items: baseline; gap: 0.25rem; }
.tf-bulk-price-val {
  font-size: 1.5rem;
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
}
.tf-bulk-price-unit {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-bulk-savings {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #22c55e;
  background: rgba(34,197,94,0.1);
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
}
.tf-bulk-tier-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1.25rem;
  border: 2px solid rgba(0,0,0,0.12);
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  text-decoration: none;
  transition: border-color 0.2s, background 0.2s;
  white-space: nowrap;
}
.tf-bulk-tier-btn:hover {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.08);
}
.tf-bulk-tier-btn--primary {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
}
.tf-bulk-tier-btn--primary:hover { background: hsl(45,100%,45%); border-color: hsl(45,100%,45%); }
.tf-bulk--dark .tf-bulk-tier-btn {
  border-color: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.85);
}
.tf-bulk-form-wrap {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.5rem;
  padding: 2rem;
}
.tf-bulk--dark .tf-bulk-form-wrap {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-bulk-form-title {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.375rem;
}
.tf-bulk--dark .tf-bulk-form-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-bulk-form-sub {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0 0 1.5rem;
}
.tf-bulk-form { display: flex; flex-direction: column; gap: 1rem; }
.tf-bulk-form-row { display: grid; grid-template-columns: 1fr; gap: 1rem; }
@media (min-width: 560px) { .tf-bulk-form-row { grid-template-columns: 1fr 1fr; } }
.tf-bulk-field { display: flex; flex-direction: column; gap: 0.375rem; }
.tf-bulk-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-bulk--dark .tf-bulk-label { color: rgba(255,255,255,0.8); }
.tf-bulk-input {
  padding: 0.625rem 0.875rem;
  border: 1px solid rgba(0,0,0,0.15);
  border-radius: 0.625rem;
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
  background: var(--tf-background, #ffffff);
  width: 100%;
  box-sizing: border-box;
  transition: border-color 0.2s;
}
.tf-bulk--dark .tf-bulk-input {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.9);
}
.tf-bulk-input:focus {
  outline: none;
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 0 0 3px hsla(45,100%,51%,0.12);
}
.tf-bulk-select { cursor: pointer; }
.tf-bulk-textarea { resize: vertical; min-height: 80px; }
.tf-bulk-submit {
  width: 100%;
  padding: 0.875rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border: none;
  border-radius: 9999px;
  cursor: pointer;
  transition: background 0.2s;
}
.tf-bulk-submit:hover { background: hsl(45,100%,45%); }
.tf-bulk-contact-cta { display: flex; flex-direction: column; gap: 0.875rem; margin-bottom: 1.5rem; }
.tf-bulk-email-link,
.tf-bulk-phone-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  transition: opacity 0.2s;
}
.tf-bulk-email-link:hover, .tf-bulk-phone-link:hover { opacity: 0.8; }
.tf-bulk-perks {
  list-style: none;
  margin: 1.5rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  border-top: 1px solid rgba(0,0,0,0.07);
  padding-top: 1.25rem;
}
.tf-bulk--dark .tf-bulk-perks { border-top-color: rgba(255,255,255,0.07); }
.tf-bulk-perks li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-bulk--dark .tf-bulk-perks li { color: rgba(255,255,255,0.5); }
.tf-bulk-perks svg { color: #22c55e; flex-shrink: 0; margin-top: 2px; }
/* END_SECTION:bulk-order */

/* START_SECTION:callout-banner (INDEX:13) */
.tf-cta-banner {
  position: relative;
  padding: 5rem 1rem;
  background-image: var(--tf-banner-bg);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
@media (min-width: 768px) { .tf-cta-banner { padding: 7rem 1rem; } }
.tf-cta-banner--yellow { background-color: var(--tf-primary, #FACC15); }
.tf-cta-banner--dark { background-color: var(--tf-secondary, #1a1a1a); }
.tf-cta-banner--white { background-color: var(--tf-background, #ffffff); }
.tf-cta-banner--gray { background-color: var(--tf-muted, #f5f5f5); }
.tf-cta-banner-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
  z-index: 0;
}
.tf-cta-banner .tf-container {
  position: relative;
  z-index: 1;
  max-width: 900px;
  margin: 0 auto;
}
.tf-cta-banner-inner {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.tf-cta-banner-inner--center { align-items: center; text-align: center; }
.tf-cta-banner-inner--left { align-items: flex-start; text-align: left; }
.tf-cta-banner-badge {
  display: inline-flex;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.3rem 0.875rem;
  border-radius: 9999px;
  background: rgba(255,255,255,0.15);
  color: #ffffff;
  backdrop-filter: blur(4px);
}
.tf-cta-banner--yellow .tf-cta-banner-badge {
  background: rgba(0,0,0,0.1);
  color: var(--tf-foreground, #141414);
}
.tf-cta-banner--white .tf-cta-banner-badge,
.tf-cta-banner--gray .tf-cta-banner-badge {
  background: hsla(45,100%,51%,0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-cta-banner-title {
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0;
  color: #ffffff;
}
.tf-cta-banner--yellow .tf-cta-banner-title { color: var(--tf-foreground, #141414); }
.tf-cta-banner--white .tf-cta-banner-title,
.tf-cta-banner--gray .tf-cta-banner-title { color: var(--tf-foreground, #141414); }
.tf-cta-banner-subtitle {
  font-size: 1.125rem;
  line-height: 1.65;
  margin: 0;
  max-width: 620px;
  color: rgba(255,255,255,0.82);
}
.tf-cta-banner-inner--center .tf-cta-banner-subtitle { margin-left: auto; margin-right: auto; }
.tf-cta-banner--yellow .tf-cta-banner-subtitle { color: rgba(0,0,0,0.7); }
.tf-cta-banner--white .tf-cta-banner-subtitle,
.tf-cta-banner--gray .tf-cta-banner-subtitle { color: var(--tf-muted-foreground, #737373); }
.tf-cta-banner-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}
.tf-cta-banner-inner--center .tf-cta-banner-actions { justify-content: center; }
.tf-cta-banner-btn {
  display: inline-flex;
  align-items: center;
  padding: 1rem 2.5rem;
  font-size: 1.0625rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s, transform 0.15s;
}
.tf-cta-banner-btn:hover { transform: translateY(-1px); }
.tf-cta-banner-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-cta-banner-btn--primary:hover { background: hsl(45,100%,45%); }
.tf-cta-banner--yellow .tf-cta-banner-btn--primary {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
}
.tf-cta-banner--yellow .tf-cta-banner-btn--primary:hover { background: #333; }
.tf-cta-banner--white .tf-cta-banner-btn--primary,
.tf-cta-banner--gray .tf-cta-banner-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-cta-banner-btn--secondary {
  border: 2px solid rgba(255,255,255,0.4);
  color: rgba(255,255,255,0.9);
  background: transparent;
}
.tf-cta-banner-btn--secondary:hover {
  border-color: rgba(255,255,255,0.8);
  background: rgba(255,255,255,0.08);
}
.tf-cta-banner--yellow .tf-cta-banner-btn--secondary {
  border-color: rgba(0,0,0,0.25);
  color: var(--tf-foreground, #141414);
}
.tf-cta-banner--yellow .tf-cta-banner-btn--secondary:hover {
  border-color: rgba(0,0,0,0.55);
}
.tf-cta-banner--white .tf-cta-banner-btn--secondary,
.tf-cta-banner--gray .tf-cta-banner-btn--secondary {
  border-color: rgba(0,0,0,0.2);
  color: var(--tf-foreground, #141414);
}
.tf-cta-banner--white .tf-cta-banner-btn--secondary:hover,
.tf-cta-banner--gray .tf-cta-banner-btn--secondary:hover {
  border-color: var(--tf-foreground, #141414);
}
.tf-cta-banner-note {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.5);
  margin: 0;
}
.tf-cta-banner--yellow .tf-cta-banner-note { color: rgba(0,0,0,0.45); }
.tf-cta-banner--white .tf-cta-banner-note,
.tf-cta-banner--gray .tf-cta-banner-note { color: var(--tf-muted-foreground, #737373); }
/* END_SECTION:callout-banner */

/* START_SECTION:case-studies (INDEX:19) */
.tf-case {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-case { padding: 7rem 1rem; }
}
.tf-case--white { background: var(--tf-background, #ffffff); }
.tf-case--gray { background: var(--tf-muted, #f5f5f5); }
.tf-case--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-case .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-case-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-case-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-case-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-case--dark .tf-case-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-case-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-case--dark .tf-case-subtitle { color: rgba(255,255,255,0.6); }
.tf-case-grid {
  display: grid;
  gap: 1.5rem;
}
.tf-case-grid--2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 460px), 1fr)); }
.tf-case-grid--3 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
.tf-case-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  padding: 2rem;
  border: 1px solid rgba(0,0,0,0.07);
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  transition: box-shadow 0.2s, transform 0.2s;
}
.tf-case-card:hover {
  box-shadow: 0 16px 48px rgba(0,0,0,0.1);
  transform: translateY(-3px);
}
.tf-case--dark .tf-case-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-case-industry {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-case-metrics {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.tf-case-metric {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  flex: 1;
  min-width: 80px;
}
.tf-case-metric-value {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  letter-spacing: -0.03em;
  line-height: 1;
}
.tf-case-metric-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.tf-case--dark .tf-case-metric-label { color: rgba(255,255,255,0.45); }
.tf-case-quote {
  margin: 0;
  padding: 0;
  border-left: 3px solid var(--tf-primary, #FACC15);
  padding-left: 1rem;
}
.tf-case-quote p {
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.6;
  font-style: italic;
  margin: 0;
}
.tf-case--dark .tf-case-quote p { color: rgba(255,255,255,0.8); }
.tf-case-customer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-top: auto;
  padding-top: 0.5rem;
  border-top: 1px solid rgba(0,0,0,0.07);
}
.tf-case--dark .tf-case-customer { border-top-color: rgba(255,255,255,0.08); }
.tf-case-photo-wrap {
  flex-shrink: 0;
}
.tf-case-photo {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  border: 2px solid var(--tf-primary, #FACC15);
}
.tf-case-photo-placeholder {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1.125rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-case-customer-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}
.tf-case-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-case--dark .tf-case-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-case-business {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-case--dark .tf-case-business { color: rgba(255,255,255,0.45); }
.tf-case-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  transition: gap 0.2s;
}
.tf-case-cta:hover { gap: 0.625rem; }
.tf-case-footer {
  margin-top: 3rem;
  text-align: center;
}
.tf-case-footer-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250,204,21,0.35);
}
.tf-case-footer-btn:hover { background: hsl(45,100%,45%); transform: translateY(-2px); }
/* END_SECTION:case-studies */

/* START_SECTION:collection-banner (INDEX:22) */
.tf-col-banner {
  position: relative;
  padding: 3rem 1rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .tf-col-banner {
    padding: 4rem 1rem;
  }
}
.tf-col-banner--dark {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-col-banner--light {
  background: var(--tf-muted, #f5f5f5);
}
.tf-col-banner--primary {
  background: var(--tf-primary, #FACC15);
}
.tf-col-banner-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.tf-col-banner-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
}
.tf-col-banner .tf-container {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.tf-col-banner-inner {
  max-width: 640px;
}
.tf-col-banner-breadcrumb {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
  margin-bottom: 1rem;
}
.tf-col-banner--dark .tf-col-banner-breadcrumb,
.tf-col-banner-bg ~ .tf-container .tf-col-banner-breadcrumb {
  color: rgba(255, 255, 255, 0.6);
}
.tf-col-banner--light .tf-col-banner-breadcrumb {
  color: var(--tf-muted-foreground, #737373);
}
.tf-col-banner--primary .tf-col-banner-breadcrumb {
  color: rgba(0, 0, 0, 0.6);
}
.tf-col-banner-breadcrumb a {
  text-decoration: none;
  transition: opacity 0.15s;
}
.tf-col-banner-breadcrumb a:hover {
  opacity: 0.8;
}
.tf-col-banner-title {
  font-size: clamp(1.875rem, 5vw, 3rem);
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}
.tf-col-banner--dark .tf-col-banner-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-col-banner--light .tf-col-banner-title {
  color: var(--tf-foreground, #141414);
}
.tf-col-banner--primary .tf-col-banner-title {
  color: var(--tf-foreground, #141414);
}
.tf-col-banner-bg + .tf-col-banner-overlay + .tf-container .tf-col-banner-title {
  color: #ffffff;
}
.tf-col-banner-description {
  font-size: 1rem;
  line-height: 1.7;
  margin-bottom: 1rem;
}
.tf-col-banner--dark .tf-col-banner-description {
  color: rgba(255, 255, 255, 0.7);
}
.tf-col-banner--light .tf-col-banner-description {
  color: var(--tf-muted-foreground, #737373);
}
.tf-col-banner--primary .tf-col-banner-description {
  color: rgba(0, 0, 0, 0.7);
}
.tf-col-banner-count {
  font-size: 0.875rem;
  font-weight: 500;
  margin-bottom: 1rem;
}
.tf-col-banner--dark .tf-col-banner-count {
  color: rgba(255, 255, 255, 0.5);
}
.tf-col-banner--light .tf-col-banner-count {
  color: var(--tf-muted-foreground, #737373);
}
.tf-col-banner--primary .tf-col-banner-count {
  color: rgba(0, 0, 0, 0.5);
}
.tf-col-banner-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.tf-col-banner-badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.8125rem;
  font-weight: 700;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
/* END_SECTION:collection-banner */

/* START_SECTION:collection-grid (INDEX:23) */
.tf-collection {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-collection { padding: 7rem 1rem; }
}
.tf-collection--white { background: var(--tf-background, #ffffff); }
.tf-collection--gray { background: var(--tf-muted, #f5f5f5); }
.tf-collection--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-collection .tf-container {
  max-width: 1280px;
  margin: 0 auto;
}
.tf-collection-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-collection-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-collection-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-collection--dark .tf-collection-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-collection-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  max-width: 600px;
  margin: 0 auto;
}
.tf-collection--dark .tf-collection-subtitle { color: rgba(255,255,255,0.6); }
.tf-collection-grid {
  display: grid;
  gap: 1.75rem;
}
.tf-collection-grid--2 { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
.tf-collection-grid--3 { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.tf-collection-grid--4 { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.tf-collection-product {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.tf-collection-product-img-wrap {
  position: relative;
  border-radius: 1rem;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: var(--tf-muted, #f5f5f5);
}
.tf-collection-product-link {
  display: block;
  text-decoration: none;
}
.tf-collection-product-img,
.tf-collection-placeholder {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-collection-product-link:hover .tf-collection-product-img {
  transform: scale(1.04);
}
.tf-collection-badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.25rem 0.625rem;
  border-radius: 9999px;
}
.tf-collection-badge--sale {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-collection-badge--sold-out {
  background: rgba(0,0,0,0.7);
  color: #fff;
}
.tf-collection-product-info {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.tf-collection-product-vendor {
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--tf-muted-foreground, #737373);
}
.tf-collection-product-title {
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
}
.tf-collection-product-name {
  color: var(--tf-foreground, #141414);
  text-decoration: none;
  transition: color 0.15s;
}
.tf-collection--dark .tf-collection-product-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-collection-product-name:hover { color: var(--tf-primary, #FACC15); }
.tf-collection-product-stars {
  display: flex;
  gap: 2px;
  color: var(--tf-primary, #FACC15);
}
.tf-collection-product-price {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}
.tf-collection-price {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-collection--dark .tf-collection-price { color: var(--tf-secondary-foreground, #fafafa); }
.tf-collection-price--sale { color: #dc2626; }
.tf-collection-price-compare {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: line-through;
}
.tf-collection-atc {
  display: block;
  width: 100%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  border: none;
  border-radius: 9999px;
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.75rem 1.5rem;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
  margin-top: 0.25rem;
}
.tf-collection-atc:hover { background: hsl(45, 100%, 45%); transform: translateY(-1px); }
.tf-collection-atc--disabled {
  background: var(--tf-muted, #f5f5f5);
  color: var(--tf-muted-foreground, #737373);
  cursor: not-allowed;
}
.tf-collection-view-all {
  text-align: center;
  margin-top: 3rem;
}
.tf-collection-view-all-btn {
  display: inline-block;
  border: 2px solid var(--tf-primary, #FACC15);
  color: var(--tf-primary, #FACC15);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.tf-collection-view-all-btn:hover {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-collection-no-selection {
  text-align: center;
  color: var(--tf-muted-foreground, #737373);
  padding: 3rem;
}
/* END_SECTION:collection-grid */

/* START_SECTION:comparison-table (INDEX:25) */
.tf-comparison {
  padding: 4rem 1rem;
  background: var(--tf-muted, #f5f5f5);
}
@media (min-width: 768px) {
  .tf-comparison {
    padding: 6rem 1rem;
  }
}
.tf-comparison .tf-container {
  max-width: 900px;
  margin: 0 auto;
}
.tf-comparison .tf-section-header {
  text-align: center;
  margin-bottom: 2.5rem;
}
.tf-comparison .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-comparison .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
}
.tf-comparison-wrapper {
  overflow-x: auto;
  border-radius: 1rem;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
}
.tf-comparison-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--tf-card, #fafafa);
  font-size: 0.9375rem;
}
.tf-comparison-table thead {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-comparison-table th {
  padding: 1.25rem 1rem;
  text-align: center;
  color: var(--tf-secondary-foreground, #fafafa);
  font-weight: 600;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.tf-comparison-table th:first-child {
  text-align: left;
}
.tf-comparison-tapfive-col {
  background: hsla(45, 100%, 51%, 0.08);
  border-left: 2px solid var(--tf-primary, #FACC15);
  border-right: 2px solid var(--tf-primary, #FACC15);
}
thead .tf-comparison-tapfive-col {
  background: hsla(45, 100%, 51%, 0.15);
}
.tf-comparison-brand {
  display: block;
  font-size: 1rem;
  color: var(--tf-primary, #FACC15);
  font-weight: 700;
}
.tf-comparison-recommended {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.625rem;
  font-weight: 700;
  padding: 0.125rem 0.5rem;
  border-radius: 9999px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-top: 0.25rem;
}
.tf-comparison-feature-col {
  width: 35%;
  text-align: left !important;
}
.tf-comparison-table tbody tr {
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
  transition: background 0.15s;
}
.tf-comparison-table tbody tr:last-child {
  border-bottom: none;
}
.tf-comparison-table tbody tr:hover {
  background: var(--tf-muted, #f5f5f5);
}
.tf-comparison-table td {
  padding: 1rem;
  text-align: center;
  color: var(--tf-muted-foreground, #737373);
}
.tf-comparison-feature {
  text-align: left !important;
  font-weight: 500;
  color: var(--tf-foreground, #141414);
}
.tf-comp-yes {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #22c55e;
}
.tf-comp-no {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ef4444;
}
.tf-comp-text {
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
tbody .tf-comparison-tapfive-col .tf-comp-yes {
  color: var(--tf-primary, #FACC15);
}
/* END_SECTION:comparison-table */

/* START_SECTION:cookie-consent (INDEX:27) */
.tf-cookie {
  position: fixed;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%) translateY(120%);
  z-index: 9999;
  width: calc(100% - 2rem);
  max-width: 680px;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.4s;
  opacity: 0;
  pointer-events: none;
}
.tf-cookie--visible {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
  pointer-events: auto;
}
.tf-cookie-inner {
  background: var(--tf-secondary, #1a1a1a);
  border-radius: 1rem;
  padding: 1.25rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  box-shadow: 0 16px 48px rgba(0,0,0,0.3);
  border: 1px solid rgba(255,255,255,0.1);
}
@media (min-width: 640px) {
  .tf-cookie-inner {
    flex-direction: row;
    align-items: center;
  }
}
.tf-cookie-text {
  display: flex;
  gap: 0.875rem;
  align-items: flex-start;
  flex: 1;
}
.tf-cookie-emoji {
  font-size: 1.5rem;
  flex-shrink: 0;
  line-height: 1;
  margin-top: 2px;
}
.tf-cookie-title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-secondary-foreground, #fafafa);
  margin: 0 0 0.25rem;
}
.tf-cookie-desc {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.6);
  line-height: 1.5;
  margin: 0;
}
.tf-cookie-policy-link {
  font-size: 0.8125rem;
  color: var(--tf-primary, #FACC15);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.tf-cookie-actions {
  display: flex;
  gap: 0.625rem;
  flex-shrink: 0;
  flex-wrap: wrap;
}
.tf-cookie-btn {
  padding: 0.625rem 1.25rem;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 700;
  cursor: pointer;
  border: none;
  transition: background 0.2s, transform 0.2s;
  white-space: nowrap;
}
.tf-cookie-btn--accept {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-cookie-btn--accept:hover { background: hsl(45,100%,45%); transform: translateY(-1px); }
.tf-cookie-btn--decline {
  background: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.8);
}
.tf-cookie-btn--decline:hover { background: rgba(255,255,255,0.15); }
/* END_SECTION:cookie-consent */

/* START_SECTION:countdown-timer (INDEX:28) */
.tf-countdown { padding: 4.5rem 1rem; }
@media (min-width: 768px) { .tf-countdown { padding: 6rem 1rem; } }
.tf-countdown--white { background: var(--tf-background, #ffffff); }
.tf-countdown--gray { background: var(--tf-muted, #f5f5f5); }
.tf-countdown--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-countdown--yellow { background: var(--tf-primary, #FACC15); }
.tf-countdown .tf-container { max-width: 900px; margin: 0 auto; }
.tf-countdown-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  text-align: center;
}
.tf-countdown-content { display: flex; flex-direction: column; align-items: center; gap: 0.75rem; }
.tf-countdown-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-countdown--yellow .tf-countdown-badge {
  background: rgba(0,0,0,0.1);
  color: var(--tf-foreground, #141414);
}
.tf-countdown-title {
  font-size: clamp(1.5rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-countdown--dark .tf-countdown-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-countdown--yellow .tf-countdown-title { color: var(--tf-foreground, #141414); }
.tf-countdown-subtitle {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-countdown--dark .tf-countdown-subtitle { color: rgba(255,255,255,0.6); }
.tf-countdown--yellow .tf-countdown-subtitle { color: rgba(0,0,0,0.65); }
.tf-countdown-timer {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media (min-width: 640px) { .tf-countdown-timer { gap: 1rem; } }
.tf-cd-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.375rem;
  min-width: 4rem;
}
@media (min-width: 640px) { .tf-cd-unit { min-width: 5.5rem; } }
.tf-cd-num {
  font-size: clamp(2.25rem, 6vw, 4rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--tf-foreground, #141414);
  font-variant-numeric: tabular-nums;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 0.875rem;
  padding: 0.625rem 0.875rem;
  min-width: 4rem;
  text-align: center;
}
@media (min-width: 640px) { .tf-cd-num { min-width: 5.5rem; padding: 0.875rem 1.25rem; } }
.tf-countdown--dark .tf-cd-num {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.1);
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-countdown--yellow .tf-cd-num {
  background: rgba(255,255,255,0.4);
  border-color: rgba(0,0,0,0.1);
  color: var(--tf-foreground, #141414);
}
.tf-countdown--gray .tf-cd-num {
  background: var(--tf-background, #ffffff);
}
.tf-cd-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--tf-muted-foreground, #737373);
}
.tf-countdown--dark .tf-cd-label { color: rgba(255,255,255,0.45); }
.tf-countdown--yellow .tf-cd-label { color: rgba(0,0,0,0.55); }
.tf-cd-sep {
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
  margin-bottom: 1.5rem;
}
.tf-countdown--yellow .tf-cd-sep { color: var(--tf-foreground, #141414); opacity: 0.4; }
.tf-countdown-expired {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-countdown-cta-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}
.tf-countdown-cta {
  display: inline-flex;
  align-items: center;
  padding: 1rem 2.75rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1.0625rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
}
.tf-countdown-cta:hover { background: hsl(45,100%,45%); transform: translateY(-1px); }
.tf-countdown--yellow .tf-countdown-cta {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
}
.tf-countdown--yellow .tf-countdown-cta:hover { background: #333; }
.tf-countdown-note {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-countdown--dark .tf-countdown-note { color: rgba(255,255,255,0.45); }
.tf-countdown--yellow .tf-countdown-note { color: rgba(0,0,0,0.5); }
/* END_SECTION:countdown-timer */

/* START_SECTION:cta-banner (INDEX:29) */
.tf-cta {
  position: relative;
  padding: 5rem 1rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .tf-cta { padding: 7rem 1rem; }
}
.tf-cta--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-cta--light { background: var(--tf-muted, #f5f5f5); }
.tf-cta--primary { background: var(--tf-primary, #FACC15); }
.tf-cta--image { background: var(--tf-secondary, #1a1a1a); }
.tf-cta-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.tf-cta-bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tf-cta-bg-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
}
.tf-cta .tf-container {
  position: relative;
  z-index: 1;
  max-width: 800px;
  margin: 0 auto;
}
.tf-cta-inner {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}
.tf-cta-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.3rem 0.875rem;
  border-radius: 9999px;
}
.tf-cta--dark .tf-cta-badge,
.tf-cta--image .tf-cta-badge {
  background: hsla(45, 100%, 51%, 0.15);
  color: var(--tf-primary, #FACC15);
}
.tf-cta--light .tf-cta-badge {
  background: hsla(45, 100%, 51%, 0.12);
  color: hsl(45, 100%, 30%);
}
.tf-cta--primary .tf-cta-badge {
  background: rgba(0,0,0,0.12);
  color: var(--tf-foreground, #141414);
}
.tf-cta-title {
  font-size: clamp(1.75rem, 4vw, 3rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.tf-cta--dark .tf-cta-title,
.tf-cta--image .tf-cta-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-cta--light .tf-cta-title {
  color: var(--tf-foreground, #141414);
}
.tf-cta--primary .tf-cta-title {
  color: var(--tf-foreground, #141414);
}
.tf-cta-subtitle {
  font-size: 1.125rem;
  line-height: 1.7;
  max-width: 600px;
}
.tf-cta--dark .tf-cta-subtitle,
.tf-cta--image .tf-cta-subtitle {
  color: rgba(255,255,255,0.7);
}
.tf-cta--light .tf-cta-subtitle {
  color: var(--tf-muted-foreground, #737373);
}
.tf-cta--primary .tf-cta-subtitle {
  color: rgba(0,0,0,0.65);
}
.tf-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  justify-content: center;
}
.tf-cta-btn-primary {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2.25rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-cta--primary .tf-cta-btn-primary {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
  box-shadow: none;
}
.tf-cta-btn-primary:hover {
  transform: translateY(-2px);
}
.tf-cta--dark .tf-cta-btn-primary:hover,
.tf-cta--image .tf-cta-btn-primary:hover,
.tf-cta--light .tf-cta-btn-primary:hover {
  background: hsl(45, 100%, 45%);
}
.tf-cta-btn-ghost {
  display: inline-block;
  font-weight: 600;
  font-size: 1rem;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: opacity 0.15s;
}
.tf-cta--dark .tf-cta-btn-ghost,
.tf-cta--image .tf-cta-btn-ghost {
  color: rgba(255,255,255,0.75);
}
.tf-cta--light .tf-cta-btn-ghost {
  color: var(--tf-foreground, #141414);
}
.tf-cta--primary .tf-cta-btn-ghost {
  color: rgba(0,0,0,0.7);
}
.tf-cta-btn-ghost:hover { opacity: 0.7; }
.tf-cta-note {
  font-size: 0.875rem;
}
.tf-cta--dark .tf-cta-note,
.tf-cta--image .tf-cta-note {
  color: rgba(255,255,255,0.4);
}
.tf-cta--light .tf-cta-note {
  color: var(--tf-muted-foreground, #737373);
}
.tf-cta--primary .tf-cta-note {
  color: rgba(0,0,0,0.5);
}
/* END_SECTION:cta-banner */

/* START_SECTION:customer-love-wall (INDEX:33) */
/* ============================================================
   TapFive — Customer Love Wall
   Prefix: .tf-clw__
   ============================================================ */

/* ── Custom Properties ──────────────────────────────────────── */
.tf-clw {
  --clw-bg: #0A0A0A;
  --clw-card-bg: #111111;
  --clw-card-bg-hover: #161616;
  --clw-gold: #FFCC00;
  --clw-gold-dark: #E6B800;
  --clw-text-primary: #F5F5F5;
  --clw-text-secondary: #A0A0A0;
  --clw-text-muted: #6B6B6B;
  --clw-border: rgba(255, 204, 0, 0.12);
  --clw-border-hover: rgba(255, 204, 0, 0.35);
  --clw-radius: 14px;
  --clw-gap: 20px;
  --clw-font: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --clw-accent-h: 3px;
  --clw-transition: 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* ── Section Shell ──────────────────────────────────────────── */
.tf-clw {
  background-color: var(--clw-bg);
  padding: 80px 24px 72px;
  font-family: var(--clw-font);
  overflow: hidden;
}

/* ── Header ─────────────────────────────────────────────────── */
.tf-clw__header {
  text-align: center;
  max-width: 740px;
  margin: 0 auto 56px;
}

.tf-clw__overline {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--clw-gold);
  margin: 0 0 18px;
  padding: 5px 14px;
  border: 1px solid rgba(255, 204, 0, 0.3);
  border-radius: 100px;
}

.tf-clw__title {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 800;
  line-height: 1.15;
  color: var(--clw-text-primary);
  margin: 0 0 18px;
  letter-spacing: -0.02em;
}

.tf-clw__subtitle {
  font-size: clamp(15px, 2vw, 17px);
  font-weight: 400;
  line-height: 1.65;
  color: var(--clw-text-secondary);
  margin: 0;
}

/* ── Grid ───────────────────────────────────────────────────── */
.tf-clw__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: masonry; /* progressive enhancement */
  gap: var(--clw-gap);
  max-width: 1200px;
  margin: 0 auto 48px;
  align-items: start; /* fallback masonry feel */
}

/* ── Cards ──────────────────────────────────────────────────── */
.tf-clw__card {
  position: relative;
  background: var(--clw-card-bg);
  border: 1px solid var(--clw-border);
  border-radius: var(--clw-radius);
  padding: 28px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition:
    border-color var(--clw-transition),
    background-color var(--clw-transition),
    transform var(--clw-transition),
    box-shadow var(--clw-transition);
  /* Scroll reveal: start hidden */
  opacity: 0;
  transform: translateY(28px);
  will-change: opacity, transform;
  overflow: hidden;
}

.tf-clw__card.tf-clw--revealed {
  opacity: 1;
  transform: translateY(0);
}

.tf-clw__card:hover {
  border-color: var(--clw-border-hover);
  background-color: var(--clw-card-bg-hover);
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(255, 204, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.4);
}

/* Override hover transform when card is animating in */
.tf-clw__card:not(.tf-clw--revealed):hover {
  transform: translateY(28px);
}

/* Gold top accent line */
.tf-clw__card-accent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: var(--clw-accent-h);
  background: linear-gradient(90deg, var(--clw-gold) 0%, var(--clw-gold-dark) 100%);
  border-radius: var(--clw-radius) var(--clw-radius) 0 0;
}

/* ── Stagger delays for scroll reveal ──────────────────────── */
.tf-clw__card--1  { transition-delay: 0.00s; }
.tf-clw__card--2  { transition-delay: 0.07s; }
.tf-clw__card--3  { transition-delay: 0.14s; }
.tf-clw__card--4  { transition-delay: 0.04s; }
.tf-clw__card--5  { transition-delay: 0.11s; }
.tf-clw__card--6  { transition-delay: 0.18s; }
.tf-clw__card--7  { transition-delay: 0.08s; }
.tf-clw__card--8  { transition-delay: 0.15s; }
.tf-clw__card--9  { transition-delay: 0.22s; }
.tf-clw__card--10 { transition-delay: 0.06s; }
.tf-clw__card--11 { transition-delay: 0.13s; }
.tf-clw__card--12 { transition-delay: 0.20s; }

/* Extra height variation via padding to give masonry feel */
.tf-clw__card--2  { padding-bottom: 32px; }
.tf-clw__card--5  { padding-bottom: 36px; }
.tf-clw__card--7  { padding-bottom: 32px; }
.tf-clw__card--10 { padding-bottom: 38px; }

/* ── Stars ──────────────────────────────────────────────────── */
.tf-clw__stars {
  display: flex;
  gap: 3px;
  flex-shrink: 0;
}

.tf-clw__star {
  display: block;
  flex-shrink: 0;
}

/* ── Quote ──────────────────────────────────────────────────── */
.tf-clw__quote {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
  color: var(--clw-text-primary);
  font-style: normal;
  flex: 1;
}

.tf-clw__quote-mark {
  color: var(--clw-gold);
  font-size: 18px;
  line-height: 0;
  vertical-align: -0.25em;
  font-style: normal;
}

.tf-clw__quote-mark--close {
  margin-left: 2px;
}

/* ── Result Badge ───────────────────────────────────────────── */
.tf-clw__result-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--clw-gold);
  color: #0A0A0A;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding: 5px 12px 5px 9px;
  border-radius: 100px;
  align-self: flex-start;
  line-height: 1.2;
  max-width: 100%;
  word-break: break-word;
}

.tf-clw__result-icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

/* ── Attribution ────────────────────────────────────────────── */
.tf-clw__attribution {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  margin-top: auto;
}

.tf-clw__avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--clw-gold) 0%, var(--clw-gold-dark) 100%);
  color: #0A0A0A;
  font-size: 15px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 1;
}

.tf-clw__meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.tf-clw__name {
  font-size: 13px;
  font-weight: 700;
  color: var(--clw-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}

.tf-clw__business {
  font-size: 11px;
  font-weight: 500;
  color: var(--clw-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}

/* ── Stats Banner ───────────────────────────────────────────── */
.tf-clw__stats-banner {
  background: var(--clw-gold);
  border-radius: 12px;
  padding: 18px 24px;
  max-width: 1200px;
  margin: 0 auto 40px;
}

.tf-clw__stats-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 20px;
  font-family: var(--clw-font);
  font-size: 13px;
  font-weight: 700;
  color: #0A0A0A;
  text-align: center;
  letter-spacing: 0.01em;
}

.tf-clw__stat-item {
  display: flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.tf-clw__stat-stars {
  color: #0A0A0A;
  letter-spacing: -1px;
}

.tf-clw__stat-divider {
  color: rgba(0, 0, 0, 0.3);
  font-weight: 300;
  font-size: 16px;
  display: none;
}

/* ── CTA Button ─────────────────────────────────────────────── */
.tf-clw__cta-wrap {
  text-align: center;
}

.tf-clw__cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--clw-gold);
  color: #0A0A0A;
  font-family: var(--clw-font);
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  padding: 16px 36px;
  border-radius: 100px;
  letter-spacing: 0.02em;
  transition:
    background var(--clw-transition),
    transform var(--clw-transition),
    box-shadow var(--clw-transition);
}

.tf-clw__cta-btn:hover {
  background: var(--clw-gold-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.35);
}

.tf-clw__cta-arrow {
  flex-shrink: 0;
  transition: transform var(--clw-transition);
}

.tf-clw__cta-btn:hover .tf-clw__cta-arrow {
  transform: translateX(4px);
}

/* ── Responsive: Tablet ─────────────────────────────────────── */
@media (min-width: 768px) {
  .tf-clw__stat-divider {
    display: inline;
  }
}

@media (max-width: 1024px) {
  .tf-clw__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Re-stagger for 2-col layout */
  .tf-clw__card--1  { transition-delay: 0.00s; }
  .tf-clw__card--2  { transition-delay: 0.08s; }
  .tf-clw__card--3  { transition-delay: 0.00s; }
  .tf-clw__card--4  { transition-delay: 0.08s; }
  .tf-clw__card--5  { transition-delay: 0.00s; }
  .tf-clw__card--6  { transition-delay: 0.08s; }
  .tf-clw__card--7  { transition-delay: 0.00s; }
  .tf-clw__card--8  { transition-delay: 0.08s; }
  .tf-clw__card--9  { transition-delay: 0.00s; }
  .tf-clw__card--10 { transition-delay: 0.08s; }
  .tf-clw__card--11 { transition-delay: 0.00s; }
  .tf-clw__card--12 { transition-delay: 0.08s; }
}

/* ── Responsive: Mobile ─────────────────────────────────────── */
@media (max-width: 640px) {
  .tf-clw {
    padding: 56px 16px 56px;
  }

  .tf-clw__header {
    margin-bottom: 36px;
  }

  .tf-clw__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  /* Remove per-card stagger delays on single column — reveal feels snappier */
  .tf-clw__card--1,
  .tf-clw__card--2,
  .tf-clw__card--3,
  .tf-clw__card--4,
  .tf-clw__card--5,
  .tf-clw__card--6,
  .tf-clw__card--7,
  .tf-clw__card--8,
  .tf-clw__card--9,
  .tf-clw__card--10,
  .tf-clw__card--11,
  .tf-clw__card--12 {
    transition-delay: 0s;
    padding-bottom: 24px;
  }

  .tf-clw__stats-banner {
    border-radius: 10px;
    padding: 14px 16px;
  }

  .tf-clw__stats-inner {
    font-size: 12px;
    gap: 8px 12px;
  }

  .tf-clw__stat-divider {
    display: none;
  }

  .tf-clw__cta-btn {
    font-size: 14px;
    padding: 14px 28px;
  }
}

/* ── Reduced Motion ─────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .tf-clw__card {
    opacity: 1;
    transform: none;
    transition: border-color 0.2s, background-color 0.2s;
  }

  .tf-clw__card.tf-clw--revealed {
    opacity: 1;
    transform: none;
  }

  .tf-clw__card:hover {
    transform: none;
  }
}
/* END_SECTION:customer-love-wall */

/* START_SECTION:divider (INDEX:34) */
.tf-div {
  width: 100%;
  padding: var(--tf-div-v, 0);
}
.tf-div--line {
  padding: 0.5rem 0;
}
.tf-div--dots {
  padding: 1.5rem 0;
}
.tf-div--icon {
  padding: 1.5rem 0;
}
.tf-div--wavy {
  padding: 0;
  overflow: hidden;
}
.tf-div--gradient {
  padding: 0;
}
.tf-div--thick {
  padding: 0;
}
.tf-div-line {
  height: 1px;
  background: rgba(0, 0, 0, 0.1);
  max-width: 1200px;
  margin: 0 auto;
}
.tf-div-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
}
.tf-div-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  display: inline-block;
}
.tf-div-dot:nth-child(1),
.tf-div-dot:nth-child(7) { opacity: 0.2; }
.tf-div-dot:nth-child(2),
.tf-div-dot:nth-child(6) { opacity: 0.4; }
.tf-div-dot:nth-child(3),
.tf-div-dot:nth-child(5) { opacity: 0.7; }
.tf-div-icon-wrap {
  display: flex;
  align-items: center;
  gap: 1rem;
  max-width: 500px;
  margin: 0 auto;
}
.tf-div-line-half {
  flex: 1;
  height: 1px;
  background: rgba(0, 0, 0, 0.1);
}
.tf-div-icon-el {
  font-size: 1.375rem;
  line-height: 1;
  flex-shrink: 0;
}
.tf-div-wavy {
  width: 100%;
  height: 48px;
  color: rgba(0, 0, 0, 0.08);
  display: block;
}
.tf-div-gradient {
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(0,0,0,0.15), transparent);
}
.tf-div-thick {
  height: 6px;
  background: var(--tf-primary, #FACC15);
  width: 60px;
  margin: 0 auto;
  border-radius: 9999px;
}
/* END_SECTION:divider */

/* START_SECTION:embed-section (INDEX:36) */
.tf-embed { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-embed { padding: 7rem 1rem; } }
.tf-embed--white { background: var(--tf-background, #ffffff); }
.tf-embed--gray { background: var(--tf-muted, #f5f5f5); }
.tf-embed--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-embed .tf-container { max-width: 900px; margin: 0 auto; }
.tf-embed-header { text-align: center; margin-bottom: 2.5rem; }
.tf-embed-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-embed-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-embed--dark .tf-embed-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-embed-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-embed--dark .tf-embed-subtitle { color: rgba(255,255,255,0.6); }
.tf-embed-wrap {
  border-radius: 1.25rem;
  overflow: hidden;
}
.tf-embed-frame-wrap { width: 100%; }
.tf-embed-iframe {
  display: block;
  border: none;
  border-radius: 1.25rem;
  width: 100%;
}
.tf-embed-code-wrap,
.tf-embed-map-wrap {
  width: 100%;
  border-radius: 1.25rem;
  overflow: hidden;
}
.tf-embed-code-wrap iframe,
.tf-embed-map-wrap iframe {
  width: 100%;
  border: none;
  display: block;
}
.tf-embed-cta-wrap { text-align: center; margin-top: 2rem; }
.tf-embed-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-embed-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:embed-section */

/* START_SECTION:faq (INDEX:38) */
.tf-faq {
  padding: 4rem 1rem;
  background: var(--tf-background, #ffffff);
}
@media (min-width: 768px) {
  .tf-faq {
    padding: 6rem 1rem;
  }
}
.tf-faq .tf-container {
  max-width: 800px;
  margin: 0 auto;
}
.tf-faq .tf-section-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-faq .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-faq .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
  font-size: 1.125rem;
}
.tf-faq-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.tf-faq-item {
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
}
.tf-faq-item:first-of-type {
  border-top: 1px solid var(--tf-border, #e5e5e5);
}
.tf-faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0;
  cursor: pointer;
  font-weight: 600;
  font-size: 1rem;
  color: var(--tf-foreground, #141414);
  list-style: none;
  user-select: none;
  transition: color 0.2s;
}
.tf-faq-question::-webkit-details-marker {
  display: none;
}
.tf-faq-question:hover {
  color: var(--tf-primary, #FACC15);
}
@media (min-width: 768px) {
  .tf-faq-question {
    font-size: 1.0625rem;
  }
}
.tf-faq-icon {
  flex-shrink: 0;
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
}
.tf-faq-minus {
  display: none;
}
.tf-faq-item[open] .tf-faq-plus {
  display: none;
}
.tf-faq-item[open] .tf-faq-minus {
  display: block;
}
.tf-faq-item[open] .tf-faq-question {
  color: var(--tf-primary, #FACC15);
}
.tf-faq-answer {
  padding: 0 0 1.25rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
}
/* END_SECTION:faq */

/* START_SECTION:feature-list (INDEX:39) */
.tf-fl {
  padding: clamp(3rem, 8vw, 5rem) 1rem;
  background: var(--tf-muted, #f5f5f5);
}
.tf-fl .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
/* Layout modes */
.tf-fl-layout--stacked {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.tf-fl-layout--side {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-fl-layout--side {
    grid-template-columns: 2fr 3fr;
  }
  .tf-fl-layout--stacked .tf-fl-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto;
  }
}
.tf-fl-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  margin: 0 0 0.75rem;
}
.tf-fl-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.375rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-fl-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0 0 1.75rem;
}
.tf-fl-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
  margin-bottom: 1rem;
}
.tf-fl-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-fl-guarantee {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
/* Grid */
.tf-fl-grid {
  display: grid;
  gap: 0.75rem 1.5rem;
  grid-template-columns: 1fr;
}
@media (min-width: 480px) {
  .tf-fl-grid--2,
  .tf-fl-grid--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .tf-fl-grid--3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.tf-fl-item {
  display: flex;
  gap: 0.625rem;
  align-items: flex-start;
}
.tf-fl-check {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}
.tf-fl-item-text {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  line-height: 1.4;
  display: block;
}
.tf-fl-item-sub {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  display: block;
  margin-top: 0.125rem;
  line-height: 1.4;
}
/* END_SECTION:feature-list */

/* START_SECTION:feature-spotlight (INDEX:40) */
.tf-spotlight { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-spotlight { padding: 7rem 1rem; } }
.tf-spotlight--white { background: var(--tf-background, #ffffff); }
.tf-spotlight--gray { background: var(--tf-muted, #f5f5f5); }
.tf-spotlight--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-spotlight .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-spotlight-header { text-align: center; margin-bottom: 4rem; }
.tf-spotlight-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-spotlight-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-spotlight--dark .tf-spotlight-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-spotlight-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-spotlight--dark .tf-spotlight-subtitle { color: rgba(255,255,255,0.6); }
.tf-spotlight-list {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
.tf-spotlight-item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-spotlight-item { grid-template-columns: 1fr 1fr; }
  .tf-spotlight-item--reverse .tf-spotlight-media { order: 2; }
  .tf-spotlight-item--reverse .tf-spotlight-content { order: 1; }
}
.tf-spotlight-media {
  position: relative;
  border-radius: 1.5rem;
  overflow: hidden;
}
.tf-spotlight-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 1.5rem;
}
.tf-spotlight-placeholder {
  aspect-ratio: 4/3;
  background: rgba(250,204,21,0.08);
  border: 2px dashed rgba(250,204,21,0.3);
  border-radius: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-primary, #FACC15);
}
.tf-spotlight-media-tag {
  position: absolute;
  top: 1rem;
  left: 1rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
}
.tf-spotlight-content { display: flex; flex-direction: column; gap: 1.25rem; }
.tf-spotlight-icon {
  width: 48px;
  height: 48px;
  border-radius: 0.875rem;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
}
.tf-spotlight-feature-title {
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.2;
}
.tf-spotlight--dark .tf-spotlight-feature-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-spotlight-desc {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
  margin: 0;
}
.tf-spotlight--dark .tf-spotlight-desc { color: rgba(255,255,255,0.6); }
.tf-spotlight-bullets {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.tf-spotlight-bullets li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.4;
}
.tf-spotlight--dark .tf-spotlight-bullets li { color: rgba(255,255,255,0.8); }
.tf-spotlight-bullets svg { color: var(--tf-primary, #FACC15); flex-shrink: 0; margin-top: 3px; }
.tf-spotlight-stat {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 1.25rem 1.5rem;
  background: hsla(45, 100%, 51%, 0.08);
  border-left: 3px solid var(--tf-primary, #FACC15);
  border-radius: 0 0.75rem 0.75rem 0;
}
.tf-spotlight-stat-value {
  font-size: 2rem;
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-spotlight-stat-label {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-spotlight--dark .tf-spotlight-stat-label { color: rgba(255,255,255,0.5); }
.tf-spotlight-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  transition: gap 0.2s;
}
.tf-spotlight-cta:hover { gap: 0.75rem; }
/* END_SECTION:feature-spotlight */

/* START_SECTION:featured-review (INDEX:44) */
.tf-featured-review {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-featured-review {
    padding: 7rem 1rem;
  }
}
.tf-featured-review--dark {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-featured-review--light {
  background: var(--tf-muted, #f5f5f5);
}
.tf-featured-review--primary {
  background: var(--tf-primary, #FACC15);
}
.tf-featured-review .tf-container {
  max-width: 760px;
  margin: 0 auto;
}
.tf-featured-review-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.5rem;
}
.tf-featured-review-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-featured-review--primary .tf-featured-review-label {
  background: rgba(0, 0, 0, 0.1);
  color: var(--tf-foreground, #141414);
}
.tf-featured-review-stars {
  display: flex;
  gap: 4px;
}
.tf-featured-review--dark .tf-featured-review-stars {
  color: var(--tf-primary, #FACC15);
}
.tf-featured-review--light .tf-featured-review-stars {
  color: var(--tf-primary, #FACC15);
}
.tf-featured-review--primary .tf-featured-review-stars {
  color: var(--tf-foreground, #141414);
}
.tf-featured-review-quote {
  margin: 0;
}
.tf-featured-review-text {
  font-size: clamp(1.25rem, 3vw, 1.875rem);
  font-weight: 600;
  line-height: 1.5;
  font-style: italic;
  margin: 0 0 1.5rem;
}
.tf-featured-review--dark .tf-featured-review-text {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-featured-review--light .tf-featured-review-text {
  color: var(--tf-foreground, #141414);
}
.tf-featured-review--primary .tf-featured-review-text {
  color: var(--tf-foreground, #141414);
}
.tf-featured-review-attribution {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.875rem;
  flex-wrap: wrap;
}
.tf-featured-review-avatar {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--tf-primary, #FACC15);
}
.tf-featured-review-avatar-placeholder {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.25rem;
}
.tf-featured-review-author-info {
  display: flex;
  flex-direction: column;
  text-align: left;
}
.tf-featured-review-author {
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
}
.tf-featured-review--dark .tf-featured-review-author {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-featured-review--light .tf-featured-review-author,
.tf-featured-review--primary .tf-featured-review-author {
  color: var(--tf-foreground, #141414);
}
.tf-featured-review-role {
  font-size: 0.875rem;
}
.tf-featured-review--dark .tf-featured-review-role {
  color: rgba(255, 255, 255, 0.55);
}
.tf-featured-review--light .tf-featured-review-role {
  color: var(--tf-muted-foreground, #737373);
}
.tf-featured-review--primary .tf-featured-review-role {
  color: rgba(0, 0, 0, 0.55);
}
.tf-featured-review-verified {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #22c55e;
  background: rgba(34, 197, 94, 0.12);
  padding: 0.25rem 0.625rem;
  border-radius: 9999px;
}
.tf-featured-review-source img {
  height: 28px;
  width: auto;
  opacity: 0.6;
  filter: grayscale(100%);
}
.tf-featured-review-source-text {
  font-size: 0.875rem;
  font-weight: 500;
}
.tf-featured-review--dark .tf-featured-review-source-text {
  color: rgba(255, 255, 255, 0.4);
}
.tf-featured-review--light .tf-featured-review-source-text {
  color: var(--tf-muted-foreground, #737373);
}
.tf-featured-review-stats {
  font-size: 0.875rem;
  font-weight: 500;
}
.tf-featured-review--dark .tf-featured-review-stats {
  color: rgba(255, 255, 255, 0.5);
}
.tf-featured-review--light .tf-featured-review-stats {
  color: var(--tf-muted-foreground, #737373);
}
.tf-featured-review--primary .tf-featured-review-stats {
  color: rgba(0, 0, 0, 0.55);
}
.tf-featured-review-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.875rem 1.875rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.35);
}
.tf-featured-review--primary .tf-featured-review-btn {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
  box-shadow: none;
}
.tf-featured-review-btn:hover {
  transform: translateY(-2px);
}
/* END_SECTION:featured-review */

/* START_SECTION:five-star-moment (INDEX:46) */
/* ─────────────────────────────────────────
   ROOT TOKENS
───────────────────────────────────────── */
.tf-fsm {
  --tf-fsm-bg:          #0A0A0A;
  --tf-fsm-surface:     #141414;
  --tf-fsm-surface-2:   #1C1C1C;
  --tf-fsm-border:      rgba(255,255,255,0.07);
  --tf-fsm-gold:        #FFCC00;
  --tf-fsm-gold-dim:    rgba(255,204,0,0.12);
  --tf-fsm-gold-border: rgba(255,204,0,0.3);
  --tf-fsm-bad:         rgba(239,68,68,0.08);
  --tf-fsm-bad-border:  rgba(239,68,68,0.25);
  --tf-fsm-bad-text:    #C87070;
  --tf-fsm-text:        #E8E8E8;
  --tf-fsm-muted:       #888888;
  --tf-fsm-font:        'Montserrat', sans-serif;
  --tf-fsm-radius:      12px;
  --tf-fsm-delay:       0ms;

  background: var(--tf-fsm-bg);
  color: var(--tf-fsm-text);
  font-family: var(--tf-fsm-font);
  padding: 4rem 0 0;
  overflow: hidden;
}

/* ─────────────────────────────────────────
   LAYOUT UTILITY
───────────────────────────────────────── */
.tf-fsm-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 1.25rem;
}

/* ─────────────────────────────────────────
   SCROLL REVEAL
───────────────────────────────────────── */
.tf-fsm-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.55s ease var(--tf-fsm-delay),
    transform 0.55s ease var(--tf-fsm-delay);
}
.tf-fsm-reveal.tf-fsm-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ─────────────────────────────────────────
   HEADER
───────────────────────────────────────── */
.tf-fsm-header {
  text-align: center;
  padding: 0 0 3rem;
}
.tf-fsm-overline {
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--tf-fsm-gold);
  margin: 0 0 1.1rem;
  opacity: 0.9;
}
.tf-fsm-title {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin: 0 0 1.1rem;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
.tf-fsm-subtitle {
  font-size: clamp(1rem, 2vw, 1.15rem);
  font-weight: 400;
  color: var(--tf-fsm-muted);
  line-height: 1.6;
  margin: 0 auto;
  max-width: 560px;
}

/* ─────────────────────────────────────────
   SCENARIO CARDS GRID
───────────────────────────────────────── */
.tf-fsm-grid-wrap {
  padding: 0 0 3.5rem;
}
.tf-fsm-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 600px) {
  .tf-fsm-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 960px) {
  .tf-fsm-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* ─────────────────────────────────────────
   SINGLE CARD
───────────────────────────────────────── */
.tf-fsm-card {
  background: var(--tf-fsm-surface);
  border: 1px solid var(--tf-fsm-border);
  border-radius: var(--tf-fsm-radius);
  padding: 1.75rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.tf-fsm-card:hover {
  border-color: var(--tf-fsm-gold-border);
  box-shadow: 0 0 0 1px var(--tf-fsm-gold-border), 0 8px 32px rgba(0,0,0,0.4);
}

.tf-fsm-card-emoji {
  font-size: 2.5rem;
  line-height: 1;
  text-align: center;
  user-select: none;
}
.tf-fsm-card-title {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #FFFFFF;
  text-align: center;
  margin: 0;
}

/* THE MOMENT block */
.tf-fsm-moment {
  background: var(--tf-fsm-gold-dim);
  border: 1px solid var(--tf-fsm-gold-border);
  border-radius: 8px;
  padding: 0.85rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}
.tf-fsm-moment-label {
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--tf-fsm-gold);
  opacity: 0.85;
}
.tf-fsm-moment-text {
  font-size: 0.82rem;
  font-weight: 400;
  line-height: 1.6;
  color: #D4D4D4;
  margin: 0;
  font-style: italic;
}

/* WHAT HAPPENS block */
.tf-fsm-what-happens {
  background: var(--tf-fsm-bad);
  border: 1px solid var(--tf-fsm-bad-border);
  border-radius: 8px;
  padding: 0.85rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}
.tf-fsm-what-label {
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--tf-fsm-bad-text);
  opacity: 0.85;
}
.tf-fsm-what-text {
  font-size: 0.82rem;
  font-weight: 400;
  line-height: 1.6;
  color: #AAAAAA;
  margin: 0;
}

/* ─────────────────────────────────────────
   INSIGHT STATEMENT
───────────────────────────────────────── */
.tf-fsm-insight-wrap {
  padding: 0 0 3.5rem;
}
.tf-fsm-insight {
  background: var(--tf-fsm-surface-2);
  border: 1px solid var(--tf-fsm-gold-border);
  border-radius: var(--tf-fsm-radius);
  padding: 2.5rem 2rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}
.tf-fsm-insight-star svg {
  filter: drop-shadow(0 0 12px rgba(255,204,0,0.45));
}
.tf-fsm-insight-text {
  font-size: clamp(1.05rem, 2.5vw, 1.35rem);
  font-weight: 600;
  line-height: 1.65;
  color: #FFFFFF;
  margin: 0;
  max-width: 680px;
}
.tf-fsm-insight-text strong,
.tf-fsm-insight-text b {
  color: var(--tf-fsm-gold);
}

/* ─────────────────────────────────────────
   WITH / WITHOUT CONTRAST BOXES
───────────────────────────────────────── */
.tf-fsm-contrast-wrap {
  padding: 0 0 3.5rem;
}
.tf-fsm-contrast {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .tf-fsm-contrast {
    grid-template-columns: 1fr 1fr;
  }
}

.tf-fsm-contrast-box {
  border-radius: var(--tf-fsm-radius);
  padding: 1.75rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.tf-fsm-contrast-box--without {
  background: rgba(239,68,68,0.06);
  border: 1px solid rgba(239,68,68,0.2);
}
.tf-fsm-contrast-box--with {
  background: var(--tf-fsm-gold-dim);
  border: 1px solid var(--tf-fsm-gold-border);
}

.tf-fsm-contrast-header {
  display: flex;
  align-items: center;
  gap: 0.65rem;
}
.tf-fsm-contrast-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-fsm-contrast-icon--without {
  background: rgba(239,68,68,0.15);
  color: #E87070;
}
.tf-fsm-contrast-icon--with {
  background: rgba(255,204,0,0.2);
  color: var(--tf-fsm-gold);
}
.tf-fsm-contrast-title {
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: #BBBBBB;
  margin: 0;
}
.tf-fsm-contrast-title--with {
  color: var(--tf-fsm-gold);
}

/* flow steps */
.tf-fsm-flow {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.tf-fsm-flow-step {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  padding: 0.45rem 0;
  position: relative;
}
.tf-fsm-flow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  margin-top: 0.35rem;
  flex-shrink: 0;
}
.tf-fsm-flow-step--bad .tf-fsm-flow-dot {
  background: #C87070;
}
.tf-fsm-flow-step--good .tf-fsm-flow-dot {
  background: var(--tf-fsm-gold);
}
.tf-fsm-flow-text {
  font-size: 0.83rem;
  font-weight: 500;
  line-height: 1.5;
  flex: 1;
}
.tf-fsm-flow-step--bad .tf-fsm-flow-text {
  color: #AAAAAA;
}
.tf-fsm-flow-step--good .tf-fsm-flow-text {
  color: #E8E8E8;
}
.tf-fsm-flow-arrow {
  font-size: 0.75rem;
  color: var(--tf-fsm-muted);
  margin-left: auto;
  padding-left: 0.25rem;
  align-self: center;
}

/* ─────────────────────────────────────────
   CTA BLOCK
───────────────────────────────────────── */
.tf-fsm-cta-wrap {
  background: var(--tf-fsm-surface);
  border-top: 1px solid var(--tf-fsm-border);
  padding: 3.5rem 0 4rem;
}
.tf-fsm-cta-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
}
.tf-fsm-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: var(--tf-fsm-gold);
  color: #0A0A0A;
  font-family: var(--tf-fsm-font);
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 1rem 2.25rem;
  border-radius: 6px;
  transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
  box-shadow: 0 4px 24px rgba(255,204,0,0.3);
}
.tf-fsm-cta-btn:hover {
  background: #FFD633;
  box-shadow: 0 6px 32px rgba(255,204,0,0.45);
  transform: translateY(-1px);
}
.tf-fsm-cta-btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 12px rgba(255,204,0,0.25);
}
.tf-fsm-cta-arrow {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.tf-fsm-cta-btn:hover .tf-fsm-cta-arrow {
  transform: translateX(3px);
}
.tf-fsm-cta-sub {
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--tf-fsm-muted);
  margin: 0;
  letter-spacing: 0.02em;
}

/* ─────────────────────────────────────────
   REDUCED MOTION
───────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .tf-fsm-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
/* END_SECTION:five-star-moment */

/* START_SECTION:floating-cta (INDEX:47) */
.tf-fcta {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9990;
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.34, 1.2, 0.64, 1);
  background: var(--tf-secondary, #1a1a1a);
  border-top: 1px solid rgba(255,255,255,0.1);
  box-shadow: 0 -8px 32px rgba(0,0,0,0.2);
}
.tf-fcta--visible {
  transform: translateY(0);
}
.tf-fcta-inner {
  max-width: 900px;
  margin: 0 auto;
  padding: 1rem 3rem 1rem 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  text-align: center;
}
@media (min-width: 640px) {
  .tf-fcta-inner {
    flex-direction: row;
    text-align: left;
    padding: 1rem 3rem 1rem 1.5rem;
  }
}
.tf-fcta-label {
  font-size: 0.9375rem;
  font-weight: 600;
  color: rgba(255,255,255,0.85);
  margin: 0;
  flex: 1;
}
.tf-fcta-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.6875rem 1.75rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250,204,21,0.35);
  white-space: nowrap;
  flex-shrink: 0;
}
.tf-fcta-btn:hover { background: hsl(45,100%,45%); transform: translateY(-1px); }
.tf-fcta-secondary {
  font-size: 0.875rem;
  color: rgba(255,255,255,0.55);
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
  flex-shrink: 0;
}
.tf-fcta-secondary:hover { color: rgba(255,255,255,0.85); }
.tf-fcta-close {
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  color: rgba(255,255,255,0.4);
  padding: 0.25rem;
  display: flex;
  align-items: center;
  transition: color 0.15s;
}
.tf-fcta-close:hover { color: rgba(255,255,255,0.8); }
/* END_SECTION:floating-cta */

/* START_SECTION:four-second-process (INDEX:49) */
/* ─── Section shell ─────────────────────────────────────────── */
.tf-fsp {
  background: #0A0A0A;
  padding: 5rem 1rem 0;
  overflow: hidden;
  position: relative;
}

/* Subtle radial glow behind header */
.tf-fsp::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 700px;
  height: 400px;
  background: radial-gradient(ellipse at center top, rgba(255, 204, 0, 0.06) 0%, transparent 70%);
  pointer-events: none;
}

@media (min-width: 768px) {
  .tf-fsp {
    padding: 7rem 1.5rem 0;
  }
}

/* ─── Container ─────────────────────────────────────────────── */
.tf-fsp__container {
  max-width: 1200px;
  margin: 0 auto;
}

/* ─── Header ────────────────────────────────────────────────── */
.tf-fsp__header {
  text-align: center;
  margin-bottom: 4rem;
}

.tf-fsp__overline {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin-bottom: 1rem;
  padding: 0.3rem 1rem;
  border: 1px solid rgba(255, 204, 0, 0.25);
  border-radius: 9999px;
  background: rgba(255, 204, 0, 0.07);
}

.tf-fsp__title {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 900;
  line-height: 1.15;
  color: #FFFFFF;
  margin: 0 0 1rem;
  letter-spacing: -0.02em;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.tf-fsp__subtitle {
  font-size: 1.0625rem;
  color: rgba(255, 255, 255, 0.55);
  line-height: 1.65;
  max-width: 540px;
  margin: 0 auto;
}

/* ─── Steps row ─────────────────────────────────────────────── */
.tf-fsp__steps {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1.25rem;
  margin-bottom: 3rem;
}

@media (min-width: 900px) {
  .tf-fsp__steps {
    flex-direction: row;
    align-items: flex-start;
    gap: 0;
  }
}

/* ─── Individual step ───────────────────────────────────────── */
.tf-fsp__step {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 2rem 1.5rem 1.75rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 1.25rem;
  position: relative;
  transition: border-color 0.3s ease, background 0.3s ease;
}

.tf-fsp__step:hover {
  border-color: rgba(255, 204, 0, 0.22);
  background: rgba(255, 255, 255, 0.05);
}

/* ─── Step number (large gold) ──────────────────────────────── */
.tf-fsp__step-num {
  font-size: 5rem;
  font-weight: 900;
  line-height: 1;
  color: #FFCC00;
  opacity: 0.9;
  letter-spacing: -0.04em;
  font-variant-numeric: tabular-nums;
  margin-bottom: 0.5rem;
  /* Slight text-shadow for depth */
  text-shadow: 0 0 40px rgba(255, 204, 0, 0.35);
  user-select: none;
}

@media (min-width: 900px) {
  .tf-fsp__step-num {
    font-size: 6rem;
  }
}

/* ─── Step icon ─────────────────────────────────────────────── */
.tf-fsp__step-icon {
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Star step: gold fill */
.tf-fsp__step-icon--star {
  color: #FFCC00;
}

/* ─── Step body ─────────────────────────────────────────────── */
.tf-fsp__step-body {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  flex: 1;
}

.tf-fsp__step-title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0;
  line-height: 1.3;
}

.tf-fsp__step-desc {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1.65;
  margin: 0;
}

/* ─── Step label (mobile: inline tag) ──────────────────────── */
.tf-fsp__step-label {
  display: inline-block;
  margin-top: 1.25rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: rgba(255, 204, 0, 0.7);
  padding: 0.25rem 0.75rem;
  border: 1px solid rgba(255, 204, 0, 0.2);
  border-radius: 9999px;
}

/* ─── Connector between steps ───────────────────────────────── */
.tf-fsp__connector {
  display: none; /* hidden on mobile */
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0 0.5rem;
  /* vertically centered with step content */
  padding-top: 5rem; /* align with mid-step vertically */
}

@media (min-width: 900px) {
  .tf-fsp__connector {
    display: flex;
    width: 40px;
  }
}

.tf-fsp__connector-line {
  width: 2px;
  height: 60px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 9999px;
  overflow: hidden;
  position: relative;
}

.tf-fsp__connector-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  background: linear-gradient(to bottom, #FFCC00, rgba(255, 204, 0, 0.3));
  border-radius: 9999px;
  transition: height 0.8s ease;
}

.tf-fsp--animated .tf-fsp__connector-fill {
  height: 100%;
}

.tf-fsp__connector-arrow {
  color: rgba(255, 204, 0, 0.5);
  transform: rotate(90deg); /* arrow points right */
}

@media (min-width: 900px) {
  .tf-fsp__connector {
    flex-direction: row;
    padding: 0;
    padding-bottom: 0;
    /* re-align horizontally */
    width: 56px;
    align-items: center;
    justify-content: center;
    align-self: center;
    margin-top: 0;
  }
  .tf-fsp__connector-line {
    width: 100%;
    height: 2px;
    flex: 1;
  }
  .tf-fsp__connector-fill {
    width: 0%;
    height: 100%;
    background: linear-gradient(to right, #FFCC00, rgba(255, 204, 0, 0.3));
    transition: width 0.8s ease;
  }
  .tf-fsp--animated .tf-fsp__connector-fill {
    width: 100%;
    height: 100%;
  }
  .tf-fsp__connector-arrow {
    transform: rotate(0deg);
    flex-shrink: 0;
  }
}

/* ─── Timeline bar ──────────────────────────────────────────── */
.tf-fsp__timeline {
  margin: 0 auto 4.5rem;
  max-width: 720px;
}

.tf-fsp__timeline-track {
  height: 4px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 9999px;
  overflow: hidden;
  margin-bottom: 0.875rem;
}

.tf-fsp__timeline-progress {
  height: 100%;
  width: 0%;
  background: linear-gradient(to right, #FFCC00, rgba(255, 204, 0, 0.5));
  border-radius: 9999px;
  transition: width 1.2s cubic-bezier(0.22, 1, 0.36, 1);
}

.tf-fsp--animated .tf-fsp__timeline-progress {
  width: 100%;
}

.tf-fsp__timeline-labels {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.4);
}

.tf-fsp__timeline-badge {
  font-size: 0.9rem;
  font-weight: 800;
  color: #FFCC00;
  background: rgba(255, 204, 0, 0.1);
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  border: 1px solid rgba(255, 204, 0, 0.25);
  letter-spacing: 0.02em;
}

/* ─── Product cards outer (dark alt bg) ─────────────────────── */
.tf-fsp__cards-outer {
  background: #111827;
  padding: 4rem 1rem 5rem;
  margin-top: 0;
}

@media (min-width: 768px) {
  .tf-fsp__cards-outer {
    padding: 5rem 1.5rem 6rem;
  }
}

.tf-fsp__cards-eyebrow {
  text-align: center;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 204, 0, 0.65);
  margin: 0 0 2rem;
}

/* ─── Two-card row ──────────────────────────────────────────── */
.tf-fsp__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: stretch;
  max-width: 860px;
  margin: 0 auto;
}

@media (min-width: 700px) {
  .tf-fsp__cards {
    flex-direction: row;
    align-items: stretch;
  }
}

/* ─── Product card ──────────────────────────────────────────── */
.tf-fsp__product-card {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 2rem 1.75rem;
  border-radius: 1.25rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  position: relative;
  transition: border-color 0.3s, transform 0.2s;
}

.tf-fsp__product-card:hover {
  border-color: rgba(255, 204, 0, 0.3);
  transform: translateY(-3px);
}

.tf-fsp__product-card--stand {
  border-color: rgba(255, 204, 0, 0.25);
  background: rgba(255, 204, 0, 0.04);
}

/* ─── "Most popular" badge ───────────────────────────────────── */
.tf-fsp__product-badge {
  position: absolute;
  top: -0.875rem;
  left: 50%;
  transform: translateX(-50%);
  background: #FFCC00;
  color: #0A0A0A;
  font-size: 0.7rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.3rem 0.875rem;
  border-radius: 9999px;
  white-space: nowrap;
}

/* ─── Product icon ───────────────────────────────────────────── */
.tf-fsp__product-icon {
  margin-bottom: 1.25rem;
}

/* ─── Product name ───────────────────────────────────────────── */
.tf-fsp__product-name {
  font-size: 1.4rem;
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 1.25rem;
  letter-spacing: -0.01em;
}

/* ─── Feature list ───────────────────────────────────────────── */
.tf-fsp__product-features {
  list-style: none;
  margin: 0 0 1.75rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex: 1;
}

.tf-fsp__product-features li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.65);
  line-height: 1.4;
}

.tf-fsp__product-features li svg {
  flex-shrink: 0;
  margin-top: 0.15rem;
}

/* ─── Price ──────────────────────────────────────────────────── */
.tf-fsp__product-price {
  display: flex;
  align-items: baseline;
  gap: 0.4rem;
  margin-bottom: 1.5rem;
}

.tf-fsp__price-from {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
}

.tf-fsp__price-amount {
  font-size: 2rem;
  font-weight: 900;
  color: #FFFFFF;
  letter-spacing: -0.02em;
}

/* ─── CTA buttons ────────────────────────────────────────────── */
.tf-fsp__product-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.875rem 1.5rem;
  border-radius: 0.75rem;
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: 0.01em;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
}

.tf-fsp__product-btn--primary {
  background: #FFCC00;
  color: #0A0A0A;
  box-shadow: 0 4px 24px rgba(255, 204, 0, 0.25);
}

.tf-fsp__product-btn--primary:hover {
  background: #ffd832;
  transform: translateY(-1px);
  box-shadow: 0 8px 30px rgba(255, 204, 0, 0.35);
}

.tf-fsp__product-btn--secondary {
  background: rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.tf-fsp__product-btn--secondary:hover {
  background: rgba(255, 255, 255, 0.13);
  transform: translateY(-1px);
  border-color: rgba(255, 255, 255, 0.25);
}

/* ─── Divider between cards ──────────────────────────────────── */
.tf-fsp__cards-divider {
  display: none;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

@media (min-width: 700px) {
  .tf-fsp__cards-divider {
    display: flex;
    width: 2rem;
  }
}

.tf-fsp__cards-divider span {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.2);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

/* ─── Scroll-in reveal animation ─────────────────────────────── */
.tf-fsp__step--reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.55s ease,
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.tf-fsp__step--revealed {
  opacity: 1;
  transform: translateY(0);
}

/* Staggered delays for each step */
.tf-fsp__step--1 { transition-delay: 0s; }
.tf-fsp__step--2 { transition-delay: 0.12s; }
.tf-fsp__step--3 { transition-delay: 0.24s; }
.tf-fsp__step--4 { transition-delay: 0.36s; }

/* Product cards stagger */
.tf-fsp__product-card:nth-child(1) { transition-delay: 0.1s; }
.tf-fsp__product-card:nth-child(3) { transition-delay: 0.25s; }

/* Prefers-reduced-motion: skip animations */
@media (prefers-reduced-motion: reduce) {
  .tf-fsp__step--reveal,
  .tf-fsp__timeline-progress,
  .tf-fsp__connector-fill {
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  .tf-fsp--animated .tf-fsp__timeline-progress { width: 100%; }
  .tf-fsp--animated .tf-fsp__connector-fill { width: 100%; height: 100%; }
}
/* END_SECTION:four-second-process */

/* START_SECTION:fullwidth-image (INDEX:50) */
.tf-fwi {
  position: relative;
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--tf-secondary, #1a1a1a);
  display: flex;
  align-items: center;
  overflow: hidden;
}
.tf-fwi--short  { min-height: 300px; }
.tf-fwi--medium { min-height: 480px; }
.tf-fwi--tall   { min-height: 640px; }
.tf-fwi--screen { min-height: 100svh; }
.tf-fwi-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.tf-fwi-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 860px;
  padding: 3rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.tf-fwi-content--left   { margin-right: auto; padding-left: clamp(1.5rem, 5vw, 5rem); }
.tf-fwi-content--center { margin: 0 auto; align-items: center; text-align: center; }
.tf-fwi-content--right  { margin-left: auto; padding-right: clamp(1.5rem, 5vw, 5rem); align-items: flex-end; text-align: right; }
.tf-fwi-content--top    { align-self: flex-start; }
.tf-fwi-content--middle { align-self: center; }
.tf-fwi-content--bottom { align-self: flex-end; }
.tf-fwi-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  margin: 0;
}
.tf-fwi-heading {
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.1;
  margin: 0;
}
.tf-fwi-subheading {
  font-size: clamp(1rem, 2vw, 1.25rem);
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.65;
  margin: 0;
  max-width: 560px;
}
.tf-fwi-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.5rem;
}
.tf-fwi-content--center .tf-fwi-btns { justify-content: center; }
.tf-fwi-content--right .tf-fwi-btns  { justify-content: flex-end; }
.tf-fwi-btn {
  display: inline-block;
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
}
.tf-fwi-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  box-shadow: 0 4px 20px rgba(250, 204, 21, 0.4);
}
.tf-fwi-btn--primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-fwi-btn--white {
  background: #fff;
  color: var(--tf-foreground, #141414);
}
.tf-fwi-btn--white:hover {
  background: #f0f0f0;
  transform: translateY(-2px);
}
.tf-fwi-btn--outline {
  background: transparent;
  color: #fff;
  border: 2px solid rgba(255,255,255,0.6);
}
.tf-fwi-btn--outline:hover {
  background: rgba(255,255,255,0.1);
  border-color: #fff;
}
/* END_SECTION:fullwidth-image */

/* START_SECTION:google-ranking-explained (INDEX:51) */
/* ============================================================
   TF Google Ranking Explained — tf-gre-*
   ============================================================ */

/* ── Custom properties ── */
.tf-gre {
  --gre-bg:         #0A0A0A;
  --gre-surface:    #111111;
  --gre-surface-2:  #1A1A1A;
  --gre-border:     rgba(255, 255, 255, 0.08);
  --gre-gold:       #FFCC00;
  --gre-gold-dim:   rgba(255, 204, 0, 0.15);
  --gre-red:        #FF4444;
  --gre-red-dim:    rgba(255, 68, 68, 0.15);
  --gre-green:      #22C55E;
  --gre-green-dim:  rgba(34, 197, 94, 0.12);
  --gre-muted:      rgba(255, 255, 255, 0.45);
  --gre-text:       rgba(255, 255, 255, 0.88);
  --gre-radius:     12px;
  --gre-radius-sm:  8px;
  font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif;
  background-color: var(--gre-bg);
  color: var(--gre-text);
  padding: 80px 0;
  overflow: hidden;
}

/* ── Container ── */
.tf-gre-container {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ── Header ── */
.tf-gre-header {
  text-align: center;
  margin-bottom: 64px;
}

.tf-gre-overline {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gre-gold);
  margin: 0 0 20px;
}

.tf-gre-heading {
  font-size: clamp(26px, 4.5vw, 42px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #ffffff;
  margin: 0 0 20px;
}

.tf-gre-subtitle {
  font-size: clamp(15px, 2vw, 18px);
  font-weight: 400;
  line-height: 1.6;
  color: var(--gre-muted);
  margin: 0;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

/* ── Factors list ── */
.tf-gre-factors {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 64px;
}

/* ── Individual factor card ── */
.tf-gre-factor {
  border-radius: var(--gre-radius);
  border: 1px solid var(--gre-border);
  background: var(--gre-surface);
  border-left: 4px solid var(--gre-gold);
  overflow: hidden;
}

.tf-gre-factor-inner {
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.tf-gre-factor-meta {
  display: flex;
  align-items: center;
  gap: 12px;
}

.tf-gre-badge {
  display: inline-flex;
  align-items: center;
  background: var(--gre-gold);
  color: #000000;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 4px;
  white-space: nowrap;
}

.tf-gre-factor-icon {
  display: flex;
  align-items: center;
  color: var(--gre-gold);
  opacity: 0.7;
}

.tf-gre-factor-title {
  font-size: clamp(18px, 2.5vw, 22px);
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #ffffff;
  margin: 0;
}

.tf-gre-factor-body {
  font-size: 15px;
  line-height: 1.7;
  color: var(--gre-muted);
  margin: 0;
}

/* ── Bar chart (Factor 1) ── */
.tf-gre-chart {
  background: var(--gre-surface-2);
  border-radius: var(--gre-radius-sm);
  padding: 20px;
  margin-top: 4px;
}

.tf-gre-chart-label-top {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gre-muted);
  margin-bottom: 16px;
}

.tf-gre-bar-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.tf-gre-bar-row:last-child {
  margin-bottom: 0;
}

.tf-gre-bar-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--gre-text);
  min-width: 110px;
  flex-shrink: 0;
}

.tf-gre-bar-track {
  flex: 1;
  height: 28px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 4px;
  overflow: hidden;
  position: relative;
}

.tf-gre-bar {
  height: 100%;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 8px;
  transition: width 1s cubic-bezier(0.22, 1, 0.36, 1);
  min-width: 4px;
  position: relative;
}

.tf-gre-bar--gold {
  background: linear-gradient(90deg, rgba(255, 204, 0, 0.7), var(--gre-gold));
}

.tf-gre-bar--red {
  background: linear-gradient(90deg, rgba(255, 68, 68, 0.7), var(--gre-red));
}

.tf-gre-bar-value {
  font-size: 11px;
  font-weight: 700;
  color: #000000;
  white-space: nowrap;
}

.tf-gre-bar--red .tf-gre-bar-value {
  color: #ffffff;
}

/* ── Timeline charts (Factor 2) ── */
.tf-gre-timelines {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: var(--gre-surface-2);
  border-radius: var(--gre-radius-sm);
  padding: 20px;
  margin-top: 4px;
}

.tf-gre-timeline-row {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tf-gre-timeline-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  color: var(--gre-text);
  letter-spacing: 0.02em;
}

.tf-gre-timeline-icon {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 900;
  flex-shrink: 0;
}

.tf-gre-timeline-icon--bad {
  background: var(--gre-red-dim);
  color: var(--gre-red);
}

.tf-gre-timeline-icon--good {
  background: var(--gre-green-dim);
  color: var(--gre-green);
}

.tf-gre-timeline-graph {
  display: flex;
  align-items: flex-end;
  gap: 3px;
  height: 56px;
  padding: 0 2px;
}

.tf-gre-tl-bar {
  flex: 1;
  border-radius: 2px 2px 0 0;
  background: rgba(255, 68, 68, 0.5);
  min-height: 2px;
}

.tf-gre-tl-bar--spike {
  background: var(--gre-red);
}

.tf-gre-tl-bar--steady {
  background: var(--gre-gold);
  opacity: 0.8;
}

.tf-gre-timeline-verdict {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.03em;
  padding: 4px 10px;
  border-radius: 4px;
  display: inline-block;
  align-self: flex-start;
}

.tf-gre-timeline-verdict--bad {
  background: var(--gre-red-dim);
  color: var(--gre-red);
}

.tf-gre-timeline-verdict--good {
  background: var(--gre-green-dim);
  color: var(--gre-green);
}

/* ── Star rating tiers (Factor 3) ── */
.tf-gre-ratings {
  display: flex;
  gap: 12px;
  margin-top: 4px;
  flex-wrap: wrap;
}

.tf-gre-rating-tier {
  flex: 1;
  min-width: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 12px;
  border-radius: var(--gre-radius-sm);
  border: 1px solid var(--gre-border);
  text-align: center;
}

.tf-gre-rating-tier--bad {
  background: var(--gre-red-dim);
  border-color: rgba(255, 68, 68, 0.2);
}

.tf-gre-rating-tier--neutral {
  background: rgba(255, 255, 255, 0.04);
}

.tf-gre-rating-tier--good {
  background: var(--gre-gold-dim);
  border-color: rgba(255, 204, 0, 0.25);
}

.tf-gre-rating-stars {
  display: flex;
  gap: 1px;
}

.tf-gre-rating-tier--bad .tf-gre-rating-stars svg { color: var(--gre-red); }
.tf-gre-rating-tier--neutral .tf-gre-rating-stars svg { color: rgba(255,255,255,0.5); }
.tf-gre-rating-tier--good .tf-gre-rating-stars svg { color: var(--gre-gold); }

.tf-gre-rating-score {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.tf-gre-rating-tier--bad .tf-gre-rating-score { color: var(--gre-red); }
.tf-gre-rating-tier--neutral .tf-gre-rating-score { color: rgba(255,255,255,0.6); }
.tf-gre-rating-tier--good .tf-gre-rating-score { color: var(--gre-gold); }

.tf-gre-rating-status {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  text-align: center;
}

.tf-gre-rating-status--bad {
  background: var(--gre-red-dim);
  color: var(--gre-red);
}

.tf-gre-rating-status--neutral {
  background: rgba(255, 255, 255, 0.07);
  color: var(--gre-muted);
}

.tf-gre-rating-status--good {
  background: var(--gre-gold-dim);
  color: var(--gre-gold);
}

/* ── Local Pack section ── */
.tf-gre-pack-section {
  margin-bottom: 48px;
}

.tf-gre-pack-title {
  font-size: clamp(17px, 2.5vw, 22px);
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  margin: 0 0 24px;
  letter-spacing: -0.01em;
}

.tf-gre-pack {
  background: var(--gre-surface);
  border: 1px solid var(--gre-border);
  border-radius: var(--gre-radius);
  overflow: hidden;
}

.tf-gre-pack-slot {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid var(--gre-border);
  transition: background 0.2s ease;
  position: relative;
}

.tf-gre-pack-slot--first {
  background: var(--gre-gold-dim);
  border-left: 3px solid var(--gre-gold);
}

.tf-gre-pack-slot--second {
  background: rgba(255, 255, 255, 0.03);
  border-left: 3px solid rgba(255, 255, 255, 0.25);
  opacity: 0.8;
}

.tf-gre-pack-slot--third {
  background: transparent;
  border-left: 3px solid rgba(255, 255, 255, 0.1);
  opacity: 0.55;
}

.tf-gre-pack-rank {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 800;
  flex-shrink: 0;
}

.tf-gre-pack-slot--first .tf-gre-pack-rank {
  background: var(--gre-gold);
  color: #000000;
}

.tf-gre-pack-slot--second .tf-gre-pack-rank {
  background: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.7);
}

.tf-gre-pack-slot--third .tf-gre-pack-rank {
  background: rgba(255, 255, 255, 0.06);
  color: rgba(255, 255, 255, 0.5);
}

.tf-gre-pack-info {
  flex: 1;
  min-width: 0;
}

.tf-gre-pack-biz {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #ffffff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 4px;
}

.tf-gre-pack-slot--first .tf-gre-pack-biz { color: #ffffff; }
.tf-gre-pack-slot--second .tf-gre-pack-biz { color: rgba(255,255,255,0.8); }
.tf-gre-pack-slot--third .tf-gre-pack-biz { color: rgba(255,255,255,0.6); }

.tf-gre-pack-meta {
  display: flex;
  align-items: center;
  gap: 6px;
}

.tf-gre-pack-stars {
  color: var(--gre-gold);
  font-size: 12px;
  letter-spacing: 1px;
}

.tf-gre-pack-slot--second .tf-gre-pack-stars,
.tf-gre-pack-slot--third .tf-gre-pack-stars {
  color: rgba(255, 204, 0, 0.6);
}

.tf-gre-pack-rating {
  font-size: 13px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.8);
}

.tf-gre-pack-count {
  font-size: 12px;
  color: var(--gre-muted);
}

.tf-gre-pack-clicks {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  flex-shrink: 0;
  text-align: right;
}

.tf-gre-pack-clicks-pct {
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
}

.tf-gre-pack-slot--first .tf-gre-pack-clicks-pct { color: var(--gre-gold); }
.tf-gre-pack-slot--second .tf-gre-pack-clicks-pct { color: rgba(255,255,255,0.6); }
.tf-gre-pack-slot--third .tf-gre-pack-clicks-pct { color: rgba(255,255,255,0.35); }

.tf-gre-pack-clicks-label {
  font-size: 10px;
  font-weight: 600;
  color: var(--gre-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.tf-gre-pack-ghost {
  padding: 14px 20px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tf-gre-pack-ghost-text {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.25);
  font-style: italic;
}

.tf-gre-pack-ghost-pct {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.18);
}

/* ── Math hammer ── */
.tf-gre-math {
  background: linear-gradient(135deg, rgba(255, 204, 0, 0.12) 0%, rgba(255, 204, 0, 0.04) 100%);
  border: 1px solid rgba(255, 204, 0, 0.3);
  border-radius: var(--gre-radius);
  padding: 36px 32px;
  margin-bottom: 56px;
  position: relative;
  overflow: hidden;
}

.tf-gre-math::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--gre-gold), transparent);
}

.tf-gre-math-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.tf-gre-math-icon {
  color: var(--gre-gold);
  display: flex;
  align-items: center;
}

.tf-gre-math-eyebrow {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--gre-gold);
}

.tf-gre-math-intro {
  font-size: clamp(16px, 2.2vw, 20px);
  font-weight: 600;
  color: #ffffff;
  margin: 0 0 28px;
  line-height: 1.5;
}

.tf-gre-math-intro strong {
  color: var(--gre-gold);
}

.tf-gre-math-rows {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 28px;
}

.tf-gre-math-row {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px;
  border-radius: var(--gre-radius-sm);
}

.tf-gre-math-row--with {
  background: var(--gre-green-dim);
  border: 1px solid rgba(34, 197, 94, 0.2);
  margin-bottom: 0;
}

.tf-gre-math-row--without {
  background: var(--gre-red-dim);
  border: 1px solid rgba(255, 68, 68, 0.2);
}

.tf-gre-math-divider {
  text-align: center;
  font-size: 13px;
  font-weight: 800;
  color: var(--gre-muted);
  padding: 10px 0;
  letter-spacing: 0.1em;
}

.tf-gre-math-row-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.7);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.tf-gre-math-check {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 900;
  flex-shrink: 0;
}

.tf-gre-math-check--good {
  background: var(--gre-green-dim);
  color: var(--gre-green);
}

.tf-gre-math-check--bad {
  background: var(--gre-red-dim);
  color: var(--gre-red);
}

.tf-gre-math-row-calc {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.tf-gre-math-rate {
  font-size: clamp(14px, 2vw, 16px);
  font-weight: 600;
  color: rgba(255, 255, 255, 0.75);
}

.tf-gre-math-arrow {
  color: var(--gre-muted);
  font-size: 16px;
}

.tf-gre-math-result {
  font-size: clamp(18px, 3vw, 26px);
  font-weight: 800;
  letter-spacing: -0.02em;
}

.tf-gre-math-result--good {
  color: var(--gre-green);
}

.tf-gre-math-result--bad {
  color: var(--gre-red);
}

.tf-gre-math-kicker {
  font-size: clamp(15px, 2vw, 18px);
  font-weight: 500;
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.6;
  margin: 0;
  border-top: 1px solid rgba(255, 204, 0, 0.2);
  padding-top: 20px;
}

.tf-gre-math-kicker strong {
  color: var(--gre-gold);
  font-weight: 800;
}

/* ── CTA ── */
.tf-gre-cta-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

.tf-gre-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--gre-gold);
  color: #000000;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.01em;
  text-decoration: none;
  padding: 16px 36px;
  border-radius: 8px;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  box-shadow: 0 0 0 0 rgba(255, 204, 0, 0.4);
}

.tf-gre-cta-btn:hover,
.tf-gre-cta-btn:focus-visible {
  background: #FFD700;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.35);
  outline: none;
}

.tf-gre-cta-btn:active {
  transform: translateY(0);
}

.tf-gre-cta-sub {
  font-size: 13px;
  color: var(--gre-muted);
  margin: 0;
  text-align: center;
}

/* ── Responsive ── */
@media (max-width: 640px) {
  .tf-gre {
    padding: 60px 0;
  }

  .tf-gre-factor-inner {
    padding: 24px 20px;
  }

  .tf-gre-bar-name {
    min-width: 80px;
    font-size: 11px;
  }

  .tf-gre-bar-value {
    font-size: 10px;
  }

  .tf-gre-ratings {
    gap: 8px;
  }

  .tf-gre-rating-tier {
    min-width: 90px;
    padding: 12px 8px;
  }

  .tf-gre-rating-score {
    font-size: 18px;
  }

  .tf-gre-pack-slot {
    padding: 14px 16px;
    gap: 12px;
  }

  .tf-gre-pack-biz {
    font-size: 13px;
  }

  .tf-gre-math {
    padding: 28px 20px;
  }

  .tf-gre-math-row {
    padding: 16px;
  }

  .tf-gre-math-row-calc {
    gap: 8px;
  }

  .tf-gre-cta-btn {
    width: 100%;
    justify-content: center;
    padding: 16px 24px;
    font-size: 15px;
  }

  .tf-gre-pack-clicks-pct {
    font-size: 16px;
  }
}

@media (max-width: 400px) {
  .tf-gre-ratings {
    flex-direction: column;
  }

  .tf-gre-rating-tier {
    flex-direction: row;
    justify-content: space-between;
    min-width: unset;
    padding: 12px 16px;
  }
}
/* END_SECTION:google-ranking-explained */

/* START_SECTION:guarantee (INDEX:53) */
.tf-guarantee {
  padding: 4rem 1rem;
  background: var(--tf-background, #ffffff);
  border-top: 1px solid var(--tf-border, #e5e5e5);
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
}
@media (min-width: 768px) {
  .tf-guarantee {
    padding: 5rem 1rem;
  }
}
.tf-guarantee .tf-container {
  max-width: 900px;
  margin: 0 auto;
}
.tf-guarantee-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  text-align: center;
}
@media (min-width: 768px) {
  .tf-guarantee-inner {
    flex-direction: row;
    text-align: left;
    gap: 3rem;
  }
}
.tf-guarantee-badge {
  flex-shrink: 0;
  color: var(--tf-primary, #FACC15);
  width: 120px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tf-guarantee-badge svg {
  width: 120px;
  height: 120px;
}
.tf-guarantee-title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-guarantee-text {
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
  margin-bottom: 1.5rem;
}
.tf-guarantee-points {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.tf-guarantee-point {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-weight: 500;
  color: var(--tf-foreground, #141414);
}
.tf-guarantee-point svg {
  color: #22c55e;
  flex-shrink: 0;
}
/* END_SECTION:guarantee */

/* START_SECTION:hero-split (INDEX:55) */
.tf-hsplit { padding: 5rem 1rem; overflow: hidden; }
@media (min-width: 768px) { .tf-hsplit { padding: 7rem 1rem; } }
.tf-hsplit--white { background: var(--tf-background, #ffffff); }
.tf-hsplit--gray { background: var(--tf-muted, #f5f5f5); }
.tf-hsplit--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-hsplit .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-hsplit-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-hsplit-inner { grid-template-columns: 1fr 1fr; gap: 4rem; }
  .tf-hsplit-inner--reverse .tf-hsplit-content { order: 2; }
  .tf-hsplit-inner--reverse .tf-hsplit-media { order: 1; }
}
.tf-hsplit-content {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.tf-hsplit-badge {
  display: inline-flex;
  align-self: flex-start;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.3rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-hsplit-title {
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 900;
  color: var(--tf-foreground, #141414);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0;
}
.tf-hsplit--dark .tf-hsplit-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-hsplit-highlight {
  color: var(--tf-primary, #FACC15);
  position: relative;
}
.tf-hsplit-subtitle {
  font-size: 1.125rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0;
  max-width: 520px;
}
.tf-hsplit--dark .tf-hsplit-subtitle { color: rgba(255,255,255,0.65); }
.tf-hsplit-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}
.tf-hsplit-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.9375rem 2.25rem;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s, border-color 0.2s, transform 0.15s;
}
.tf-hsplit-btn:hover { transform: translateY(-1px); }
.tf-hsplit-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-hsplit-btn--primary:hover { background: hsl(45,100%,45%); }
.tf-hsplit-btn--secondary {
  border: 2px solid rgba(0,0,0,0.2);
  color: var(--tf-foreground, #141414);
  background: transparent;
}
.tf-hsplit-btn--secondary:hover { border-color: var(--tf-foreground, #141414); }
.tf-hsplit--dark .tf-hsplit-btn--secondary {
  border-color: rgba(255,255,255,0.25);
  color: rgba(255,255,255,0.85);
}
.tf-hsplit--dark .tf-hsplit-btn--secondary:hover {
  border-color: rgba(255,255,255,0.6);
}
.tf-hsplit-proof {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.tf-hsplit-stars { display: flex; gap: 2px; color: var(--tf-primary, #FACC15); }
.tf-hsplit-proof-text {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
}
.tf-hsplit--dark .tf-hsplit-proof-text { color: rgba(255,255,255,0.55); }
.tf-hsplit-media { position: relative; }
.tf-hsplit-img-wrap {
  position: relative;
  border-radius: 1.5rem;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,0.12);
}
.tf-hsplit-img {
  width: 100%;
  height: auto;
  display: block;
}
.tf-hsplit-img-badge {
  position: absolute;
  bottom: 1.25rem;
  right: 1.25rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.8125rem;
  font-weight: 700;
  padding: 0.4rem 0.875rem;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.tf-hsplit-placeholder {
  background: rgba(0,0,0,0.05);
  border-radius: 1.5rem;
  aspect-ratio: 4/3;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-foreground, #141414);
}
.tf-hsplit--dark .tf-hsplit-placeholder { background: rgba(255,255,255,0.06); color: rgba(255,255,255,0.3); }
/* END_SECTION:hero-split */

/* START_SECTION:horizontal-scroll (INDEX:57) */
.tf-hscroll {
  padding: clamp(3rem, 6vw, 5rem) 0;
  background: var(--tf-background, #ffffff);
  overflow: hidden;
}
.tf-hscroll .tf-container,
.tf-hscroll-head.tf-container,
.tf-hscroll-footer.tf-container {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
}
.tf-hscroll-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  margin: 0 0 0.75rem;
}
.tf-hscroll-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.15;
  margin: 0 0 0.75rem;
}
.tf-hscroll-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0 0 2rem;
  line-height: 1.6;
  max-width: 580px;
}
/* Track */
.tf-hscroll-track-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: var(--tf-primary, #FACC15) transparent;
  padding: 0.25rem 1rem 1.5rem;
}
.tf-hscroll-track-wrap::-webkit-scrollbar {
  height: 4px;
}
.tf-hscroll-track-wrap::-webkit-scrollbar-track {
  background: transparent;
}
.tf-hscroll-track-wrap::-webkit-scrollbar-thumb {
  background: var(--tf-primary, #FACC15);
  border-radius: 9999px;
}
.tf-hscroll-track {
  display: flex;
  gap: 1.25rem;
  width: max-content;
  padding: 0 max(1rem, calc((100vw - 1200px) / 2));
}
/* Cards */
.tf-hscroll-card {
  flex-shrink: 0;
  width: 280px;
  border-radius: 1.25rem;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
@media (min-width: 640px) {
  .tf-hscroll-card {
    width: 320px;
  }
}
.tf-hscroll-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.12);
}
.tf-hscroll-card--card {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}
.tf-hscroll-card--dark {
  background: var(--tf-secondary, #1a1a1a);
  border: 1px solid rgba(255,255,255,0.07);
}
.tf-hscroll-card--muted {
  background: var(--tf-muted, #f5f5f5);
}
/* Card image */
.tf-hscroll-card-img-wrap {
  position: relative;
  overflow: hidden;
}
.tf-hscroll-card-img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.tf-hscroll-card:hover .tf-hscroll-card-img {
  transform: scale(1.04);
}
.tf-hscroll-card-badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.25rem 0.625rem;
  border-radius: 9999px;
}
/* Card body */
.tf-hscroll-card-body {
  padding: 1.25rem;
}
.tf-hscroll-card-icon {
  font-size: 1.75rem;
  display: block;
  margin-bottom: 0.625rem;
  line-height: 1;
}
.tf-hscroll-card-title {
  font-size: 1.0625rem;
  font-weight: 700;
  margin: 0 0 0.5rem;
  line-height: 1.3;
}
.tf-hscroll-card--card .tf-hscroll-card-title,
.tf-hscroll-card--muted .tf-hscroll-card-title {
  color: var(--tf-foreground, #141414);
}
.tf-hscroll-card--dark .tf-hscroll-card-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-hscroll-card-desc {
  font-size: 0.9rem;
  line-height: 1.55;
  margin: 0 0 0.875rem;
}
.tf-hscroll-card--card .tf-hscroll-card-desc,
.tf-hscroll-card--muted .tf-hscroll-card-desc {
  color: var(--tf-muted-foreground, #737373);
}
.tf-hscroll-card--dark .tf-hscroll-card-desc {
  color: rgba(255, 255, 255, 0.6);
}
.tf-hscroll-card-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid var(--tf-primary, #FACC15);
  padding-bottom: 1px;
  transition: opacity 0.15s;
}
.tf-hscroll-card--card .tf-hscroll-card-link,
.tf-hscroll-card--muted .tf-hscroll-card-link {
  color: var(--tf-foreground, #141414);
}
.tf-hscroll-card--dark .tf-hscroll-card-link {
  color: var(--tf-primary, #FACC15);
  border-color: rgba(250,204,21,0.4);
}
.tf-hscroll-card-link:hover { opacity: 0.7; }
/* Footer CTA */
.tf-hscroll-footer {
  padding-top: 1.5rem;
}
.tf-hscroll-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-hscroll-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* END_SECTION:horizontal-scroll */

/* START_SECTION:hormozi-hero (INDEX:58) */
/* =========================================================
   TF HORMOZI HERO — tapfive-theme
   ========================================================= */

/* Google Fonts — Montserrat */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800;900&display=swap');

/* ── CSS custom properties default (overridden by inline style) ── */
.tf-hh-section {
  --tf-hh-bg: #0A0A0A;
  --tf-hh-accent: #FFCC00;
  --tf-hh-accent-dark: #e6b800;
  --tf-hh-text: #FFFFFF;
  --tf-hh-muted: rgba(255,255,255,0.65);
  --tf-hh-card-bg: #141414;
  --tf-hh-card-border: var(--tf-hh-accent);
  --tf-hh-trust-bg: rgba(255,204,0,0.07);
  --tf-hh-radius: 12px;
  --tf-hh-font: 'Montserrat', sans-serif;
}

/* ── Section shell ── */
.tf-hh-section {
  background-color: var(--tf-hh-bg);
  color: var(--tf-hh-text);
  font-family: var(--tf-hh-font);
  display: flex;
  flex-direction: column;
  min-height: auto;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

/* subtle radial glow behind hero */
.tf-hh-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 70% 55% at 20% 40%, rgba(255,204,0,0.06) 0%, transparent 70%),
    radial-gradient(ellipse 50% 40% at 80% 60%, rgba(255,204,0,0.04) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}

/* ── Centred wrapper ── */
.tf-hh-container {
  flex: 1;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 32px 24px 40px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
}

/* ── Two-column row ── */
.tf-hh-inner {
  display: flex;
  align-items: center;
  gap: 56px;
  width: 100%;
}

/* ── LEFT column ── */
.tf-hh-left {
  flex: 0 0 60%;
  max-width: 60%;
}

/* headline */
.tf-hh-headline {
  font-size: clamp(2.4rem, 5vw, 4rem);
  font-weight: 900;
  line-height: 1.1;
  color: var(--tf-hh-accent);
  margin: 0 0 20px;
  letter-spacing: -0.02em;
  text-transform: uppercase;
}

/* sub-headline */
.tf-hh-subheadline {
  font-size: clamp(1.1rem, 2.2vw, 1.4rem);
  font-weight: 600;
  line-height: 1.45;
  color: var(--tf-hh-text);
  margin: 0 0 28px;
}

/* bullets */
.tf-hh-bullets {
  list-style: none;
  padding: 0;
  margin: 0 0 32px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tf-hh-bullet {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--tf-hh-text);
}

.tf-hh-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  min-width: 24px;
  background: var(--tf-hh-accent);
  color: #000;
  border-radius: 50%;
  font-size: 0.75rem;
  font-weight: 900;
  line-height: 1;
}

/* social proof row */
.tf-hh-proof-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 0;
  margin-bottom: 36px;
}

.tf-hh-proof-item {
  display: flex;
  align-items: center;
  gap: 6px;
}

.tf-hh-proof-divider {
  width: 1px;
  height: 18px;
  background: rgba(255,255,255,0.25);
  margin: 0 14px;
}

.tf-hh-stars {
  color: var(--tf-hh-accent);
  font-size: 1rem;
  letter-spacing: 2px;
}

.tf-hh-proof-icon {
  font-size: 1rem;
}

.tf-hh-proof-text {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-hh-muted);
}

/* CTA row */
.tf-hh-cta-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 16px;
}

.tf-hh-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 32px;
  border-radius: var(--tf-hh-radius);
  font-family: var(--tf-hh-font);
  font-size: 1rem;
  font-weight: 800;
  text-decoration: none;
  letter-spacing: 0.02em;
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
  cursor: pointer;
  border: 2px solid transparent;
  white-space: nowrap;
}

.tf-hh-btn--primary {
  background: var(--tf-hh-accent);
  color: #000;
  border-color: var(--tf-hh-accent);
  box-shadow: 0 4px 20px rgba(255,204,0,0.35);
}

.tf-hh-btn--primary:hover,
.tf-hh-btn--primary:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(255,204,0,0.5);
}

.tf-hh-btn--primary:active {
  transform: translateY(0);
}

.tf-hh-btn--secondary {
  background: transparent;
  color: var(--tf-hh-text);
  border-color: rgba(255,255,255,0.5);
}

.tf-hh-btn--secondary:hover,
.tf-hh-btn--secondary:focus-visible {
  border-color: var(--tf-hh-text);
  background: rgba(255,255,255,0.06);
  transform: translateY(-2px);
}

/* urgency text */
.tf-hh-urgency {
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--tf-hh-muted);
  margin: 0;
  letter-spacing: 0.03em;
}

/* ── RIGHT column ── */
.tf-hh-right {
  flex: 0 0 40%;
  max-width: 40%;
}

/* card */
.tf-hh-card {
  background: var(--tf-hh-card-bg);
  border: 2px solid var(--tf-hh-accent);
  border-radius: 16px;
  padding: 28px 24px;
  box-shadow:
    0 0 0 1px rgba(255,204,0,0.1),
    0 20px 60px rgba(0,0,0,0.6),
    0 0 40px rgba(255,204,0,0.08) inset;
  position: relative;
  overflow: hidden;
}

.tf-hh-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--tf-hh-accent), transparent);
  opacity: 0.8;
}

/* card header */
.tf-hh-card-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
}

.tf-hh-live-dot {
  width: 9px;
  height: 9px;
  min-width: 9px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34,197,94,0.6);
  animation: tf-hh-pulse 1.8s ease-out infinite;
}

@keyframes tf-hh-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(34,197,94,0.6); }
  70%  { box-shadow: 0 0 0 8px rgba(34,197,94,0); }
  100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); }
}

.tf-hh-live-label {
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-hh-muted);
}

/* ticker */
.tf-hh-ticker {
  position: relative;
  min-height: 56px;
  margin-bottom: 24px;
}

.tf-hh-tick-item {
  display: none;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.tf-hh-tick-item.tf-hh-tick--active {
  display: flex;
  opacity: 1;
}

.tf-hh-tick-item.tf-hh-tick--fade-in {
  animation: tf-hh-fadein 0.5s ease forwards;
}

.tf-hh-tick-item.tf-hh-tick--fade-out {
  animation: tf-hh-fadeout 0.4s ease forwards;
}

@keyframes tf-hh-fadein {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes tf-hh-fadeout {
  from { opacity: 1; transform: translateY(0); }
  to   { opacity: 0; transform: translateY(-6px); }
}

.tf-hh-tick-icon {
  font-size: 1.25rem;
  flex-shrink: 0;
}

.tf-hh-tick-text {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-hh-text);
  line-height: 1.35;
}

/* stat card */
.tf-hh-stat-card {
  background: rgba(255,204,0,0.05);
  border: 1px solid rgba(255,204,0,0.2);
  border-radius: 10px;
  padding: 20px 18px;
  text-align: center;
  margin-bottom: 20px;
}

.tf-hh-stat-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--tf-hh-muted);
  margin: 0 0 10px;
}

.tf-hh-stat-number {
  font-size: clamp(2.4rem, 5vw, 3rem);
  font-weight: 900;
  color: var(--tf-hh-accent);
  margin: 0 0 8px;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
  transition: none;
}

.tf-hh-stat-sub {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--tf-hh-muted);
  margin: 0;
  line-height: 1.4;
}

/* card star rating */
.tf-hh-card-rating {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.tf-hh-card-stars {
  color: var(--tf-hh-accent);
  font-size: 1rem;
  letter-spacing: 2px;
  flex-shrink: 0;
}

.tf-hh-card-rating-text {
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--tf-hh-muted);
}

/* ── TRUST BAR ── */
.tf-hh-trust-bar {
  background: var(--tf-hh-trust-bg);
  border-top: 1px solid rgba(255,204,0,0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  padding: 18px 24px;
  position: relative;
  z-index: 1;
}

.tf-hh-trust-item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tf-hh-trust-divider {
  width: 1px;
  height: 22px;
  background: rgba(255,204,0,0.3);
  margin: 0 28px;
}

.tf-hh-trust-icon {
  font-size: 1.1rem;
}

.tf-hh-trust-text {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--tf-hh-text);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .tf-hh-section {
    min-height: auto;
  }

  .tf-hh-container {
    padding: 32px 20px 32px;
  }

  .tf-hh-inner {
    flex-direction: column;
    gap: 40px;
  }

  .tf-hh-left,
  .tf-hh-right {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .tf-hh-headline {
    font-size: clamp(2rem, 8vw, 2.8rem);
  }

  .tf-hh-proof-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .tf-hh-proof-divider {
    display: none;
  }

  .tf-hh-trust-bar {
    flex-direction: column;
    gap: 12px;
    padding: 20px 16px;
  }

  .tf-hh-trust-divider {
    display: none;
  }
}

@media (max-width: 480px) {
  .tf-hh-container {
    padding: 40px 16px 32px;
  }

  .tf-hh-btn {
    width: 100%;
    text-align: center;
  }

  .tf-hh-cta-row {
    flex-direction: column;
  }

  .tf-hh-urgency {
    text-align: center;
  }
}
/* END_SECTION:hormozi-hero */

/* START_SECTION:hotspot-image (INDEX:59) */
.tf-hs {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-muted, #f5f5f5);
}
.tf-hs .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-hs-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-hs-heading {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-hs-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 620px;
  margin: 0 auto 3rem;
  line-height: 1.6;
}
.tf-hs-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-hs-layout--left {
    grid-template-columns: 3fr 2fr;
  }
  .tf-hs-layout--right {
    grid-template-columns: 2fr 3fr;
  }
  .tf-hs-layout--right .tf-hs-image-wrap {
    order: 2;
  }
  .tf-hs-layout--right .tf-hs-list {
    order: 1;
  }
}
.tf-hs-image-wrap {
  position: relative;
  border-radius: 1.5rem;
  line-height: 0;
}
.tf-hs-img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
  display: block;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
}
.tf-hs-placeholder {
  width: 100%;
  aspect-ratio: 3 / 2;
  border-radius: 1.5rem;
  background: #e0e0e0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #999;
  font-size: 0.875rem;
}
/* Hotspot dots */
.tf-hs-dot {
  position: absolute;
  width: 36px;
  height: 36px;
  transform: translate(-50%, -50%);
  background: var(--tf-primary, #FACC15);
  border: 3px solid #fff;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  transition: transform 0.2s, box-shadow 0.2s;
  z-index: 10;
}
.tf-hs-dot::after {
  content: '';
  position: absolute;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 2px solid var(--tf-primary, #FACC15);
  opacity: 0.5;
  animation: tf-hs-pulse 2.2s ease-out infinite;
}
@keyframes tf-hs-pulse {
  0%   { transform: scale(0.75); opacity: 0.5; }
  70%  { transform: scale(1.35); opacity: 0; }
  100% { transform: scale(0.75); opacity: 0; }
}
.tf-hs-dot:hover,
.tf-hs-dot--open {
  transform: translate(-50%, -50%) scale(1.2);
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.3);
}
.tf-hs-dot-num {
  font-size: 0.8125rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  position: relative;
  z-index: 1;
  line-height: 1;
}
/* Tooltip */
.tf-hs-tooltip {
  position: absolute;
  bottom: calc(100% + 14px);
  left: 50%;
  transform: translateX(-50%) translateY(6px);
  background: #fff;
  border-radius: 0.75rem;
  padding: 0.875rem 1rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
  width: 210px;
  text-align: left;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s, transform 0.2s;
  border: 1px solid rgba(0, 0, 0, 0.08);
  z-index: 20;
}
.tf-hs-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 7px solid transparent;
  border-top-color: #fff;
}
.tf-hs-dot--open .tf-hs-tooltip {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}
.tf-hs-tooltip-title {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
}
.tf-hs-tooltip-desc {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.45;
}
/* Feature list */
.tf-hs-list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.tf-hs-list-heading {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-muted-foreground, #737373);
  margin: 0 0 0.5rem;
}
.tf-hs-item {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.tf-hs-item-num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.875rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-hs-item-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
}
.tf-hs-item-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.55;
}
/* END_SECTION:hotspot-image */

/* START_SECTION:icon-columns (INDEX:61) */
.tf-icon-cols {
  padding: 4rem 1rem;
}
@media (min-width: 768px) {
  .tf-icon-cols {
    padding: 6rem 1rem;
  }
}
.tf-icon-cols--white {
  background: var(--tf-background, #ffffff);
}
.tf-icon-cols--gray {
  background: var(--tf-muted, #f5f5f5);
}
.tf-icon-cols--dark {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-icon-cols .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-icon-cols .tf-section-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-icon-cols-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-icon-cols .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  margin-bottom: 0.75rem;
}
.tf-icon-cols--dark .tf-section-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-icon-cols--white .tf-section-title,
.tf-icon-cols--gray .tf-section-title {
  color: var(--tf-foreground, #141414);
}
.tf-icon-cols .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
  font-size: 1.125rem;
}
.tf-icon-cols--dark .tf-section-subtitle {
  color: rgba(255, 255, 255, 0.65);
}
.tf-icon-cols-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 480px) {
  .tf-icon-cols-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .tf-icon-cols-count-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .tf-icon-cols-count-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .tf-icon-cols-count-5 {
    grid-template-columns: repeat(3, 1fr);
  }
  .tf-icon-cols-count-6 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1024px) {
  .tf-icon-cols-count-5 {
    grid-template-columns: repeat(5, 1fr);
  }
  .tf-icon-cols-count-6 {
    grid-template-columns: repeat(6, 1fr);
  }
}
.tf-icon-col {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
  border-radius: 1rem;
  transition: transform 0.2s;
}
.tf-icon-cols--white .tf-icon-col,
.tf-icon-cols--dark .tf-icon-col {
  background: transparent;
}
.tf-icon-cols--gray .tf-icon-col {
  background: var(--tf-card, #fafafa);
  border: 1px solid var(--tf-border, #e5e5e5);
}
.tf-icon-col--highlight {
  background: hsla(45, 100%, 51%, 0.08) !important;
  border: 1px solid var(--tf-primary, #FACC15) !important;
}
.tf-icon-col:hover {
  transform: translateY(-3px);
}
.tf-icon-col-icon {
  width: 56px;
  height: 56px;
  background: hsla(45, 100%, 51%, 0.12);
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-primary, #FACC15);
  flex-shrink: 0;
}
.tf-icon-col-stat {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  letter-spacing: -0.02em;
  line-height: 1;
}
.tf-icon-col-title {
  font-size: 1.0625rem;
  font-weight: 700;
}
.tf-icon-cols--dark .tf-icon-col-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-icon-cols--white .tf-icon-col-title,
.tf-icon-cols--gray .tf-icon-col-title {
  color: var(--tf-foreground, #141414);
}
.tf-icon-col-text {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--tf-muted-foreground, #737373);
}
.tf-icon-cols--dark .tf-icon-col-text {
  color: rgba(255, 255, 255, 0.6);
}
.tf-icon-col-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  margin-top: auto;
  transition: gap 0.2s;
}
.tf-icon-col-link:hover {
  gap: 0.625rem;
}
/* END_SECTION:icon-columns */

/* START_SECTION:icon-features (INDEX:62) */
.tf-ifeats { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-ifeats { padding: 7rem 1rem; } }
.tf-ifeats--white { background: var(--tf-background, #ffffff); }
.tf-ifeats--gray { background: var(--tf-muted, #f5f5f5); }
.tf-ifeats--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-ifeats .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-ifeats-header { text-align: center; margin-bottom: 3rem; }
.tf-ifeats-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-ifeats-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-ifeats--dark .tf-ifeats-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ifeats-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.tf-ifeats--dark .tf-ifeats-subtitle { color: rgba(255,255,255,0.6); }
.tf-ifeats-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 500px) { .tf-ifeats-grid--2 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 500px) { .tf-ifeats-grid--3 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-ifeats-grid--3 { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 500px) { .tf-ifeats-grid--4 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-ifeats-grid--4 { grid-template-columns: repeat(4, 1fr); } }
.tf-ifeat-card {
  display: flex;
  gap: 1rem;
}
.tf-ifeat-card--boxed {
  flex-direction: column;
  padding: 1.75rem;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-ifeat-card--boxed:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.07); }
.tf-ifeats--dark .tf-ifeat-card--boxed {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-ifeat-card--inline {
  flex-direction: row;
  padding: 0;
  background: none;
  border: none;
}
.tf-ifeat-card--minimal {
  flex-direction: column;
  padding: 0;
  background: none;
  border: none;
}
.tf-ifeat-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.875rem;
  flex-shrink: 0;
}
.tf-ifeat-icon--yellow { background: hsla(45,100%,51%,0.12); color: var(--tf-primary, #FACC15); }
.tf-ifeat-icon--dark { background: var(--tf-foreground, #141414); color: var(--tf-primary, #FACC15); }
.tf-ifeats--dark .tf-ifeat-icon--dark { background: rgba(255,255,255,0.1); }
.tf-ifeat-icon--white { background: rgba(255,255,255,0.12); color: var(--tf-foreground, #141414); }
.tf-ifeats--dark .tf-ifeat-icon--white { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ifeat-body { display: flex; flex-direction: column; gap: 0.375rem; flex: 1; }
.tf-ifeat-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-ifeats--dark .tf-ifeat-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ifeat-desc {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-ifeats--dark .tf-ifeat-desc { color: rgba(255,255,255,0.55); }
.tf-ifeat-link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  margin-top: 0.25rem;
  transition: opacity 0.2s;
}
.tf-ifeat-link:hover { opacity: 0.75; }
.tf-ifeats-footer { text-align: center; margin-top: 3rem; }
.tf-ifeats-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-ifeats-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:icon-features */

/* START_SECTION:image-accordion (INDEX:63) */
.tf-ia {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-ia .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-ia-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-ia-heading {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-ia-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 580px;
  margin: 0 auto 3rem;
  line-height: 1.65;
}
.tf-ia-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: start;
}
@media (min-width: 768px) {
  .tf-ia-layout {
    grid-template-columns: repeat(2, 1fr);
    align-items: start;
  }
  .tf-ia-layout--right .tf-ia-sticky { order: 2; }
  .tf-ia-layout--right .tf-ia-accordion { order: 1; }
}
/* Sticky image */
.tf-ia-sticky {
  position: sticky;
  top: 6rem;
}
.tf-ia-img-wrap {
  border-radius: 1.25rem;
  overflow: hidden;
  box-shadow: 0 16px 56px rgba(0, 0, 0, 0.1);
  line-height: 0;
}
.tf-ia-img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.2s ease;
}
.tf-ia-img-placeholder {
  aspect-ratio: 4 / 3;
  background: #e5e5e5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #999;
  font-size: 0.875rem;
  border-radius: 1.25rem;
}
/* Accordion */
.tf-ia-accordion {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.tf-ia-item {
  border-radius: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.07);
  overflow: hidden;
  background: var(--tf-card, #fafafa);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.tf-ia-item--open {
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 4px 20px rgba(250, 204, 21, 0.12);
}
.tf-ia-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 1.125rem 1.25rem;
  background: none;
  border: 0;
  cursor: pointer;
  text-align: left;
  transition: background 0.15s;
}
.tf-ia-trigger:hover {
  background: rgba(250, 204, 21, 0.05);
}
.tf-ia-num,
.tf-ia-icon-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-ia-num {
  background: var(--tf-muted, #f5f5f5);
  font-size: 0.875rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  transition: background 0.2s;
}
.tf-ia-item--open .tf-ia-num {
  background: var(--tf-primary, #FACC15);
}
.tf-ia-icon-badge {
  font-size: 1.25rem;
  line-height: 1;
}
.tf-ia-trigger-title {
  flex: 1;
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  line-height: 1.3;
}
.tf-ia-trigger-arrow {
  color: var(--tf-muted-foreground, #737373);
  flex-shrink: 0;
  transition: transform 0.25s ease;
  display: flex;
}
.tf-ia-item--open .tf-ia-trigger-arrow {
  transform: rotate(180deg);
  color: var(--tf-primary, #FACC15);
}
.tf-ia-body {
  overflow: hidden;
}
.tf-ia-body-inner {
  padding: 0 1.25rem 1.25rem 4rem;
}
.tf-ia-desc {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0 0 0.875rem;
}
.tf-ia-bullets {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.tf-ia-bullets li {
  font-size: 0.9rem;
  color: var(--tf-muted-foreground, #737373);
  padding-left: 1.25rem;
  position: relative;
  line-height: 1.45;
}
.tf-ia-bullets li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
}
/* END_SECTION:image-accordion */

/* START_SECTION:image-gallery (INDEX:65) */
.tf-gallery { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-gallery { padding: 7rem 1rem; } }
.tf-gallery--white { background: var(--tf-background, #ffffff); }
.tf-gallery--gray { background: var(--tf-muted, #f5f5f5); }
.tf-gallery--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-gallery .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-gallery-header { text-align: center; margin-bottom: 3rem; }
.tf-gallery-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-gallery-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-gallery--dark .tf-gallery-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-gallery-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-gallery--dark .tf-gallery-subtitle { color: rgba(255,255,255,0.6); }
.tf-gallery-grid { column-gap: 1rem; }
.tf-gallery-grid--2 { columns: 1; }
.tf-gallery-grid--3 { columns: 1; }
.tf-gallery-grid--4 { columns: 2; }
@media (min-width: 640px) {
  .tf-gallery-grid--2 { columns: 2; }
  .tf-gallery-grid--3 { columns: 2; }
  .tf-gallery-grid--4 { columns: 3; }
}
@media (min-width: 900px) {
  .tf-gallery-grid--3 { columns: 3; }
  .tf-gallery-grid--4 { columns: 4; }
}
.tf-gallery-item {
  break-inside: avoid;
  margin-bottom: 1rem;
}
.tf-gallery-img-btn {
  position: relative;
  display: block;
  width: 100%;
  border: none;
  padding: 0;
  background: none;
  cursor: zoom-in;
  border-radius: 0.875rem;
  overflow: hidden;
}
.tf-gallery-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0.875rem;
  transition: transform 0.3s;
}
.tf-gallery-img-btn:hover .tf-gallery-img { transform: scale(1.03); }
.tf-gallery-zoom {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.3);
  color: #ffffff;
  opacity: 0;
  transition: opacity 0.2s;
  border-radius: 0.875rem;
}
.tf-gallery-img-btn:hover .tf-gallery-zoom { opacity: 1; }
.tf-gallery-caption {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  margin: 0.375rem 0 0;
  line-height: 1.4;
}
.tf-gallery--dark .tf-gallery-caption { color: rgba(255,255,255,0.45); }
.tf-gallery-footer { text-align: center; margin-top: 2.5rem; }
.tf-gallery-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  border: 2px solid var(--tf-foreground, #141414);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.tf-gallery-cta:hover { background: var(--tf-foreground, #141414); color: var(--tf-background, #ffffff); }
.tf-gallery--dark .tf-gallery-cta { border-color: rgba(255,255,255,0.3); color: rgba(255,255,255,0.85); }
.tf-gallery--dark .tf-gallery-cta:hover { background: rgba(255,255,255,0.1); }
.tf-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0,0,0,0.92);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.tf-lightbox[hidden] { display: none; }
.tf-lightbox-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: rgba(255,255,255,0.1);
  border: none;
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  cursor: pointer;
  transition: background 0.2s;
}
.tf-lightbox-close:hover { background: rgba(255,255,255,0.2); }
.tf-lightbox-img {
  max-width: 100%;
  max-height: 80vh;
  object-fit: contain;
  border-radius: 0.75rem;
}
.tf-lightbox-caption {
  color: rgba(255,255,255,0.7);
  font-size: 0.9375rem;
  margin-top: 1rem;
  text-align: center;
}
/* END_SECTION:image-gallery */

/* START_SECTION:impact-numbers (INDEX:67) */
.tf-impact {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-secondary, #1a1a1a);
  text-align: center;
}
.tf-impact .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-impact-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  margin: 0 0 0.75rem;
}
.tf-impact-heading {
  font-size: clamp(1.5rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-secondary-foreground, #fafafa);
  line-height: 1.2;
  margin: 0 0 3rem;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.tf-impact-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 1.5rem;
}
@media (min-width: 640px) {
  .tf-impact-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 900px) {
  .tf-impact-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.tf-impact-stat {
  position: relative;
}
.tf-impact-stat::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: rgba(255, 255, 255, 0.06);
}
.tf-impact-stat:last-child::after {
  display: none;
}
.tf-impact-icon {
  font-size: 2rem;
  display: block;
  margin-bottom: 0.5rem;
  line-height: 1;
}
.tf-impact-number-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 0.125rem;
  margin-bottom: 0.5rem;
}
.tf-impact-prefix {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  line-height: 1.1;
  margin-top: 0.375rem;
}
.tf-impact-number {
  font-size: clamp(2.5rem, 6vw, 3.75rem);
  font-weight: 900;
  color: var(--tf-secondary-foreground, #fafafa);
  letter-spacing: -0.03em;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.tf-impact-label {
  font-size: 1rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  margin: 0 0 0.25rem;
  line-height: 1.3;
}
.tf-impact-sublabel {
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.35);
  margin: 0;
  line-height: 1.4;
}
.tf-impact-footnote {
  margin: 3rem 0 0;
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.3);
  line-height: 1.5;
}
/* END_SECTION:impact-numbers */

/* START_SECTION:industry-personas (INDEX:68) */
/* ============================================================
   INDUSTRY PERSONAS SECTION — tf-personas
   ============================================================ */

.tf-personas {
  background-color: #0A0A0A;
  padding: 64px 16px;
  font-family: 'Montserrat', sans-serif;
  color: #FFFFFF;
}

.tf-personas__inner {
  max-width: 1100px;
  margin: 0 auto;
}

/* ---------- Header ---------- */
.tf-personas__header {
  text-align: center;
  margin-bottom: 40px;
}

.tf-personas__title {
  font-size: clamp(1.75rem, 5vw, 2.5rem);
  font-weight: 800;
  color: #FFFFFF;
  line-height: 1.15;
  margin: 0 0 12px;
  letter-spacing: -0.02em;
}

.tf-personas__subtitle {
  font-size: clamp(0.95rem, 2.5vw, 1.1rem);
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
  line-height: 1.5;
}

/* ---------- Pills ---------- */
.tf-personas__pills-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin-bottom: 40px;
  /* fade edges on mobile to signal scrollability */
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
}

.tf-personas__pills-wrap::-webkit-scrollbar {
  display: none;
}

.tf-personas__pills {
  display: flex;
  gap: 8px;
  padding: 4px 16px;
  width: max-content;
  margin: 0 auto;
}

.tf-personas__pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  border-radius: 100px;
  border: 1.5px solid rgba(255, 255, 255, 0.18);
  background: transparent;
  color: rgba(255, 255, 255, 0.75);
  font-family: 'Montserrat', sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  -webkit-tap-highlight-color: transparent;
}

.tf-personas__pill:hover {
  border-color: rgba(255, 204, 0, 0.5);
  color: #FFFFFF;
}

.tf-personas__pill--active,
.tf-personas__pill[aria-selected="true"] {
  background: #FFCC00;
  border-color: #FFCC00;
  color: #0A0A0A;
}

.tf-personas__pill-emoji {
  font-size: 1rem;
  line-height: 1;
}

/* ---------- Panels ---------- */
.tf-personas__panels {
  position: relative;
}

.tf-personas__panel {
  display: none;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.35s ease, transform 0.35s ease;
}

.tf-personas__panel--active {
  display: block;
  opacity: 1;
  transform: translateY(0);
}

/* Grid: stack on mobile, two-col on desktop */
.tf-personas__panel-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: center;
}

/* ---------- Stat Chip ---------- */
.tf-personas__stat-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 204, 0, 0.1);
  border: 1px solid rgba(255, 204, 0, 0.3);
  border-radius: 100px;
  padding: 7px 14px;
  font-size: 0.78rem;
  font-weight: 700;
  color: #FFCC00;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 20px;
}

.tf-personas__stat-icon {
  flex-shrink: 0;
}

/* ---------- Panel Content ---------- */
.tf-personas__panel-headline {
  font-size: clamp(1.3rem, 4vw, 1.85rem);
  font-weight: 800;
  color: #FFFFFF;
  line-height: 1.2;
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}

.tf-personas__panel-body {
  font-size: clamp(0.9rem, 2.5vw, 1rem);
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.65;
  margin: 0 0 28px;
}

/* ---------- Quote ---------- */
.tf-personas__quote {
  background: rgba(255, 255, 255, 0.05);
  border-left: 3px solid #FFCC00;
  border-radius: 0 8px 8px 0;
  padding: 16px 20px;
  margin: 0 0 28px;
}

.tf-personas__quote-stars {
  color: #FFCC00;
  font-size: 0.9rem;
  letter-spacing: 2px;
  margin-bottom: 8px;
}

.tf-personas__quote-text {
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.9);
  font-style: italic;
  line-height: 1.5;
  margin: 0 0 8px;
}

.tf-personas__quote-cite {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.5);
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* ---------- CTA Button ---------- */
.tf-personas__cta {
  display: inline-block;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.95rem;
  font-weight: 800;
  text-decoration: none;
  padding: 14px 28px;
  border-radius: 6px;
  letter-spacing: 0.01em;
  transition: background 0.2s ease, transform 0.15s ease;
}

.tf-personas__cta:hover {
  background: #FFD633;
  transform: translateY(-1px);
}

/* ---------- Visual Card ---------- */
.tf-personas__visual-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  padding: 28px 24px;
  text-align: center;
}

.tf-personas__visual-icon {
  font-size: 3rem;
  line-height: 1;
  margin-bottom: 16px;
}

.tf-personas__visual-metric {
  margin-bottom: 24px;
}

.tf-personas__visual-num {
  display: block;
  font-size: clamp(2.5rem, 8vw, 3.5rem);
  font-weight: 900;
  color: #FFCC00;
  line-height: 1;
  letter-spacing: -0.03em;
}

.tf-personas__visual-label {
  display: block;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.5);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-top: 4px;
}

/* Bar chart */
.tf-personas__visual-bar-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 16px;
}

.tf-personas__visual-bar-row {
  display: grid;
  grid-template-columns: 48px 1fr 40px;
  align-items: center;
  gap: 8px;
}

.tf-personas__visual-bar-label {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.45);
  font-weight: 600;
  text-align: right;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.tf-personas__visual-bar {
  height: 10px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.tf-personas__visual-bar-fill {
  height: 100%;
  border-radius: 100px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.tf-personas__visual-bar--after .tf-personas__visual-bar-fill {
  background: #FFCC00;
}

.tf-personas__visual-bar--before .tf-personas__visual-bar-fill {
  background: rgba(255, 255, 255, 0.25);
}

.tf-personas__visual-bar-val {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.6);
  font-weight: 700;
  text-align: left;
}

.tf-personas__visual-caption {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.35);
  margin: 0;
  font-style: italic;
}

/* ---------- Desktop: two-column grid ---------- */
@media (min-width: 768px) {
  .tf-personas {
    padding: 96px 40px;
  }

  .tf-personas__header {
    margin-bottom: 48px;
  }

  .tf-personas__pills {
    width: auto;
    justify-content: center;
  }

  .tf-personas__pills-wrap {
    -webkit-mask-image: none;
    mask-image: none;
  }

  .tf-personas__panel-grid {
    grid-template-columns: 1fr 340px;
    gap: 48px;
  }

  .tf-personas__panel-headline {
    font-size: 1.85rem;
  }
}

@media (min-width: 1024px) {
  .tf-personas__panel-grid {
    grid-template-columns: 1fr 380px;
    gap: 64px;
  }
}
/* END_SECTION:industry-personas */

/* START_SECTION:industry-showcase (INDEX:69) */
.tf-industry { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-industry { padding: 7rem 1rem; } }
.tf-industry--white { background: var(--tf-background, #ffffff); }
.tf-industry--gray { background: var(--tf-muted, #f5f5f5); }
.tf-industry--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-industry .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-industry-hd { text-align: center; margin-bottom: 3rem; }
.tf-ind-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-ind-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-industry--dark .tf-ind-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ind-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-industry--dark .tf-ind-subtitle { color: rgba(255,255,255,0.6); }
.tf-ind-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
  justify-content: center;
}
.tf-ind-tab {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1.25rem;
  border-radius: 9999px;
  border: 2px solid transparent;
  background: var(--tf-muted, #f5f5f5);
  color: var(--tf-muted-foreground, #737373);
  font-size: 0.9375rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.tf-ind-tab:hover {
  background: #e8e8e8;
  color: var(--tf-foreground, #141414);
}
.tf-ind-tab.is-active {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  border-color: var(--tf-primary, #FACC15);
}
.tf-industry--dark .tf-ind-tab {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.6);
}
.tf-industry--dark .tf-ind-tab:hover {
  background: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.9);
}
.tf-industry--dark .tf-ind-tab.is-active {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-ind-panel { display: none; }
.tf-ind-panel.is-active { display: block; }
.tf-ind-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) { .tf-ind-layout { grid-template-columns: 1fr 1fr; } }
.tf-ind-headline {
  font-size: clamp(1.375rem, 2.5vw, 2rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.2;
  margin-bottom: 1rem;
}
.tf-industry--dark .tf-ind-headline { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ind-desc {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
  margin-bottom: 1.75rem;
}
.tf-industry--dark .tf-ind-desc { color: rgba(255,255,255,0.6); }
.tf-ind-stats {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
  margin-bottom: 2rem;
}
.tf-ind-stat {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.tf-ind-stat-val {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-ind-stat-lbl {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-industry--dark .tf-ind-stat-lbl { color: rgba(255,255,255,0.5); }
.tf-ind-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
}
.tf-ind-cta:hover { text-decoration: underline; }
.tf-ind-visual {
  border-radius: 1.5rem;
  overflow: hidden;
  background: var(--tf-muted, #f5f5f5);
  aspect-ratio: 4/3;
}
.tf-industry--dark .tf-ind-visual { background: rgba(255,255,255,0.05); }
.tf-ind-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tf-ind-placeholder {
  width: 100%;
  height: 100%;
  min-height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-muted-foreground, #737373);
}
/* END_SECTION:industry-showcase */

/* START_SECTION:integrations-grid (INDEX:70) */
.tf-integrations { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-integrations { padding: 7rem 1rem; } }
.tf-integrations--white { background: var(--tf-background, #ffffff); }
.tf-integrations--gray { background: var(--tf-muted, #f5f5f5); }
.tf-integrations--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-integrations .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-integrations-header { text-align: center; margin-bottom: 3rem; }
.tf-int-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-int-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-integrations--dark .tf-int-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-int-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-integrations--dark .tf-int-subtitle { color: rgba(255,255,255,0.6); }
.tf-int-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 480px) { .tf-int-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 768px) { .tf-int-grid { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 1024px) { .tf-int-grid { grid-template-columns: repeat(5, 1fr); } }
.tf-int-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.tf-int-card-inner {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.25rem 1rem;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1rem;
  text-decoration: none;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
  min-height: 80px;
}
a.tf-int-card-inner:hover {
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 4px 16px rgba(250,204,21,0.2);
  transform: translateY(-2px);
}
.tf-integrations--dark .tf-int-card-inner {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.08);
}
.tf-integrations--dark a.tf-int-card-inner:hover {
  background: rgba(255,255,255,0.08);
  border-color: var(--tf-primary, #FACC15);
}
.tf-int-card--featured .tf-int-card-inner {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
  background: hsla(45, 100%, 51%, 0.06);
}
.tf-int-logo {
  height: 36px;
  width: auto;
  max-width: 120px;
  object-fit: contain;
  display: block;
  transition: filter 0.2s;
}
.tf-integrations--dark .tf-int-logo { filter: brightness(10) grayscale(1); }
.tf-integrations--dark a.tf-int-card-inner:hover .tf-int-logo { filter: none; }
.tf-int-name-text {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-integrations--dark .tf-int-name-text { color: rgba(255,255,255,0.85); }
.tf-int-category {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
}
.tf-integrations--dark .tf-int-category { color: rgba(255,255,255,0.4); }
.tf-int-footer { text-align: center; margin-top: 3rem; }
.tf-int-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.75rem 2rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 0.9375rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-int-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:integrations-grid */

/* START_SECTION:local-competition (INDEX:75) */
/* =====================================================
   TapFive — Local Competition Section
   Prefix: tf-lc-
===================================================== */

/* Custom properties scoped to this section */
.tf-lc {
  --lc-bg:          #0A0A0A;
  --lc-card-bg:     #111111;
  --lc-card-border: rgba(255,255,255,0.08);
  --lc-gold:        #FFCC00;
  --lc-gold-dim:    rgba(255,204,0,0.12);
  --lc-gold-border: rgba(255,204,0,0.5);
  --lc-text:        #FFFFFF;
  --lc-text-muted:  rgba(255,255,255,0.5);
  --lc-text-dim:    rgba(255,255,255,0.3);
  --lc-google-blue: #8AB4F8;
  --lc-radius:      10px;
  --lc-radius-sm:   6px;

  background: var(--lc-bg);
  color: var(--lc-text);
  font-family: 'Montserrat', sans-serif;
  overflow-x: hidden;
}

.tf-lc-container {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 1.25rem;
}

/* ── HEADER ─────────────────────────────────────────── */
.tf-lc-header {
  padding: 4rem 1.25rem 2.5rem;
  text-align: center;
}

.tf-lc-overline {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--lc-gold);
  background: rgba(255,204,0,0.1);
  border: 1px solid rgba(255,204,0,0.25);
  border-radius: 40px;
  padding: 0.35rem 1rem;
  margin-bottom: 1.25rem;
}

.tf-lc-heading {
  font-size: clamp(1.65rem, 4vw, 2.5rem);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin: 0 auto 1rem;
  max-width: 760px;
}

.tf-lc-subtitle {
  font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
  color: var(--lc-text-muted);
  max-width: 620px;
  margin: 0 auto;
  line-height: 1.6;
}

/* ── PACK WRAPPER ────────────────────────────────────── */
.tf-lc-pack-wrap {
  padding: 0 0 3rem;
}

/* ── SEARCH BAR ──────────────────────────────────────── */
.tf-lc-search-bar {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  background: #202124;
  border: 1px solid #3c4043;
  border-radius: 24px;
  padding: 0.625rem 1rem;
  max-width: 560px;
  margin: 0 auto 0.5rem;
  cursor: default;
  user-select: none;
}

.tf-lc-google-g {
  flex-shrink: 0;
  line-height: 0;
}

.tf-lc-search-text {
  flex: 1;
  font-size: 0.9375rem;
  color: rgba(255,255,255,0.87);
  font-family: inherit;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tf-lc-search-icon {
  flex-shrink: 0;
  color: var(--lc-google-blue);
  line-height: 0;
}

/* ── MAP STRIP ───────────────────────────────────────── */
.tf-lc-map-strip {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  max-width: 560px;
  margin: 0 auto 1.25rem;
  font-size: 0.75rem;
  color: var(--lc-text-dim);
  padding: 0 0.25rem;
}

.tf-lc-map-link {
  color: var(--lc-google-blue);
  margin-left: auto;
  text-decoration: none;
  cursor: default;
}

/* ── LOCAL PACK CARD ─────────────────────────────────── */
.tf-lc-pack {
  background: var(--lc-card-bg);
  border: 1px solid var(--lc-card-border);
  border-radius: var(--lc-radius);
  overflow: hidden;
  max-width: 700px;
  margin: 0 auto;
}

/* ── INDIVIDUAL LISTING ──────────────────────────────── */
.tf-lc-listing {
  border-bottom: 1px solid var(--lc-card-border);
  transition: background 0.2s;
}
.tf-lc-listing:last-child {
  border-bottom: none;
}

.tf-lc-listing-inner {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem 1.125rem;
}

.tf-lc-listing-left {
  flex: 1;
  min-width: 0;
}

.tf-lc-listing-right {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.5rem;
}

/* WINNER state */
.tf-lc-listing--winner {
  background: rgba(255,204,0,0.05);
  border-left: 3px solid var(--lc-gold);
}
.tf-lc-listing--winner .tf-lc-biz-name {
  color: var(--lc-gold);
}

/* DIM state */
.tf-lc-listing--dim {
  opacity: 0.55;
}

/* ── BIZ NAME ROW ─────────────────────────────────────── */
.tf-lc-biz-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--lc-google-blue);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  line-height: 1.3;
  margin-bottom: 0.3rem;
}

/* ── STARS ROW ───────────────────────────────────────── */
.tf-lc-stars {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  margin-bottom: 0.4rem;
}

.tf-lc-star-val {
  font-size: 0.875rem;
  font-weight: 700;
  color: #FBBC04;
}

.tf-lc-star-icons {
  font-size: 0.875rem;
  color: #FBBC04;
  letter-spacing: 0.02em;
}

.tf-lc-half-star,
.tf-lc-quarter-star {
  opacity: 0.45;
}

.tf-lc-review-count {
  font-size: 0.8125rem;
  color: var(--lc-text-muted);
}

/* ── TAGS ────────────────────────────────────────────── */
.tf-lc-tags {
  display: flex;
  gap: 0.375rem;
  flex-wrap: wrap;
  margin-bottom: 0.4rem;
}

.tf-lc-tag {
  font-size: 0.6875rem;
  font-weight: 600;
  padding: 0.2rem 0.5rem;
  border-radius: 3px;
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.7);
  border: 1px solid rgba(255,255,255,0.1);
}

.tf-lc-tag--gold {
  background: rgba(255,204,0,0.15);
  color: var(--lc-gold);
  border-color: rgba(255,204,0,0.3);
}

.tf-lc-tag--gg {
  background: rgba(66,133,244,0.15);
  color: #8AB4F8;
  border-color: rgba(66,133,244,0.3);
}

/* ── BIZ META ────────────────────────────────────────── */
.tf-lc-biz-meta {
  font-size: 0.75rem;
  color: var(--lc-text-muted);
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

.tf-lc-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #34A853;
  flex-shrink: 0;
}

.tf-lc-sep {
  opacity: 0.4;
}

/* ── RANK BADGE ──────────────────────────────────────── */
.tf-lc-rank-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--lc-radius-sm);
  padding: 0.5rem 0.625rem;
  min-width: 80px;
  text-align: center;
}

.tf-lc-rank-badge--gold {
  background: rgba(255,204,0,0.1);
  border-color: rgba(255,204,0,0.35);
}

.tf-lc-rank-num {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--lc-text);
  line-height: 1;
}

.tf-lc-rank-badge--gold .tf-lc-rank-num {
  color: var(--lc-gold);
}

.tf-lc-rank-label {
  font-size: 0.625rem;
  font-weight: 600;
  color: var(--lc-text-muted);
  text-align: center;
  line-height: 1.3;
  margin-top: 0.25rem;
  max-width: 80px;
}

/* ── THUMB ICON (winner only) ────────────────────────── */
.tf-lc-thumb {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tf-lc-thumb--gold {
  background: var(--lc-gold);
}

/* ── WINNING BADGE ───────────────────────────────────── */
.tf-lc-badge {
  font-size: 0.5625rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.2rem 0.5rem;
  border-radius: 3px;
}

.tf-lc-badge--winning {
  background: var(--lc-gold);
  color: #0A0A0A;
}

/* ── INVISIBLE NOTE ──────────────────────────────────── */
.tf-lc-invisible-note {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  max-width: 700px;
  margin: 0.875rem auto 0;
  font-size: 0.8125rem;
  color: var(--lc-text-dim);
  font-style: italic;
  padding: 0 0.25rem;
  line-height: 1.5;
}

/* ── VELOCITY SECTION ────────────────────────────────── */
.tf-lc-velocity-wrap {
  padding: 3rem 1.25rem;
  border-top: 1px solid rgba(255,255,255,0.06);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

.tf-lc-velocity-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}

@media (min-width: 900px) {
  .tf-lc-velocity-grid {
    grid-template-columns: 1fr 1fr;
    gap: 3.5rem;
    align-items: start;
  }
}

.tf-lc-velocity-heading {
  font-size: 1.0625rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  margin: 0 0 1.25rem;
  color: var(--lc-text);
  text-transform: uppercase;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  color: var(--lc-text-muted);
}

/* ── VELOCITY LIST ───────────────────────────────────── */
.tf-lc-velocity-list {
  list-style: none;
  margin: 0 0 1.25rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.tf-lc-velocity-item {
  display: flex;
  gap: 0.875rem;
  align-items: flex-start;
  padding: 0.875rem 1rem;
  border-radius: var(--lc-radius-sm);
  border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.02);
}

.tf-lc-velocity-item--gold {
  border-color: var(--lc-gold-border);
  background: var(--lc-gold-dim);
}

.tf-lc-velocity-item--neutral {
  border-color: rgba(255,255,255,0.08);
}

.tf-lc-velocity-item--dim {
  opacity: 0.5;
}

.tf-lc-vi-rank {
  font-size: 0.75rem;
  font-weight: 800;
  color: var(--lc-text-muted);
  min-width: 24px;
  flex-shrink: 0;
  padding-top: 0.05rem;
}

.tf-lc-velocity-item--gold .tf-lc-vi-rank {
  color: var(--lc-gold);
}

.tf-lc-vi-text {
  font-size: 0.875rem;
  line-height: 1.55;
  color: rgba(255,255,255,0.8);
}

.tf-lc-velocity-punchline {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--lc-text);
  padding: 0.875rem 1rem;
  background: rgba(255,255,255,0.04);
  border-radius: var(--lc-radius-sm);
  border-left: 3px solid var(--lc-gold);
  margin: 0;
}

.tf-lc-velocity-punchline strong {
  color: var(--lc-gold);
}

/* ── TABLE SCROLL HINT ───────────────────────────────── */
.tf-lc-table-scroll-hint {
  display: none;
  font-size: 0.6875rem;
  color: var(--lc-text-dim);
  text-align: center;
  margin-bottom: 0.5rem;
  letter-spacing: 0.04em;
}

@media (max-width: 560px) {
  .tf-lc-table-scroll-hint {
    display: block;
  }
}

/* ── PROJECTION TABLE ────────────────────────────────── */
.tf-lc-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: var(--lc-radius);
  border: 1px solid rgba(255,255,255,0.08);
}

.tf-lc-table {
  width: 100%;
  min-width: 420px;
  border-collapse: collapse;
  font-size: 0.8125rem;
}

.tf-lc-table thead th {
  background: rgba(255,255,255,0.04);
  padding: 0.6rem 0.875rem;
  text-align: left;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--lc-text-muted);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  white-space: nowrap;
}

.tf-lc-table tbody td {
  padding: 0.65rem 0.875rem;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.8);
  vertical-align: middle;
  line-height: 1.4;
}

.tf-lc-table tbody tr:last-child td {
  border-bottom: none;
}

.tf-lc-table-row--dim td {
  color: var(--lc-text-dim);
}

.tf-lc-table-row--gold {
  background: rgba(255,204,0,0.08);
}

.tf-lc-table-row--gold td {
  color: var(--lc-text);
  border-top: 1px solid rgba(255,204,0,0.2);
  border-bottom: 1px solid rgba(255,204,0,0.2);
}

.tf-lc-table-row--gold td:first-child {
  border-left: 3px solid var(--lc-gold);
}

.tf-lc-table-row--gold strong {
  color: var(--lc-gold);
}

.tf-lc-table-tf-badge {
  display: inline-block;
  font-size: 0.5625rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  background: var(--lc-gold);
  color: #0A0A0A;
  padding: 0.15rem 0.375rem;
  border-radius: 3px;
  margin-right: 0.375rem;
  vertical-align: middle;
  white-space: nowrap;
}

/* ── BIG STAT ────────────────────────────────────────── */
.tf-lc-stat-wrap {
  padding: 3.5rem 1.25rem;
  text-align: center;
}

.tf-lc-big-stat {
  max-width: 760px;
  margin: 0 auto;
}

.tf-lc-big-stat-text {
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--lc-text);
  margin: 0 0 0.875rem;
}

.tf-lc-big-stat-sub {
  font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
  color: var(--lc-gold);
  font-weight: 700;
  margin: 0;
}

/* ── URGENCY BLOCK ───────────────────────────────────── */
.tf-lc-urgency-wrap {
  padding: 0 1.25rem 4rem;
}

.tf-lc-urgency {
  max-width: 780px;
  margin: 0 auto;
  background: var(--lc-gold);
  border-radius: var(--lc-radius);
  padding: 2rem 2rem 2rem;
  color: #0A0A0A;
}

@media (min-width: 640px) {
  .tf-lc-urgency {
    padding: 2.5rem 2.75rem;
  }
}

.tf-lc-urgency-list {
  list-style: none;
  margin: 0 0 1.75rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.tf-lc-urgency-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.5;
  color: #111111;
}

.tf-lc-urgency-item--cta-text {
  font-weight: 700;
  color: #0A0A0A;
}

.tf-lc-urgency-icon {
  flex-shrink: 0;
  line-height: 0;
  margin-top: 0.1rem;
  color: #0A0A0A;
  opacity: 0.75;
}

.tf-lc-urgency-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #0A0A0A;
  color: var(--lc-gold);
  font-family: inherit;
  font-size: 0.9375rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-decoration: none;
  padding: 0.875rem 1.75rem;
  border-radius: 6px;
  transition: background 0.18s, transform 0.18s;
  white-space: nowrap;
}

.tf-lc-urgency-cta:hover,
.tf-lc-urgency-cta:focus-visible {
  background: #1a1a1a;
  transform: translateY(-1px);
  outline: none;
}

.tf-lc-urgency-cta:active {
  transform: translateY(0);
}

/* ── RESPONSIVE TWEAKS ───────────────────────────────── */
@media (max-width: 480px) {
  .tf-lc-listing-inner {
    gap: 0.5rem;
    padding: 0.875rem 0.875rem;
  }

  .tf-lc-rank-badge {
    min-width: 68px;
    padding: 0.4rem 0.5rem;
  }

  .tf-lc-rank-label {
    font-size: 0.5625rem;
  }

  .tf-lc-thumb {
    width: 34px;
    height: 34px;
  }

  .tf-lc-urgency-cta {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 380px) {
  .tf-lc-search-text {
    font-size: 0.8125rem;
  }
}

/* ── ANIMATION HELPERS ───────────────────────────────── */
.tf-lc-animate-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.tf-lc-animate-in.tf-lc-visible {
  opacity: 1;
  transform: translateY(0);
}

.tf-lc-animate-in:nth-child(1) { transition-delay: 0s; }
.tf-lc-animate-in:nth-child(2) { transition-delay: 0.08s; }
.tf-lc-animate-in:nth-child(3) { transition-delay: 0.16s; }
/* END_SECTION:local-competition */

/* START_SECTION:location-cards (INDEX:76) */
.tf-locations { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-locations { padding: 7rem 1rem; } }
.tf-locations--white { background: var(--tf-background, #ffffff); }
.tf-locations--gray { background: var(--tf-muted, #f5f5f5); }
.tf-locations--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-locations .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-locations-header { text-align: center; margin-bottom: 3rem; }
.tf-locations-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-locations-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-locations--dark .tf-locations-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-locations-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-locations--dark .tf-locations-subtitle { color: rgba(255,255,255,0.6); }
.tf-locations-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 560px) { .tf-locations-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-locations-grid { grid-template-columns: repeat(3, 1fr); } }
.tf-location-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-location-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.1); }
.tf-locations--dark .tf-location-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-location-img-wrap { position: relative; overflow: hidden; }
.tf-location-img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-location-card:hover .tf-location-img { transform: scale(1.04); }
.tf-location-tag {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.75rem;
  font-weight: 700;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
}
.tf-location-body {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
}
.tf-location-name {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-locations--dark .tf-location-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-location-addr,
.tf-location-hours {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.4;
}
.tf-locations--dark .tf-location-addr,
.tf-locations--dark .tf-location-hours { color: rgba(255,255,255,0.5); }
.tf-location-addr svg,
.tf-location-hours svg { flex-shrink: 0; margin-top: 2px; color: var(--tf-primary, #FACC15); }
.tf-location-phone {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  text-decoration: none;
  transition: color 0.2s;
}
.tf-location-phone:hover { color: var(--tf-primary, #FACC15); }
.tf-locations--dark .tf-location-phone { color: rgba(255,255,255,0.8); }
.tf-location-phone svg { color: var(--tf-primary, #FACC15); flex-shrink: 0; }
.tf-location-rating {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.tf-location-stars { display: flex; gap: 1px; color: var(--tf-primary, #FACC15); }
.tf-location-rating-text {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-locations--dark .tf-location-rating-text { color: rgba(255,255,255,0.5); }
.tf-location-actions {
  display: flex;
  gap: 0.625rem;
  margin-top: auto;
  padding-top: 0.5rem;
  flex-wrap: wrap;
}
.tf-location-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.5rem 1rem;
  font-size: 0.8125rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  border: 1.5px solid rgba(0,0,0,0.12);
  color: var(--tf-foreground, #141414);
  transition: border-color 0.2s, background 0.2s;
}
.tf-location-btn:hover {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.08);
}
.tf-location-btn--primary {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
}
.tf-location-btn--primary:hover { background: hsl(45,100%,45%); border-color: hsl(45,100%,45%); }
.tf-locations--dark .tf-location-btn {
  border-color: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.85);
}
/* END_SECTION:location-cards */

/* START_SECTION:logo-strip (INDEX:77) */
.tf-logos { padding: 3rem 0; overflow: hidden; }
@media (min-width: 768px) { .tf-logos { padding: 4rem 0; } }
.tf-logos--white { background: var(--tf-background, #ffffff); border-top: 1px solid rgba(0,0,0,0.06); border-bottom: 1px solid rgba(0,0,0,0.06); }
.tf-logos--gray { background: var(--tf-muted, #f5f5f5); }
.tf-logos--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-logos .tf-container { max-width: 1100px; margin: 0 auto; padding: 0 1rem; }
.tf-logos-heading {
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-muted-foreground, #737373);
  margin-bottom: 2rem;
  padding: 0 1rem;
}
.tf-logos--dark .tf-logos-heading { color: rgba(255,255,255,0.4); }
.tf-logos-track-wrap {
  position: relative;
  overflow: hidden;
}
.tf-logos-track-wrap::before,
.tf-logos-track-wrap::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120px;
  z-index: 2;
  pointer-events: none;
}
.tf-logos-track-wrap::before {
  left: 0;
  background: linear-gradient(to right, var(--tf-background, #ffffff), transparent);
}
.tf-logos-track-wrap::after {
  right: 0;
  background: linear-gradient(to left, var(--tf-background, #ffffff), transparent);
}
.tf-logos--gray .tf-logos-track-wrap::before { background: linear-gradient(to right, var(--tf-muted, #f5f5f5), transparent); }
.tf-logos--gray .tf-logos-track-wrap::after { background: linear-gradient(to left, var(--tf-muted, #f5f5f5), transparent); }
.tf-logos--dark .tf-logos-track-wrap::before { background: linear-gradient(to right, var(--tf-secondary, #1a1a1a), transparent); }
.tf-logos--dark .tf-logos-track-wrap::after { background: linear-gradient(to left, var(--tf-secondary, #1a1a1a), transparent); }
.tf-logos-track {
  display: flex;
  width: max-content;
  animation: tf-logos-scroll 30s linear infinite;
}
.tf-logos-track:hover { animation-play-state: paused; }
@keyframes tf-logos-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.tf-logos-set {
  display: flex;
  align-items: center;
  gap: 3.5rem;
  padding: 0 1.75rem;
}
.tf-logos-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2rem 3rem;
}
.tf-logo-item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-logo-img {
  height: 36px;
  width: auto;
  max-width: 140px;
  object-fit: contain;
  opacity: 0.55;
  filter: grayscale(100%);
  transition: opacity 0.2s, filter 0.2s;
}
.tf-logo-item--static .tf-logo-img:hover { opacity: 0.85; filter: grayscale(0%); }
.tf-logos--dark .tf-logo-img { filter: grayscale(100%) brightness(0) invert(1); opacity: 0.4; }
.tf-logos--dark .tf-logo-item--static .tf-logo-img:hover { opacity: 0.7; }
.tf-logo-text {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  opacity: 0.35;
  letter-spacing: -0.01em;
  white-space: nowrap;
}
.tf-logos--dark .tf-logo-text { color: var(--tf-secondary-foreground, #fafafa); opacity: 0.25; }
/* END_SECTION:logo-strip */

/* START_SECTION:loyalty-program (INDEX:78) */
.tf-loyalty { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-loyalty { padding: 7rem 1rem; } }
.tf-loyalty--white { background: var(--tf-background, #ffffff); }
.tf-loyalty--gray { background: var(--tf-muted, #f5f5f5); }
.tf-loyalty--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-loyalty .tf-container { max-width: 1000px; margin: 0 auto; }
.tf-loyalty-header { text-align: center; margin-bottom: 3rem; }
.tf-loyalty-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-loyalty-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-loyalty--dark .tf-loyalty-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-loyalty-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-loyalty--dark .tf-loyalty-subtitle { color: rgba(255,255,255,0.6); }
.tf-loyalty-tiers {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) { .tf-loyalty-tiers { grid-template-columns: repeat(3, 1fr); } }
.tf-loyalty-tier {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 1.5rem;
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  overflow: hidden;
}
.tf-loyalty--dark .tf-loyalty-tier {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-loyalty-tier--highlighted {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
}
.tf-loyalty-tier-glow {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, hsla(45,100%,51%,0.25) 0%, transparent 70%);
  pointer-events: none;
}
.tf-loyalty-tier-top { text-align: center; }
.tf-loyalty-emoji {
  display: block;
  font-size: 2.5rem;
  line-height: 1;
  margin-bottom: 0.75rem;
}
.tf-loyalty-tier-name {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.375rem;
}
.tf-loyalty--dark .tf-loyalty-tier-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-loyalty-tier--highlighted .tf-loyalty-tier-name { color: var(--tf-primary, #FACC15); }
.tf-loyalty-req {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  background: var(--tf-muted, #f5f5f5);
  padding: 0.375rem 0.875rem;
  border-radius: 9999px;
  display: inline-block;
}
.tf-loyalty--dark .tf-loyalty-req {
  background: rgba(255,255,255,0.07);
  color: rgba(255,255,255,0.5);
}
.tf-loyalty-perks {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
}
.tf-loyalty-perks li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.9rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.4;
}
.tf-loyalty--dark .tf-loyalty-perks li { color: rgba(255,255,255,0.8); }
.tf-loyalty-perks svg { color: var(--tf-primary, #FACC15); flex-shrink: 0; margin-top: 3px; }
.tf-loyalty-cta {
  display: block;
  text-align: center;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid rgba(0,0,0,0.12);
  color: var(--tf-foreground, #141414);
  transition: border-color 0.2s, background 0.2s;
}
.tf-loyalty-cta:hover {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.08);
}
.tf-loyalty-cta--primary {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
}
.tf-loyalty-cta--primary:hover {
  background: hsl(45,100%,45%);
  border-color: hsl(45,100%,45%);
}
.tf-loyalty--dark .tf-loyalty-cta {
  border-color: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.85);
}
.tf-loyalty-footer {
  text-align: center;
  font-size: 0.9rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 2.5rem;
}
.tf-loyalty--dark .tf-loyalty-footer { color: rgba(255,255,255,0.4); }
/* END_SECTION:loyalty-program */

/* START_SECTION:map-embed (INDEX:99) */
.tf-map {
  padding: 0;
}
.tf-map--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-map--white { background: var(--tf-background, #ffffff); }
.tf-map--gray { background: var(--tf-muted, #f5f5f5); }
.tf-map .tf-container {
  max-width: 780px;
  margin: 0 auto;
  padding: 4rem 1rem 2.5rem;
  text-align: center;
}
.tf-map-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-map-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-map--dark .tf-map-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-map-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-map--dark .tf-map-subtitle { color: rgba(255,255,255,0.6); }
.tf-map-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.tf-map-wrap--short { height: 360px; }
.tf-map-wrap--medium { height: 480px; }
.tf-map-wrap--tall { height: 600px; }
.tf-map-iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  border: none;
}
.tf-map-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: var(--tf-muted, #f5f5f5);
  color: var(--tf-muted-foreground, #737373);
}
.tf-map-placeholder p { font-size: 0.9375rem; margin: 0; }
.tf-map-info {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  background: var(--tf-card, #fafafa);
  border-radius: 1rem;
  padding: 1.25rem 1.5rem;
  box-shadow: 0 8px 32px rgba(0,0,0,0.15);
  border: 1px solid rgba(0,0,0,0.07);
  max-width: 260px;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.tf-map-business {
  font-size: 1rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-map-address {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  font-style: normal;
  line-height: 1.5;
}
.tf-map-hours {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-map-phone {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  text-decoration: none;
}
.tf-map-phone:hover { color: var(--tf-primary, #FACC15); }
.tf-map-directions {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  margin-top: 0.25rem;
}
.tf-map-directions:hover { text-decoration: underline; }
/* END_SECTION:map-embed */

/* START_SECTION:mini-blog (INDEX:100) */
.tf-mblog { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-mblog { padding: 7rem 1rem; } }
.tf-mblog--white { background: var(--tf-background, #ffffff); }
.tf-mblog--gray { background: var(--tf-muted, #f5f5f5); }
.tf-mblog--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-mblog .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-mblog-header { text-align: center; margin-bottom: 3rem; }
.tf-mblog-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-mblog-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-mblog--dark .tf-mblog-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-mblog-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-mblog--dark .tf-mblog-subtitle { color: rgba(255,255,255,0.6); }
.tf-mblog-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .tf-mblog-grid--2 { grid-template-columns: repeat(2, 1fr); }
  .tf-mblog-grid--3 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
  .tf-mblog-grid--3 { grid-template-columns: repeat(3, 1fr); }
}
.tf-mblog-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-mblog-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.09); }
.tf-mblog--dark .tf-mblog-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-mblog-img-link { display: block; overflow: hidden; }
.tf-mblog-img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-mblog-card:hover .tf-mblog-img { transform: scale(1.04); }
.tf-mblog-body {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
}
.tf-mblog-tag {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.1);
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  align-self: flex-start;
}
.tf-mblog-article-title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.35;
}
.tf-mblog--dark .tf-mblog-article-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-mblog-article-title a {
  text-decoration: none;
  color: inherit;
  transition: color 0.2s;
}
.tf-mblog-article-title a:hover { color: var(--tf-primary, #FACC15); }
.tf-mblog-excerpt {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.tf-mblog--dark .tf-mblog-excerpt { color: rgba(255,255,255,0.5); }
.tf-mblog-meta {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: auto;
  padding-top: 0.5rem;
  border-top: 1px solid rgba(0,0,0,0.06);
}
.tf-mblog--dark .tf-mblog-meta { border-top-color: rgba(255,255,255,0.06); }
.tf-mblog-date,
.tf-mblog-author {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-mblog--dark .tf-mblog-date,
.tf-mblog--dark .tf-mblog-author { color: rgba(255,255,255,0.4); }
.tf-mblog-footer { text-align: center; margin-top: 3rem; }
.tf-mblog-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  border: 2px solid var(--tf-foreground, #141414);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.tf-mblog-cta:hover {
  background: var(--tf-foreground, #141414);
  color: var(--tf-background, #ffffff);
}
.tf-mblog--dark .tf-mblog-cta {
  border-color: rgba(255,255,255,0.3);
  color: rgba(255,255,255,0.85);
}
.tf-mblog--dark .tf-mblog-cta:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.6);
}
/* END_SECTION:mini-blog */

/* START_SECTION:mosaic-gallery (INDEX:101) */
.tf-mosaic {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-mosaic .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-mosaic-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-mosaic-heading {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-mosaic-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 600px;
  margin: 0 auto 3rem;
  line-height: 1.6;
}
/* Grid */
.tf-mosaic-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 640px) {
  .tf-mosaic-grid--3 { grid-template-columns: repeat(3, 1fr); }
  .tf-mosaic-grid--4 { grid-template-columns: repeat(4, 1fr); }
}
.tf-mosaic-item {
  position: relative;
  border-radius: 0.75rem;
  overflow: hidden;
  aspect-ratio: 1;
}
.tf-mosaic-item--wide {
  grid-column: span 2;
  aspect-ratio: 2 / 1;
}
.tf-mosaic-item--tall {
  grid-row: span 2;
  aspect-ratio: auto;
}
/* Button */
.tf-mosaic-btn {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: none;
  cursor: zoom-in;
  position: relative;
  overflow: hidden;
}
.tf-mosaic-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.tf-mosaic-btn:hover .tf-mosaic-img {
  transform: scale(1.05);
}
.tf-mosaic-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.75rem 1rem;
  background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 100%);
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0.25s, transform 0.25s;
}
.tf-mosaic-btn:hover .tf-mosaic-caption,
.tf-mosaic-btn:focus .tf-mosaic-caption {
  opacity: 1;
  transform: translateY(0);
}
.tf-mosaic-zoom {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(0,0,0,0.5);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.2s;
  backdrop-filter: blur(4px);
}
.tf-mosaic-btn:hover .tf-mosaic-zoom {
  opacity: 1;
}
.tf-mosaic-placeholder {
  width: 100%;
  height: 100%;
  min-height: 200px;
  background: #e5e5e5;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #bbb;
  border-radius: 0.75rem;
}
/* CTA */
.tf-mosaic-cta {
  margin-top: 2.5rem;
  text-align: center;
}
.tf-mosaic-btn-cta {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-mosaic-btn-cta:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* Lightbox */
.tf-mosaic-lb {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.92);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
}
.tf-mosaic-lb--open {
  opacity: 1;
  pointer-events: auto;
}
.tf-mosaic-lb-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: rgba(255,255,255,0.12);
  border: none;
  cursor: pointer;
  color: #fff;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s;
  backdrop-filter: blur(8px);
}
.tf-mosaic-lb-close:hover {
  background: rgba(255,255,255,0.22);
}
.tf-mosaic-lb-inner {
  max-width: 90vw;
  max-height: 90vh;
  text-align: center;
}
.tf-mosaic-lb-img {
  max-width: 100%;
  max-height: 80vh;
  object-fit: contain;
  border-radius: 0.75rem;
  display: block;
  margin: 0 auto;
  box-shadow: 0 24px 80px rgba(0,0,0,0.5);
}
.tf-mosaic-lb-caption {
  margin: 1rem 0 0;
  font-size: 0.9375rem;
  color: rgba(255,255,255,0.7);
}
/* END_SECTION:mosaic-gallery */

/* START_SECTION:newsletter-signup (INDEX:104) */
.tf-nl { padding: 4.5rem 1rem; }
@media (min-width: 768px) { .tf-nl { padding: 6rem 1rem; } }
.tf-nl--white { background: var(--tf-background, #ffffff); }
.tf-nl--gray { background: var(--tf-muted, #f5f5f5); }
.tf-nl--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-nl--primary { background: var(--tf-primary, #FACC15); }
.tf-nl .tf-container { max-width: 900px; margin: 0 auto; }
.tf-nl-inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
  text-align: center;
}
@media (min-width: 768px) {
  .tf-nl-inner--side {
    flex-direction: row;
    text-align: left;
    align-items: center;
    gap: 4rem;
  }
  .tf-nl-inner--side .tf-nl-content { flex: 1; }
  .tf-nl-inner--side .tf-nl-form-wrap { flex: 1; }
}
.tf-nl-content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.tf-nl-badge {
  display: inline-flex;
  align-self: center;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-nl--primary .tf-nl-badge {
  background: rgba(0,0,0,0.1);
  color: var(--tf-foreground, #141414);
}
@media (min-width: 768px) {
  .tf-nl-inner--side .tf-nl-badge { align-self: flex-start; }
}
.tf-nl-title {
  font-size: clamp(1.5rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.2;
}
.tf-nl--dark .tf-nl-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-nl--primary .tf-nl-title { color: var(--tf-foreground, #141414); }
.tf-nl-subtitle {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-nl--dark .tf-nl-subtitle { color: rgba(255,255,255,0.6); }
.tf-nl--primary .tf-nl-subtitle { color: rgba(0,0,0,0.65); }
.tf-nl-proof {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-nl--dark .tf-nl-proof { color: rgba(255,255,255,0.5); }
.tf-nl--primary .tf-nl-proof { color: rgba(0,0,0,0.55); }
.tf-nl-form-wrap { width: 100%; }
@media (min-width: 768px) { .tf-nl-inner--center .tf-nl-form-wrap { max-width: 540px; } }
.tf-nl-form { display: flex; flex-direction: column; gap: 0.75rem; }
.tf-nl-fields { display: flex; flex-direction: column; gap: 0.625rem; }
.tf-nl-input {
  width: 100%;
  padding: 0.875rem 1.25rem;
  border: 1.5px solid rgba(0,0,0,0.15);
  border-radius: 0.75rem;
  font-size: 1rem;
  color: var(--tf-foreground, #141414);
  background: var(--tf-background, #ffffff);
  outline: none;
  transition: border-color 0.2s;
  box-sizing: border-box;
}
.tf-nl-input:focus { border-color: var(--tf-primary, #FACC15); }
.tf-nl--dark .tf-nl-input {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.15);
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-nl--dark .tf-nl-input::placeholder { color: rgba(255,255,255,0.4); }
.tf-nl--primary .tf-nl-input {
  border-color: rgba(0,0,0,0.2);
  background: rgba(255,255,255,0.85);
}
.tf-nl-email-row {
  display: flex;
  gap: 0.5rem;
}
.tf-nl-input--email { flex: 1; min-width: 0; }
.tf-nl-submit {
  padding: 0.875rem 1.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  border: none;
  border-radius: 0.75rem;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s;
  flex-shrink: 0;
}
.tf-nl-submit:hover { background: hsl(45,100%,45%); }
.tf-nl--primary .tf-nl-submit {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
}
.tf-nl--primary .tf-nl-submit:hover { background: #333; }
.tf-nl-privacy {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  text-align: center;
}
.tf-nl--dark .tf-nl-privacy { color: rgba(255,255,255,0.4); }
.tf-nl--primary .tf-nl-privacy { color: rgba(0,0,0,0.5); }
/* END_SECTION:newsletter-signup */

/* START_SECTION:nfc-explainer (INDEX:106) */
.tf-nfc {
    background: #0A0A0A;
    color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;
    padding: 80px 24px;
  }

  .tf-nfc-inner {
    max-width: 1100px;
    margin: 0 auto;
  }

  /* ── Header ─────────────────────────────── */
  .tf-nfc-header {
    text-align: center;
    margin-bottom: 64px;
  }

  .tf-nfc-overline {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #FFCC00;
    margin-bottom: 16px;
  }

  .tf-nfc-h2 {
    font-size: clamp(26px, 4vw, 42px);
    font-weight: 800;
    line-height: 1.15;
    color: #FFFFFF;
    margin: 0 0 20px;
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
  }

  .tf-nfc-subtitle {
    font-size: clamp(15px, 2vw, 18px);
    font-weight: 400;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.68);
    max-width: 680px;
    margin: 0 auto;
  }

  /* ── 2-column block ─────────────────────── */
  .tf-nfc-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    margin-bottom: 72px;
    align-items: start;
  }

  @media (max-width: 820px) {
    .tf-nfc-cols {
      grid-template-columns: 1fr;
      gap: 48px;
    }
  }

  /* ── Steps (left column) ────────────────── */
  .tf-nfc-steps-card {
    background: #141414;
    border: 1px solid rgba(255, 204, 0, 0.12);
    border-radius: 16px;
    padding: 36px 32px;
  }

  .tf-nfc-col-title {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #FFCC00;
    margin: 0 0 28px;
  }

  .tf-nfc-steps {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .tf-nfc-step {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    padding-bottom: 24px;
    position: relative;
  }

  .tf-nfc-step:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 17px;
    top: 38px;
    width: 2px;
    bottom: 0;
    background: rgba(255, 204, 0, 0.18);
  }

  .tf-nfc-step-num {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #FFCC00;
    color: #0A0A0A;
    font-size: 13px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
  }

  .tf-nfc-step-text {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.82);
    padding-top: 6px;
  }

  .tf-nfc-duration {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 13px;
    color: rgba(255, 255, 255, 0.5);
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .tf-nfc-duration-badge {
    background: rgba(255, 204, 0, 0.12);
    border: 1px solid rgba(255, 204, 0, 0.3);
    color: #FFCC00;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    padding: 4px 12px;
    border-radius: 100px;
    white-space: nowrap;
  }

  /* ── Compatibility table (right column) ─── */
  .tf-nfc-compat-card {
    background: #141414;
    border: 1px solid rgba(255, 204, 0, 0.12);
    border-radius: 16px;
    padding: 36px 32px;
  }

  .tf-nfc-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 0 -8px;
    padding: 0 8px;
  }

  .tf-nfc-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    min-width: 360px;
  }

  .tf-nfc-table thead tr {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .tf-nfc-table th {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.4);
    text-align: left;
    padding: 0 12px 14px 0;
    white-space: nowrap;
  }

  .tf-nfc-table th:last-child,
  .tf-nfc-table td:last-child {
    padding-right: 0;
  }

  .tf-nfc-table tbody tr {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }

  .tf-nfc-table tbody tr:last-child {
    border-bottom: none;
  }

  .tf-nfc-table td {
    padding: 13px 12px 13px 0;
    color: rgba(255, 255, 255, 0.8);
    vertical-align: middle;
    line-height: 1.4;
  }

  .tf-nfc-table td.tf-nfc-device {
    font-weight: 600;
    color: #FFFFFF;
    white-space: nowrap;
  }

  .tf-nfc-table td.tf-nfc-notes {
    font-size: 12.5px;
    color: rgba(255, 255, 255, 0.5);
  }

  /* Compatibility dot */
  .tf-nfc-dot {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 600;
  }

  .tf-nfc-dot::before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
  }

  .tf-nfc-dot--yes {
    color: #4ADE80;
  }

  .tf-nfc-dot--yes::before {
    background: #4ADE80;
    box-shadow: 0 0 6px rgba(74, 222, 128, 0.5);
  }

  .tf-nfc-dot--no {
    color: #F87171;
  }

  .tf-nfc-dot--no::before {
    background: #F87171;
  }

  .tf-nfc-compat-statement {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 13.5px;
    font-weight: 600;
    color: #FFCC00;
    line-height: 1.5;
  }

  /* ── FAQ Accordions ─────────────────────── */
  .tf-nfc-faq {
    margin-bottom: 64px;
  }

  .tf-nfc-faq-title {
    font-size: clamp(20px, 3vw, 28px);
    font-weight: 800;
    color: #FFFFFF;
    margin: 0 0 32px;
    text-align: center;
  }

  .tf-nfc-accordion {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 12px;
    background: #141414;
    transition: border-color 0.2s ease;
  }

  .tf-nfc-accordion[open] {
    border-color: rgba(255, 204, 0, 0.3);
  }

  .tf-nfc-accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 26px;
    cursor: pointer;
    list-style: none;
    font-size: clamp(14px, 2vw, 16px);
    font-weight: 700;
    color: #FFFFFF;
    user-select: none;
    -webkit-user-select: none;
  }

  .tf-nfc-accordion summary::-webkit-details-marker {
    display: none;
  }

  .tf-nfc-accordion summary::after {
    content: '';
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.2);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23fff' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.25s ease, border-color 0.25s ease, background-color 0.25s ease;
  }

  .tf-nfc-accordion[open] summary::after {
    transform: rotate(180deg);
    border-color: #FFCC00;
    background-color: rgba(255, 204, 0, 0.12);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23FFCC00' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  }

  .tf-nfc-accordion[open] summary {
    color: #FFCC00;
  }

  .tf-nfc-accordion-body {
    padding: 0 26px 24px;
    font-size: 15px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.72);
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding-top: 18px;
  }

  /* ── Bottom CTA ─────────────────────────── */
  .tf-nfc-cta {
    background: linear-gradient(135deg, #141414 0%, #1a1a00 100%);
    border: 1px solid rgba(255, 204, 0, 0.2);
    border-radius: 20px;
    padding: 52px 40px;
    text-align: center;
  }

  @media (max-width: 600px) {
    .tf-nfc-cta {
      padding: 40px 24px;
    }
  }

  .tf-nfc-cta-statement {
    font-size: clamp(22px, 3.5vw, 34px);
    font-weight: 800;
    color: #FFFFFF;
    margin: 0 0 14px;
  }

  .tf-nfc-cta-sub {
    font-size: clamp(14px, 2vw, 16px);
    font-weight: 400;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.62);
    max-width: 560px;
    margin: 0 auto 32px;
  }

  .tf-nfc-cta-btn {
    display: inline-block;
    background: #FFCC00;
    color: #0A0A0A;
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 16px 40px;
    border-radius: 100px;
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
    box-shadow: 0 4px 20px rgba(255, 204, 0, 0.28);
  }

  .tf-nfc-cta-btn:hover {
    background: #FFD633;
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(255, 204, 0, 0.4);
  }

  .tf-nfc-cta-btn:active {
    transform: translateY(0);
  }
/* END_SECTION:nfc-explainer */

/* START_SECTION:objection-crusher (INDEX:107) */
/* ─── OBJECTION CRUSHER ────────────────────────────────────────────────────── */

.tf-oc {
  background-color: #0A0A0A;
  color: #FFFFFF;
  padding: 80px 0 100px;
  font-family: 'Montserrat', sans-serif;
  overflow: hidden;
}

/* Container */
.tf-oc-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

/* ── HEADER ── */
.tf-oc-header {
  text-align: center;
  margin-bottom: 64px;
}

.tf-oc-overline {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin: 0 0 16px;
  padding: 6px 16px;
  border: 1px solid rgba(255, 204, 0, 0.35);
  border-radius: 2px;
}

.tf-oc-title {
  font-size: clamp(28px, 4.5vw, 46px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin: 0 0 20px;
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}

.tf-oc-subtitle {
  font-size: clamp(15px, 2vw, 17px);
  font-weight: 400;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.6);
  margin: 0;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* ── GRID ── */
.tf-oc-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

@media (min-width: 768px) {
  .tf-oc-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}

/* ── CARD ── */
.tf-oc-card {
  background: #141414;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 12px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
  /* Animation initial state */
  opacity: 0;
  transform: translateY(32px);
}

.tf-oc-card.tf-oc-visible {
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}

.tf-oc-card:hover {
  border-color: rgba(255, 204, 0, 0.3);
  transform: translateY(-3px);
  box-shadow: 0 12px 40px rgba(255, 204, 0, 0.08);
}

/* OBJECTION block */
.tf-oc-objection {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.tf-oc-q-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.35);
  line-height: 1;
  margin-top: 1px;
}

.tf-oc-q-text {
  font-size: 14px;
  font-style: italic;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.45);
  line-height: 1.55;
  margin: 0;
}

/* Divider between objection and answer */
.tf-oc-card::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 204, 0, 0.25) 0%, rgba(255, 204, 0, 0.05) 100%);
  margin: 0;
  order: 1;
}

.tf-oc-objection { order: 0; }
.tf-oc-answer    { order: 2; }
.tf-oc-proof     { order: 3; }

/* ANSWER block */
.tf-oc-answer {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.tf-oc-a-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 204, 0, 0.12);
  border: 1px solid rgba(255, 204, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFCC00;
  margin-top: 1px;
}

.tf-oc-a-text {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.88);
  margin: 0;
}

/* PROOF bar */
.tf-oc-proof {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #FFCC00;
  background: rgba(255, 204, 0, 0.06);
  border: 1px solid rgba(255, 204, 0, 0.15);
  border-radius: 6px;
  padding: 10px 14px;
  line-height: 1.4;
}

.tf-oc-proof-icon {
  flex-shrink: 0;
  color: #FFCC00;
  opacity: 0.75;
}

/* ── HAMMER ── */
.tf-oc-hammer {
  margin-top: 72px;
  padding: 2px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255, 204, 0, 0.5) 0%, rgba(255, 204, 0, 0.1) 50%, rgba(255, 204, 0, 0.05) 100%);
  /* Animation initial state */
  opacity: 0;
  transform: translateY(40px);
}

.tf-oc-hammer.tf-oc-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1) 0.3s,
              transform 0.65s cubic-bezier(0.22, 1, 0.36, 1) 0.3s;
}

.tf-oc-hammer-inner {
  background: #0F0F0F;
  border-radius: 14px;
  padding: 56px 40px;
  text-align: center;
}

@media (max-width: 767px) {
  .tf-oc-hammer-inner {
    padding: 40px 24px;
  }
}

.tf-oc-hammer-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.35);
  margin: 0 0 16px;
}

.tf-oc-hammer-text {
  font-size: clamp(22px, 3.5vw, 36px);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin: 0 0 12px;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.tf-oc-hammer-sub {
  font-size: clamp(15px, 1.8vw, 17px);
  font-weight: 400;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.55);
  margin: 0 0 36px;
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
}

.tf-oc-hammer-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 16px 36px;
  border-radius: 6px;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 0 0 0 rgba(255, 204, 0, 0);
}

.tf-oc-hammer-btn:hover {
  background: #FFD633;
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(255, 204, 0, 0.35);
}

.tf-oc-hammer-btn:active {
  transform: translateY(0);
  box-shadow: none;
}

.tf-oc-hammer-btn svg {
  transition: transform 0.2s ease;
}

.tf-oc-hammer-btn:hover svg {
  transform: translateX(4px);
}

/* ── REDUCED MOTION ── */
@media (prefers-reduced-motion: reduce) {
  .tf-oc-card,
  .tf-oc-hammer {
    opacity: 1;
    transform: none;
    transition: border-color 0.2s ease;
  }
}
/* END_SECTION:objection-crusher */

/* START_SECTION:objection-handler (INDEX:108) */
.tf-obj {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-muted, #f5f5f5);
}
.tf-obj .tf-container {
  max-width: 800px;
  margin: 0 auto;
}
.tf-obj-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-obj-heading {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-obj-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  margin: 0 auto 3rem;
  line-height: 1.6;
}
.tf-obj-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.tf-obj-item {
  background: var(--tf-card, #fafafa);
  border-radius: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.07);
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
}
.tf-obj-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.5rem;
  background: none;
  border: 0;
  cursor: pointer;
  text-align: left;
  transition: background 0.15s;
}
.tf-obj-trigger:hover {
  background: rgba(250, 204, 21, 0.06);
}
.tf-obj-trigger[aria-expanded="true"] {
  background: rgba(250, 204, 21, 0.08);
}
.tf-obj-trigger[aria-expanded="true"] .tf-obj-icon {
  transform: rotate(180deg);
}
.tf-obj-q-wrap {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}
.tf-obj-emoji {
  font-size: 1.375rem;
  line-height: 1;
  flex-shrink: 0;
}
.tf-obj-question {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  line-height: 1.4;
}
.tf-obj-icon {
  color: var(--tf-muted-foreground, #737373);
  flex-shrink: 0;
  transition: transform 0.25s ease, color 0.15s;
  display: flex;
}
.tf-obj-trigger[aria-expanded="true"] .tf-obj-icon {
  color: var(--tf-primary, #FACC15);
}
.tf-obj-body {
  overflow: hidden;
}
.tf-obj-body-inner {
  padding: 0 1.5rem 1.5rem;
}
.tf-obj-stat {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.875rem;
  font-weight: 800;
  padding: 0.375rem 0.875rem;
  border-radius: 9999px;
  margin-bottom: 0.875rem;
}
.tf-obj-answer {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0;
}
.tf-obj-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.875rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  text-decoration: none;
  border-bottom: 2px solid var(--tf-primary, #FACC15);
  padding-bottom: 1px;
  transition: opacity 0.15s;
}
.tf-obj-link:hover { opacity: 0.75; }
/* Footer CTA */
.tf-obj-footer {
  margin-top: 3rem;
  text-align: center;
  padding: 2.5rem 2rem;
  background: var(--tf-secondary, #1a1a1a);
  border-radius: 1.25rem;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.12);
}
.tf-obj-footer-text {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-secondary-foreground, #fafafa);
  margin: 0 0 1.25rem;
  line-height: 1.5;
}
.tf-obj-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.4);
}
.tf-obj-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* END_SECTION:objection-handler */

/* START_SECTION:page-hero (INDEX:110) */
.tf-page-hero {
  position: relative;
  padding: 4rem 1rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .tf-page-hero {
    padding: 6rem 1rem;
  }
}
.tf-page-hero--dark {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-page-hero--light {
  background: var(--tf-muted, #f5f5f5);
}
.tf-page-hero--primary {
  background: var(--tf-primary, #FACC15);
}
.tf-page-hero--white {
  background: var(--tf-background, #ffffff);
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
}
.tf-page-hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
.tf-page-hero-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}
.tf-page-hero .tf-container {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.tf-page-hero-inner--center {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.tf-page-hero-inner--left {
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.tf-page-hero-breadcrumb {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  margin-bottom: 1.5rem;
}
.tf-page-hero--dark .tf-page-hero-breadcrumb,
.tf-page-hero-bg ~ .tf-container .tf-page-hero-breadcrumb {
  color: rgba(255, 255, 255, 0.5);
}
.tf-page-hero--light .tf-page-hero-breadcrumb,
.tf-page-hero--white .tf-page-hero-breadcrumb {
  color: var(--tf-muted-foreground, #737373);
}
.tf-page-hero--primary .tf-page-hero-breadcrumb {
  color: rgba(0, 0, 0, 0.5);
}
.tf-page-hero-breadcrumb a {
  text-decoration: none;
  transition: opacity 0.15s;
}
.tf-page-hero-breadcrumb a:hover {
  opacity: 0.8;
}
.tf-page-hero-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.875rem;
}
.tf-page-hero--primary .tf-page-hero-label {
  color: rgba(0, 0, 0, 0.65);
}
.tf-page-hero-title {
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin-bottom: 1rem;
}
.tf-page-hero--dark .tf-page-hero-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-page-hero--light .tf-page-hero-title,
.tf-page-hero--white .tf-page-hero-title {
  color: var(--tf-foreground, #141414);
}
.tf-page-hero--primary .tf-page-hero-title {
  color: var(--tf-foreground, #141414);
}
.tf-page-hero-bg + .tf-page-hero-overlay + .tf-container .tf-page-hero-title {
  color: #ffffff;
}
.tf-page-hero-subtitle {
  font-size: 1.125rem;
  line-height: 1.7;
  margin-bottom: 2rem;
  max-width: 60ch;
}
.tf-page-hero--dark .tf-page-hero-subtitle {
  color: rgba(255, 255, 255, 0.7);
}
.tf-page-hero--light .tf-page-hero-subtitle,
.tf-page-hero--white .tf-page-hero-subtitle {
  color: var(--tf-muted-foreground, #737373);
}
.tf-page-hero--primary .tf-page-hero-subtitle {
  color: rgba(0, 0, 0, 0.7);
}
.tf-page-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}
.tf-page-hero-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.4);
}
.tf-page-hero-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-page-hero--primary .tf-page-hero-btn {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
  box-shadow: none;
}
.tf-page-hero--primary .tf-page-hero-btn:hover {
  background: #333;
}
.tf-page-hero-btn-ghost {
  display: inline-block;
  font-weight: 600;
  font-size: 1rem;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: opacity 0.15s;
}
.tf-page-hero--dark .tf-page-hero-btn-ghost {
  color: rgba(255, 255, 255, 0.75);
}
.tf-page-hero--light .tf-page-hero-btn-ghost,
.tf-page-hero--white .tf-page-hero-btn-ghost {
  color: var(--tf-foreground, #141414);
}
.tf-page-hero--primary .tf-page-hero-btn-ghost {
  color: rgba(0, 0, 0, 0.7);
}
.tf-page-hero-btn-ghost:hover {
  opacity: 0.75;
}
.tf-page-hero-scroll {
  margin-top: 3rem;
  animation: tf-bounce 2s infinite;
  opacity: 0.5;
}
.tf-page-hero--dark .tf-page-hero-scroll {
  color: rgba(255, 255, 255, 0.6);
}
.tf-page-hero--light .tf-page-hero-scroll,
.tf-page-hero--white .tf-page-hero-scroll {
  color: var(--tf-muted-foreground, #737373);
}
@keyframes tf-bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(8px); }
}
/* END_SECTION:page-hero */

/* START_SECTION:partner-grid (INDEX:112) */
.tf-partners { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-partners { padding: 7rem 1rem; } }
.tf-partners--white { background: var(--tf-background, #ffffff); }
.tf-partners--gray { background: var(--tf-muted, #f5f5f5); }
.tf-partners--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-partners .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-partners-header { text-align: center; margin-bottom: 3rem; }
.tf-partners-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-partners-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-partners--dark .tf-partners-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-partners-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-partners--dark .tf-partners-subtitle { color: rgba(255,255,255,0.6); }
.tf-partners-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}
@media (min-width: 640px) { .tf-partners-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .tf-partners-grid { grid-template-columns: repeat(4, 1fr); } }
.tf-partner-card {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0.625rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-partner-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,0.09); }
.tf-partners--dark .tf-partner-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-partner-tier {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.2rem 0.75rem;
  border-radius: 9999px;
  white-space: nowrap;
}
.tf-partner-tier--gold { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); }
.tf-partner-tier--silver { background: #a1a1aa; color: #ffffff; }
.tf-partner-tier--blue { background: #3b82f6; color: #ffffff; }
.tf-partner-tier--green { background: #22c55e; color: #ffffff; }
.tf-partner-logo-wrap {
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tf-partner-logo {
  max-height: 48px;
  width: auto;
  max-width: 140px;
  object-fit: contain;
}
.tf-partners--dark .tf-partner-logo { filter: brightness(0) invert(1); opacity: 0.8; }
.tf-partner-name-text {
  font-size: 1rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-partners--dark .tf-partner-name-text { color: var(--tf-secondary-foreground, #fafafa); }
.tf-partner-name {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-partners--dark .tf-partner-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-partner-specialty {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.4;
}
.tf-partners--dark .tf-partner-specialty { color: rgba(255,255,255,0.5); }
.tf-partner-location {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-partners--dark .tf-partner-location { color: rgba(255,255,255,0.4); }
.tf-partner-link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  margin-top: auto;
  transition: opacity 0.2s;
}
.tf-partner-link:hover { opacity: 0.8; }
.tf-partners-footer { text-align: center; margin-top: 3rem; }
.tf-partners-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-partners-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:partner-grid */

/* START_SECTION:photo-testimonials (INDEX:114) */
.tf-phototm { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-phototm { padding: 7rem 1rem; } }
.tf-phototm--white { background: var(--tf-background, #ffffff); }
.tf-phototm--gray { background: var(--tf-muted, #f5f5f5); }
.tf-phototm--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-phototm .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-phototm-header { text-align: center; margin-bottom: 3rem; }
.tf-phototm-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-phototm-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-phototm--dark .tf-phototm-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-phototm-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-phototm--dark .tf-phototm-subtitle { color: rgba(255,255,255,0.6); }
.tf-phototm-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 560px) { .tf-phototm-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-phototm-grid { grid-template-columns: repeat(3, 1fr); } }
.tf-phototm-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-phototm-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.tf-phototm--dark .tf-phototm-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-phototm-card--large { grid-column: span 1; }
@media (min-width: 900px) { .tf-phototm-card--large { grid-column: span 2; } }
.tf-phototm-stars { display: flex; gap: 2px; color: var(--tf-primary, #FACC15); }
.tf-phototm-quote {
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.7;
  margin: 0;
  flex: 1;
}
.tf-phototm--dark .tf-phototm-quote { color: rgba(255,255,255,0.85); }
.tf-phototm-author {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-top: auto;
}
.tf-phototm-photo {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--tf-primary, #FACC15);
  flex-shrink: 0;
}
.tf-phototm-initials {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-phototm-author-info {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  flex: 1;
}
.tf-phototm-name {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-phototm--dark .tf-phototm-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-phototm-detail {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-phototm--dark .tf-phototm-detail { color: rgba(255,255,255,0.5); }
.tf-phototm-platform {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.1);
  padding: 0.15rem 0.5rem;
  border-radius: 9999px;
  flex-shrink: 0;
}
/* END_SECTION:photo-testimonials */

/* START_SECTION:popup-modal (INDEX:116) */
.tf-popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
.tf-popup-overlay--visible {
  opacity: 1;
  pointer-events: auto;
}
.tf-popup {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  padding: 2.5rem 2rem;
  max-width: 480px;
  width: 100%;
  position: relative;
  text-align: center;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.3);
  transform: scale(0.95) translateY(8px);
  transition: transform 0.3s;
}
.tf-popup-overlay--visible .tf-popup {
  transform: scale(1) translateY(0);
}
.tf-popup-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--tf-muted-foreground, #737373);
  padding: 0.25rem;
  line-height: 0;
  transition: color 0.15s;
}
.tf-popup-close:hover {
  color: var(--tf-foreground, #141414);
}
.tf-popup-badge {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  margin-bottom: 1rem;
}
.tf-popup-title {
  font-size: clamp(1.375rem, 4vw, 1.75rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.2;
  margin-bottom: 0.75rem;
}
.tf-popup-subtitle {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin-bottom: 1.5rem;
}
.tf-popup-input-group {
  display: flex;
  border-radius: 9999px;
  overflow: hidden;
  border: 2px solid var(--tf-primary, #FACC15);
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.2);
  margin-bottom: 0.75rem;
}
.tf-popup-input {
  flex: 1;
  border: none;
  padding: 0.8125rem 1.125rem;
  font-size: 0.9375rem;
  background: var(--tf-background, #ffffff);
  color: var(--tf-foreground, #141414);
  outline: none;
  min-width: 0;
}
.tf-popup-input::placeholder {
  color: var(--tf-muted-foreground, #737373);
  opacity: 0.8;
}
.tf-popup-submit {
  flex-shrink: 0;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  border: none;
  font-weight: 700;
  font-size: 0.875rem;
  padding: 0.8125rem 1.25rem;
  cursor: pointer;
  transition: background 0.15s;
  white-space: nowrap;
}
.tf-popup-submit:hover {
  background: hsl(45, 100%, 45%);
}
.tf-popup-fine-print {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  margin-bottom: 1rem;
}
.tf-popup-dismiss {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: underline;
  text-underline-offset: 2px;
  padding: 0;
  transition: color 0.15s;
}
.tf-popup-dismiss:hover {
  color: var(--tf-foreground, #141414);
}
.tf-popup-success {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 600;
  color: #16a34a;
  font-size: 1rem;
  padding: 1rem;
  background: rgba(34, 197, 94, 0.08);
  border-radius: 0.5rem;
}
.tf-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
/* END_SECTION:popup-modal */

/* START_SECTION:press-mentions (INDEX:118) */
.tf-press { padding: 3.5rem 1rem; }
@media (min-width: 768px) { .tf-press { padding: 5rem 1rem; } }
.tf-press--white { background: var(--tf-background, #ffffff); border-top: 1px solid rgba(0,0,0,0.06); border-bottom: 1px solid rgba(0,0,0,0.06); }
.tf-press--gray { background: var(--tf-muted, #f5f5f5); }
.tf-press--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-press .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-press-heading {
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-muted-foreground, #737373);
  margin-bottom: 2.5rem;
}
.tf-press--dark .tf-press-heading { color: rgba(255,255,255,0.4); }
.tf-press-logos-strip {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2rem 3.5rem;
}
.tf-press-logo-item { display: flex; align-items: center; }
.tf-press-logo-item a { display: flex; align-items: center; }
.tf-press-logo {
  height: 32px;
  width: auto;
  max-width: 140px;
  object-fit: contain;
  opacity: 0.5;
  filter: grayscale(100%);
  transition: opacity 0.2s, filter 0.2s;
}
.tf-press-logo-item a:hover .tf-press-logo { opacity: 0.8; filter: grayscale(0%); }
.tf-press--dark .tf-press-logo { filter: grayscale(100%) brightness(0) invert(1); opacity: 0.35; }
.tf-press--dark .tf-press-logo-item a:hover .tf-press-logo { opacity: 0.65; }
.tf-press-pub-text {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  opacity: 0.35;
  letter-spacing: -0.01em;
  margin: 0;
}
.tf-press--dark .tf-press-pub-text { color: var(--tf-secondary-foreground, #fafafa); opacity: 0.25; }
.tf-press-quotes-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 560px) { .tf-press-quotes-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-press-quotes-grid { grid-template-columns: repeat(3, 1fr); } }
.tf-press-quote-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-press-quote-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.07); }
.tf-press--dark .tf-press-quote-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.07);
}
.tf-press-logo-wrap { display: flex; align-items: center; }
.tf-press-blockquote {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}
.tf-press-blockquote p {
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.65;
  font-style: italic;
  margin: 0;
}
.tf-press--dark .tf-press-blockquote p { color: rgba(255,255,255,0.8); }
.tf-press-cite {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  font-style: normal;
  font-weight: 600;
}
.tf-press--dark .tf-press-cite { color: rgba(255,255,255,0.45); }
.tf-press-read-more {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  transition: opacity 0.2s;
}
.tf-press-read-more:hover { opacity: 0.75; }
/* END_SECTION:press-mentions */

/* START_SECTION:pricing-plans (INDEX:119) */
.tf-pricing {
  padding: 4rem 1rem;
  background: var(--tf-muted, #f5f5f5);
}
@media (min-width: 768px) {
  .tf-pricing {
    padding: 6rem 1rem;
  }
}
.tf-pricing .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-pricing .tf-section-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-pricing .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-pricing .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
  font-size: 1.125rem;
}
.tf-pricing-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 640px) {
  .tf-pricing-grid.tf-pricing-count-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .tf-pricing-grid.tf-pricing-count-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .tf-pricing-grid.tf-pricing-count-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .tf-pricing-grid.tf-pricing-count-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
.tf-pricing-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid var(--tf-border, #e5e5e5);
  border-radius: 1rem;
  padding: 2rem;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.tf-pricing-featured {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
  box-shadow: 0 8px 32px rgba(250, 204, 21, 0.15);
}
@media (min-width: 768px) {
  .tf-pricing-featured {
    transform: scale(1.03);
  }
}
.tf-pricing-badge {
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.25rem 0.875rem;
  border-radius: 0 0 0.5rem 0.5rem;
  white-space: nowrap;
}
.tf-pricing-plan-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-pricing-price {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
  flex-wrap: wrap;
  margin-bottom: 0.5rem;
}
.tf-pricing-original {
  font-size: 1.125rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: line-through;
}
.tf-pricing-amount {
  font-size: 2.25rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.02em;
  line-height: 1;
}
.tf-pricing-period {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-pricing-description {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
}
.tf-pricing-features {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
}
.tf-pricing-feature {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
}
.tf-pricing-feature svg {
  color: #22c55e;
  flex-shrink: 0;
  margin-top: 2px;
}
.tf-pricing-btn {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
}
.tf-pricing-btn-primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.4);
}
.tf-pricing-btn-primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-1px);
}
.tf-pricing-btn-secondary {
  background: var(--tf-secondary, #1a1a1a);
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-pricing-btn-secondary:hover {
  background: #333;
  transform: translateY(-1px);
}
.tf-pricing-footnote {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
}
.tf-pricing-guarantee {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 2.5rem;
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  font-weight: 500;
}
.tf-pricing-guarantee svg {
  color: #22c55e;
  flex-shrink: 0;
}
/* END_SECTION:pricing-plans */

/* START_SECTION:pricing-table (INDEX:120) */
.tf-pricing { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-pricing { padding: 7rem 1rem; } }
.tf-pricing--white { background: var(--tf-background, #ffffff); }
.tf-pricing--gray { background: var(--tf-muted, #f5f5f5); }
.tf-pricing--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-pricing .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-pricing-header { text-align: center; margin-bottom: 3rem; display: flex; flex-direction: column; align-items: center; gap: 0.75rem; }
.tf-pricing-eyebrow {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
}
.tf-pricing-title {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.15;
}
.tf-pricing--dark .tf-pricing-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-pricing-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
  max-width: 600px;
}
.tf-pricing--dark .tf-pricing-subtitle { color: rgba(255,255,255,0.6); }
.tf-pricing-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 580px) { .tf-pricing-grid--2 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 768px) {
  .tf-pricing-grid--3 { grid-template-columns: repeat(3, 1fr); }
  .tf-pricing-grid--4 { grid-template-columns: repeat(4, 1fr); }
}
.tf-pricing-card {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1.5px solid rgba(0,0,0,0.08);
  border-radius: 1.5rem;
  padding: 2rem 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.tf-pricing--gray .tf-pricing-card { background: var(--tf-background, #ffffff); }
.tf-pricing--dark .tf-pricing-card { background: rgba(255,255,255,0.04); border-color: rgba(255,255,255,0.07); }
.tf-pricing-card--highlight {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
  box-shadow: 0 8px 32px rgba(250, 204, 21, 0.15);
}
.tf-pricing--dark .tf-pricing-card--highlight { background: rgba(255,255,255,0.06); }
.tf-pricing-popular {
  position: absolute;
  top: -0.9rem;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  padding: 0.25rem 1.125rem;
  border-radius: 9999px;
  white-space: nowrap;
}
.tf-pricing-top { display: flex; flex-direction: column; gap: 0.375rem; }
.tf-pricing-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-pricing--dark .tf-pricing-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-pricing-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.55;
}
.tf-pricing--dark .tf-pricing-desc { color: rgba(255,255,255,0.5); }
.tf-pricing-amount-wrap {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
  flex-wrap: wrap;
}
.tf-pricing-amount-row { display: flex; align-items: flex-start; gap: 0.125rem; }
.tf-pricing-currency {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  padding-top: 0.5rem;
  line-height: 1;
}
.tf-pricing--dark .tf-pricing-currency { color: rgba(255,255,255,0.85); }
.tf-pricing-amount {
  font-size: 3.25rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1;
}
.tf-pricing--dark .tf-pricing-amount { color: var(--tf-secondary-foreground, #fafafa); }
.tf-pricing-period {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  align-self: flex-end;
  padding-bottom: 0.375rem;
}
.tf-pricing--dark .tf-pricing-period { color: rgba(255,255,255,0.45); }
.tf-pricing-note {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: -0.625rem 0 0;
}
.tf-pricing--dark .tf-pricing-note { color: rgba(255,255,255,0.4); }
.tf-pricing-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
  text-align: center;
}
.tf-pricing-cta--primary { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); border: 2px solid transparent; }
.tf-pricing-cta--primary:hover { background: hsl(45,100%,45%); }
.tf-pricing-cta--outline { background: transparent; color: var(--tf-foreground, #141414); border: 2px solid rgba(0,0,0,0.2); }
.tf-pricing-cta--outline:hover { border-color: var(--tf-foreground, #141414); background: rgba(0,0,0,0.04); }
.tf-pricing--dark .tf-pricing-cta--outline { color: rgba(255,255,255,0.85); border-color: rgba(255,255,255,0.2); }
.tf-pricing--dark .tf-pricing-cta--outline:hover { border-color: rgba(255,255,255,0.6); background: rgba(255,255,255,0.05); }
.tf-pricing-features {
  list-style: none;
  margin: 0;
  padding: 1.25rem 0 0;
  border-top: 1px solid rgba(0,0,0,0.06);
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.tf-pricing--dark .tf-pricing-features { border-top-color: rgba(255,255,255,0.07); }
.tf-pricing-feature {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.875rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.5;
}
.tf-pricing--dark .tf-pricing-feature { color: rgba(255,255,255,0.8); }
.tf-pricing-check { flex-shrink: 0; color: var(--tf-primary, #FACC15); margin-top: 1px; }
.tf-pricing-footnote {
  text-align: center;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 2rem 0 0;
}
.tf-pricing--dark .tf-pricing-footnote { color: rgba(255,255,255,0.45); }
/* END_SECTION:pricing-table */

/* START_SECTION:pricing-toggle (INDEX:121) */
.tf-ptoggle { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-ptoggle { padding: 7rem 1rem; } }
.tf-ptoggle--white { background: var(--tf-background, #ffffff); }
.tf-ptoggle--gray { background: var(--tf-muted, #f5f5f5); }
.tf-ptoggle--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-ptoggle .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-ptoggle-header { text-align: center; margin-bottom: 2rem; }
.tf-ptoggle-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-ptoggle-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-ptoggle--dark .tf-ptoggle-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ptoggle-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-ptoggle--dark .tf-ptoggle-subtitle { color: rgba(255,255,255,0.6); }
.tf-ptoggle-switch-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.875rem;
  margin-bottom: 3rem;
}
.tf-ptoggle-switch-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-ptoggle--dark .tf-ptoggle-switch-label { color: rgba(255,255,255,0.85); }
.tf-ptoggle-save-pill {
  font-size: 0.75rem;
  font-weight: 700;
  color: #22c55e;
  background: rgba(34,197,94,0.12);
  padding: 0.2rem 0.5rem;
  border-radius: 9999px;
}
.tf-ptoggle-switch {
  position: relative;
  width: 52px;
  height: 28px;
  background: rgba(0,0,0,0.12);
  border: none;
  border-radius: 9999px;
  cursor: pointer;
  transition: background 0.2s;
  flex-shrink: 0;
  padding: 0;
}
.tf-ptoggle--dark .tf-ptoggle-switch { background: rgba(255,255,255,0.15); }
.tf-ptoggle-switch[aria-checked="true"] { background: var(--tf-primary, #FACC15); }
.tf-ptoggle-switch-thumb {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 22px;
  height: 22px;
  background: #ffffff;
  border-radius: 50%;
  transition: transform 0.2s;
  box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
.tf-ptoggle-switch[aria-checked="true"] .tf-ptoggle-switch-thumb { transform: translateX(24px); }
.tf-ptoggle-plans {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 640px) { .tf-ptoggle-plans { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-ptoggle-plans { grid-template-columns: repeat(3, 1fr); } }
.tf-ptoggle-plan {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 1.5rem;
  padding: 2rem 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  overflow: hidden;
}
.tf-ptoggle--dark .tf-ptoggle-plan {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-ptoggle-plan--popular {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
}
.tf-ptoggle-popular-tag {
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.25rem 1rem;
  border-radius: 0 0 0.75rem 0.75rem;
  white-space: nowrap;
}
.tf-ptoggle-plan-top { display: flex; flex-direction: column; gap: 0.375rem; }
.tf-ptoggle-plan-name {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-ptoggle--dark .tf-ptoggle-plan-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ptoggle-plan--popular .tf-ptoggle-plan-name { color: var(--tf-primary, #FACC15); }
.tf-ptoggle-plan-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-ptoggle--dark .tf-ptoggle-plan-desc { color: rgba(255,255,255,0.5); }
.tf-ptoggle-price-wrap { display: flex; flex-direction: column; gap: 0.25rem; }
.tf-ptoggle-price { display: flex; align-items: baseline; gap: 0.125rem; }
.tf-ptoggle-price--hidden { display: none; }
.tf-ptoggle-currency {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  align-self: flex-start;
  padding-top: 0.25rem;
}
.tf-ptoggle--dark .tf-ptoggle-currency { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ptoggle-amount {
  font-size: 2.5rem;
  font-weight: 900;
  color: var(--tf-foreground, #141414);
  line-height: 1;
}
.tf-ptoggle--dark .tf-ptoggle-amount { color: var(--tf-secondary-foreground, #fafafa); }
.tf-ptoggle-period {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin-left: 0.125rem;
}
.tf-ptoggle-annual-note {
  display: none;
  font-size: 0.8125rem;
  color: #22c55e;
  font-weight: 600;
}
.tf-ptoggle-features {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
}
.tf-ptoggle-features li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.9rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.4;
}
.tf-ptoggle--dark .tf-ptoggle-features li { color: rgba(255,255,255,0.8); }
.tf-ptoggle-features svg { color: var(--tf-primary, #FACC15); flex-shrink: 0; margin-top: 3px; }
.tf-ptoggle-cta {
  display: block;
  text-align: center;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid rgba(0,0,0,0.12);
  color: var(--tf-foreground, #141414);
  transition: border-color 0.2s, background 0.2s;
}
.tf-ptoggle-cta:hover {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.08);
}
.tf-ptoggle-cta--primary {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
}
.tf-ptoggle-cta--primary:hover { background: hsl(45,100%,45%); border-color: hsl(45,100%,45%); }
.tf-ptoggle--dark .tf-ptoggle-cta {
  border-color: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.85);
}
.tf-ptoggle-footer {
  text-align: center;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 2.5rem;
}
.tf-ptoggle--dark .tf-ptoggle-footer { color: rgba(255,255,255,0.4); }
/* END_SECTION:pricing-toggle */

/* START_SECTION:problem-solution (INDEX:122) */
.tf-pas {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-pas .tf-container {
  max-width: 900px;
  margin: 0 auto;
}
.tf-pas-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-pas-heading {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 3rem;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.tf-pas-steps {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.tf-pas-step {
  border-radius: 1.25rem;
  padding: 2rem 2rem 2rem;
  position: relative;
  overflow: hidden;
}
.tf-pas-step--problem {
  background: #fff1f2;
  border: 1px solid #fecdd3;
}
.tf-pas-step--agitate {
  background: #fff7ed;
  border: 1px solid #fed7aa;
}
.tf-pas-step--solve {
  background: var(--tf-secondary, #1a1a1a);
  border: 1px solid rgba(250, 204, 21, 0.3);
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12);
}
.tf-pas-step-header {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: 1rem;
}
.tf-pas-step-emoji {
  font-size: 2.5rem;
  line-height: 1;
  flex-shrink: 0;
  margin-top: -4px;
}
.tf-pas-step-label {
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0 0 0.375rem;
}
.tf-pas-step--problem .tf-pas-step-label { color: #dc2626; }
.tf-pas-step--agitate .tf-pas-step-label { color: #d97706; }
.tf-pas-step--solve .tf-pas-step-label { color: var(--tf-primary, #FACC15); }
.tf-pas-step-title {
  font-size: clamp(1.25rem, 3vw, 1.625rem);
  font-weight: 800;
  line-height: 1.2;
  margin: 0;
}
.tf-pas-step--problem .tf-pas-step-title,
.tf-pas-step--agitate .tf-pas-step-title {
  color: var(--tf-foreground, #141414);
}
.tf-pas-step--solve .tf-pas-step-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-pas-step-body {
  font-size: 1.0625rem;
  line-height: 1.65;
  margin: 0;
}
.tf-pas-step--problem .tf-pas-step-body,
.tf-pas-step--agitate .tf-pas-step-body {
  color: var(--tf-muted-foreground, #737373);
}
.tf-pas-step--solve .tf-pas-step-body {
  color: rgba(255, 255, 255, 0.75);
}
.tf-pas-stat {
  display: inline-block;
  font-size: 0.875rem;
  font-weight: 800;
  margin-top: 1rem;
  padding: 0.375rem 0.875rem;
  border-radius: 9999px;
}
.tf-pas-step--problem .tf-pas-stat {
  background: rgba(220, 38, 38, 0.12);
  color: #dc2626;
}
.tf-pas-step--agitate .tf-pas-stat {
  background: rgba(217, 119, 6, 0.12);
  color: #d97706;
}
.tf-pas-step--solve .tf-pas-stat {
  background: rgba(250, 204, 21, 0.15);
  color: var(--tf-primary, #FACC15);
}
/* CTA */
.tf-pas-cta {
  margin-top: 3rem;
  text-align: center;
}
.tf-pas-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1.0625rem;
  padding: 1rem 2.75rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 20px rgba(250, 204, 21, 0.4);
}
.tf-pas-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-pas-cta-sub {
  margin: 0.75rem 0 0;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
/* END_SECTION:problem-solution */

/* START_SECTION:product-bundles (INDEX:123) */
.tf-bundles {
  padding: 4rem 1rem;
  background: var(--tf-background, #ffffff);
}
@media (min-width: 768px) {
  .tf-bundles {
    padding: 6rem 1rem;
  }
}
.tf-bundles .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-bundles .tf-section-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-bundles-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-bundles .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-bundles .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
  font-size: 1.125rem;
}
.tf-bundles-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .tf-bundles-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .tf-bundles-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.tf-bundle-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid var(--tf-border, #e5e5e5);
  border-radius: 1.25rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: box-shadow 0.2s, transform 0.2s;
}
.tf-bundle-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.1);
}
.tf-bundle-featured {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
  box-shadow: 0 8px 32px rgba(250, 204, 21, 0.2);
}
.tf-bundle-badge {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.25rem 0.625rem;
  border-radius: 9999px;
  z-index: 1;
}
.tf-bundle-image {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--tf-muted, #f5f5f5);
}
.tf-bundle-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-bundle-card:hover .tf-bundle-image img {
  transform: scale(1.03);
}
.tf-bundle-image--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.tf-bundle-content {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 1;
}
.tf-bundle-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-bundle-items {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.tf-bundle-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-bundle-item svg {
  color: #22c55e;
  flex-shrink: 0;
}
.tf-bundle-pricing {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: auto;
}
.tf-bundle-original {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: line-through;
}
.tf-bundle-price {
  font-size: 1.875rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.02em;
}
.tf-bundle-savings {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #16a34a;
  background: rgba(34, 197, 94, 0.1);
  padding: 0.125rem 0.5rem;
  border-radius: 9999px;
}
.tf-bundle-btn {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
}
.tf-bundle-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.4);
}
.tf-bundle-btn--primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-1px);
}
.tf-bundle-btn--secondary {
  background: var(--tf-secondary, #1a1a1a);
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-bundle-btn--secondary:hover {
  background: #333;
  transform: translateY(-1px);
}
.tf-bundle-footnote {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
}
.tf-bundles-guarantee {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 2.5rem;
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  font-weight: 500;
}
.tf-bundles-guarantee svg {
  color: #22c55e;
  flex-shrink: 0;
}
/* END_SECTION:product-bundles */

/* START_SECTION:product-highlights (INDEX:125) */
.tf-highlights {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-highlights { padding: 7rem 1rem; }
}
.tf-highlights--white { background: var(--tf-background, #ffffff); }
.tf-highlights--gray { background: var(--tf-muted, #f5f5f5); }
.tf-highlights--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-highlights .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-highlights-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-highlights-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-highlights-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-highlights--dark .tf-highlights-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-highlights-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  max-width: 620px;
  margin: 0 auto;
}
.tf-highlights--dark .tf-highlights-subtitle { color: rgba(255,255,255,0.6); }
.tf-highlights-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.tf-highlights-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0.07);
  display: flex;
  flex-direction: column;
  transition: transform 0.25s, box-shadow 0.25s;
}
.tf-highlights--dark .tf-highlights-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-highlights-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(0,0,0,0.12);
}
.tf-highlights-card--featured {
  border: 2px solid var(--tf-primary, #FACC15);
  box-shadow: 0 4px 24px rgba(250, 204, 21, 0.15);
}
.tf-highlights-card-img-wrap {
  aspect-ratio: 16 / 10;
  overflow: hidden;
}
.tf-highlights-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-highlights-card:hover .tf-highlights-card-img {
  transform: scale(1.04);
}
.tf-highlights-card-icon {
  padding: 1.75rem 1.75rem 0;
  color: var(--tf-primary, #FACC15);
}
.tf-highlights-card-body {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
}
.tf-highlights-card-tag {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: hsl(45, 100%, 30%);
  width: fit-content;
}
.tf-highlights--dark .tf-highlights-card-tag {
  color: var(--tf-primary, #FACC15);
}
.tf-highlights-card-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  line-height: 1.3;
  margin: 0;
}
.tf-highlights--dark .tf-highlights-card-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-highlights-card-desc {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.tf-highlights--dark .tf-highlights-card-desc { color: rgba(255,255,255,0.55); }
.tf-highlights-card-stat {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  padding-top: 0.5rem;
  border-top: 1px solid rgba(0,0,0,0.07);
  margin-top: 0.25rem;
}
.tf-highlights--dark .tf-highlights-card-stat {
  border-top-color: rgba(255,255,255,0.08);
}
.tf-highlights-stat-number {
  font-size: 1.75rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  letter-spacing: -0.02em;
  line-height: 1;
}
.tf-highlights-stat-label {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  font-weight: 500;
}
.tf-highlights--dark .tf-highlights-stat-label { color: rgba(255,255,255,0.5); }
.tf-highlights-card-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  margin-top: auto;
  padding-top: 0.5rem;
  transition: gap 0.2s;
}
.tf-highlights-card-link:hover { gap: 0.625rem; }
/* END_SECTION:product-highlights */

/* START_SECTION:product-quiz (INDEX:126) */
.tf-quiz {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-quiz { padding: 7rem 1rem; }
}
.tf-quiz--white { background: var(--tf-background, #ffffff); }
.tf-quiz--gray { background: var(--tf-muted, #f5f5f5); }
.tf-quiz--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-quiz .tf-container {
  max-width: 640px;
  margin: 0 auto;
}
.tf-quiz-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.5rem;
  padding: 2.5rem 2rem;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 8px 40px rgba(0,0,0,0.08);
  text-align: center;
}
.tf-quiz--dark .tf-quiz-card {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.1);
}
@media (min-width: 640px) {
  .tf-quiz-card { padding: 3rem; }
}
.tf-quiz-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 1rem;
}
.tf-quiz-title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-quiz--dark .tf-quiz-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-quiz-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin-bottom: 2rem;
}
.tf-quiz--dark .tf-quiz-subtitle { color: rgba(255,255,255,0.6); }
.tf-quiz-start {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1.0625rem;
  padding: 1rem 2.25rem;
  border-radius: 9999px;
  border: none;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250,204,21,0.35);
}
.tf-quiz-start:hover { background: hsl(45,100%,45%); transform: translateY(-2px); }
.tf-quiz-progress {
  height: 4px;
  background: rgba(0,0,0,0.08);
  border-radius: 9999px;
  margin-bottom: 0.75rem;
  overflow: hidden;
}
.tf-quiz--dark .tf-quiz-progress { background: rgba(255,255,255,0.1); }
.tf-quiz-progress-bar {
  height: 100%;
  background: var(--tf-primary, #FACC15);
  border-radius: 9999px;
  transition: width 0.4s ease;
  width: 0;
}
.tf-quiz-step-label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  margin-bottom: 1.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.tf-quiz--dark .tf-quiz-step-label { color: rgba(255,255,255,0.45); }
.tf-quiz-question {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 1.5rem;
  line-height: 1.3;
}
.tf-quiz--dark .tf-quiz-question { color: var(--tf-secondary-foreground, #fafafa); }
.tf-quiz-options {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.tf-quiz-opt {
  padding: 1rem 1.5rem;
  border-radius: 0.875rem;
  border: 2px solid rgba(0,0,0,0.1);
  background: var(--tf-background, #ffffff);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.2s, background 0.2s, transform 0.15s;
}
.tf-quiz--dark .tf-quiz-opt {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-quiz-opt:hover {
  border-color: var(--tf-primary, #FACC15);
  transform: translateX(4px);
}
.tf-quiz-opt--selected {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45, 100%, 51%, 0.1);
}
.tf-quiz--dark .tf-quiz-opt--selected { background: hsla(45, 100%, 51%, 0.15); }
.tf-quiz-result-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  margin-bottom: 1.25rem;
}
.tf-quiz-result-name {
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-quiz--dark .tf-quiz-result-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-quiz-result-desc {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin-bottom: 1.75rem;
}
.tf-quiz--dark .tf-quiz-result-desc { color: rgba(255,255,255,0.6); }
.tf-quiz-result-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250,204,21,0.35);
  display: block;
  margin-bottom: 1.25rem;
}
.tf-quiz-result-btn:hover { background: hsl(45,100%,45%); transform: translateY(-2px); }
.tf-quiz-restart {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.tf-quiz--dark .tf-quiz-restart { color: rgba(255,255,255,0.4); }
.tf-quiz-restart:hover { color: var(--tf-foreground, #141414); }
.tf-quiz--dark .tf-quiz-restart:hover { color: rgba(255,255,255,0.8); }
/* END_SECTION:product-quiz */

/* START_SECTION:product-showcase-duo (INDEX:127) */
/* ============================================================
   tf-duo — product-showcase-duo.liquid
   Dark bg, gold accents, Montserrat, mobile-first
   ============================================================ */

.tf-duo {
  background-color: #0A0A0A;
  color: #FFFFFF;
  padding: 80px 0 96px;
  font-family: 'Montserrat', sans-serif;
}

/* Container */
.tf-duo-container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ── HEADER ─────────────────────────────────────────────────── */
.tf-duo-header {
  text-align: center;
  margin-bottom: 64px;
}

.tf-duo-overline {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin: 0 0 16px;
}

.tf-duo-heading {
  font-size: clamp(26px, 4vw, 40px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin: 0 0 20px;
}

.tf-duo-subtitle {
  font-size: clamp(15px, 2vw, 17px);
  line-height: 1.65;
  color: rgba(255,255,255,0.65);
  max-width: 620px;
  margin: 0 auto;
}

/* ── GRID ───────────────────────────────────────────────────── */
.tf-duo-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin-bottom: 40px;
}

@media (min-width: 900px) {
  .tf-duo-grid {
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 28px;
  }
}

/* ── CARDS ──────────────────────────────────────────────────── */
.tf-duo-card {
  border-radius: 16px;
  border: 1.5px solid rgba(255,255,255,0.08);
  background: #111111;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.2s ease;
  cursor: default;
}

.tf-duo-card:hover {
  border-color: rgba(255,204,0,0.5);
  box-shadow: 0 8px 48px rgba(255,204,0,0.12);
  transform: translateY(-3px);
}

.tf-duo-card-inner {
  padding: 32px 28px 28px;
  display: flex;
  flex-direction: column;
  gap: 0;
  height: 100%;
}

@media (min-width: 900px) {
  .tf-duo-card-inner {
    padding: 36px 32px 32px;
  }
}

/* Badge */
.tf-duo-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 24px;
}

.tf-duo-badge--stand {
  background: rgba(255,204,0,0.15);
  color: #FFCC00;
  border: 1px solid rgba(255,204,0,0.35);
}

.tf-duo-badge--card {
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.8);
  border: 1px solid rgba(255,255,255,0.15);
}

/* Product icon area */
.tf-duo-product-icon {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}

/* Product name block */
.tf-duo-product-name-block {
  margin-bottom: 16px;
}

.tf-duo-product-name {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #FFFFFF;
  margin: 0 0 6px;
  line-height: 1.2;
}

.tf-duo-tagline {
  font-size: 14px;
  font-weight: 600;
  color: #FFCC00;
  font-style: italic;
  margin: 0;
}

/* Description */
.tf-duo-description {
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,0.65);
  margin: 0 0 28px;
}

/* Card body */
.tf-duo-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* Ideal for list */
.tf-duo-ideal-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
  margin: 0 0 10px;
}

.tf-duo-ideal-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tf-duo-ideal-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: rgba(255,255,255,0.82);
  line-height: 1.4;
}

.tf-duo-check {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

/* Review rate */
.tf-duo-rate {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: rgba(255,255,255,0.55);
  background: rgba(255,204,0,0.06);
  border: 1px solid rgba(255,204,0,0.12);
  border-radius: 8px;
  padding: 10px 14px;
}

.tf-duo-rate strong {
  color: #FFCC00;
  font-weight: 700;
}

/* ── PRICING TABLE ──────────────────────────────────────────── */
.tf-duo-pricing-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
  margin: 0 0 10px;
}

.tf-duo-price-table {
  width: 100%;
  border-collapse: collapse;
  border-radius: 10px;
  overflow: hidden;
  font-size: 13px;
}

.tf-duo-price-table thead tr {
  background: #FFCC00;
}

.tf-duo-price-table thead th {
  color: #0A0A0A;
  font-weight: 800;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: left;
  padding: 10px 14px;
}

.tf-duo-price-table thead th:last-child {
  text-align: right;
}

.tf-duo-price-table tbody tr {
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.tf-duo-price-table tbody tr:nth-child(odd) {
  background: rgba(255,255,255,0.025);
}

.tf-duo-price-table tbody tr:nth-child(even) {
  background: rgba(255,255,255,0.045);
}

.tf-duo-price-table tbody tr:last-child {
  border-bottom: none;
}

.tf-duo-price-table tbody td {
  padding: 10px 14px;
  color: rgba(255,255,255,0.8);
}

.tf-duo-per-unit {
  text-align: right;
  font-weight: 700;
  color: #FFCC00 !important;
}

/* ── CARD FOOTER ────────────────────────────────────────────── */
.tf-duo-card-footer {
  margin-top: 28px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
}

/* ── CTA BUTTONS ────────────────────────────────────────────── */
.tf-duo-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 28px;
  border-radius: 8px;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  border: 2px solid transparent;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  white-space: nowrap;
}

.tf-duo-cta:hover {
  transform: translateY(-1px);
}

.tf-duo-cta:active {
  transform: translateY(0);
}

.tf-duo-cta--solid {
  background: #FFCC00;
  color: #0A0A0A;
  border-color: #FFCC00;
}

.tf-duo-cta--solid:hover {
  background: #FFD633;
  border-color: #FFD633;
  box-shadow: 0 4px 24px rgba(255,204,0,0.35);
}

.tf-duo-cta--outline {
  background: transparent;
  color: #FFCC00;
  border-color: #FFCC00;
}

.tf-duo-cta--outline:hover {
  background: rgba(255,204,0,0.08);
  box-shadow: 0 4px 20px rgba(255,204,0,0.2);
}

.tf-duo-cta--sm {
  padding: 11px 20px;
  font-size: 13px;
}

.tf-duo-footer-note {
  font-size: 12px;
  color: rgba(255,255,255,0.35);
  text-align: center;
  margin: 0;
}

/* ── BOTH CALLOUT ───────────────────────────────────────────── */
.tf-duo-both {
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(255,204,0,0.12) 0%, rgba(255,204,0,0.04) 100%);
  border: 1.5px solid rgba(255,204,0,0.3);
  padding: 28px 24px;
  margin-bottom: 48px;
}

@media (min-width: 600px) {
  .tf-duo-both {
    padding: 32px 36px;
  }
}

.tf-duo-both-inner {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}

.tf-duo-both-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #FFCC00;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tf-duo-both-headline {
  font-size: 18px;
  font-weight: 800;
  color: #FFCC00;
  margin: 0 0 12px;
  letter-spacing: -0.01em;
}

.tf-duo-both-points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.tf-duo-both-points li {
  font-size: 14px;
  color: rgba(255,255,255,0.75);
  line-height: 1.55;
  padding-left: 16px;
  position: relative;
}

.tf-duo-both-points li::before {
  content: '→';
  position: absolute;
  left: 0;
  color: #FFCC00;
  font-weight: 700;
}

.tf-duo-both-points li strong {
  color: #FFFFFF;
  font-weight: 700;
}

/* ── DECISION HELPER ────────────────────────────────────────── */
.tf-duo-decision {
  background: #111111;
  border: 1.5px solid rgba(255,255,255,0.07);
  border-radius: 16px;
  padding: 36px 24px 32px;
}

@media (min-width: 600px) {
  .tf-duo-decision {
    padding: 44px 48px 40px;
  }
}

.tf-duo-decision-heading {
  font-size: clamp(20px, 3vw, 26px);
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 6px;
  text-align: center;
  letter-spacing: -0.01em;
}

.tf-duo-decision-sub {
  font-size: 14px;
  color: rgba(255,255,255,0.45);
  text-align: center;
  margin: 0 0 36px;
}

.tf-duo-decision-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
}

@media (min-width: 760px) {
  .tf-duo-decision-grid {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

/* Question */
.tf-duo-question-text {
  font-size: 15px;
  font-weight: 700;
  color: #FFFFFF;
  margin: 0 0 14px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  line-height: 1.45;
}

.tf-duo-question-num {
  flex-shrink: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #FFCC00;
  color: #0A0A0A;
  font-size: 12px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}

.tf-duo-answers {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Answer buttons */
.tf-duo-answer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  background: rgba(255,255,255,0.04);
  border: 1.5px solid rgba(255,255,255,0.1);
  border-radius: 10px;
  padding: 12px 16px;
  cursor: pointer;
  font-family: 'Montserrat', sans-serif;
  transition: background 0.2s ease, border-color 0.2s ease;
  text-align: left;
}

.tf-duo-answer:hover {
  background: rgba(255,204,0,0.07);
  border-color: rgba(255,204,0,0.35);
}

.tf-duo-answer[aria-pressed="true"],
.tf-duo-answer.is-active {
  background: rgba(255,204,0,0.1);
  border-color: #FFCC00;
}

.tf-duo-answer-label {
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,0.85);
}

.tf-duo-answer-result {
  font-size: 12px;
  color: rgba(255,255,255,0.4);
  white-space: nowrap;
  flex-shrink: 0;
}

.tf-duo-answer[aria-pressed="true"] .tf-duo-answer-result,
.tf-duo-answer.is-active .tf-duo-answer-result {
  color: #FFCC00;
}

.tf-duo-answer-result strong {
  font-weight: 700;
}

/* Decision CTA reveal */
.tf-duo-decision-cta {
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid rgba(255,255,255,0.07);
  text-align: center;
}

.tf-duo-decision-cta[hidden] {
  display: none;
}

.tf-duo-decision-recommendation {
  font-size: 15px;
  color: rgba(255,255,255,0.7);
  margin: 0 0 20px;
  line-height: 1.55;
}

.tf-duo-decision-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
/* END_SECTION:product-showcase-duo */

/* START_SECTION:product-specs (INDEX:128) */
.tf-specs { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-specs { padding: 7rem 1rem; } }
.tf-specs--white { background: var(--tf-background, #ffffff); }
.tf-specs--gray { background: var(--tf-muted, #f5f5f5); }
.tf-specs--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-specs .tf-container { max-width: 1000px; margin: 0 auto; }
.tf-specs-header { text-align: center; margin-bottom: 3rem; }
.tf-specs-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-specs-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-specs--dark .tf-specs-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-specs-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-specs-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: start;
}
@media (min-width: 768px) {
  .tf-specs-layout { grid-template-columns: 1fr 320px; }
}
.tf-specs-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.tf-specs-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9375rem;
}
.tf-specs-group-row { border-bottom: none; }
.tf-specs-group-head {
  text-align: left;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  padding: 1.5rem 0 0.5rem;
  border-bottom: 2px solid var(--tf-primary, #FACC15);
}
.tf-specs-group-row:first-child .tf-specs-group-head { padding-top: 0; }
.tf-specs-row {
  border-bottom: 1px solid rgba(0,0,0,0.07);
  transition: background 0.15s;
}
.tf-specs--dark .tf-specs-row { border-bottom-color: rgba(255,255,255,0.07); }
.tf-specs-row:hover { background: hsla(45,100%,51%,0.04); }
.tf-specs-label {
  padding: 0.875rem 1rem 0.875rem 0;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  width: 45%;
  vertical-align: top;
  white-space: nowrap;
}
.tf-specs--dark .tf-specs-label { color: rgba(255,255,255,0.8); }
.tf-specs-value {
  padding: 0.875rem 0;
  color: var(--tf-muted-foreground, #737373);
  vertical-align: top;
}
.tf-specs--dark .tf-specs-value { color: rgba(255,255,255,0.55); }
.tf-specs-note {
  display: block;
  font-size: 0.8125rem;
  margin-top: 0.25rem;
  opacity: 0.7;
}
.tf-specs-visual {
  position: sticky;
  top: 2rem;
}
.tf-specs-img {
  width: 100%;
  height: auto;
  border-radius: 1.5rem;
  display: block;
}
/* END_SECTION:product-specs */

/* START_SECTION:product-tabs (INDEX:129) */
.tf-tabs {
  padding: 3rem 1rem;
  background: var(--tf-background, #ffffff);
  border-top: 1px solid var(--tf-border, #e5e5e5);
}
@media (min-width: 768px) {
  .tf-tabs {
    padding: 4rem 1rem;
  }
}
.tf-tabs .tf-container {
  max-width: 900px;
  margin: 0 auto;
}
.tf-tabs-nav {
  display: flex;
  border-bottom: 2px solid var(--tf-border, #e5e5e5);
  overflow-x: auto;
  scrollbar-width: none;
  gap: 0;
}
.tf-tabs-nav::-webkit-scrollbar {
  display: none;
}
.tf-tabs-trigger {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.875rem 1.25rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  cursor: pointer;
  white-space: nowrap;
  transition: color 0.15s, border-color 0.15s;
}
.tf-tabs-trigger:hover {
  color: var(--tf-foreground, #141414);
}
.tf-tabs-trigger--active {
  color: var(--tf-foreground, #141414);
  border-bottom-color: var(--tf-primary, #FACC15);
}
.tf-tabs-trigger svg {
  flex-shrink: 0;
}
.tf-tabs-panels {
  padding-top: 2rem;
}
.tf-tabs-panel {
  animation: tf-tab-fade-in 0.2s ease;
}
@keyframes tf-tab-fade-in {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}
.tf-tabs-content {
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.75;
  font-size: 1rem;
}
.tf-tabs-content p {
  margin: 0 0 1em;
}
.tf-tabs-content p:last-child {
  margin-bottom: 0;
}
.tf-tabs-content h3,
.tf-tabs-content h4 {
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
  margin-top: 1.25rem;
}
.tf-tabs-content h3:first-child,
.tf-tabs-content h4:first-child {
  margin-top: 0;
}
.tf-tabs-bullets {
  list-style: none;
  padding: 0;
  margin: 1.25rem 0 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.tf-tabs-bullets li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
}
.tf-tabs-bullets li svg {
  color: #22c55e;
  flex-shrink: 0;
  margin-top: 2px;
}
/* END_SECTION:product-tabs */

/* START_SECTION:product-upsell (INDEX:130) */
.tf-upsell {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-muted, #f5f5f5);
}
.tf-upsell .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-upsell-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-upsell-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 0.875rem;
}
.tf-upsell-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 560px;
  margin: 0 auto 3rem;
  line-height: 1.65;
}
.tf-upsell-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 560px) {
  .tf-upsell-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 900px) {
  .tf-upsell-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.tf-upsell-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  border: 1px solid rgba(0, 0, 0, 0.07);
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
}
.tf-upsell-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.1);
}
.tf-upsell-card--recommended {
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 8px 32px rgba(250, 204, 21, 0.2);
}
.tf-upsell-ribbon {
  position: absolute;
  top: 1rem;
  right: -0.25rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.25rem 0.75rem 0.25rem 0.625rem;
  border-radius: 0.375rem 0 0 0.375rem;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 0.5rem 50%);
}
.tf-upsell-card-img-wrap {
  background: var(--tf-muted, #f5f5f5);
  overflow: hidden;
}
.tf-upsell-card-img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.tf-upsell-card:hover .tf-upsell-card-img {
  transform: scale(1.04);
}
.tf-upsell-img-placeholder {
  width: 100%;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ccc;
}
.tf-upsell-card-body {
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}
.tf-upsell-badge {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  background: rgba(250, 204, 21, 0.15);
  color: hsl(45, 85%, 35%);
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
  margin-bottom: 0.25rem;
}
.tf-upsell-card-name {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.3;
}
.tf-upsell-card-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.5;
  flex: 1;
}
.tf-upsell-card-pricing {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  margin-top: 0.25rem;
}
.tf-upsell-price-original {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  text-decoration: line-through;
}
.tf-upsell-price {
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.02em;
}
.tf-upsell-per-unit {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-upsell-value {
  font-size: 0.8125rem;
  color: #16a34a;
  font-weight: 600;
  margin: 0;
}
.tf-upsell-btn {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0.8125rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  margin-top: auto;
}
.tf-upsell-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-upsell-btn--primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-upsell-btn--secondary {
  background: var(--tf-muted, #f0f0f0);
  color: var(--tf-foreground, #141414);
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.tf-upsell-btn--secondary:hover {
  background: rgba(0, 0, 0, 0.08);
}
.tf-upsell-footnote {
  text-align: center;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 2rem 0 0;
}
/* END_SECTION:product-upsell */

/* START_SECTION:promo-code-banner (INDEX:131) */
.tf-promo { padding: 2rem 1rem; }
.tf-promo--yellow { background: var(--tf-primary, #FACC15); }
.tf-promo--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-promo--white { background: var(--tf-background, #ffffff); }
.tf-promo--gray { background: var(--tf-muted, #f5f5f5); }
.tf-promo .tf-container { max-width: 900px; margin: 0 auto; }
.tf-promo-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  text-align: center;
}
@media (min-width: 640px) {
  .tf-promo-inner {
    flex-direction: row;
    text-align: left;
    justify-content: center;
  }
}
.tf-promo-text { flex: 1; }
.tf-promo-label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0.25rem;
}
.tf-promo--yellow .tf-promo-label { color: rgba(0,0,0,0.6); }
.tf-promo--dark .tf-promo-label { color: var(--tf-primary, #FACC15); }
.tf-promo--white .tf-promo-label,
.tf-promo--gray .tf-promo-label { color: var(--tf-primary, #FACC15); }
.tf-promo-title {
  font-size: 1.0625rem;
  font-weight: 700;
  margin: 0;
  line-height: 1.4;
}
.tf-promo--yellow .tf-promo-title { color: var(--tf-foreground, #141414); }
.tf-promo--dark .tf-promo-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-promo--white .tf-promo-title,
.tf-promo--gray .tf-promo-title { color: var(--tf-foreground, #141414); }
.tf-promo-code-wrap {
  display: flex;
  align-items: center;
  gap: 0;
  border-radius: 9999px;
  overflow: hidden;
  border: 2px dashed rgba(0,0,0,0.25);
  flex-shrink: 0;
}
.tf-promo--dark .tf-promo-code-wrap { border-color: rgba(255,255,255,0.2); }
.tf-promo-code-box {
  padding: 0.5rem 1.25rem;
  background: rgba(255,255,255,0.15);
}
.tf-promo--dark .tf-promo-code-box { background: rgba(255,255,255,0.05); }
.tf-promo--white .tf-promo-code-box,
.tf-promo--gray .tf-promo-code-box { background: rgba(0,0,0,0.05); }
.tf-promo-code-value {
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tf-foreground, #141414);
  font-family: monospace;
}
.tf-promo--dark .tf-promo-code-value { color: var(--tf-primary, #FACC15); }
.tf-promo-copy-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 1.25rem;
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
  border: none;
  cursor: pointer;
  font-size: 0.875rem;
  font-weight: 700;
  transition: background 0.15s;
  white-space: nowrap;
}
.tf-promo--yellow .tf-promo-copy-btn { background: var(--tf-foreground, #141414); color: var(--tf-primary, #FACC15); }
.tf-promo--dark .tf-promo-copy-btn { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); }
.tf-promo--white .tf-promo-copy-btn,
.tf-promo--gray .tf-promo-copy-btn { background: var(--tf-foreground, #141414); color: var(--tf-primary, #FACC15); }
.tf-promo-copy-btn:hover { opacity: 0.85; }
.tf-promo-icon-check { display: none; }
.tf-promo-copy-btn--done .tf-promo-icon-copy { display: none; }
.tf-promo-copy-btn--done .tf-promo-icon-check { display: block; }
.tf-promo-cta {
  display: inline-block;
  padding: 0.625rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  flex-shrink: 0;
  transition: opacity 0.2s;
}
.tf-promo--yellow .tf-promo-cta {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
}
.tf-promo--dark .tf-promo-cta {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-promo--white .tf-promo-cta,
.tf-promo--gray .tf-promo-cta {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-promo-cta:hover { opacity: 0.85; }
.tf-promo-expiry {
  text-align: center;
  font-size: 0.8125rem;
  margin: 0.75rem 0 0;
  opacity: 0.6;
}
.tf-promo--yellow .tf-promo-expiry { color: var(--tf-foreground, #141414); }
.tf-promo--dark .tf-promo-expiry { color: rgba(255,255,255,0.6); }
.tf-promo--white .tf-promo-expiry,
.tf-promo--gray .tf-promo-expiry { color: var(--tf-muted-foreground, #737373); }
/* END_SECTION:promo-code-banner */

/* START_SECTION:quote-block (INDEX:133) */
.tf-qb {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
}
.tf-qb--light {
  background: var(--tf-background, #ffffff);
}
.tf-qb--muted {
  background: var(--tf-muted, #f5f5f5);
}
.tf-qb--dark {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-qb--accent {
  background: var(--tf-primary, #FACC15);
}
.tf-qb .tf-container {
  max-width: 860px;
  margin: 0 auto;
}
.tf-qb-figure {
  margin: 0;
  text-align: center;
}
.tf-qb-mark {
  margin-bottom: 1.5rem;
}
.tf-qb--light .tf-qb-mark,
.tf-qb--muted .tf-qb-mark {
  color: var(--tf-primary, #FACC15);
}
.tf-qb--dark .tf-qb-mark {
  color: rgba(250, 204, 21, 0.6);
}
.tf-qb--accent .tf-qb-mark {
  color: rgba(20, 20, 20, 0.25);
}
.tf-qb-quote {
  margin: 0 0 2rem;
}
.tf-qb-text {
  font-size: clamp(1.375rem, 4vw, 2.25rem);
  font-weight: 700;
  line-height: 1.35;
  margin: 0;
  font-style: italic;
  letter-spacing: -0.01em;
}
.tf-qb--light .tf-qb-text,
.tf-qb--muted .tf-qb-text {
  color: var(--tf-foreground, #141414);
}
.tf-qb--dark .tf-qb-text {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-qb--accent .tf-qb-text {
  color: var(--tf-foreground, #141414);
}
.tf-qb-attribution {
  display: inline-flex;
  align-items: center;
  gap: 0.875rem;
  justify-content: center;
}
.tf-qb-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid rgba(255,255,255,0.3);
}
.tf-qb-attr-text {
  text-align: left;
  display: flex;
  flex-direction: column;
}
.tf-qb-name {
  font-size: 0.9375rem;
  font-weight: 700;
  display: block;
}
.tf-qb-role {
  font-size: 0.8125rem;
  display: block;
}
.tf-qb--light .tf-qb-name,
.tf-qb--muted .tf-qb-name {
  color: var(--tf-foreground, #141414);
}
.tf-qb--light .tf-qb-role,
.tf-qb--muted .tf-qb-role {
  color: var(--tf-muted-foreground, #737373);
}
.tf-qb--dark .tf-qb-name {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-qb--dark .tf-qb-role {
  color: rgba(255, 255, 255, 0.5);
}
.tf-qb--accent .tf-qb-name {
  color: var(--tf-foreground, #141414);
}
.tf-qb--accent .tf-qb-role {
  color: rgba(20, 20, 20, 0.6);
}
/* END_SECTION:quote-block */

/* START_SECTION:referral-program (INDEX:134) */
.tf-referral { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-referral { padding: 7rem 1rem; } }
.tf-referral--white { background: var(--tf-background, #ffffff); }
.tf-referral--gray { background: var(--tf-muted, #f5f5f5); }
.tf-referral--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-referral .tf-container { max-width: 1000px; margin: 0 auto; }
.tf-referral-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) { .tf-referral-inner { grid-template-columns: 1.2fr 1fr; gap: 4rem; } }
.tf-referral-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 1rem;
}
.tf-referral-title {
  font-size: clamp(1.625rem, 3vw, 2.5rem);
  font-weight: 900;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.75rem;
  line-height: 1.1;
}
.tf-referral--dark .tf-referral-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-referral-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0 0 1.5rem;
}
.tf-referral--dark .tf-referral-subtitle { color: rgba(255,255,255,0.6); }
.tf-referral-reward {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  background: var(--tf-primary, #FACC15);
  padding: 1.25rem 2rem;
  border-radius: 1.25rem;
  margin-bottom: 1.75rem;
}
.tf-referral-reward-val {
  font-size: 2.5rem;
  font-weight: 900;
  color: var(--tf-foreground, #141414);
  line-height: 1;
}
.tf-referral-reward-label {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  opacity: 0.75;
  margin-top: 0.25rem;
}
.tf-referral-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.25rem;
  background: var(--tf-secondary, #1a1a1a);
  color: var(--tf-secondary-foreground, #fafafa);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-referral--dark .tf-referral-cta {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-referral-cta:hover { opacity: 0.85; }
.tf-referral-fine {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0.875rem 0 0;
  line-height: 1.5;
}
.tf-referral--dark .tf-referral-fine { color: rgba(255,255,255,0.35); }
.tf-referral-steps {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.5rem;
  padding: 2rem;
}
.tf-referral--dark .tf-referral-steps {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-referral-steps-title {
  font-size: 1rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--tf-primary, #FACC15);
  margin: 0 0 1.5rem;
}
.tf-referral-step {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.tf-referral-step-connector {
  width: 2px;
  height: 1.25rem;
  background: rgba(250,204,21,0.3);
  margin: 0 0 0 16px;
}
.tf-referral-step-num {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.875rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-referral-step-body { flex: 1; padding-top: 0.375rem; }
.tf-referral-step-title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
}
.tf-referral--dark .tf-referral-step-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-referral-step-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.5;
}
.tf-referral--dark .tf-referral-step-desc { color: rgba(255,255,255,0.5); }
/* END_SECTION:referral-program */

/* START_SECTION:results-showcase (INDEX:136) */
.tf-results { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-results { padding: 7rem 1rem; } }
.tf-results--white { background: var(--tf-background, #ffffff); }
.tf-results--gray { background: var(--tf-muted, #f5f5f5); }
.tf-results--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-results .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-results-header { text-align: center; margin-bottom: 3rem; }
.tf-results-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-results-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-results--dark .tf-results-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-results-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-results--dark .tf-results-subtitle { color: rgba(255,255,255,0.6); }
.tf-results-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) { .tf-results-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .tf-results-grid { grid-template-columns: repeat(3, 1fr); } }
.tf-result-card {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.5rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-result-card:hover { transform: translateY(-3px); box-shadow: 0 12px 32px rgba(0,0,0,0.1); }
.tf-results--dark .tf-result-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-result-card--featured {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
}
.tf-result-glow {
  position: absolute;
  top: -60px;
  right: -40px;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, hsla(45,100%,51%,0.2) 0%, transparent 70%);
  pointer-events: none;
}
.tf-result-top {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.tf-result-logo {
  height: 36px;
  width: auto;
  max-width: 120px;
  object-fit: contain;
  display: block;
}
.tf-result-biz-name {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
}
.tf-results--dark .tf-result-biz-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-result-biz-type {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  background: rgba(0,0,0,0.05);
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
}
.tf-results--dark .tf-result-biz-type {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.5);
}
.tf-result-metrics {
  display: flex;
  gap: 1.25rem;
  flex-wrap: wrap;
}
.tf-result-metric { display: flex; flex-direction: column; gap: 0.2rem; }
.tf-result-metric-val {
  font-size: 1.75rem;
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-result-metric-label {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.3;
}
.tf-results--dark .tf-result-metric-label { color: rgba(255,255,255,0.5); }
.tf-result-quote {
  margin: 0;
  font-style: italic;
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  border-left: 3px solid var(--tf-primary, #FACC15);
  padding-left: 0.875rem;
}
.tf-result-quote p { margin: 0; }
.tf-results--dark .tf-result-quote { color: rgba(255,255,255,0.6); }
.tf-result-author {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-top: auto;
}
.tf-result-author-photo {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--tf-primary, #FACC15);
  flex-shrink: 0;
}
.tf-result-author-name {
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-results--dark .tf-result-author-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-result-author-role {
  display: block;
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-results--dark .tf-result-author-role { color: rgba(255,255,255,0.5); }
.tf-result-timeframe {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-results--dark .tf-result-timeframe { color: rgba(255,255,255,0.4); }
.tf-results-cta-wrap { text-align: center; margin-top: 3rem; }
.tf-results-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-results-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:results-showcase */

/* START_SECTION:results-ticker (INDEX:137) */
/* ─── SECTION WRAPPER ─────────────────────────────────────────── */
.tf-ticker-section {
  position: relative;
  background: #0A0A0A;
  padding: 32px 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* ─── OPTIONAL HEADER ────────────────────────────────────────── */
.tf-ticker-header {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 20px 4px;
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
}

.tf-ticker-header__pulse {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: tf-pulse-ring 2s ease-out infinite;
  flex-shrink: 0;
}

@keyframes tf-pulse-ring {
  0%   { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7); }
  70%  { box-shadow: 0 0 0 8px rgba(34, 197, 94, 0); }
  100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

.tf-ticker-header__text {
  color: rgba(255, 255, 255, 0.55);
}

/* ─── ROWS ───────────────────────────────────────────────────── */
.tf-ticker-row {
  width: 100%;
  overflow: hidden;
}

/* Pause entire row on hover */
.tf-ticker-row--left:hover  .tf-ticker-track--row1,
.tf-ticker-row--right:hover .tf-ticker-track--row2 {
  animation-play-state: paused;
}

/* Hide row 2 on mobile */
@media (max-width: 639px) {
  .tf-ticker-row--desktop-only {
    display: none;
  }
}

/* ─── TRACKS ─────────────────────────────────────────────────── */
.tf-ticker-track {
  display: flex;
  flex-wrap: nowrap;
  gap: 12px;
  width: max-content;
  will-change: transform;
  /* animation-duration is set inline via Liquid */
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.tf-ticker-track--row1 {
  animation-name: tf-scroll-left;
}

.tf-ticker-track--row2 {
  animation-name: tf-scroll-right;
}

/* Row 2 starts offset so it doesn't feel identical to row 1 */
.tf-ticker-track--row2 {
  /* The translateX start is handled by the keyframes below;
     an initial offset of -50% means we start at the midpoint
     of the duplicated content, giving instant visual variety */
  animation-delay: -15s;
}

@keyframes tf-scroll-left {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

@keyframes tf-scroll-right {
  0%   { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
  .tf-ticker-track {
    animation: none !important;
  }
}

/* ─── CHIPS ──────────────────────────────────────────────────── */
.tf-chip {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px 10px 12px;
  background: #141414;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-left: 3px solid #FFCC00;
  border-radius: 10px;
  white-space: nowrap;
  flex-shrink: 0;
  cursor: default;
  transition: background 0.2s ease, border-left-color 0.2s ease;
  min-width: 0;
}

.tf-chip:hover {
  background: #1c1c1c;
  border-left-color: #ffe033;
}

/* Alt chips: same shape, slightly different accent shade for row 2 */
.tf-chip--alt {
  border-left-color: #FFA500;
}

.tf-chip--alt:hover {
  border-left-color: #ffb733;
}

.tf-chip__icon {
  font-size: 20px;
  line-height: 1;
  flex-shrink: 0;
  /* Prevent emoji from being cut off on some renderers */
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
}

.tf-chip__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.tf-chip__result {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #FFFFFF;
  letter-spacing: -0.01em;
  line-height: 1.3;
}

.tf-chip__meta {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.45);
  line-height: 1.3;
}

.tf-chip__time {
  color: #22c55e;
  font-style: normal;
  font-weight: 600;
}

/* ─── FADE EDGES ─────────────────────────────────────────────── */
.tf-ticker-fade--left,
.tf-ticker-fade--right {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 80px;
  pointer-events: none;
  z-index: 2;
}

.tf-ticker-fade--left {
  left: 0;
  background: linear-gradient(to right, #0A0A0A 0%, transparent 100%);
}

.tf-ticker-fade--right {
  right: 0;
  background: linear-gradient(to left, #0A0A0A 0%, transparent 100%);
}

@media (max-width: 639px) {
  .tf-ticker-section {
    padding: 24px 0;
  }

  .tf-ticker-fade--left,
  .tf-ticker-fade--right {
    width: 40px;
  }

  .tf-chip {
    padding: 8px 12px 8px 10px;
  }

  .tf-chip__icon {
    font-size: 18px;
    width: 24px;
    height: 24px;
  }

  .tf-chip__result {
    font-size: 12px;
  }

  .tf-chip__meta {
    font-size: 10px;
  }
}
/* END_SECTION:results-ticker */

/* START_SECTION:review-aggregate (INDEX:138) */
.tf-review-agg {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-review-agg { padding: 7rem 1rem; }
}
.tf-review-agg--white { background: var(--tf-background, #ffffff); }
.tf-review-agg--gray { background: var(--tf-muted, #f5f5f5); }
.tf-review-agg--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-review-agg .tf-container {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}
.tf-review-agg-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
}
@media (min-width: 640px) {
  .tf-review-agg-inner {
    flex-direction: row;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
  }
}
.tf-review-agg-score {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}
.tf-review-agg-number {
  font-size: 5rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.04em;
  line-height: 1;
}
.tf-review-agg--dark .tf-review-agg-number { color: var(--tf-secondary-foreground, #fafafa); }
.tf-review-agg-stars {
  display: flex;
  gap: 3px;
  color: var(--tf-primary, #FACC15);
}
.tf-review-agg-count {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-review-agg--dark .tf-review-agg-count { color: var(--tf-secondary-foreground, #fafafa); }
.tf-review-agg-platform {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-review-agg--dark .tf-review-agg-platform { color: rgba(255,255,255,0.5); }
.tf-review-agg-bars {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
  max-width: 320px;
  width: 100%;
}
.tf-review-agg-bar-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.tf-review-agg-bar-label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  width: 10px;
  text-align: right;
  flex-shrink: 0;
}
.tf-review-agg--dark .tf-review-agg-bar-label { color: rgba(255,255,255,0.7); }
.tf-review-agg-bar-row svg { color: var(--tf-primary, #FACC15); flex-shrink: 0; }
.tf-review-agg-bar-track {
  flex: 1;
  height: 8px;
  background: rgba(0,0,0,0.08);
  border-radius: 9999px;
  overflow: hidden;
}
.tf-review-agg--dark .tf-review-agg-bar-track { background: rgba(255,255,255,0.1); }
.tf-review-agg-bar-fill {
  height: 100%;
  background: var(--tf-primary, #FACC15);
  border-radius: 9999px;
  transition: width 0.8s ease;
}
.tf-review-agg-bar-pct {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  width: 36px;
  text-align: right;
  flex-shrink: 0;
}
.tf-review-agg--dark .tf-review-agg-bar-pct { color: rgba(255,255,255,0.4); }
.tf-review-agg-platforms {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.tf-review-agg-platform-card {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  padding: 1rem 1.25rem;
  background: var(--tf-card, #fafafa);
  border-radius: 0.875rem;
  border: 1px solid rgba(0,0,0,0.07);
  min-width: 180px;
}
.tf-review-agg--dark .tf-review-agg-platform-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-review-agg-platform-logo {
  height: 20px;
  width: auto;
  max-width: 80px;
  object-fit: contain;
  display: block;
  opacity: 0.65;
  filter: grayscale(100%);
}
.tf-review-agg-platform-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-review-agg--dark .tf-review-agg-platform-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-review-agg-platform-score {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.tf-review-agg-platform-stars {
  display: flex;
  gap: 2px;
  color: var(--tf-primary, #FACC15);
}
.tf-review-agg-platform-score span {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-review-agg-cta {
  margin-top: 3rem;
}
.tf-review-agg-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-review-agg-btn:hover { background: hsl(45, 100%, 45%); transform: translateY(-2px); }
/* END_SECTION:review-aggregate */

/* START_SECTION:review-breakdown (INDEX:139) */
.tf-rb {
  padding: clamp(3rem, 6vw, 5rem) 1rem;
  background: var(--tf-muted, #f5f5f5);
}
.tf-rb .tf-container {
  max-width: 800px;
  margin: 0 auto;
}
.tf-rb-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-rb-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 3rem;
}
.tf-rb-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: center;
  background: var(--tf-card, #fafafa);
  border-radius: 1.5rem;
  padding: 2.5rem 2rem;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(0, 0, 0, 0.06);
}
@media (min-width: 540px) {
  .tf-rb-layout {
    grid-template-columns: auto 1fr;
    gap: 3rem;
  }
}
/* Score */
.tf-rb-score-inner {
  text-align: center;
  min-width: 140px;
}
.tf-rb-big-num {
  font-size: 4.5rem;
  font-weight: 900;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.04em;
  line-height: 1;
  margin-bottom: 0.5rem;
}
.tf-rb-big-stars {
  display: flex;
  justify-content: center;
  gap: 3px;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.625rem;
}
.tf-rb-total {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  margin: 0 0 0.5rem;
}
.tf-rb-verified {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #16a34a;
  margin: 0 0 0.375rem;
}
.tf-rb-source {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
/* Bars */
.tf-rb-bars {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.tf-rb-bar-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.tf-rb-bar-label {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  width: 24px;
  flex-shrink: 0;
  text-align: right;
}
.tf-rb-bar-track {
  flex: 1;
  height: 10px;
  background: rgba(0, 0, 0, 0.08);
  border-radius: 9999px;
  overflow: hidden;
}
.tf-rb-bar-fill {
  height: 100%;
  background: var(--tf-primary, #FACC15);
  border-radius: 9999px;
  transition: width 0.6s ease;
}
.tf-rb-bar-pct {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  width: 36px;
  flex-shrink: 0;
  text-align: right;
}
.tf-rb-cta-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  text-decoration: none;
  border-bottom: 2px solid var(--tf-primary, #FACC15);
  padding-bottom: 1px;
  transition: opacity 0.15s;
}
.tf-rb-cta-link:hover { opacity: 0.7; }
/* END_SECTION:review-breakdown */

/* START_SECTION:review-value-math (INDEX:140) */
/* ─── Review Value Math Section ─── */
.tf-rvm-section {
  background: #0A0A0A;
  color: #FFFFFF;
  font-family: 'Montserrat', sans-serif;
  padding: 80px 0 64px;
  overflow-x: hidden;
}

/* ── Header ── */
.tf-rvm-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.tf-rvm-overline {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #FFCC00;
  text-align: center;
  margin-bottom: 16px;
}

.tf-rvm-heading {
  font-size: clamp(28px, 5vw, 52px);
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
  margin: 0 0 20px;
  color: #FFFFFF;
}

.tf-rvm-heading span {
  color: #FFCC00;
}

.tf-rvm-subtitle {
  font-size: clamp(15px, 2vw, 18px);
  color: #A0A0A0;
  text-align: center;
  max-width: 620px;
  margin: 0 auto 60px;
  line-height: 1.6;
  font-style: italic;
}

/* ── Three Cards ── */
.tf-rvm-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-bottom: 56px;
}

@media (min-width: 900px) {
  .tf-rvm-cards {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }
}

.tf-rvm-card {
  background: #141414;
  border: 1px solid #2A2A2A;
  border-top: 3px solid #FFCC00;
  border-radius: 12px;
  padding: 32px 28px 36px;
  position: relative;
  overflow: hidden;
}

.tf-rvm-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 120px;
  background: radial-gradient(ellipse at 50% 0%, rgba(255, 204, 0, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

.tf-rvm-card-icon {
  font-size: 32px;
  margin-bottom: 16px;
  display: block;
  line-height: 1;
}

.tf-rvm-card-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin-bottom: 10px;
  display: block;
}

.tf-rvm-card-title {
  font-size: 20px;
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 24px;
  line-height: 1.2;
}

.tf-rvm-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 12px 0;
  border-bottom: 1px solid #222;
}

.tf-rvm-stat-row:last-of-type {
  border-bottom: none;
}

.tf-rvm-stat-label {
  font-size: 13px;
  color: #888;
  font-weight: 500;
  flex: 1;
  padding-right: 12px;
  line-height: 1.4;
}

.tf-rvm-stat-value {
  font-size: 18px;
  font-weight: 800;
  color: #FFFFFF;
  white-space: nowrap;
}

.tf-rvm-stat-value.tf-rvm-gold {
  color: #FFCC00;
}

.tf-rvm-stat-value.tf-rvm-big {
  font-size: 26px;
}

/* Card 1 — industry selector */
.tf-rvm-selector-wrap {
  margin-bottom: 20px;
}

.tf-rvm-select-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #555;
  display: block;
  margin-bottom: 8px;
}

.tf-rvm-select {
  width: 100%;
  background: #1E1E1E;
  border: 1px solid #333;
  border-radius: 8px;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  padding: 10px 14px;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23FFCC00' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
}

.tf-rvm-select:focus {
  outline: none;
  border-color: #FFCC00;
}

.tf-rvm-select option {
  background: #1A1A1A;
}

/* Card 3 — ROI highlight box */
.tf-rvm-roi-box {
  background: rgba(255, 204, 0, 0.08);
  border: 1px solid rgba(255, 204, 0, 0.25);
  border-radius: 8px;
  padding: 16px 18px;
  margin-top: 20px;
  text-align: center;
}

.tf-rvm-roi-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #888;
  display: block;
  margin-bottom: 6px;
}

.tf-rvm-roi-number {
  font-size: 40px;
  font-weight: 900;
  color: #FFCC00;
  line-height: 1;
  display: block;
  transition: opacity 0.3s;
}

.tf-rvm-roi-sub {
  font-size: 12px;
  color: #777;
  margin-top: 4px;
  display: block;
}

/* ── Industry Table ── */
.tf-rvm-table-section {
  margin-bottom: 64px;
}

.tf-rvm-table-heading {
  font-size: 22px;
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 24px;
  text-align: center;
}

.tf-rvm-table-heading span {
  color: #FFCC00;
}

.tf-rvm-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
  border: 1px solid #222;
}

.tf-rvm-table-scroll::-webkit-scrollbar {
  height: 4px;
}

.tf-rvm-table-scroll::-webkit-scrollbar-track {
  background: #1A1A1A;
}

.tf-rvm-table-scroll::-webkit-scrollbar-thumb {
  background: #FFCC00;
  border-radius: 2px;
}

.tf-rvm-table {
  width: 100%;
  min-width: 700px;
  border-collapse: collapse;
  font-size: 14px;
}

.tf-rvm-table thead tr {
  background: #141414;
  border-bottom: 2px solid #FFCC00;
}

.tf-rvm-table th {
  padding: 14px 18px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #FFCC00;
  white-space: nowrap;
}

.tf-rvm-table td {
  padding: 14px 18px;
  color: #D0D0D0;
  border-bottom: 1px solid #1E1E1E;
  white-space: nowrap;
}

.tf-rvm-table tbody tr {
  background: #111;
  transition: background 0.15s;
}

.tf-rvm-table tbody tr:nth-child(even) {
  background: #131313;
}

.tf-rvm-table tbody tr:hover {
  background: #1A1A1A;
}

.tf-rvm-table tbody tr:last-child td {
  border-bottom: none;
}

.tf-rvm-table td:first-child {
  font-weight: 700;
  color: #FFFFFF;
}

.tf-rvm-table td.tf-rvm-td-ltv {
  color: #FFCC00;
  font-weight: 700;
}

.tf-rvm-table td.tf-rvm-td-pack {
  color: #AAAAAA;
  font-size: 13px;
}

/* ── Closing Hammer ── */
.tf-rvm-hammer {
  text-align: center;
  padding: 20px 0 8px;
}

.tf-rvm-hammer-quote {
  font-size: clamp(22px, 4vw, 40px);
  font-weight: 900;
  line-height: 1.2;
  color: #FFFFFF;
  max-width: 820px;
  margin: 0 auto 36px;
}

.tf-rvm-hammer-quote span {
  color: #FFCC00;
}

.tf-rvm-cta-btn {
  display: inline-block;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 18px 44px;
  border-radius: 6px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
  box-shadow: 0 4px 24px rgba(255, 204, 0, 0.28);
  cursor: pointer;
  border: none;
}

.tf-rvm-cta-btn:hover {
  background: #FFD633;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.42);
}

.tf-rvm-cta-btn:active {
  transform: translateY(0);
}

/* ── Number animation ── */
.tf-rvm-num {
  display: inline-block;
  transition: opacity 0.2s;
}

.tf-rvm-animating .tf-rvm-num {
  opacity: 0.6;
}

/* ── Mobile tweaks ── */
@media (max-width: 600px) {
  .tf-rvm-section {
    padding: 56px 0 48px;
  }

  .tf-rvm-card {
    padding: 24px 20px 28px;
  }

  .tf-rvm-stat-value.tf-rvm-big {
    font-size: 22px;
  }

  .tf-rvm-roi-number {
    font-size: 34px;
  }

  .tf-rvm-hammer-quote {
    font-size: 22px;
  }

  .tf-rvm-cta-btn {
    font-size: 14px;
    padding: 16px 28px;
    width: 100%;
    max-width: 360px;
  }
}
/* END_SECTION:review-value-math */

/* START_SECTION:review-velocity (INDEX:141) */
/* ============================================================
   REVIEW VELOCITY — tf-rv-*
   ============================================================ */

.tf-rv {
  background: #0A0A0A;
  color: #fff;
  padding: 5rem 1.25rem 4.5rem;
  font-family: 'Montserrat', sans-serif;
  position: relative;
  overflow: hidden;
  text-align: center;
}

/* Subtle radial glow behind the big number */
.tf-rv::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 700px;
  height: 400px;
  background: radial-gradient(ellipse at center, rgba(255, 204, 0, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

.tf-rv-container {
  max-width: 860px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

/* --- Overline --- */
.tf-rv-overline {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin: 0 0 1.75rem;
}

/* --- Main counter --- */
.tf-rv-main-counter {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  margin-bottom: 0.75rem;
}

.tf-rv-big-number {
  font-size: clamp(4rem, 16vw, 8rem);
  font-weight: 900;
  line-height: 1;
  color: #FFCC00;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
  /* Prevent layout shift as number grows */
  min-width: 6ch;
  display: block;
  text-align: center;
}

.tf-rv-big-label {
  font-size: clamp(1.1rem, 3.5vw, 1.75rem);
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.01em;
}

/* "...across TapFive businesses in the last X seconds" */
.tf-rv-since-line {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.55);
  margin: 0 0 3.5rem;
  font-weight: 500;
}

.tf-rv-elapsed {
  color: rgba(255, 255, 255, 0.85);
  font-weight: 700;
}

/* --- Supporting stats row --- */
.tf-rv-stats-row {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
  margin-bottom: 3.5rem;
}

@media (min-width: 600px) {
  .tf-rv-stats-row {
    flex-direction: row;
    justify-content: center;
    gap: 0;
  }
}

.tf-rv-stat-divider {
  display: none;
}

@media (min-width: 600px) {
  .tf-rv-stat-divider {
    display: block;
    width: 1px;
    height: 56px;
    background: rgba(255, 255, 255, 0.15);
    flex-shrink: 0;
  }
}

.tf-rv-stat-item {
  flex: 1;
  padding: 0 1.5rem;
}

.tf-rv-stat-number {
  font-size: clamp(1.9rem, 5vw, 2.8rem);
  font-weight: 900;
  color: #fff;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  margin-bottom: 0.4rem;
}

/* The "$0" stat gets gold treatment */
.tf-rv-stat-item:last-child .tf-rv-stat-number {
  color: #FFCC00;
}

.tf-rv-stat-label {
  font-size: 0.78rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.55);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.4;
}

/* --- Scrolling feed --- */
.tf-rv-feed-wrap {
  position: relative;
  height: 220px;
  overflow: hidden;
  margin-bottom: 3.5rem;
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 600px) {
  .tf-rv-feed-wrap {
    height: 260px;
  }
}

/* Fade masks at top and bottom */
.tf-rv-feed-mask {
  position: absolute;
  left: 0;
  right: 0;
  height: 60px;
  z-index: 2;
  pointer-events: none;
}

.tf-rv-feed-mask--top {
  top: 0;
  background: linear-gradient(to bottom, #0A0A0A 0%, transparent 100%);
}

.tf-rv-feed-mask--bottom {
  bottom: 0;
  background: linear-gradient(to top, #0A0A0A 0%, transparent 100%);
}

.tf-rv-feed-track {
  height: 100%;
  overflow: hidden;
}

/* Each list item is ~44px tall; 10 items = 440px; animation scrolls one set */
.tf-rv-feed-list {
  list-style: none;
  margin: 0;
  padding: 0;
  animation: tf-rv-scroll 28s linear infinite;
  will-change: transform;
}

.tf-rv-feed-list:hover {
  animation-play-state: paused;
}

@keyframes tf-rv-scroll {
  0%   { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}

.tf-rv-feed-item {
  font-size: 0.82rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.72);
  padding: 0.65rem 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  text-align: left;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tf-rv-stars {
  color: #FFCC00;
  margin-right: 0.4rem;
  letter-spacing: -0.05em;
}

/* --- Hammer line --- */
.tf-rv-hammer {
  font-size: clamp(1rem, 3vw, 1.35rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
  max-width: 640px;
  margin: 0 auto 2.5rem;
  font-style: italic;
}

/* --- CTA --- */
.tf-rv-cta-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.85rem;
}

.tf-rv-cta-btn {
  display: inline-block;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 1rem 2.5rem;
  border-radius: 4px;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
  box-shadow: 0 4px 20px rgba(255, 204, 0, 0.35);
}

.tf-rv-cta-btn:hover,
.tf-rv-cta-btn:focus-visible {
  background: #ffd633;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.5);
  outline: none;
}

.tf-rv-cta-btn:active {
  transform: translateY(0);
}

.tf-rv-cta-sub {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.4);
  font-weight: 500;
  margin: 0;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .tf-rv-feed-list {
    animation: none;
  }
  .tf-rv-big-number,
  .tf-rv-stat-number {
    transition: none;
  }
}
/* END_SECTION:review-velocity */

/* START_SECTION:review-wall (INDEX:142) */
.tf-rwall { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-rwall { padding: 7rem 1rem; } }
.tf-rwall--white { background: var(--tf-background, #ffffff); }
.tf-rwall--gray { background: var(--tf-muted, #f5f5f5); }
.tf-rwall--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-rwall .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-rwall-header { text-align: center; margin-bottom: 2.5rem; }
.tf-rwall-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-rwall-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-rwall--dark .tf-rwall-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-rwall-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-rwall--dark .tf-rwall-subtitle { color: rgba(255,255,255,0.6); }
.tf-rwall-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin-bottom: 2rem;
}
.tf-rwall-filter {
  padding: 0.375rem 1rem;
  border: 1.5px solid rgba(0,0,0,0.12);
  border-radius: 9999px;
  background: transparent;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.tf-rwall--dark .tf-rwall-filter { border-color: rgba(255,255,255,0.12); color: rgba(255,255,255,0.5); }
.tf-rwall-filter:hover { border-color: rgba(0,0,0,0.25); color: var(--tf-foreground, #141414); }
.tf-rwall--dark .tf-rwall-filter:hover { border-color: rgba(255,255,255,0.3); color: rgba(255,255,255,0.85); }
.tf-rwall-filter--active {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-rwall-filter--active:hover {
  background: hsl(45,100%,45%);
  border-color: hsl(45,100%,45%);
  color: var(--tf-foreground, #141414);
}
.tf-rwall-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 500px) { .tf-rwall-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-rwall-grid { grid-template-columns: repeat(3, 1fr); } }
.tf-rwall-card {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.125rem;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-rwall-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,0.08); }
.tf-rwall--dark .tf-rwall-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.07);
}
.tf-rwall-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.tf-rwall-stars { display: flex; gap: 1px; color: var(--tf-primary, #FACC15); }
.tf-rwall-platform {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.1);
  padding: 0.15rem 0.5rem;
  border-radius: 9999px;
}
.tf-rwall-text {
  font-size: 0.875rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.tf-rwall--dark .tf-rwall-text { color: rgba(255,255,255,0.8); }
.tf-rwall-author {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-top: auto;
}
.tf-rwall-initials {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.8125rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-rwall-author-info { display: flex; flex-direction: column; gap: 0.1rem; flex: 1; }
.tf-rwall-name {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-rwall--dark .tf-rwall-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-rwall-date {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-rwall--dark .tf-rwall-date { color: rgba(255,255,255,0.4); }
.tf-rwall-verified {
  color: #22c55e;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.tf-rwall-summary { text-align: center; margin-top: 3rem; }
.tf-rwall-overall {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 9999px;
  padding: 0.75rem 1.5rem;
}
.tf-rwall--dark .tf-rwall-overall {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.07);
}
.tf-rwall-overall-score {
  font-size: 1.5rem;
  font-weight: 900;
  color: var(--tf-foreground, #141414);
}
.tf-rwall--dark .tf-rwall-overall-score { color: var(--tf-secondary-foreground, #fafafa); }
.tf-rwall-overall-stars { display: flex; gap: 2px; color: var(--tf-primary, #FACC15); }
.tf-rwall-count {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-rwall--dark .tf-rwall-count { color: rgba(255,255,255,0.5); }
/* END_SECTION:review-wall */

/* START_SECTION:roi-calculator (INDEX:145) */
.tf-roi {
  padding: 4rem 1rem;
  background: var(--tf-secondary, #1a1a1a);
}
@media (min-width: 768px) {
  .tf-roi {
    padding: 6rem 1rem;
  }
}
.tf-roi .tf-container {
  max-width: 800px;
  margin: 0 auto;
}
.tf-roi .tf-section-header {
  text-align: center;
  margin-bottom: 2.5rem;
}
.tf-roi .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-secondary-foreground, #fafafa);
  margin-bottom: 0.75rem;
}
.tf-roi .tf-section-subtitle {
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.125rem;
}
.tf-roi-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  padding: 2rem;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}
@media (min-width: 768px) {
  .tf-roi-card {
    padding: 2.5rem;
  }
}
.tf-roi-inputs {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
.tf-roi-label {
  display: block;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
  font-size: 0.9375rem;
}
.tf-roi-input-wrap {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.tf-roi-range {
  flex: 1;
  accent-color: var(--tf-primary, #FACC15);
  height: 6px;
  cursor: pointer;
}
.tf-roi-value {
  min-width: 4rem;
  text-align: right;
  font-weight: 700;
  font-size: 1.125rem;
  color: var(--tf-primary, #FACC15);
}
.tf-roi-results {
  background: var(--tf-secondary, #1a1a1a);
  border-radius: 0.75rem;
  padding: 1.5rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.tf-roi-result-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.tf-roi-result-label {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.6);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.tf-roi-result-value {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-roi-highlight .tf-roi-result-value {
  color: var(--tf-primary, #FACC15);
  font-size: 1.75rem;
}
.tf-roi-cta {
  text-align: center;
}
.tf-roi-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1.0625rem;
  padding: 1rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.4);
}
.tf-roi-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-roi-disclaimer {
  margin-top: 0.75rem;
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
}
/* END_SECTION:roi-calculator */

/* START_SECTION:roi-proof (INDEX:146) */
/* ─────────────────────────────────────────────
   ROI PROOF SECTION  ·  tapfive-theme
   Prefix: tf-roi-*
───────────────────────────────────────────── */

/* ── Reset / base ── */
.tf-roi *,
.tf-roi *::before,
.tf-roi *::after {
  box-sizing: border-box;
}

/* ── Section wrapper ── */
.tf-roi {
  background: #0A0A0A;
  color: #FAFAFA;
  padding: 5rem 1.25rem 4rem;
  font-family: 'Montserrat', sans-serif;
  overflow: hidden;
}

/* ── Container ── */
.tf-roi-container {
  max-width: 1140px;
  margin: 0 auto;
}

/* ── HEADER ── */
.tf-roi-header {
  text-align: center;
  margin-bottom: 3.5rem;
}

.tf-roi-overline {
  display: inline-block;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #FFCC00;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.tf-roi-title {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin: 0 0 1rem;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

.tf-roi-subtitle {
  font-size: 1.0625rem;
  line-height: 1.6;
  color: rgba(255,255,255,0.6);
  max-width: 580px;
  margin: 0 auto;
}

/* ── TWO COLUMNS ── */
.tf-roi-columns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  margin-bottom: 4rem;
}

@media (min-width: 960px) {
  .tf-roi-columns {
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: start;
  }
}

/* ── Column heading ── */
.tf-roi-col-heading {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 1.25rem;
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 1.75rem;
  letter-spacing: -0.01em;
}

.tf-roi-col-icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

/* ──────────────────────────────────────────── */
/*  LEFT COLUMN                                */
/* ──────────────────────────────────────────── */

.tf-roi-left {
  background: #111111;
  border: 1px solid #222222;
  border-radius: 14px;
  padding: 2rem 1.75rem;
}

/* Gap list */
.tf-roi-gap-list {
  list-style: none;
  margin: 0 0 1.75rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.tf-roi-gap-item {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.375rem 0.625rem;
  font-size: 0.9375rem;
}

.tf-roi-gap-item--calc {
  padding-left: 1rem;
  border-left: 2px solid #222;
}

.tf-roi-gap-label {
  color: rgba(255,255,255,0.55);
  font-size: 0.875rem;
  flex-shrink: 0;
  min-width: 140px;
}

.tf-roi-gap-val {
  font-weight: 700;
  font-size: 0.9375rem;
}

.tf-roi-gap-val--good {
  color: #4ADE80;
}

.tf-roi-gap-val--bad {
  color: rgba(255,255,255,0.4);
}

.tf-roi-gap-val--warn {
  color: #FB923C;
}

.tf-roi-gap-note {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.35);
  font-style: italic;
  flex-basis: 100%;
  padding-left: 0;
}

.tf-roi-gap-divider {
  height: 1px;
  background: #222;
  border: none;
  margin: 0.25rem 0;
}

/* Big hammer stat */
.tf-roi-gap-hammer {
  background: linear-gradient(135deg, #1a1400 0%, #1f1800 100%);
  border: 1px solid rgba(255,204,0,0.25);
  border-radius: 10px;
  padding: 1.25rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 1.125rem;
  margin-bottom: 2rem;
}

.tf-roi-gap-number {
  font-size: clamp(2.5rem, 6vw, 3.75rem);
  font-weight: 900;
  color: #FFCC00;
  line-height: 1;
  letter-spacing: -0.04em;
  flex-shrink: 0;
}

.tf-roi-gap-hammer-text {
  font-size: 0.9375rem;
  font-weight: 700;
  color: rgba(255,255,255,0.85);
  line-height: 1.45;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* ── Gap chart ── */
.tf-roi-chart {
  background: #0d0d0d;
  border: 1px solid #1e1e1e;
  border-radius: 10px;
  padding: 1.25rem 1.25rem 0.75rem;
}

.tf-roi-chart-title {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.35);
  margin-bottom: 1rem;
}

.tf-roi-chart-bars {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  margin-bottom: 0.625rem;
}

.tf-roi-chart-row {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.tf-roi-chart-label {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.5);
  font-weight: 600;
}

.tf-roi-chart-track {
  width: 100%;
  height: 18px;
  background: #1a1a1a;
  border-radius: 4px;
  overflow: hidden;
}

.tf-roi-chart-fill {
  height: 100%;
  width: 0%;
  border-radius: 4px;
  transition: width 1.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.tf-roi-chart-fill--them {
  background: linear-gradient(90deg, #FFCC00 0%, #FFE066 100%);
}

.tf-roi-chart-fill--you {
  background: linear-gradient(90deg, #444 0%, #555 100%);
}

/* Animated state */
.tf-roi-chart--animated .tf-roi-chart-fill--them {
  width: 92%;
}

.tf-roi-chart--animated .tf-roi-chart-fill--you {
  width: 9%;
}

.tf-roi-chart-axis {
  display: flex;
  justify-content: space-between;
  padding-top: 0.5rem;
  border-top: 1px solid #1e1e1e;
}

.tf-roi-chart-axis span {
  font-size: 0.6875rem;
  color: rgba(255,255,255,0.3);
}

/* ──────────────────────────────────────────── */
/*  RIGHT COLUMN                               */
/* ──────────────────────────────────────────── */

.tf-roi-right {
  background: #111111;
  border: 1px solid #222222;
  border-radius: 14px;
  padding: 2rem 1.75rem;
}

/* ── Tabs ── */
.tf-roi-tabs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.375rem;
  margin-bottom: 1.75rem;
  background: #0A0A0A;
  border-radius: 8px;
  padding: 0.3125rem;
}

.tf-roi-tab {
  padding: 0.5rem 0.375rem;
  font-size: 0.75rem;
  font-weight: 700;
  font-family: 'Montserrat', sans-serif;
  letter-spacing: 0.02em;
  color: rgba(255,255,255,0.45);
  background: transparent;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
  text-align: center;
  line-height: 1.3;
}

.tf-roi-tab:hover {
  color: rgba(255,255,255,0.75);
  background: rgba(255,255,255,0.06);
}

.tf-roi-tab--active {
  background: #FFCC00;
  color: #0A0A0A;
}

.tf-roi-tab--active:hover {
  background: #FFD633;
  color: #0A0A0A;
}

/* ── Product rec badge ── */
.tf-roi-product-rec {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(255,204,0,0.07);
  border: 1px solid rgba(255,204,0,0.2);
  border-radius: 6px;
  padding: 0.625rem 0.875rem;
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.65);
  margin-bottom: 1.25rem;
}

.tf-roi-product-rec strong {
  color: #FFCC00;
  font-weight: 700;
}

/* ── Math breakdown ── */
.tf-roi-math {
  margin: 0 0 1.25rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.tf-roi-math-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.625rem 0;
  border-bottom: 1px solid #1a1a1a;
  font-size: 0.875rem;
}

.tf-roi-math-row:first-child {
  padding-top: 0;
}

.tf-roi-math-row dt {
  color: rgba(255,255,255,0.5);
  font-weight: 500;
  flex-shrink: 0;
}

.tf-roi-math-row dd {
  color: rgba(255,255,255,0.85);
  font-weight: 600;
  margin: 0;
  text-align: right;
  line-height: 1.4;
}

.tf-roi-math-note {
  display: block;
  font-size: 0.7rem;
  font-weight: 400;
  color: rgba(255,255,255,0.35);
  margin-top: 2px;
}

.tf-roi-math-row--result {
  border-bottom-color: rgba(255,204,0,0.15);
  padding-bottom: 0.75rem;
  margin-bottom: 0;
}

.tf-roi-math-row--result dt {
  color: rgba(255,255,255,0.7);
  font-weight: 700;
}

.tf-roi-math-result {
  color: #4ADE80 !important;
  font-size: 1.125rem !important;
  font-weight: 800 !important;
}

.tf-roi-math-row--roi {
  background: rgba(255,204,0,0.06);
  border-radius: 6px;
  padding: 0.75rem 0.75rem;
  border: 1px solid rgba(255,204,0,0.15);
  margin-top: 0.5rem;
}

.tf-roi-math-row--roi dt {
  color: rgba(255,204,0,0.8);
  font-size: 0.875rem;
  font-weight: 700;
}

.tf-roi-math-roi {
  font-size: 1.625rem !important;
  font-weight: 900 !important;
  color: #FFCC00 !important;
  letter-spacing: -0.02em;
}

/* ── Punchline ── */
.tf-roi-punchline {
  font-size: 0.875rem;
  font-style: italic;
  color: rgba(255,255,255,0.45);
  border-left: 3px solid rgba(255,204,0,0.3);
  padding-left: 0.875rem;
  margin: 0;
  line-height: 1.55;
}

/* ── Panel visibility ── */
.tf-roi-panel {
  display: block;
}

.tf-roi-panel[hidden] {
  display: none;
}

/* ──────────────────────────────────────────── */
/*  CLOSING HAMMER                             */
/* ──────────────────────────────────────────── */

.tf-roi-hammer {
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
}

.tf-roi-hammer-list {
  list-style: none;
  margin: 0 0 2.5rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  background: #111111;
  border: 1px solid #222;
  border-radius: 14px;
  overflow: hidden;
}

.tf-roi-hammer-list li {
  font-size: clamp(1rem, 2.5vw, 1.1875rem);
  color: rgba(255,255,255,0.75);
  font-weight: 500;
  line-height: 1.5;
  padding: 1.125rem 2rem;
  border-bottom: 1px solid #1a1a1a;
}

.tf-roi-hammer-list li:last-child {
  border-bottom: none;
}

.tf-roi-hammer-list li strong {
  color: #FFFFFF;
  font-weight: 800;
}

.tf-roi-hammer-kicker {
  font-size: clamp(1.625rem, 4vw, 2.5rem);
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.2;
  color: #FFCC00;
  margin: 0 0 2rem;
  text-transform: uppercase;
}

/* ── CTA ── */
.tf-roi-cta {
  display: block;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  padding: 1.125rem 2rem;
  border-radius: 8px;
  transition: background 0.2s, transform 0.15s;
}

.tf-roi-cta:hover {
  background: #FFD633;
  transform: translateY(-2px);
}

.tf-roi-cta:active {
  transform: translateY(0);
}

@media (min-width: 640px) {
  .tf-roi-cta {
    display: inline-block;
    width: auto;
  }
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  .tf-roi-chart-fill {
    transition: none;
  }
  .tf-roi-cta {
    transition: none;
  }
}
/* END_SECTION:roi-proof */

/* START_SECTION:scrolling-logos (INDEX:148) */
.tf-scroll-logos {
  padding: 2.5rem 0;
  overflow: hidden;
}
.tf-scroll-logos--white { background: var(--tf-background, #ffffff); }
.tf-scroll-logos--gray { background: var(--tf-muted, #f5f5f5); }
.tf-scroll-logos--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-scroll-logos-label {
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-muted-foreground, #737373);
  margin-bottom: 1.75rem;
  padding: 0 1rem;
}
.tf-scroll-logos--dark .tf-scroll-logos-label {
  color: rgba(255,255,255,0.35);
}
.tf-scroll-logos-viewport {
  position: relative;
  overflow: hidden;
}
.tf-scroll-logos-viewport::before,
.tf-scroll-logos-viewport::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 120px;
  z-index: 2;
  pointer-events: none;
}
.tf-scroll-logos--white .tf-scroll-logos-viewport::before,
.tf-scroll-logos--white .tf-scroll-logos-viewport::after {
  background: linear-gradient(to right, #ffffff, transparent);
}
.tf-scroll-logos--gray .tf-scroll-logos-viewport::before,
.tf-scroll-logos--gray .tf-scroll-logos-viewport::after {
  background: linear-gradient(to right, #f5f5f5, transparent);
}
.tf-scroll-logos--dark .tf-scroll-logos-viewport::before,
.tf-scroll-logos--dark .tf-scroll-logos-viewport::after {
  background: linear-gradient(to right, #1a1a1a, transparent);
}
.tf-scroll-logos-viewport::before { left: 0; }
.tf-scroll-logos-viewport::after { right: 0; transform: scaleX(-1); }
.tf-scroll-logos-track {
  display: flex;
  align-items: center;
  width: fit-content;
  animation: tf-scroll-ticker linear infinite;
  gap: 0;
}
@keyframes tf-scroll-ticker {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .tf-scroll-logos-track {
    animation-play-state: paused;
  }
}
.tf-scroll-logos-track:hover {
  animation-play-state: paused;
}
.tf-scroll-logos-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 2.5rem;
  flex-shrink: 0;
}
.tf-scroll-logos-img {
  height: 32px;
  width: auto;
  max-width: 120px;
  object-fit: contain;
  opacity: 0.4;
  filter: grayscale(100%);
  transition: opacity 0.2s, filter 0.2s;
  display: block;
}
.tf-scroll-logos--dark .tf-scroll-logos-img {
  opacity: 0.35;
  filter: grayscale(100%) brightness(10);
}
.tf-scroll-logos-item:hover .tf-scroll-logos-img {
  opacity: 0.75;
  filter: grayscale(0%);
}
.tf-scroll-logos-text {
  font-size: 1.25rem;
  font-weight: 800;
  font-style: italic;
  letter-spacing: -0.03em;
  color: var(--tf-muted-foreground, #737373);
  opacity: 0.4;
  white-space: nowrap;
}
.tf-scroll-logos--dark .tf-scroll-logos-text {
  color: rgba(255,255,255,0.35);
}
/* END_SECTION:scrolling-logos */

/* START_SECTION:setup-60-seconds (INDEX:150) */
/* ══════════════════════════════════════════════════════
   SETUP IN 60 SECONDS — TapFive section
   Prefix: tf-s60-
   ══════════════════════════════════════════════════════ */

.tf-s60 {
  background: #0A0A0A;
  padding: 5rem 1.25rem 5.5rem;
  font-family: 'Montserrat', sans-serif;
  color: #fff;
  overflow: hidden;
}
@media (min-width: 900px) {
  .tf-s60 { padding: 7rem 2rem 7.5rem; }
}

.tf-s60-container {
  max-width: 1120px;
  margin: 0 auto;
  width: 100%;
}

/* ── HEADER ── */
.tf-s60-header {
  text-align: center;
  margin-bottom: 4rem;
}

.tf-s60-overline {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  border: 1px solid rgba(255, 204, 0, 0.35);
  padding: 0.3rem 1rem;
  border-radius: 9999px;
  margin-bottom: 1.25rem;
}

.tf-s60-title {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 900;
  line-height: 1.18;
  color: #fff;
  margin: 0 0 1rem;
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}

.tf-s60-subtitle {
  font-size: clamp(1rem, 2vw, 1.125rem);
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.65;
  max-width: 620px;
  margin: 0 auto;
}

/* ── STEPS ── */
.tf-s60-steps {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 3rem;
}
@media (min-width: 900px) {
  .tf-s60-steps {
    flex-direction: row;
    align-items: stretch;
    gap: 0;
  }
}

/* Each step + its connector, wrapped */
.tf-s60-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
}
@media (min-width: 900px) {
  .tf-s60-step {
    flex-direction: row;
    align-items: stretch;
  }
}

/* Card */
.tf-s60-step-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 1.25rem;
  padding: 1.75rem 1.5rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  flex: 1;
  transition: border-color 0.2s, background 0.2s;
  position: relative;
  width: 100%;
}
.tf-s60-step-card:hover {
  border-color: rgba(255, 204, 0, 0.25);
  background: rgba(255, 204, 0, 0.04);
}
.tf-s60-step-card--highlight {
  background: rgba(255, 204, 0, 0.07);
  border-color: rgba(255, 204, 0, 0.3);
}

/* Top row: icon + badge */
.tf-s60-step-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}

.tf-s60-step-icon {
  color: #FFCC00;
  display: flex;
  align-items: center;
}

.tf-s60-step-badge {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #0A0A0A;
  background: #FFCC00;
  padding: 0.25rem 0.65rem;
  border-radius: 9999px;
  white-space: nowrap;
}

/* Step number */
.tf-s60-step-num {
  font-size: 3.5rem;
  font-weight: 900;
  color: rgba(255, 204, 0, 0.12);
  line-height: 1;
  margin-bottom: -0.35rem;
  user-select: none;
}

.tf-s60-step-title {
  font-size: 1.175rem;
  font-weight: 800;
  color: #fff;
  margin: 0;
  line-height: 1.3;
}

.tf-s60-step-body {
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.65;
  margin: 0;
}

.tf-s60-step-hint {
  font-size: 0.8125rem;
  color: rgba(255, 204, 0, 0.7);
  font-style: italic;
  line-height: 1.55;
  margin: 0.25rem 0 0;
}

/* Connector between steps */
.tf-s60-connector {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0.75rem 0;
  position: relative;
}
@media (min-width: 900px) {
  .tf-s60-connector {
    flex-direction: column;
    padding: 0 0.5rem;
    min-width: 2.5rem;
  }
}

.tf-s60-connector-line {
  width: 2px;
  height: 2.5rem;
  background: linear-gradient(to bottom, rgba(255,204,0,0.15), rgba(255,204,0,0.5), rgba(255,204,0,0.15));
  border-radius: 9999px;
}
@media (min-width: 900px) {
  .tf-s60-connector-line {
    width: 2.5rem;
    height: 2px;
    background: linear-gradient(to right, rgba(255,204,0,0.15), rgba(255,204,0,0.5), rgba(255,204,0,0.15));
  }
}

.tf-s60-connector-arrow {
  color: #FFCC00;
  transform: rotate(90deg);
}
@media (min-width: 900px) {
  .tf-s60-connector-arrow {
    transform: rotate(0deg);
  }
}

/* ── TIMELINE BAR ── */
.tf-s60-timeline {
  margin-bottom: 4rem;
}

.tf-s60-timeline-inner {
  display: flex;
  align-items: center;
  gap: 0;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 1rem;
  overflow: hidden;
  flex-wrap: wrap;
}

.tf-s60-timeline-segment {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0.9rem 1.25rem;
  border-right: 1px solid rgba(255, 255, 255, 0.07);
  overflow: hidden;
}
.tf-s60-timeline-segment:last-of-type {
  border-right: none;
}

/* Width proportional to time (10s/60s, 30s/60s, 20s/60s) */
.tf-s60-seg--1 { flex: 10; min-width: 0; }
.tf-s60-seg--2 { flex: 30; min-width: 0; }
.tf-s60-seg--3 { flex: 20; min-width: 0; }

.tf-s60-timeline-fill {
  position: absolute;
  inset: 0;
  opacity: 0.12;
}
.tf-s60-seg--1 .tf-s60-timeline-fill { background: #FFCC00; }
.tf-s60-seg--2 .tf-s60-timeline-fill { background: #FFCC00; }
.tf-s60-seg--3 .tf-s60-timeline-fill { background: #FFCC00; }

.tf-s60-timeline-label {
  position: relative;
  font-size: 0.8125rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.7);
  white-space: nowrap;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}
.tf-s60-timeline-label em {
  font-style: normal;
  color: #FFCC00;
  font-size: 0.75rem;
}

.tf-s60-timeline-total {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.9rem 1.25rem;
  font-size: 0.9rem;
  font-weight: 800;
  color: #FFCC00;
  white-space: nowrap;
  margin-left: auto;
  border-left: 1px solid rgba(255, 204, 0, 0.2);
  flex-shrink: 0;
}

@media (max-width: 599px) {
  .tf-s60-timeline-inner { flex-direction: column; align-items: stretch; }
  .tf-s60-seg--1,
  .tf-s60-seg--2,
  .tf-s60-seg--3 { flex: none; }
  .tf-s60-timeline-segment { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07); }
  .tf-s60-timeline-total { border-left: none; border-top: 1px solid rgba(255,204,0,0.2); }
}

/* ── COMPARISON ── */
.tf-s60-compare {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-bottom: 4rem;
  align-items: stretch;
}
@media (min-width: 768px) {
  .tf-s60-compare {
    flex-direction: row;
    align-items: center;
    gap: 2rem;
  }
}

.tf-s60-compare-col {
  flex: 1;
  border-radius: 1.25rem;
  padding: 1.75rem 1.5rem 2rem;
}

.tf-s60-compare-col--them {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.tf-s60-compare-col--us {
  background: rgba(255, 204, 0, 0.07);
  border: 1px solid rgba(255, 204, 0, 0.25);
}

.tf-s60-compare-header {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 1.25rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4;
}

.tf-s60-compare-col--them .tf-s60-compare-header {
  color: rgba(255, 255, 255, 0.45);
}
.tf-s60-compare-col--them .tf-s60-compare-header svg {
  color: rgba(255, 80, 80, 0.7);
  flex-shrink: 0;
}

.tf-s60-compare-col--us .tf-s60-compare-header {
  color: #FFCC00;
}
.tf-s60-compare-col--us .tf-s60-compare-header svg {
  color: #FFCC00;
  flex-shrink: 0;
}

.tf-s60-compare-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.tf-s60-compare-list li {
  font-size: 0.9rem;
  line-height: 1.45;
  padding-left: 1.5rem;
  position: relative;
}

.tf-s60-compare-list--pain li {
  color: rgba(255, 255, 255, 0.45);
}
.tf-s60-compare-list--pain li::before {
  content: '→';
  position: absolute;
  left: 0;
  color: rgba(255, 80, 80, 0.5);
  font-size: 0.8rem;
}

.tf-s60-compare-list--easy li {
  color: rgba(255, 255, 255, 0.9);
  font-weight: 700;
  font-size: 1.0625rem;
}
.tf-s60-compare-list--easy li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: #FFCC00;
  font-size: 0.9rem;
  font-weight: 900;
}

.tf-s60-compare-done {
  font-size: 2rem;
  font-weight: 900;
  color: #FFCC00;
  margin-bottom: 0.75rem;
}

.tf-s60-compare-meta {
  font-size: 0.875rem;
  border-radius: 0.5rem;
  padding: 0.5rem 0.75rem;
  line-height: 1.5;
}

.tf-s60-compare-meta--bad {
  background: rgba(255, 80, 80, 0.08);
  border: 1px solid rgba(255, 80, 80, 0.15);
  color: rgba(255, 255, 255, 0.5);
}
.tf-s60-compare-meta--bad strong { color: rgba(255, 80, 80, 0.8); }

.tf-s60-compare-meta--good {
  background: rgba(255, 204, 0, 0.1);
  border: 1px solid rgba(255, 204, 0, 0.2);
  color: rgba(255, 255, 255, 0.8);
}
.tf-s60-compare-meta--good strong { color: #FFCC00; }

.tf-s60-compare-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-s60-compare-divider span {
  font-size: 1.25rem;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.2);
  font-style: italic;
}
@media (min-width: 768px) {
  .tf-s60-compare-divider {
    flex-direction: column;
    width: 2.5rem;
  }
}

/* ── BIG STATEMENT ── */
.tf-s60-statement {
  background: rgba(255, 204, 0, 0.06);
  border: 1px solid rgba(255, 204, 0, 0.2);
  border-left: 4px solid #FFCC00;
  border-radius: 0 1rem 1rem 0;
  padding: 2rem 2rem 2rem 2.25rem;
  margin: 0 0 4rem;
  font-size: clamp(1rem, 2vw, 1.125rem);
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.65;
  position: relative;
}

.tf-s60-statement-mark {
  font-size: 3rem;
  line-height: 0;
  vertical-align: -0.6rem;
  color: rgba(255, 204, 0, 0.3);
  font-family: Georgia, serif;
  font-weight: 400;
  margin-right: 0.15em;
}
.tf-s60-statement-mark--close {
  margin-right: 0;
  margin-left: 0.15em;
}

/* ── FAQS ── */
.tf-s60-faqs {
  margin-bottom: 4rem;
}

.tf-s60-faqs-title {
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgba(255, 255, 255, 0.4);
  margin: 0 0 1.25rem;
}

.tf-s60-faq {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.tf-s60-faq:first-of-type { border-top: 1px solid rgba(255, 255, 255, 0.08); }

.tf-s60-faq-q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0.25rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  cursor: pointer;
  list-style: none;
  user-select: none;
  transition: color 0.15s;
}
.tf-s60-faq-q::-webkit-details-marker { display: none; }
.tf-s60-faq-q::marker { display: none; }
.tf-s60-faq-q:hover { color: #FFCC00; }

.tf-s60-faq-chevron {
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.35);
  transition: transform 0.25s ease, color 0.15s;
}
.tf-s60-faq[open] .tf-s60-faq-chevron {
  transform: rotate(180deg);
  color: #FFCC00;
}
.tf-s60-faq[open] .tf-s60-faq-q { color: #FFCC00; }

.tf-s60-faq-a {
  padding: 0 0.25rem 1.5rem;
}
.tf-s60-faq-a p {
  margin: 0;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.7;
}
.tf-s60-faq-a p em {
  font-style: italic;
  color: rgba(255, 204, 0, 0.8);
}

/* ── FINAL CTA ── */
.tf-s60-cta-wrap {
  text-align: center;
  padding: 3rem 1.5rem;
  background: rgba(255, 204, 0, 0.05);
  border: 1px solid rgba(255, 204, 0, 0.18);
  border-radius: 1.5rem;
}

.tf-s60-cta-headline {
  font-size: clamp(1.375rem, 3vw, 2rem);
  font-weight: 900;
  color: #fff;
  margin: 0 0 1.5rem;
  line-height: 1.25;
}

.tf-s60-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #FFCC00;
  color: #0A0A0A;
  font-size: 1.0625rem;
  font-weight: 800;
  padding: 1rem 2.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
  box-shadow: 0 4px 24px rgba(255, 204, 0, 0.25);
  letter-spacing: 0.01em;
}
.tf-s60-cta-btn:hover {
  background: #f5c200;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.4);
}
.tf-s60-cta-btn:active { transform: translateY(0); }

.tf-s60-cta-sub {
  margin: 1rem 0 0;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.4);
}
/* END_SECTION:setup-60-seconds */

/* START_SECTION:shipping-returns (INDEX:151) */
.tf-policies {
  padding: 4rem 1rem;
}
@media (min-width: 768px) {
  .tf-policies { padding: 6rem 1rem; }
}
.tf-policies--white { background: var(--tf-background, #ffffff); }
.tf-policies--gray { background: var(--tf-muted, #f5f5f5); }
.tf-policies--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-policies .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-policies-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-policies-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-policies-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-policies--dark .tf-policies-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-policies-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
}
.tf-policies--dark .tf-policies-subtitle { color: rgba(255,255,255,0.6); }
.tf-policies-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
.tf-policies-card {
  display: flex;
  gap: 1.125rem;
  padding: 1.5rem;
  background: var(--tf-card, #fafafa);
  border-radius: 1rem;
  border: 1px solid rgba(0,0,0,0.07);
}
.tf-policies--dark .tf-policies-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-policies--white .tf-policies-card {
  background: var(--tf-muted, #f5f5f5);
  border-color: transparent;
}
.tf-policies-icon {
  color: var(--tf-primary, #FACC15);
  flex-shrink: 0;
  margin-top: 0.125rem;
}
.tf-policies-card-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.tf-policies-card-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-policies--dark .tf-policies-card-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-policies-card-body-text {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
}
.tf-policies--dark .tf-policies-card-body-text { color: rgba(255,255,255,0.55); }
.tf-policies-card-link {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-primary, #FACC15);
  text-decoration: underline;
  text-underline-offset: 2px;
}
/* END_SECTION:shipping-returns */

/* START_SECTION:size-guide (INDEX:152) */
.tf-sizeg { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-sizeg { padding: 7rem 1rem; } }
.tf-sizeg--white { background: var(--tf-background, #ffffff); }
.tf-sizeg--gray { background: var(--tf-muted, #f5f5f5); }
.tf-sizeg--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-sizeg .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-sizeg-header { text-align: center; margin-bottom: 3rem; }
.tf-sizeg-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-sizeg-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-sizeg--dark .tf-sizeg-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-sizeg-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-sizeg--dark .tf-sizeg-subtitle { color: rgba(255,255,255,0.6); }
.tf-sizeg-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 480px) { .tf-sizeg-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .tf-sizeg-grid { grid-template-columns: repeat(4, 1fr); } }
.tf-sizeg-card {
  position: relative;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 1.25rem;
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  transition: box-shadow 0.2s;
}
.tf-sizeg-card:hover { box-shadow: 0 8px 32px rgba(0,0,0,0.1); }
.tf-sizeg--dark .tf-sizeg-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-sizeg-card--popular {
  border: 2px solid var(--tf-primary, #FACC15);
  box-shadow: 0 8px 32px rgba(250,204,21,0.2);
}
.tf-sizeg-popular-badge {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  white-space: nowrap;
}
.tf-sizeg-icon {
  font-size: 2rem;
  line-height: 1;
}
.tf-sizeg-card-head { }
.tf-sizeg-pack-name {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
}
.tf-sizeg--dark .tf-sizeg-pack-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-sizeg-pack-size {
  font-size: 2.25rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
  margin: 0.25rem 0;
  letter-spacing: -0.03em;
}
.tf-sizeg-price {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-sizeg--dark .tf-sizeg-price { color: rgba(255,255,255,0.5); }
.tf-sizeg-ideal {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  background: var(--tf-muted, #f5f5f5);
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  margin: 0;
  line-height: 1.4;
}
.tf-sizeg--dark .tf-sizeg-ideal {
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.6);
}
.tf-sizeg-features {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}
.tf-sizeg-features li {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.4;
}
.tf-sizeg--dark .tf-sizeg-features li { color: rgba(255,255,255,0.8); }
.tf-sizeg-features svg {
  color: var(--tf-primary, #FACC15);
  flex-shrink: 0;
  margin-top: 2px;
}
.tf-sizeg-cta {
  display: block;
  text-align: center;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid rgba(0,0,0,0.12);
  color: var(--tf-foreground, #141414);
  background: transparent;
  transition: border-color 0.2s, background 0.2s;
  margin-top: auto;
}
.tf-sizeg-cta:hover {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.08);
}
.tf-sizeg-cta--primary {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-sizeg-cta--primary:hover {
  background: hsl(45,100%,45%);
  border-color: hsl(45,100%,45%);
}
.tf-sizeg--dark .tf-sizeg-cta {
  border-color: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.85);
}
.tf-sizeg--dark .tf-sizeg-cta:hover {
  border-color: var(--tf-primary, #FACC15);
  background: hsla(45,100%,51%,0.1);
}
.tf-sizeg-help {
  text-align: center;
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 2.5rem;
}
.tf-sizeg--dark .tf-sizeg-help { color: rgba(255,255,255,0.5); }
/* END_SECTION:size-guide */

/* START_SECTION:social-feed (INDEX:154) */
.tf-social { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-social { padding: 7rem 1rem; } }
.tf-social--white { background: var(--tf-background, #ffffff); }
.tf-social--gray { background: var(--tf-muted, #f5f5f5); }
.tf-social--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-social .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-social-header { text-align: center; margin-bottom: 2.5rem; }
.tf-social-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-social-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-social--dark .tf-social-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-social-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0 0 1rem;
}
.tf-social--dark .tf-social-subtitle { color: rgba(255,255,255,0.6); }
.tf-social-handle {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  transition: opacity 0.2s;
}
.tf-social-handle:hover { opacity: 0.8; }
.tf-social-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem;
}
@media (min-width: 480px) { .tf-social-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 768px) { .tf-social-grid { grid-template-columns: repeat(4, 1fr); gap: 0.75rem; } }
@media (min-width: 1024px) { .tf-social-grid { grid-template-columns: repeat(6, 1fr); } }
.tf-social-post {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 0.75rem;
  display: block;
  background: rgba(0,0,0,0.05);
  text-decoration: none;
  cursor: pointer;
}
.tf-social--dark .tf-social-post { background: rgba(255,255,255,0.06); }
.tf-social-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.tf-social-post:hover .tf-social-img { transform: scale(1.05); }
.tf-social-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-primary, #FACC15);
  opacity: 0.4;
}
.tf-social-post-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem;
  opacity: 0;
  transition: opacity 0.25s;
}
.tf-social-post:hover .tf-social-post-overlay { opacity: 1; }
.tf-social-stat {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: #ffffff;
}
.tf-social-caption {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.85);
  text-align: center;
  line-height: 1.4;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tf-social-footer { text-align: center; margin-top: 2rem; }
.tf-social-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 2rem;
  border: 2px solid var(--tf-primary, #FACC15);
  color: var(--tf-primary, #FACC15);
  font-size: 0.9375rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.tf-social-cta:hover {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
/* END_SECTION:social-feed */

/* START_SECTION:social-proof-bar (INDEX:155) */
.tf-spb {
  padding: 1.25rem 1rem;
  background: var(--tf-background, #ffffff);
  border-top: 1px solid var(--tf-border, #e5e5e5);
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
}
.tf-spb .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-spb-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1rem 2rem;
}
.tf-spb-rating {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.tf-spb-stars {
  display: flex;
  gap: 2px;
}
.tf-spb-star--full {
  color: var(--tf-primary, #FACC15);
}
.tf-spb-star--empty {
  color: var(--tf-border, #e5e5e5);
}
.tf-spb-rating-text {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.tf-spb-score {
  font-weight: 700;
  font-size: 1rem;
  color: var(--tf-foreground, #141414);
}
.tf-spb-count {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-spb-divider {
  width: 1px;
  height: 32px;
  background: var(--tf-border, #e5e5e5);
  display: none;
}
@media (min-width: 640px) {
  .tf-spb-divider {
    display: block;
  }
}
.tf-spb-customers {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.tf-spb-avatars img {
  height: 36px;
  width: auto;
  display: block;
}
.tf-spb-avatar-stack {
  display: flex;
}
.tf-spb-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 2px solid var(--tf-background, #ffffff);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.625rem;
  font-weight: 700;
  color: var(--tf-secondary-foreground, #fafafa);
  margin-left: -8px;
}
.tf-spb-avatar:first-child {
  margin-left: 0;
}
.tf-spb-avatar--1 { background: #6366f1; }
.tf-spb-avatar--2 { background: #8b5cf6; }
.tf-spb-avatar--3 { background: #ec4899; }
.tf-spb-avatar--4 { background: #f59e0b; }
.tf-spb-avatar--5 { background: #10b981; }
.tf-spb-customer-text {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-spb-badge,
.tf-spb-guarantee {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-spb-badge svg {
  color: var(--tf-primary, #FACC15);
  flex-shrink: 0;
}
.tf-spb-guarantee svg {
  color: #22c55e;
  flex-shrink: 0;
}
/* END_SECTION:social-proof-bar */

/* START_SECTION:social-proof-toast (INDEX:156) */
.tf-toast-wrap {
  position: fixed;
  bottom: 1.5rem;
  left: 1.5rem;
  z-index: 9998;
  pointer-events: none;
}
.tf-toast {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  background: var(--tf-card, #fafafa);
  border-radius: 0.875rem;
  padding: 0.875rem 1rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.16);
  border: 1px solid rgba(0,0,0,0.08);
  max-width: 300px;
  pointer-events: auto;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.35s, transform 0.35s;
}
.tf-toast--visible {
  opacity: 1;
  transform: translateY(0);
}
.tf-toast-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.12);
  color: #16a34a;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-toast-body {
  flex: 1;
  min-width: 0;
}
.tf-toast-msg {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
  line-height: 1.4;
}
.tf-toast-meta {
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  display: flex;
  gap: 0.25rem;
  align-items: center;
}
.tf-toast-close {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--tf-muted-foreground, #737373);
  padding: 0;
  flex-shrink: 0;
  line-height: 0;
  margin-top: 2px;
  transition: color 0.15s;
}
.tf-toast-close:hover { color: var(--tf-foreground, #141414); }
/* END_SECTION:social-proof-toast */

/* START_SECTION:spacer (INDEX:157) */
.tf-spacer {
  display: block;
  width: 100%;
  height: var(--tf-spacer-h-mobile, 40px);
  background: transparent;
}
@media (min-width: 768px) {
  .tf-spacer {
    height: var(--tf-spacer-h, 80px);
  }
}
/* END_SECTION:spacer */

/* START_SECTION:split-hero (INDEX:158) */
.tf-split-hero {
  display: grid;
  grid-template-columns: 1fr;
  min-height: 80vh;
  background: var(--tf-secondary, #1a1a1a);
}
@media (min-width: 768px) {
  .tf-split-hero {
    grid-template-columns: 1fr 1fr;
    min-height: 600px;
  }
}
.tf-split-hero-content {
  display: flex;
  align-items: center;
  padding: 4rem 1.5rem;
}
@media (min-width: 768px) {
  .tf-split-hero-content {
    padding: 4rem 3rem 4rem max(1.5rem, calc((100vw - 1280px) / 2));
    justify-content: flex-end;
  }
}
.tf-split-hero-text {
  max-width: 520px;
  width: 100%;
}
.tf-split-hero-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 1rem;
}
.tf-split-hero-title {
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 800;
  color: var(--tf-secondary-foreground, #fafafa);
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin-bottom: 1.25rem;
}
.tf-split-hero-subtitle {
  font-size: 1.0625rem;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.7;
  margin-bottom: 2rem;
}
.tf-split-hero-rating {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 2rem;
}
.tf-split-hero-stars {
  display: flex;
  gap: 2px;
  color: var(--tf-primary, #FACC15);
}
.tf-split-hero-rating-text {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.65);
  font-weight: 500;
}
.tf-split-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  margin-bottom: 2rem;
}
.tf-split-hero-btn-primary {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.4);
}
.tf-split-hero-btn-primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-split-hero-btn-ghost {
  display: inline-block;
  font-weight: 600;
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.7);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.15s;
}
.tf-split-hero-btn-ghost:hover {
  color: var(--tf-primary, #FACC15);
}
.tf-split-hero-bullets {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.tf-split-hero-bullet {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.75);
  font-weight: 500;
}
.tf-split-hero-bullet svg {
  color: var(--tf-primary, #FACC15);
  flex-shrink: 0;
}
.tf-split-hero-media {
  position: relative;
  overflow: hidden;
  background: var(--tf-muted, #f5f5f5);
  min-height: 300px;
}
@media (min-width: 768px) {
  .tf-split-hero-media {
    min-height: unset;
  }
}
.tf-split-hero-media img,
.tf-split-hero-placeholder {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tf-split-hero-badge {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  background: var(--tf-secondary, #1a1a1a);
  border: 2px solid var(--tf-primary, #FACC15);
  border-radius: 1rem;
  padding: 1rem 1.25rem;
  text-align: center;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
.tf-split-hero-badge-number {
  font-size: 2rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  letter-spacing: -0.02em;
  line-height: 1;
}
.tf-split-hero-badge-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-top: 0.25rem;
}
/* END_SECTION:split-hero */

/* START_SECTION:split-testimonial (INDEX:159) */
.tf-stm { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-stm { padding: 7rem 1rem; } }
.tf-stm--white { background: var(--tf-background, #ffffff); }
.tf-stm--gray { background: var(--tf-muted, #f5f5f5); }
.tf-stm--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-stm .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-stm-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-stm-inner { grid-template-columns: 1fr 1fr; }
  .tf-stm-inner--reverse .tf-stm-content { order: 2; }
  .tf-stm-inner--reverse .tf-stm-visual { order: 1; }
}
.tf-stm-stars {
  display: flex;
  gap: 0.25rem;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 1.5rem;
}
.tf-stm-qmark {
  color: var(--tf-primary, #FACC15);
  opacity: 0.5;
  display: block;
  margin-bottom: 1rem;
}
.tf-stm-quote {
  margin: 0 0 2rem;
}
.tf-stm-quote p {
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  line-height: 1.5;
  font-style: italic;
  margin: 0;
}
.tf-stm--dark .tf-stm-quote p { color: var(--tf-secondary-foreground, #fafafa); }
.tf-stm-metric {
  display: inline-flex;
  align-items: baseline;
  gap: 0.5rem;
  background: hsla(45, 100%, 51%, 0.1);
  border: 1px solid hsla(45, 100%, 51%, 0.25);
  padding: 0.625rem 1.25rem;
  border-radius: 9999px;
  margin-bottom: 2rem;
}
.tf-stm-metric-val {
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-stm-metric-lbl {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-stm--dark .tf-stm-metric-lbl { color: rgba(255,255,255,0.8); }
.tf-stm-author {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.tf-stm-photo {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 3px solid var(--tf-primary, #FACC15);
}
.tf-stm-name {
  display: block;
  font-style: normal;
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.125rem;
}
.tf-stm--dark .tf-stm-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-stm-role {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-stm--dark .tf-stm-role { color: rgba(255,255,255,0.5); }
.tf-stm-visual {
  border-radius: 2rem;
  overflow: hidden;
  background: var(--tf-muted, #f5f5f5);
  aspect-ratio: 4/5;
}
.tf-stm--dark .tf-stm-visual { background: rgba(255,255,255,0.05); }
.tf-stm-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tf-stm-placeholder {
  width: 100%;
  height: 100%;
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-muted-foreground, #737373);
}
/* END_SECTION:split-testimonial */

/* START_SECTION:split-video (INDEX:160) */
.tf-sv {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-sv .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-sv-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-sv-layout {
    grid-template-columns: repeat(2, 1fr);
  }
  .tf-sv-layout--right .tf-sv-media {
    order: 2;
  }
  .tf-sv-layout--right .tf-sv-content {
    order: 1;
  }
}
/* Video */
.tf-sv-video-wrap,
.tf-sv-thumb-wrap {
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.14);
}
.tf-sv-video-wrap {
  padding-bottom: 56.25%;
  height: 0;
  background: #000;
}
.tf-sv-iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.tf-sv-thumb {
  width: 100%;
  height: auto;
  display: block;
}
.tf-sv-play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  transition: background 0.2s;
}
.tf-sv-thumb-wrap:hover .tf-sv-play {
  background: rgba(0, 0, 0, 0.5);
}
.tf-sv-placeholder {
  aspect-ratio: 16 / 9;
  background: #e5e5e5;
  border-radius: 1.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: #999;
  font-size: 0.875rem;
}
/* Content */
.tf-sv-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  margin: 0 0 0.75rem;
}
.tf-sv-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-sv-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0 0 2rem;
}
/* Bullets */
.tf-sv-list {
  list-style: none;
  padding: 0;
  margin: 0 0 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
}
.tf-sv-bullet {
  display: flex;
  gap: 0.875rem;
  align-items: flex-start;
}
.tf-sv-bullet-icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}
.tf-sv-bullet-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.2rem;
}
.tf-sv-bullet-desc {
  font-size: 0.9rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.55;
}
/* Actions */
.tf-sv-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}
.tf-sv-btn-primary {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-sv-btn-primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-sv-btn-secondary {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: opacity 0.15s;
}
.tf-sv-btn-secondary:hover { opacity: 0.65; }
/* END_SECTION:split-video */

/* START_SECTION:stat-counter (INDEX:161) */
.tf-stats {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-stats { padding: 7rem 1rem; }
}
.tf-stats--white { background: var(--tf-background, #ffffff); }
.tf-stats--gray { background: var(--tf-muted, #f5f5f5); }
.tf-stats--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-stats--primary { background: var(--tf-primary, #FACC15); }
.tf-stats .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-stats-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-stats-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-stats--primary .tf-stats-label {
  background: rgba(0,0,0,0.1);
  color: rgba(0,0,0,0.65);
}
.tf-stats-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-stats--dark .tf-stats-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-stats-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-stats--dark .tf-stats-subtitle { color: rgba(255,255,255,0.6); }
.tf-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  gap: 2rem;
  text-align: center;
}
.tf-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
}
.tf-stat-icon {
  width: 56px;
  height: 56px;
  border-radius: 1rem;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.25rem;
}
.tf-stats--primary .tf-stat-icon {
  background: rgba(0,0,0,0.1);
  color: rgba(0,0,0,0.6);
}
.tf-stat-number {
  font-size: clamp(2.5rem, 5vw, 3.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.04em;
  line-height: 1;
}
.tf-stats--dark .tf-stat-number { color: var(--tf-primary, #FACC15); }
.tf-stats--primary .tf-stat-number { color: var(--tf-foreground, #141414); }
.tf-stat-prefix,
.tf-stat-suffix {
  font-size: 0.65em;
  vertical-align: super;
  font-weight: 700;
}
.tf-stat-desc {
  font-size: 1rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.4;
}
.tf-stats--dark .tf-stat-desc { color: var(--tf-secondary-foreground, #fafafa); }
.tf-stats--primary .tf-stat-desc { color: rgba(0,0,0,0.8); }
.tf-stat-note {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-stats--dark .tf-stat-note { color: rgba(255,255,255,0.45); }
.tf-stats--primary .tf-stat-note { color: rgba(0,0,0,0.5); }
/* END_SECTION:stat-counter */

/* START_SECTION:stats-banner (INDEX:162) */
.tf-stats {
  padding: 3.5rem 1rem;
  background: var(--tf-secondary, #1a1a1a);
}
@media (min-width: 768px) {
  .tf-stats {
    padding: 4.5rem 1rem;
  }
}
.tf-stats .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 1rem;
}
@media (min-width: 640px) {
  .tf-stats-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
  }
}
.tf-stat-item {
  text-align: center;
  position: relative;
}
.tf-stat-item:not(:last-child)::after {
  content: '';
  display: none;
}
@media (min-width: 640px) {
  .tf-stat-item:not(:last-child)::after {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 40px;
    width: 1px;
    background: rgba(255, 255, 255, 0.1);
  }
}
.tf-stat-number {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
  margin-bottom: 0.5rem;
  letter-spacing: -0.02em;
}
.tf-stat-label {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-stat-sublabel {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  margin-top: 0.25rem;
}
/* END_SECTION:stats-banner */

/* START_SECTION:stats-bar (INDEX:163) */
.tf-statsbar { padding: 4rem 1rem; }
@media (min-width: 768px) { .tf-statsbar { padding: 6rem 1rem; } }
.tf-statsbar--white { background: var(--tf-background, #ffffff); }
.tf-statsbar--gray { background: var(--tf-muted, #f5f5f5); }
.tf-statsbar--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-statsbar--primary { background: var(--tf-primary, #FACC15); }
.tf-statsbar .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-statsbar-header { text-align: center; margin-bottom: 3rem; }
.tf-statsbar-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-statsbar--primary .tf-statsbar-badge {
  background: rgba(0,0,0,0.1);
  color: var(--tf-foreground, #141414);
}
.tf-statsbar-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-statsbar--dark .tf-statsbar-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-statsbar--primary .tf-statsbar-title { color: var(--tf-foreground, #141414); }
.tf-statsbar-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-statsbar--dark .tf-statsbar-subtitle { color: rgba(255,255,255,0.6); }
.tf-statsbar--primary .tf-statsbar-subtitle { color: rgba(0,0,0,0.65); }
.tf-statsbar-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
}
@media (min-width: 640px) { .tf-statsbar-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .tf-statsbar-grid { grid-template-columns: repeat(4, 1fr); } }
.tf-stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 2rem 1.5rem;
  position: relative;
}
.tf-stat-item + .tf-stat-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 20%;
  height: 60%;
  width: 1px;
  background: rgba(0,0,0,0.08);
}
.tf-statsbar--dark .tf-stat-item + .tf-stat-item::before { background: rgba(255,255,255,0.08); }
.tf-statsbar--primary .tf-stat-item + .tf-stat-item::before { background: rgba(0,0,0,0.12); }
.tf-stat-icon {
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-statsbar--primary .tf-stat-icon { color: var(--tf-foreground, #141414); }
.tf-stat-value-wrap {
  display: flex;
  align-items: baseline;
  gap: 0.1em;
}
.tf-stat-number {
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  font-weight: 900;
  line-height: 1;
  color: var(--tf-foreground, #141414);
  letter-spacing: -0.02em;
}
.tf-statsbar--dark .tf-stat-number { color: var(--tf-secondary-foreground, #fafafa); }
.tf-statsbar--primary .tf-stat-number { color: var(--tf-foreground, #141414); }
.tf-stat-prefix,
.tf-stat-suffix {
  font-size: clamp(1.25rem, 3vw, 2rem);
  font-weight: 800;
  color: var(--tf-primary, #FACC15);
}
.tf-statsbar--primary .tf-stat-prefix,
.tf-statsbar--primary .tf-stat-suffix { color: var(--tf-foreground, #141414); opacity: 0.7; }
.tf-stat-label {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0.375rem 0 0;
}
.tf-statsbar--dark .tf-stat-label { color: var(--tf-secondary-foreground, #fafafa); }
.tf-statsbar--primary .tf-stat-label { color: var(--tf-foreground, #141414); }
.tf-stat-desc {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0.25rem 0 0;
  line-height: 1.5;
}
.tf-statsbar--dark .tf-stat-desc { color: rgba(255,255,255,0.5); }
.tf-statsbar--primary .tf-stat-desc { color: rgba(0,0,0,0.6); }
.tf-statsbar-footer { text-align: center; margin-top: 3rem; }
.tf-statsbar-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  border: 2px solid var(--tf-foreground, #141414);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.tf-statsbar-cta:hover {
  background: var(--tf-foreground, #141414);
  color: var(--tf-background, #ffffff);
}
.tf-statsbar--dark .tf-statsbar-cta {
  border-color: rgba(255,255,255,0.3);
  color: rgba(255,255,255,0.85);
}
.tf-statsbar--dark .tf-statsbar-cta:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.6);
}
.tf-statsbar--primary .tf-statsbar-cta {
  border-color: var(--tf-foreground, #141414);
  color: var(--tf-foreground, #141414);
}
.tf-statsbar--primary .tf-statsbar-cta:hover {
  background: var(--tf-foreground, #141414);
  color: var(--tf-primary, #FACC15);
}
/* END_SECTION:stats-bar */

/* START_SECTION:step-cards (INDEX:165) */
.tf-sc {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-sc .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-sc-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-sc-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 0.875rem;
}
.tf-sc-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 560px;
  margin: 0 auto 3rem;
  line-height: 1.65;
}
.tf-sc-track {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: stretch;
}
@media (min-width: 640px) {
  .tf-sc-track {
    flex-direction: row;
    align-items: flex-start;
    gap: 0;
  }
}
.tf-sc-card {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0;
}
@media (min-width: 640px) {
  .tf-sc-card {
    flex-direction: column;
    align-items: stretch;
  }
}
.tf-sc-connector {
  display: none;
}
@media (min-width: 640px) {
  .tf-sc-connector {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: -0.625rem;
    top: 2rem;
    width: 1.25rem;
    height: 1.25rem;
    color: var(--tf-muted-foreground, #737373);
    z-index: 2;
  }
}
.tf-sc-card-inner {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 1.25rem;
  padding: 1.75rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  flex: 1;
  transition: box-shadow 0.2s, border-color 0.2s;
}
@media (min-width: 640px) {
  .tf-sc-card:not(:first-child) .tf-sc-card-inner {
    margin-left: 0.75rem;
  }
}
.tf-sc-card-inner:hover {
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 6px 24px rgba(250, 204, 21, 0.12);
}
.tf-sc-num {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-bottom: 0.25rem;
}
.tf-sc-icon {
  font-size: 1.75rem;
  line-height: 1;
  margin-bottom: 0.25rem;
}
.tf-sc-card-title {
  font-size: 1.0625rem;
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.3;
}
.tf-sc-card-desc {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
  flex: 1;
}
.tf-sc-note {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  color: #16a34a;
  background: rgba(22, 163, 74, 0.08);
  padding: 0.2rem 0.6rem;
  border-radius: 9999px;
  margin-top: 0.25rem;
}
.tf-sc-cta {
  text-align: center;
  margin-top: 2.5rem;
}
.tf-sc-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2.25rem;
  border-radius: 9999px;
  text-decoration: none;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
  transition: background 0.2s, transform 0.15s;
}
.tf-sc-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* END_SECTION:step-cards */

/* START_SECTION:steps-section (INDEX:166) */
.tf-steps {
  padding: 4rem 1rem;
}
@media (min-width: 768px) {
  .tf-steps {
    padding: 6rem 1rem;
  }
}
.tf-steps--white {
  background: var(--tf-background, #ffffff);
}
.tf-steps--gray {
  background: var(--tf-muted, #f5f5f5);
}
.tf-steps--dark {
  background: var(--tf-secondary, #1a1a1a);
}
.tf-steps .tf-container {
  max-width: 1000px;
  margin: 0 auto;
}
.tf-steps .tf-section-header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.tf-steps-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-steps .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  margin-bottom: 0.75rem;
}
.tf-steps--dark .tf-section-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-steps--white .tf-section-title,
.tf-steps--gray .tf-section-title {
  color: var(--tf-foreground, #141414);
}
.tf-steps .tf-section-subtitle {
  font-size: 1.125rem;
}
.tf-steps--dark .tf-section-subtitle {
  color: rgba(255, 255, 255, 0.65);
}
.tf-steps--white .tf-section-subtitle,
.tf-steps--gray .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
}
.tf-steps-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media (min-width: 768px) {
  .tf-steps-grid {
    flex-direction: row;
    align-items: flex-start;
  }
}
.tf-step {
  display: flex;
  flex-direction: row;
  gap: 1.25rem;
  flex: 1;
}
@media (min-width: 768px) {
  .tf-step {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 1.5rem;
  }
}
.tf-step-number-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .tf-step-number-wrap {
    flex-direction: row;
    align-items: center;
    width: 100%;
    justify-content: center;
    margin-bottom: 1.5rem;
  }
}
.tf-step-number {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1.125rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.tf-step-connector {
  flex: 1;
  background: var(--tf-border, #e5e5e5);
}
.tf-steps--dark .tf-step-connector {
  background: rgba(255, 255, 255, 0.15);
}
@media (max-width: 767px) {
  .tf-step-connector {
    width: 2px;
    min-height: 2rem;
    margin: 4px 0;
  }
}
@media (min-width: 768px) {
  .tf-step-connector {
    height: 2px;
    min-width: 2rem;
    margin: 0 4px;
  }
}
.tf-step-content {
  padding-bottom: 2rem;
  flex: 1;
}
@media (min-width: 768px) {
  .tf-step-content {
    padding-bottom: 0;
  }
}
.tf-step-icon {
  width: 52px;
  height: 52px;
  background: hsla(45, 100%, 51%, 0.1);
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-primary, #FACC15);
  margin: 0 auto 1rem;
  display: none;
}
@media (min-width: 768px) {
  .tf-step-icon {
    display: flex;
  }
}
.tf-step-title {
  font-size: 1.0625rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.tf-steps--dark .tf-step-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-steps--white .tf-step-title,
.tf-steps--gray .tf-step-title {
  color: var(--tf-foreground, #141414);
}
.tf-step-description {
  font-size: 0.9375rem;
  line-height: 1.6;
}
.tf-steps--dark .tf-step-description {
  color: rgba(255, 255, 255, 0.6);
}
.tf-steps--white .tf-step-description,
.tf-steps--gray .tf-step-description {
  color: var(--tf-muted-foreground, #737373);
}
.tf-step-highlight {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  margin-top: 0.5rem;
}
.tf-steps-cta {
  text-align: center;
  margin-top: 3.5rem;
}
.tf-steps-cta-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.9375rem 2.25rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.4);
}
.tf-steps-cta-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-steps-cta-sub {
  margin-top: 0.875rem;
  font-size: 0.875rem;
}
.tf-steps--dark .tf-steps-cta-sub {
  color: rgba(255, 255, 255, 0.5);
}
.tf-steps--white .tf-steps-cta-sub,
.tf-steps--gray .tf-steps-cta-sub {
  color: var(--tf-muted-foreground, #737373);
}
/* END_SECTION:steps-section */

/* START_SECTION:sticky-atc (INDEX:167) */
.tf-sticky-atc {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: var(--tf-secondary, #1a1a1a);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  transform: translateY(100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.3);
}
.tf-sticky-atc--visible {
  transform: translateY(0);
}
.tf-sticky-atc .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-sticky-atc-inner {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 0.875rem 1rem;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .tf-sticky-atc-inner {
    flex-wrap: nowrap;
    padding: 1rem;
  }
}
.tf-sticky-atc-product {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
  min-width: 0;
}
.tf-sticky-atc-product img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.05);
  flex-shrink: 0;
}
.tf-sticky-atc-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.tf-sticky-atc-name {
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--tf-secondary-foreground, #fafafa);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tf-sticky-atc-price {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-primary, #FACC15);
}
.tf-sticky-atc-rating {
  display: none;
  align-items: center;
  gap: 2px;
  color: var(--tf-primary, #FACC15);
  flex-shrink: 0;
}
@media (min-width: 640px) {
  .tf-sticky-atc-rating {
    display: flex;
  }
}
.tf-sticky-atc-review-count {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  margin-left: 0.25rem;
}
.tf-sticky-atc-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.tf-sticky-atc-badge {
  display: none;
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.6);
  white-space: nowrap;
}
@media (min-width: 768px) {
  .tf-sticky-atc-badge {
    display: block;
  }
}
.tf-sticky-atc-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 0.9375rem;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 12px rgba(250, 204, 21, 0.4);
}
.tf-sticky-atc-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: scale(1.02);
}
/* END_SECTION:sticky-atc */

/* START_SECTION:sticky-cta-bar (INDEX:168) */
.tf-sticky-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9990;
  transform: translateY(100%);
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 -4px 20px rgba(0,0,0,0.15);
}
.tf-sticky-bar--visible { transform: translateY(0); }
.tf-sticky-bar--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-sticky-bar--yellow { background: var(--tf-primary, #FACC15); }
.tf-sticky-bar--white { background: var(--tf-background, #ffffff); border-top: 1px solid rgba(0,0,0,0.1); }
.tf-sticky-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem 1rem;
  padding: 0.875rem 3.5rem 0.875rem 1.25rem;
  flex-wrap: wrap;
  max-width: 900px;
  margin: 0 auto;
}
.tf-sticky-icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.tf-sticky-bar--dark .tf-sticky-icon { color: var(--tf-primary, #FACC15); }
.tf-sticky-bar--yellow .tf-sticky-icon { color: var(--tf-foreground, #141414); }
.tf-sticky-bar--white .tf-sticky-icon { color: var(--tf-primary, #FACC15); }
.tf-sticky-msg {
  font-size: 0.9375rem;
  font-weight: 600;
  margin: 0;
  line-height: 1.4;
}
.tf-sticky-bar--dark .tf-sticky-msg { color: rgba(255,255,255,0.9); }
.tf-sticky-bar--yellow .tf-sticky-msg { color: var(--tf-foreground, #141414); }
.tf-sticky-bar--white .tf-sticky-msg { color: var(--tf-foreground, #141414); }
.tf-sticky-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.625rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
  white-space: nowrap;
  flex-shrink: 0;
}
.tf-sticky-bar--dark .tf-sticky-cta { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); }
.tf-sticky-bar--dark .tf-sticky-cta:hover { background: hsl(45,100%,45%); }
.tf-sticky-bar--yellow .tf-sticky-cta { background: var(--tf-foreground, #141414); color: var(--tf-primary, #FACC15); }
.tf-sticky-bar--yellow .tf-sticky-cta:hover { background: #333; }
.tf-sticky-bar--white .tf-sticky-cta { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); }
.tf-sticky-bar--white .tf-sticky-cta:hover { background: hsl(45,100%,45%); }
.tf-sticky-close {
  position: absolute;
  right: 0.875rem;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255,255,255,0.12);
  border: none;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: rgba(255,255,255,0.8);
  transition: background 0.2s;
  flex-shrink: 0;
}
.tf-sticky-bar--yellow .tf-sticky-close { background: rgba(0,0,0,0.1); color: var(--tf-foreground, #141414); }
.tf-sticky-bar--white .tf-sticky-close { background: rgba(0,0,0,0.07); color: var(--tf-foreground, #141414); }
.tf-sticky-close:hover { background: rgba(255,255,255,0.22); }
.tf-sticky-bar--yellow .tf-sticky-close:hover { background: rgba(0,0,0,0.18); }
.tf-sticky-bar--white .tf-sticky-close:hover { background: rgba(0,0,0,0.12); }
/* END_SECTION:sticky-cta-bar */

/* START_SECTION:support-section (INDEX:169) */
.tf-support { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-support { padding: 7rem 1rem; } }
.tf-support--white { background: var(--tf-background, #ffffff); }
.tf-support--gray { background: var(--tf-muted, #f5f5f5); }
.tf-support--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-support .tf-container { max-width: 1000px; margin: 0 auto; }
.tf-support-header { text-align: center; margin-bottom: 3rem; }
.tf-support-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-support-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-support--dark .tf-support-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-support-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-support--dark .tf-support-subtitle { color: rgba(255,255,255,0.6); }
.tf-support-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 560px) { .tf-support-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 860px) { .tf-support-grid { grid-template-columns: repeat(3, 1fr); } }
.tf-support-card {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.5rem;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
a.tf-support-card:hover {
  border-color: var(--tf-primary, #FACC15);
  box-shadow: 0 4px 20px rgba(250,204,21,0.15);
  transform: translateY(-2px);
}
.tf-support--dark .tf-support-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-support--dark a.tf-support-card:hover {
  background: rgba(255,255,255,0.07);
  border-color: var(--tf-primary, #FACC15);
}
.tf-support-icon {
  width: 52px;
  height: 52px;
  border-radius: 0.875rem;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-support-info { flex: 1; }
.tf-support-name {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.375rem;
}
.tf-support--dark .tf-support-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-support-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0 0 0.5rem;
  line-height: 1.5;
}
.tf-support--dark .tf-support-desc { color: rgba(255,255,255,0.5); }
.tf-support-avail {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  background: hsla(45, 100%, 51%, 0.1);
  padding: 0.2rem 0.625rem;
  border-radius: 9999px;
}
.tf-support-arrow {
  color: var(--tf-muted-foreground, #737373);
  flex-shrink: 0;
  align-self: center;
  transition: transform 0.2s, color 0.2s;
}
a.tf-support-card:hover .tf-support-arrow {
  transform: translateX(3px);
  color: var(--tf-primary, #FACC15);
}
/* END_SECTION:support-section */

/* START_SECTION:tabbed-content (INDEX:170) */
.tf-tabs { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-tabs { padding: 7rem 1rem; } }
.tf-tabs--white { background: var(--tf-background, #ffffff); }
.tf-tabs--gray { background: var(--tf-muted, #f5f5f5); }
.tf-tabs--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-tabs .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-tabs-header { text-align: center; margin-bottom: 3rem; }
.tf-tabs-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-tabs-title {
  font-size: clamp(1.75rem, 3.5vw, 2.5rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-tabs--dark .tf-tabs-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tabs-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-tabs--dark .tf-tabs-subtitle { color: rgba(255,255,255,0.6); }
.tf-tabs-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin-bottom: 2.5rem;
  padding-bottom: 0.5rem;
}
.tf-tab-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1.25rem;
  border: 1.5px solid rgba(0,0,0,0.12);
  border-radius: 9999px;
  background: transparent;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-muted-foreground, #737373);
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.tf-tabs--dark .tf-tab-btn {
  border-color: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.55);
}
.tf-tab-btn:hover {
  border-color: rgba(0,0,0,0.25);
  color: var(--tf-foreground, #141414);
}
.tf-tabs--dark .tf-tab-btn:hover {
  border-color: rgba(255,255,255,0.3);
  color: rgba(255,255,255,0.85);
}
.tf-tab-btn--active {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-tab-btn--active:hover {
  background: hsl(45,100%,45%);
  border-color: hsl(45,100%,45%);
  color: var(--tf-foreground, #141414);
}
.tf-tab-btn-icon { display: flex; align-items: center; }
.tf-tab-panel { display: none; }
.tf-tab-panel--active { display: block; }
.tf-tab-panel-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: center;
}
@media (min-width: 768px) {
  .tf-tab-panel-inner--image-right { grid-template-columns: 1fr 1fr; }
  .tf-tab-panel-inner--image-left .tf-tab-panel-text { order: 2; }
  .tf-tab-panel-inner--image-left .tf-tab-panel-img-wrap { order: 1; }
  .tf-tab-panel-inner--image-left { grid-template-columns: 1fr 1fr; }
}
.tf-tab-panel-text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.tf-tab-eyebrow {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--tf-primary, #FACC15);
}
.tf-tab-heading {
  font-size: clamp(1.375rem, 2.5vw, 1.875rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin: 0;
  line-height: 1.2;
}
.tf-tabs--dark .tf-tab-heading { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tab-content {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
}
.tf-tab-content p { margin: 0 0 0.75rem; }
.tf-tab-content p:last-child { margin-bottom: 0; }
.tf-tabs--dark .tf-tab-content { color: rgba(255,255,255,0.6); }
.tf-tab-bullets { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.625rem; }
.tf-tab-bullet {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
}
.tf-tabs--dark .tf-tab-bullet { color: rgba(255,255,255,0.8); }
.tf-tab-bullet svg { color: var(--tf-primary, #FACC15); flex-shrink: 0; margin-top: 2px; }
.tf-tab-stat {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  background: hsla(45,100%,51%,0.08);
  border-left: 4px solid var(--tf-primary, #FACC15);
  padding: 0.75rem 1rem;
  border-radius: 0 0.75rem 0.75rem 0;
}
.tf-tabs--dark .tf-tab-stat { background: hsla(45,100%,51%,0.06); }
.tf-tab-stat-num {
  font-size: 2rem;
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-tab-stat-lbl {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--tf-foreground, #141414);
}
.tf-tabs--dark .tf-tab-stat-lbl { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tab-cta {
  display: inline-flex;
  align-self: flex-start;
  padding: 0.75rem 1.75rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 0.9375rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-tab-cta:hover { background: hsl(45,100%,45%); }
.tf-tab-panel-img-wrap { border-radius: 1.25rem; overflow: hidden; }
.tf-tab-panel-img { width: 100%; height: auto; display: block; }
/* END_SECTION:tabbed-content */

/* START_SECTION:tap-vs-alternatives (INDEX:171) */
/* ============================================================
   TapFive — Tap vs Alternatives
   Prefix: tf-tva-*
   ============================================================ */

/* ── Root vars ── */
.tf-tva {
  --tva-gold:          #FFCC00;
  --tva-gold-dim:      rgba(255, 204, 0, 0.12);
  --tva-gold-glow:     rgba(255, 204, 0, 0.30);
  --tva-bg:            #0A0A0A;
  --tva-surface:       #141414;
  --tva-surface-hover: #1C1C1C;
  --tva-border:        rgba(255,255,255,0.08);
  --tva-border-winner: #FFCC00;
  --tva-text:          #FFFFFF;
  --tva-text-muted:    rgba(255,255,255,0.50);
  --tva-text-dim:      rgba(255,255,255,0.35);
  --tva-red-muted:     rgba(255,80,80,0.70);
  --tva-bad-bg:        rgba(255,80,80,0.08);
  --tva-muted-bg:      rgba(255,255,255,0.05);
  --tva-radius:        14px;
  --tva-gap:           16px;
  --tva-font:          'Montserrat', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --tva-transition:    0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ── Section shell ── */
.tf-tva {
  background-color: var(--tva-bg);
  padding: 72px 0 80px;
  overflow: hidden;
  font-family: var(--tva-font);
}

.tf-tva-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* ── Header ── */
.tf-tva-header {
  text-align: center;
  margin-bottom: 48px;
}

.tf-tva-overline {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--tva-gold);
  margin: 0 0 16px;
  padding: 5px 14px;
  border: 1px solid rgba(255, 204, 0, 0.30);
  border-radius: 40px;
  background: rgba(255, 204, 0, 0.06);
}

.tf-tva-heading {
  font-size: clamp(1.75rem, 5vw, 2.75rem);
  font-weight: 800;
  line-height: 1.15;
  color: var(--tva-text);
  margin: 0 0 16px;
  letter-spacing: -0.02em;
}

.tf-tva-subtitle {
  font-size: clamp(0.9rem, 2.5vw, 1.05rem);
  color: var(--tva-text-muted);
  max-width: 580px;
  margin: 0 auto;
  line-height: 1.65;
}

/* ── Cards track — mobile scroll snap ── */
.tf-tva-track-wrapper {
  display: flex;
  flex-direction: row;
  gap: var(--tva-gap);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 12px 4px 20px;
  margin: 0 -4px;
  /* hide scrollbar webkit */
}

.tf-tva-track-wrapper::-webkit-scrollbar {
  display: none;
}

/* ── Individual card ── */
.tf-tva-card {
  flex: 0 0 82vw;
  max-width: 320px;
  scroll-snap-align: center;
  background: var(--tva-surface);
  border: 1px solid var(--tva-border);
  border-radius: var(--tva-radius);
  padding: 24px 20px 0;
  display: flex;
  flex-direction: column;
  position: relative;
  box-sizing: border-box;
  transition: transform var(--tva-transition), box-shadow var(--tva-transition);
  /* scroll reveal — start hidden */
  opacity: 0;
  transform: translateY(24px);
}

.tf-tva-card.tf-tva-is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Winner card overrides */
.tf-tva-card--winner {
  border-color: var(--tva-border-winner);
  background: linear-gradient(160deg, #1A1600 0%, #0F0F00 40%, #141414 100%);
  box-shadow:
    0 0 0 1px rgba(255, 204, 0, 0.50),
    0 8px 40px var(--tva-gold-glow),
    inset 0 1px 0 rgba(255, 204, 0, 0.20);
}

.tf-tva-card--winner:hover {
  transform: translateY(-4px);
  box-shadow:
    0 0 0 1px rgba(255, 204, 0, 0.70),
    0 16px 56px rgba(255, 204, 0, 0.40),
    inset 0 1px 0 rgba(255, 204, 0, 0.30);
}

.tf-tva-card--neutral:hover {
  transform: translateY(-2px);
  background: var(--tva-surface-hover);
}

/* ── BEST badge ── */
.tf-tva-badge {
  position: absolute;
  top: -1px;
  right: 16px;
  background: var(--tva-gold);
  color: #000;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 5px 10px 5px 8px;
  border-radius: 0 0 8px 8px;
  display: flex;
  align-items: center;
  gap: 4px;
  line-height: 1;
}

/* ── Card top (icon + name) ── */
.tf-tva-card-top {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
}

.tf-tva-method-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: var(--tva-muted-bg);
  border: 1px solid var(--tva-border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--tva-text-muted);
}

.tf-tva-method-icon--nfc {
  background: rgba(255, 204, 0, 0.10);
  border-color: rgba(255, 204, 0, 0.30);
  color: var(--tva-gold);
}

.tf-tva-method-name {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tva-text);
  margin: 0;
  line-height: 1.2;
}

.tf-tva-brand-tag {
  display: block;
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--tva-gold);
  margin-top: 2px;
  letter-spacing: 0.04em;
}

/* ── Rate block ── */
.tf-tva-rate-block {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.tf-tva-rate-number {
  font-size: 2.6rem;
  font-weight: 900;
  line-height: 1;
  color: var(--tva-text-dim);
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
}

.tf-tva-rate-block--winner .tf-tva-rate-number {
  font-size: 3.2rem;
  color: var(--tva-gold);
  text-shadow: 0 0 24px rgba(255, 204, 0, 0.40);
}

.tf-tva-rate-number--dim {
  color: var(--tva-text-dim);
}

.tf-tva-rate-label {
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--tva-text-muted);
}

/* ── Friction / stars ── */
.tf-tva-friction {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--tva-border);
}

.tf-tva-stars {
  display: flex;
  gap: 2px;
}

.tf-tva-star--on {
  color: var(--tva-gold);
}

.tf-tva-star--off {
  color: rgba(255,255,255,0.15);
}

/* On winner card, all stars are gold */
.tf-tva-card--winner .tf-tva-star--on {
  color: var(--tva-gold);
  filter: drop-shadow(0 0 4px rgba(255, 204, 0, 0.60));
}

/* On neutral cards, on-stars are muted orange */
.tf-tva-card--neutral .tf-tva-star--on {
  color: rgba(255, 140, 0, 0.70);
}

.tf-tva-friction-label {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--tva-text-muted);
  white-space: nowrap;
}

/* Winner gets gold friction label */
.tf-tva-card--winner .tf-tva-friction-label {
  color: var(--tva-gold);
  font-weight: 700;
}

/* ── Detail list ── */
.tf-tva-detail-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
}

.tf-tva-detail-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 10px 0;
  border-bottom: 1px solid var(--tva-border);
}

.tf-tva-detail-item:last-child {
  border-bottom: none;
}

.tf-tva-detail-key {
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--tva-text-dim);
}

.tf-tva-detail-val {
  font-size: 0.82rem;
  color: var(--tva-text-muted);
  line-height: 1.45;
}

.tf-tva-detail-val--good {
  color: #4ADE80;
  font-weight: 600;
}

/* ── Card footer tag ── */
.tf-tva-card-footer {
  margin: 0 -20px;
  margin-top: 16px;
  padding: 12px 20px;
  font-size: 0.72rem;
  font-weight: 700;
  border-radius: 0 0 var(--tva-radius) var(--tva-radius);
  display: flex;
  align-items: center;
  gap: 6px;
  letter-spacing: 0.02em;
}

.tf-tva-card-footer--winner {
  background: var(--tva-gold);
  color: #000;
}

.tf-tva-card-footer--bad {
  background: var(--tva-bad-bg);
  color: var(--tva-red-muted);
  border-top: 1px solid rgba(255,80,80,0.15);
}

.tf-tva-card-footer--muted {
  background: var(--tva-muted-bg);
  color: var(--tva-text-dim);
  border-top: 1px solid var(--tva-border);
}

/* ── Scroll hint (mobile only) ── */
.tf-tva-scroll-hint {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  margin: 4px 0 40px;
}

.tf-tva-scroll-hint-line {
  flex: 1;
  height: 1px;
  background: var(--tva-border);
  max-width: 60px;
}

.tf-tva-scroll-hint-text {
  font-size: 0.68rem;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--tva-text-dim);
  white-space: nowrap;
}

/* ── Reality check callout ── */
.tf-tva-reality {
  background: var(--tva-gold);
  border-radius: var(--tva-radius);
  padding: 28px 28px 28px 24px;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 40px;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.tf-tva-reality.tf-tva-is-visible {
  opacity: 1;
  transform: translateY(0);
}

.tf-tva-reality-icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  background: rgba(0,0,0,0.12);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
  margin-top: 2px;
}

.tf-tva-reality-body {
  flex: 1;
}

.tf-tva-reality-line {
  font-size: 0.88rem;
  color: rgba(0,0,0,0.80);
  margin: 0 0 8px;
  line-height: 1.55;
}

.tf-tva-reality-line strong {
  color: #000;
}

.tf-tva-reality-punch {
  font-size: 1rem;
  font-weight: 800;
  color: #000;
  margin: 12px 0 0;
  line-height: 1.35;
}

.tf-tva-reality-punch strong {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ── CTA ── */
.tf-tva-cta-wrap {
  display: flex;
  justify-content: center;
}

.tf-tva-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--tva-gold);
  color: #000;
  font-family: var(--tva-font);
  font-size: 0.95rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 16px 36px;
  border-radius: 8px;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  box-shadow: 0 4px 20px rgba(255, 204, 0, 0.30);
}

.tf-tva-cta-btn:hover {
  background: #FFD633;
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255, 204, 0, 0.45);
}

.tf-tva-cta-btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 12px rgba(255, 204, 0, 0.25);
}

/* ── 768px breakpoint ── */
@media screen and (min-width: 768px) {
  .tf-tva {
    padding: 88px 0 96px;
  }

  .tf-tva-container {
    padding: 0 32px;
  }

  .tf-tva-header {
    margin-bottom: 56px;
  }

  /* 2x2 grid on tablet */
  .tf-tva-track-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    overflow-x: visible;
    scroll-snap-type: none;
    padding: 4px;
    margin: 0;
    gap: 20px;
  }

  .tf-tva-card {
    flex: unset;
    max-width: unset;
    scroll-snap-align: unset;
  }

  .tf-tva-scroll-hint {
    display: none;
  }

  .tf-tva-reality {
    padding: 32px 36px;
  }

  .tf-tva-reality-line {
    font-size: 0.95rem;
  }
}

/* ── 1024px breakpoint — 1x4 horizontal row ── */
@media screen and (min-width: 1024px) {
  .tf-tva {
    padding: 100px 0 112px;
  }

  .tf-tva-container {
    padding: 0 40px;
  }

  /* Single horizontal row */
  .tf-tva-track-wrapper {
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch;
  }

  /* Winner card slightly taller / elevated */
  .tf-tva-card--winner {
    margin-top: -8px;
    padding-bottom: 0;
  }

  .tf-tva-reality {
    padding: 36px 40px;
    gap: 20px;
  }

  .tf-tva-reality-line {
    font-size: 1rem;
  }

  .tf-tva-reality-punch {
    font-size: 1.1rem;
  }
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  .tf-tva-card,
  .tf-tva-reality {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
/* END_SECTION:tap-vs-alternatives */

/* START_SECTION:team-grid (INDEX:173) */
.tf-team { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-team { padding: 7rem 1rem; } }
.tf-team--white { background: var(--tf-background, #ffffff); }
.tf-team--gray { background: var(--tf-muted, #f5f5f5); }
.tf-team--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-team .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-team-header { text-align: center; margin-bottom: 3rem; }
.tf-team-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-team-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-team--dark .tf-team-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-team-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-team--dark .tf-team-subtitle { color: rgba(255,255,255,0.6); }
.tf-team-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .tf-team-grid--3 { grid-template-columns: repeat(3, 1fr); }
  .tf-team-grid--4 { grid-template-columns: repeat(4, 1fr); }
}
.tf-team-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.tf-team-card--boxed {
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  padding: 1.75rem;
  align-items: center;
  text-align: center;
}
.tf-team--dark .tf-team-card--boxed {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.07);
}
.tf-team-card--minimal {
  align-items: flex-start;
  text-align: left;
}
.tf-team-card--centered {
  align-items: center;
  text-align: center;
}
.tf-team-photo-wrap { flex-shrink: 0; }
.tf-team-photo {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--tf-primary, #FACC15);
  display: block;
}
@media (min-width: 768px) {
  .tf-team-photo { width: 100px; height: 100px; }
}
.tf-team-initials {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1.375rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .tf-team-initials { width: 100px; height: 100px; font-size: 1.625rem; }
}
.tf-team-info { display: flex; flex-direction: column; gap: 0.375rem; }
.tf-team-name {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-team--dark .tf-team-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-team-role {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-primary, #FACC15);
  margin: 0;
}
.tf-team-bio {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0.25rem 0 0;
}
.tf-team--dark .tf-team-bio { color: rgba(255,255,255,0.55); }
.tf-team-socials {
  display: flex;
  gap: 0.5rem;
  margin-top: 0.375rem;
}
.tf-team-card--boxed .tf-team-socials,
.tf-team-card--centered .tf-team-socials { justify-content: center; }
.tf-team-social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: rgba(0,0,0,0.06);
  color: var(--tf-muted-foreground, #737373);
  transition: background 0.2s, color 0.2s;
  text-decoration: none;
}
.tf-team-social:hover { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); }
.tf-team--dark .tf-team-social { background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.6); }
.tf-team--dark .tf-team-social:hover { background: var(--tf-primary, #FACC15); color: var(--tf-foreground, #141414); }
.tf-team-footer { text-align: center; margin-top: 3rem; display: flex; flex-direction: column; align-items: center; gap: 1rem; }
.tf-team-footer-label {
  font-size: 1rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-team--dark .tf-team-footer-label { color: rgba(255,255,255,0.55); }
.tf-team-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-team-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:team-grid */

/* START_SECTION:team-section (INDEX:174) */
.tf-team {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-team { padding: 7rem 1rem; }
}
.tf-team--white { background: var(--tf-background, #ffffff); }
.tf-team--gray { background: var(--tf-muted, #f5f5f5); }
.tf-team--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-team .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-team-header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.tf-team-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-team-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-team--dark .tf-team-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-team-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  max-width: 600px;
  margin: 0 auto;
}
.tf-team--dark .tf-team-subtitle { color: rgba(255,255,255,0.6); }
.tf-team-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
.tf-team-grid--2 { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
.tf-team-grid--3 { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.tf-team-grid--4 { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.tf-team-card {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  text-align: center;
}
.tf-team-photo-wrap {
  position: relative;
  width: 120px;
  height: 120px;
  margin: 0 auto;
}
.tf-team-photo {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--tf-primary, #FACC15);
  display: block;
}
.tf-team-photo-init {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 2.5rem;
  border: 3px solid transparent;
}
.tf-team-socials {
  position: absolute;
  bottom: -6px;
  right: -6px;
  display: flex;
  gap: 4px;
}
.tf-team-social-link {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--tf-secondary, #1a1a1a);
  color: var(--tf-secondary-foreground, #fafafa);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background 0.15s;
}
.tf-team--dark .tf-team-social-link {
  background: rgba(255,255,255,0.15);
}
.tf-team-social-link:hover {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-team-info {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.tf-team-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
}
.tf-team--dark .tf-team-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-team-role {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--tf-primary, #FACC15);
}
.tf-team--dark .tf-team-role { color: var(--tf-primary, #FACC15); }
.tf-team-bio {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-team--dark .tf-team-bio { color: rgba(255,255,255,0.55); }
/* END_SECTION:team-section */

/* START_SECTION:testimonial-carousel (INDEX:175) */
.tf-tcarousel {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-tcarousel { padding: 7rem 1rem; }
}
.tf-tcarousel--white { background: var(--tf-background, #ffffff); }
.tf-tcarousel--gray { background: var(--tf-muted, #f5f5f5); }
.tf-tcarousel--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-tcarousel .tf-container {
  max-width: 860px;
  margin: 0 auto;
}
.tf-tcarousel-header {
  text-align: center;
  margin-bottom: 3rem;
}
.tf-tcarousel-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-tcarousel-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-tcarousel--dark .tf-tcarousel-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tcarousel-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
}
.tf-tcarousel--dark .tf-tcarousel-subtitle { color: rgba(255,255,255,0.6); }
.tf-tcarousel-viewport {
  overflow: hidden;
  border-radius: 1.25rem;
}
.tf-tcarousel-track {
  display: flex;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.tf-tcarousel-slide {
  min-width: 100%;
  box-sizing: border-box;
}
.tf-tcarousel-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  padding: 2.5rem 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  border: 1px solid rgba(0,0,0,0.08);
}
.tf-tcarousel--dark .tf-tcarousel-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.1);
}
.tf-tcarousel-stars {
  display: flex;
  gap: 3px;
  color: var(--tf-primary, #FACC15);
}
.tf-tcarousel-quote {
  font-size: clamp(1rem, 2.5vw, 1.25rem);
  font-weight: 600;
  line-height: 1.6;
  font-style: italic;
  color: var(--tf-foreground, #141414);
  margin: 0;
  flex: 1;
}
.tf-tcarousel--dark .tf-tcarousel-quote { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tcarousel-footer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.tf-tcarousel-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid var(--tf-primary, #FACC15);
}
.tf-tcarousel-avatar-init {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1rem;
  flex-shrink: 0;
}
.tf-tcarousel-author-info {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.tf-tcarousel-name {
  font-style: normal;
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
}
.tf-tcarousel--dark .tf-tcarousel-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tcarousel-role {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-tcarousel--dark .tf-tcarousel-role { color: rgba(255,255,255,0.5); }
.tf-tcarousel-verified {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #22c55e;
  background: rgba(34,197,94,0.12);
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
}
.tf-tcarousel-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 1.5rem;
}
.tf-tcarousel-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid currentColor;
  background: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tf-muted-foreground, #737373);
  transition: color 0.15s, border-color 0.15s;
  flex-shrink: 0;
}
.tf-tcarousel-btn:hover {
  color: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
}
.tf-tcarousel--dark .tf-tcarousel-btn { color: rgba(255,255,255,0.5); }
.tf-tcarousel-dots {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.tf-tcarousel-dot {
  width: 8px;
  height: 8px;
  border-radius: 9999px;
  border: none;
  background: var(--tf-muted-foreground, #737373);
  opacity: 0.3;
  cursor: pointer;
  padding: 0;
  transition: opacity 0.2s, width 0.2s, background 0.2s;
}
.tf-tcarousel-dot.is-active {
  background: var(--tf-primary, #FACC15);
  opacity: 1;
  width: 24px;
}
/* END_SECTION:testimonial-carousel */

/* START_SECTION:testimonial-ticker (INDEX:176) */
.tf-ticker {
  background: var(--tf-secondary, #1a1a1a);
  padding: 2rem 0;
  overflow: hidden;
  position: relative;
}
.tf-ticker::before,
.tf-ticker::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 80px;
  z-index: 2;
  pointer-events: none;
}
.tf-ticker::before {
  left: 0;
  background: linear-gradient(to right, var(--tf-secondary, #1a1a1a), transparent);
}
.tf-ticker::after {
  right: 0;
  background: linear-gradient(to left, var(--tf-secondary, #1a1a1a), transparent);
}
.tf-ticker-label {
  text-align: center;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: rgba(255, 255, 255, 0.35);
  margin: 0 0 1.25rem;
}
.tf-ticker-track-wrap {
  overflow: hidden;
}
.tf-ticker-track {
  display: flex;
  gap: 1.5rem;
  width: max-content;
  animation: tf-ticker-scroll 40s linear infinite;
}
.tf-ticker-track:hover {
  animation-play-state: paused;
}
@keyframes tf-ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .tf-ticker-track {
    animation: none;
    flex-wrap: wrap;
    justify-content: center;
    width: auto;
  }
}
.tf-ticker-card {
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 1rem;
  padding: 1.125rem 1.375rem;
  min-width: 280px;
  max-width: 320px;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.tf-ticker-stars {
  display: flex;
  gap: 2px;
  color: var(--tf-primary, #FACC15);
}
.tf-ticker-quote {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.55;
  margin: 0;
  font-style: italic;
}
.tf-ticker-author {
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.45);
  margin: 0;
}
.tf-ticker-author strong {
  color: rgba(255, 255, 255, 0.7);
  font-weight: 700;
}
.tf-ticker-biz {
  color: rgba(255, 255, 255, 0.35);
}
/* END_SECTION:testimonial-ticker */

/* START_SECTION:testimonial-video (INDEX:177) */
.tf-tv { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-tv { padding: 7rem 1rem; } }
.tf-tv--white { background: var(--tf-background, #ffffff); }
.tf-tv--gray { background: var(--tf-muted, #f5f5f5); }
.tf-tv--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-tv .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-tv-header { text-align: center; margin-bottom: 3.5rem; }
.tf-tv-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-tv-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-tv--dark .tf-tv-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tv-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-tv--dark .tf-tv-subtitle { color: rgba(255,255,255,0.6); }
.tf-tv-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 640px) {
  .tf-tv-grid--2 { grid-template-columns: repeat(2, 1fr); }
  .tf-tv-grid--3 { grid-template-columns: repeat(3, 1fr); }
}
.tf-tv-card {
  background: var(--tf-card, #fafafa);
  border-radius: 1.25rem;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0.06);
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-tv-card:hover { transform: translateY(-3px); box-shadow: 0 12px 40px rgba(0,0,0,0.1); }
.tf-tv--dark .tf-tv-card {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.08);
}
.tf-tv-video-wrap {
  position: relative;
  aspect-ratio: 16/9;
  background: var(--tf-secondary, #1a1a1a);
  overflow: hidden;
}
.tf-tv-poster {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tf-tv-poster-ph {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.3);
}
.tf-tv-play {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.3);
  border: none;
  cursor: pointer;
  color: #ffffff;
  transition: background 0.2s;
}
.tf-tv-play:hover { background: rgba(0,0,0,0.5); }
.tf-tv-play svg {
  width: 60px;
  height: 60px;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  border-radius: 50%;
  padding: 18px;
  transition: transform 0.2s;
  flex-shrink: 0;
}
.tf-tv-play:hover svg { transform: scale(1.1); }
.tf-tv-info { padding: 1.5rem; }
.tf-tv-stars {
  display: flex;
  gap: 0.125rem;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-tv-quote {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.65;
  margin: 0 0 1.25rem;
  font-style: italic;
}
.tf-tv--dark .tf-tv-quote { color: rgba(255,255,255,0.6); }
.tf-tv-customer { display: flex; align-items: center; gap: 0.75rem; }
.tf-tv-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-tv--dark .tf-tv-name { color: var(--tf-secondary-foreground, #fafafa); }
.tf-tv-role {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0.125rem 0 0;
}
.tf-tv--dark .tf-tv-role { color: rgba(255,255,255,0.5); }
/* END_SECTION:testimonial-video */

/* START_SECTION:text-columns (INDEX:179) */
.tf-textcols { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-textcols { padding: 7rem 1rem; } }
.tf-textcols--white { background: var(--tf-background, #ffffff); }
.tf-textcols--gray { background: var(--tf-muted, #f5f5f5); }
.tf-textcols--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-textcols .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-textcols-header { text-align: center; margin-bottom: 3rem; }
.tf-textcols-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-textcols-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-textcols--dark .tf-textcols-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-textcols-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-textcols--dark .tf-textcols-subtitle { color: rgba(255,255,255,0.6); }
.tf-textcols-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
@media (min-width: 640px) {
  .tf-textcols-grid--2 { grid-template-columns: repeat(2, 1fr); }
  .tf-textcols-grid--3 { grid-template-columns: repeat(2, 1fr); }
  .tf-textcols-grid--4 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
  .tf-textcols-grid--3 { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1024px) {
  .tf-textcols-grid--4 { grid-template-columns: repeat(4, 1fr); }
}
.tf-textcol {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.tf-textcol-icon {
  width: 44px;
  height: 44px;
  border-radius: 0.75rem;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-textcol-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-textcols--dark .tf-textcol-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-textcol-content {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.7;
}
.tf-textcol-content p { margin: 0 0 0.75rem; }
.tf-textcol-content p:last-child { margin-bottom: 0; }
.tf-textcols--dark .tf-textcol-content { color: rgba(255,255,255,0.6); }
.tf-textcol-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--tf-primary, #FACC15);
  text-decoration: none;
  margin-top: auto;
  transition: gap 0.2s;
}
.tf-textcol-link:hover { gap: 0.625rem; }
/* END_SECTION:text-columns */

/* START_SECTION:timeline (INDEX:181) */
.tf-timeline {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-timeline { padding: 7rem 1rem; }
}
.tf-timeline--white { background: var(--tf-background, #ffffff); }
.tf-timeline--gray { background: var(--tf-muted, #f5f5f5); }
.tf-timeline--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-timeline .tf-container {
  max-width: 760px;
  margin: 0 auto;
}
.tf-timeline-header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.tf-timeline-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-timeline-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-timeline--dark .tf-timeline-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-timeline-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
}
.tf-timeline--dark .tf-timeline-subtitle { color: rgba(255,255,255,0.6); }
.tf-timeline-list {
  display: flex;
  flex-direction: column;
}
.tf-timeline-item {
  display: flex;
  gap: 1.5rem;
}
.tf-timeline-marker {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  width: 36px;
}
.tf-timeline-dot {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--tf-muted, #f5f5f5);
  border: 3px solid transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color 0.2s;
}
.tf-timeline--dark .tf-timeline-dot {
  background: rgba(255,255,255,0.08);
}
.tf-timeline-dot--highlight {
  background: var(--tf-primary, #FACC15);
  border-color: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-timeline-line {
  width: 2px;
  flex: 1;
  background: rgba(0,0,0,0.1);
  margin: 6px 0;
  min-height: 40px;
}
.tf-timeline--dark .tf-timeline-line { background: rgba(255,255,255,0.1); }
.tf-timeline-item:last-child .tf-timeline-line {
  display: none;
}
.tf-timeline-content {
  padding-bottom: 2.5rem;
  padding-top: 0.375rem;
  flex: 1;
}
.tf-timeline-year {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.375rem;
}
.tf-timeline-milestone {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.5rem;
  line-height: 1.3;
}
.tf-timeline--dark .tf-timeline-milestone { color: var(--tf-secondary-foreground, #fafafa); }
.tf-timeline-desc {
  font-size: 0.9375rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0 0 0.75rem;
}
.tf-timeline--dark .tf-timeline-desc { color: rgba(255,255,255,0.55); }
.tf-timeline-stat {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: hsl(45, 100%, 30%);
}
.tf-timeline--dark .tf-timeline-stat {
  color: var(--tf-primary, #FACC15);
}
/* END_SECTION:timeline */

/* START_SECTION:two-column-cta (INDEX:183) */
.tf-2cta {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-2cta .tf-container {
  max-width: 1100px;
  margin: 0 auto;
}
.tf-2cta-heading {
  font-size: clamp(1.625rem, 3.5vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  margin: 0 0 2.5rem;
  line-height: 1.15;
}
.tf-2cta-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .tf-2cta-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.tf-2cta-panel {
  border-radius: 1.5rem;
  padding: 2.5rem 2rem;
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
}
.tf-2cta-panel--light {
  background-color: var(--tf-muted, #f5f5f5);
}
.tf-2cta-panel--dark {
  background-color: var(--tf-secondary, #1a1a1a);
}
.tf-2cta-panel--accent {
  background-color: var(--tf-primary, #FACC15);
}
.tf-2cta-panel--image::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  border-radius: inherit;
}
.tf-2cta-panel-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.tf-2cta-eyebrow {
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0 0 0.75rem;
}
.tf-2cta-panel--light .tf-2cta-eyebrow {
  color: var(--tf-primary, #FACC15);
}
.tf-2cta-panel--dark .tf-2cta-eyebrow,
.tf-2cta-panel--image .tf-2cta-eyebrow {
  color: var(--tf-primary, #FACC15);
}
.tf-2cta-panel--accent .tf-2cta-eyebrow {
  color: rgba(20, 20, 20, 0.6);
}
.tf-2cta-panel-heading {
  font-size: clamp(1.25rem, 3vw, 1.75rem);
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 1rem;
}
.tf-2cta-panel--light .tf-2cta-panel-heading {
  color: var(--tf-foreground, #141414);
}
.tf-2cta-panel--dark .tf-2cta-panel-heading,
.tf-2cta-panel--image .tf-2cta-panel-heading {
  color: #fff;
}
.tf-2cta-panel--accent .tf-2cta-panel-heading {
  color: var(--tf-foreground, #141414);
}
.tf-2cta-body {
  font-size: 1rem;
  line-height: 1.6;
  margin: 0 0 1.25rem;
  flex: 1;
}
.tf-2cta-panel--light .tf-2cta-body {
  color: var(--tf-muted-foreground, #737373);
}
.tf-2cta-panel--dark .tf-2cta-body,
.tf-2cta-panel--image .tf-2cta-body {
  color: rgba(255, 255, 255, 0.7);
}
.tf-2cta-panel--accent .tf-2cta-body {
  color: rgba(20, 20, 20, 0.75);
}
/* Bullets */
.tf-2cta-bullets {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}
.tf-2cta-bullets li {
  font-size: 0.9375rem;
  padding-left: 1.25rem;
  position: relative;
  line-height: 1.45;
}
.tf-2cta-bullets li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
}
.tf-2cta-panel--dark .tf-2cta-bullets li,
.tf-2cta-panel--image .tf-2cta-bullets li {
  color: rgba(255, 255, 255, 0.8);
}
.tf-2cta-panel--light .tf-2cta-bullets li {
  color: var(--tf-foreground, #141414);
}
/* Buttons */
.tf-2cta-btn {
  display: inline-block;
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  text-align: center;
  align-self: flex-start;
}
.tf-2cta-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-2cta-btn--primary:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
.tf-2cta-btn--white {
  background: #fff;
  color: var(--tf-foreground, #141414);
  box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}
.tf-2cta-btn--white:hover {
  background: #f0f0f0;
  transform: translateY(-2px);
}
.tf-2cta-btn--outline {
  background: transparent;
  color: var(--tf-primary, #FACC15);
  border: 2px solid var(--tf-primary, #FACC15);
}
.tf-2cta-btn--outline:hover {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-2cta-footnote {
  font-size: 0.8125rem;
  margin: 0.75rem 0 0;
}
.tf-2cta-panel--light .tf-2cta-footnote {
  color: var(--tf-muted-foreground, #737373);
}
.tf-2cta-panel--dark .tf-2cta-footnote,
.tf-2cta-panel--image .tf-2cta-footnote {
  color: rgba(255, 255, 255, 0.45);
}
.tf-2cta-panel--accent .tf-2cta-footnote {
  color: rgba(20, 20, 20, 0.55);
}
/* END_SECTION:two-column-cta */

/* START_SECTION:use-cases (INDEX:184) */
.tf-usecases { padding: 5rem 1rem; }
@media (min-width: 768px) { .tf-usecases { padding: 7rem 1rem; } }
.tf-usecases--white { background: var(--tf-background, #ffffff); }
.tf-usecases--gray { background: var(--tf-muted, #f5f5f5); }
.tf-usecases--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-usecases .tf-container { max-width: 1100px; margin: 0 auto; }
.tf-usecases-header { text-align: center; margin-bottom: 3rem; }
.tf-usecases-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-usecases-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.5rem;
}
.tf-usecases--dark .tf-usecases-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-usecases-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-usecases--dark .tf-usecases-subtitle { color: rgba(255,255,255,0.6); }
.tf-usecases-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}
@media (min-width: 640px) { .tf-usecases-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .tf-usecases-grid { grid-template-columns: repeat(4, 1fr); } }
.tf-usecase-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.875rem;
  padding: 1.5rem;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 1.25rem;
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-usecase-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.tf-usecases--dark .tf-usecase-card {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.tf-usecase-card--featured {
  border-color: var(--tf-primary, #FACC15);
  border-width: 2px;
  background: hsla(45,100%,51%,0.04);
}
.tf-usecase-icon {
  width: 52px;
  height: 52px;
  border-radius: 0.875rem;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-usecase-industry {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-usecases--dark .tf-usecase-industry { color: var(--tf-secondary-foreground, #fafafa); }
.tf-usecase-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
  line-height: 1.5;
}
.tf-usecases--dark .tf-usecase-desc { color: rgba(255,255,255,0.5); }
.tf-usecase-stat { margin-top: auto; }
.tf-usecase-stat-num {
  display: block;
  font-size: 1.5rem;
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-usecase-stat-label {
  display: block;
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 0.25rem;
}
.tf-usecases-list { display: flex; flex-direction: column; gap: 0; }
.tf-usecase-row {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid rgba(0,0,0,0.07);
}
.tf-usecases--dark .tf-usecase-row { border-bottom-color: rgba(255,255,255,0.07); }
.tf-usecase-row:last-child { border-bottom: none; }
.tf-usecase-row-icon {
  width: 44px;
  height: 44px;
  border-radius: 0.75rem;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-usecase-row-body { flex: 1; }
.tf-usecase-row-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0 0 0.25rem;
}
.tf-usecases--dark .tf-usecase-row-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-usecase-row-desc {
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0;
}
.tf-usecases--dark .tf-usecase-row-desc { color: rgba(255,255,255,0.5); }
.tf-usecase-row-stat { text-align: right; flex-shrink: 0; }
.tf-usecase-row-stat-num {
  display: block;
  font-size: 1.25rem;
  font-weight: 900;
  color: var(--tf-primary, #FACC15);
  line-height: 1;
}
.tf-usecase-row-stat-label {
  display: block;
  font-size: 0.75rem;
  color: var(--tf-muted-foreground, #737373);
}
.tf-usecases-footer { text-align: center; margin-top: 3rem; }
.tf-usecases-cta {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.5rem;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s;
}
.tf-usecases-cta:hover { background: hsl(45,100%,45%); }
/* END_SECTION:use-cases */

/* START_SECTION:usp-bar (INDEX:185) */
.tf-usp-bar {
  padding: 1rem 1rem;
  border-top: 1px solid var(--tf-border, #e5e5e5);
  border-bottom: 1px solid var(--tf-border, #e5e5e5);
}
@media (min-width: 768px) {
  .tf-usp-bar {
    padding: 1.25rem 1rem;
  }
}
.tf-usp-bar--white {
  background: var(--tf-background, #ffffff);
}
.tf-usp-bar--gray {
  background: var(--tf-muted, #f5f5f5);
}
.tf-usp-bar--dark {
  background: var(--tf-secondary, #1a1a1a);
  border-color: rgba(255, 255, 255, 0.08);
}
.tf-usp-bar .tf-container {
  max-width: 1280px;
  margin: 0 auto;
}
.tf-usp-bar-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
@media (min-width: 768px) {
  .tf-usp-bar-inner {
    flex-wrap: nowrap;
    gap: 0;
  }
}
.tf-usp-item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5rem 1.25rem;
}
.tf-usp-icon {
  flex-shrink: 0;
  color: var(--tf-primary, #FACC15);
}
.tf-usp-text {
  display: flex;
  flex-direction: column;
}
.tf-usp-title {
  font-weight: 700;
  font-size: 0.875rem;
  white-space: nowrap;
}
.tf-usp-bar--dark .tf-usp-title {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-usp-bar--white .tf-usp-title,
.tf-usp-bar--gray .tf-usp-title {
  color: var(--tf-foreground, #141414);
}
.tf-usp-subtitle {
  font-size: 0.75rem;
  white-space: nowrap;
}
.tf-usp-bar--dark .tf-usp-subtitle {
  color: rgba(255, 255, 255, 0.5);
}
.tf-usp-bar--white .tf-usp-subtitle,
.tf-usp-bar--gray .tf-usp-subtitle {
  color: var(--tf-muted-foreground, #737373);
}
.tf-usp-sep {
  display: none;
  width: 1px;
  height: 28px;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .tf-usp-sep {
    display: block;
  }
}
.tf-usp-bar--dark .tf-usp-sep {
  background: rgba(255, 255, 255, 0.1);
}
.tf-usp-bar--white .tf-usp-sep,
.tf-usp-bar--gray .tf-usp-sep {
  background: var(--tf-border, #e5e5e5);
}
/* END_SECTION:usp-bar */

/* START_SECTION:video-embed (INDEX:187) */
.tf-video {
  padding: 4rem 1rem;
  background: var(--tf-background, #ffffff);
}
@media (min-width: 768px) {
  .tf-video {
    padding: 6rem 1rem;
  }
}
.tf-video .tf-container {
  max-width: 960px;
  margin: 0 auto;
}
.tf-video .tf-section-header {
  text-align: center;
  margin-bottom: 2.5rem;
}
.tf-video-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-video .tf-section-title {
  font-size: clamp(1.875rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-video .tf-section-subtitle {
  color: var(--tf-muted-foreground, #737373);
  font-size: 1.125rem;
}
.tf-video-wrapper {
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
}
.tf-video-player-wrap {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  background: #000;
}
.tf-video-poster {
  position: absolute;
  inset: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tf-video-poster img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tf-video-play-btn {
  position: relative;
  z-index: 1;
  width: 80px;
  height: 80px;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
  transition: transform 0.2s, box-shadow 0.2s;
}
.tf-video-poster:hover .tf-video-play-btn {
  transform: scale(1.08);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);
}
.tf-video-poster:focus-visible {
  outline: 3px solid var(--tf-primary, #FACC15);
  outline-offset: 2px;
}
.tf-video-play-btn svg {
  margin-left: 4px;
}
.tf-video-iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.tf-video-hidden {
  display: none;
}
.tf-video-placeholder {
  aspect-ratio: 16 / 9;
  background: var(--tf-muted, #f5f5f5);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  color: var(--tf-muted-foreground, #737373);
  font-size: 0.9375rem;
}
.tf-video-caption {
  text-align: center;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 1rem;
  font-style: italic;
}
/* END_SECTION:video-embed */

/* START_SECTION:video-hero (INDEX:188) */
.tf-vhero {
  position: relative;
  min-height: 85vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.tf-vhero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.tf-vhero-video-wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.tf-vhero-iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 177.78vh;
  min-height: 56.25vw;
  width: 100%;
  height: 100%;
  border: none;
  pointer-events: none;
}
.tf-vhero-fallback {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tf-vhero-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, var(--tf-vhero-overlay, 0.5));
}
.tf-vhero-content {
  position: relative;
  z-index: 1;
  max-width: 800px;
  margin: 0 auto;
  padding: 6rem 1.5rem;
}
.tf-vhero-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.2);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 1.25rem;
}
.tf-vhero-heading {
  font-size: clamp(2rem, 5vw, 3.75rem);
  font-weight: 900;
  color: #ffffff;
  margin: 0 0 1rem;
  line-height: 1.1;
  text-shadow: 0 2px 20px rgba(0,0,0,0.3);
}
.tf-vhero-sub {
  font-size: clamp(1rem, 2vw, 1.25rem);
  color: rgba(255,255,255,0.85);
  line-height: 1.6;
  margin: 0 0 2rem;
  text-shadow: 0 1px 8px rgba(0,0,0,0.4);
}
.tf-vhero-actions {
  display: flex;
  gap: 0.875rem;
  flex-wrap: wrap;
}
.tf-vhero-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.875rem 2.25rem;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 9999px;
  text-decoration: none;
  transition: transform 0.2s, background 0.2s;
}
.tf-vhero-btn:hover { transform: translateY(-2px); }
.tf-vhero-btn--primary {
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
}
.tf-vhero-btn--primary:hover { background: hsl(45,100%,45%); }
.tf-vhero-btn--ghost {
  background: rgba(255,255,255,0.15);
  color: #ffffff;
  border: 2px solid rgba(255,255,255,0.5);
  backdrop-filter: blur(4px);
}
.tf-vhero-btn--ghost:hover {
  background: rgba(255,255,255,0.25);
  border-color: #ffffff;
}
.tf-vhero-scroll {
  position: absolute;
  bottom: 1.5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  color: rgba(255,255,255,0.6);
  animation: tf-vhero-bounce 2s ease-in-out infinite;
}
@keyframes tf-vhero-bounce {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(6px); }
}
/* END_SECTION:video-hero */

/* START_SECTION:video-section (INDEX:189) */
.tf-video {
  padding: 5rem 1rem;
}
@media (min-width: 768px) {
  .tf-video { padding: 7rem 1rem; }
}
.tf-video--white { background: var(--tf-background, #ffffff); }
.tf-video--gray { background: var(--tf-muted, #f5f5f5); }
.tf-video--dark { background: var(--tf-secondary, #1a1a1a); }
.tf-video .tf-container {
  max-width: 900px;
  margin: 0 auto;
}
.tf-video-header {
  text-align: center;
  margin-bottom: 2.5rem;
}
.tf-video-label {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.25rem 0.875rem;
  border-radius: 9999px;
  background: hsla(45, 100%, 51%, 0.12);
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.75rem;
}
.tf-video-title {
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  margin-bottom: 0.75rem;
}
.tf-video--dark .tf-video-title { color: var(--tf-secondary-foreground, #fafafa); }
.tf-video-subtitle {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  line-height: 1.6;
  margin: 0;
}
.tf-video--dark .tf-video-subtitle { color: rgba(255,255,255,0.6); }
.tf-video-wrap {
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: #000;
  box-shadow: 0 24px 80px rgba(0,0,0,0.25);
}
.tf-video-wrap--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.05);
  color: var(--tf-muted-foreground, #737373);
  font-size: 0.9375rem;
}
.tf-video--dark .tf-video-wrap--empty { background: rgba(255,255,255,0.05); }
.tf-video-poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
  padding: 0;
  cursor: pointer;
  background: none;
}
.tf-video-poster-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s;
}
.tf-video-poster:hover .tf-video-poster-img { transform: scale(1.03); }
.tf-video-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s, box-shadow 0.2s;
  box-shadow: 0 8px 32px rgba(0,0,0,0.35);
  padding-left: 4px;
}
.tf-video-poster:hover .tf-video-play-btn {
  transform: translate(-50%, -50%) scale(1.1);
}
.tf-video-embed {
  position: absolute;
  inset: 0;
}
.tf-video-embed iframe {
  width: 100%;
  height: 100%;
  border: none;
}
.tf-video-caption {
  text-align: center;
  font-size: 0.875rem;
  color: var(--tf-muted-foreground, #737373);
  margin-top: 1.25rem;
}
.tf-video--dark .tf-video-caption { color: rgba(255,255,255,0.4); }
/* END_SECTION:video-section */

/* START_SECTION:video-testimonials (INDEX:190) */
.tf-vtest {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-background, #ffffff);
}
.tf-vtest .tf-container {
  max-width: 1200px;
  margin: 0 auto;
}
.tf-vtest-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-vtest-heading {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  color: var(--tf-foreground, #141414);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-vtest-subheading {
  font-size: 1.0625rem;
  color: var(--tf-muted-foreground, #737373);
  text-align: center;
  max-width: 600px;
  margin: 0 auto 3rem;
  line-height: 1.6;
}
.tf-vtest-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .tf-vtest-grid--2,
  .tf-vtest-grid--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .tf-vtest-grid--3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.tf-vtest-card {
  border-radius: 1.25rem;
  overflow: hidden;
  background: var(--tf-card, #fafafa);
  border: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.tf-vtest-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.12);
}
.tf-vtest-video-wrap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  background: #111;
}
.tf-vtest-iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.tf-vtest-no-video {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  color: rgba(255,255,255,0.4);
  font-size: 0.8125rem;
}
.tf-vtest-meta {
  padding: 1.25rem 1.25rem 1.5rem;
}
.tf-vtest-stars {
  display: flex;
  gap: 2px;
  color: var(--tf-primary, #FACC15);
  margin-bottom: 0.625rem;
}
.tf-vtest-quote {
  font-size: 0.9375rem;
  color: var(--tf-foreground, #141414);
  line-height: 1.6;
  font-style: italic;
  margin: 0 0 0.875rem;
}
.tf-vtest-name {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--tf-foreground, #141414);
  margin: 0;
}
.tf-vtest-biz {
  font-size: 0.8125rem;
  color: var(--tf-muted-foreground, #737373);
  margin: 0.125rem 0 0;
}
.tf-vtest-cta {
  margin-top: 3rem;
  text-align: center;
}
.tf-vtest-btn {
  display: inline-block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 2.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.35);
}
.tf-vtest-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* END_SECTION:video-testimonials */

/* START_SECTION:why-not-email (INDEX:192) */
/* ================================================================
   WHY-NOT-EMAIL SECTION  —  tf-wne-*
   Dark bg (#0A0A0A), gold (#FFCC00), Montserrat
================================================================ */

.tf-wne {
  background: #0A0A0A;
  color: #E5E5E5;
  padding: 5rem 1.25rem;
  font-family: 'Montserrat', sans-serif;
}

.tf-wne-container {
  max-width: 1100px;
  margin: 0 auto;
}

/* ── HEADER ───────────────────────────────────────────────────── */

.tf-wne-header {
  text-align: center;
  margin-bottom: 4rem;
}

.tf-wne-overline {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #FFCC00;
  background: rgba(255, 204, 0, 0.12);
  border: 1px solid rgba(255, 204, 0, 0.3);
  border-radius: 4px;
  padding: 0.35em 0.85em;
  margin-bottom: 1.25rem;
}

.tf-wne-title {
  font-size: clamp(1.6rem, 4vw, 2.75rem);
  font-weight: 800;
  line-height: 1.18;
  color: #FFFFFF;
  margin: 0 0 1rem;
  letter-spacing: -0.02em;
}

.tf-wne-subtitle {
  font-size: clamp(0.95rem, 2vw, 1.1rem);
  color: #999;
  max-width: 640px;
  margin: 0 auto;
  line-height: 1.65;
}

/* ── TIMELINE ─────────────────────────────────────────────────── */

.tf-wne-timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 4.5rem;
  position: relative;
}

/* Mobile: vertical stack */

.tf-wne-step {
  display: grid;
  grid-template-columns: 72px 1fr;
  grid-template-rows: auto 1fr;
  grid-template-areas:
    "marker card"
    "connector card";
  column-gap: 1.25rem;
  position: relative;
}

.tf-wne-step--last {
  grid-template-areas: "marker card";
}

.tf-wne-step-marker {
  grid-area: marker;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 0.25rem;
}

.tf-wne-step-num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  font-size: 1rem;
  font-weight: 800;
  color: #0A0A0A;
  flex-shrink: 0;
}

.tf-wne-step-marker--blue  .tf-wne-step-num { background: #3B82F6; }
.tf-wne-step-marker--orange .tf-wne-step-num { background: #F97316; }
.tf-wne-step-marker--red   .tf-wne-step-num { background: #EF4444; }
.tf-wne-step-marker--grey  .tf-wne-step-num { background: #555; color: #CCC; }

.tf-wne-step-label {
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #666;
  margin-top: 0.4rem;
  text-align: center;
  white-space: nowrap;
}

.tf-wne-step-connector {
  grid-area: connector;
  display: flex;
  justify-content: center;
  padding: 0;
}

.tf-wne-step-connector::before {
  content: '';
  display: block;
  width: 2px;
  min-height: 2rem;
  height: 100%;
  background: linear-gradient(to bottom, #333, #222);
  margin: 0 auto;
}

.tf-wne-step-card {
  grid-area: card;
  background: #111;
  border: 1px solid #222;
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin-bottom: 1.25rem;
}

.tf-wne-step-mood {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #3B82F6;
  margin-bottom: 0.85rem;
}

.tf-wne-step-mood--orange { color: #F97316; }
.tf-wne-step-mood--red    { color: #EF4444; }
.tf-wne-step-mood--grey   { color: #666; }

.tf-wne-step-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.tf-wne-step-list li {
  font-size: 0.9rem;
  color: #CCC;
  line-height: 1.55;
  padding-left: 1.1rem;
  position: relative;
}

.tf-wne-step-list li::before {
  content: '—';
  position: absolute;
  left: 0;
  color: #444;
  font-size: 0.8rem;
}

.tf-wne-step-list-callout {
  background: rgba(239, 68, 68, 0.08);
  border-left: 3px solid #EF4444;
  border-radius: 0 6px 6px 0;
  padding: 0.6rem 0.85rem 0.6rem 1.1rem !important;
  color: #FCA5A5 !important;
}

.tf-wne-step-list-callout::before {
  display: none;
}

/* Desktop: horizontal layout ≥900px */

@media (min-width: 900px) {
  .tf-wne-timeline {
    flex-direction: row;
    align-items: flex-start;
    gap: 0;
  }

  .tf-wne-step {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-template-columns: unset;
    grid-template-rows: unset;
    grid-template-areas: unset;
    column-gap: unset;
    position: relative;
  }

  .tf-wne-step-marker {
    grid-area: unset;
    flex-direction: column;
    align-items: center;
    margin-bottom: 1rem;
    padding-top: 0;
    z-index: 1;
  }

  .tf-wne-step-connector {
    grid-area: unset;
    position: absolute;
    top: 22px; /* vertically center on the circle */
    left: 50%;
    width: 100%;
    height: 2px;
    padding: 0;
    background: #222;
    z-index: 0;
  }

  .tf-wne-step-connector::before {
    display: none;
  }

  .tf-wne-step--last .tf-wne-step-connector {
    display: none;
  }

  .tf-wne-step-card {
    grid-area: unset;
    width: 100%;
    margin: 0;
    flex: 1;
  }
}

/* ── CORE PROBLEM ─────────────────────────────────────────────── */

.tf-wne-problem {
  background: #111;
  border: 1px solid #222;
  border-radius: 16px;
  padding: 2.5rem 1.5rem;
  margin-bottom: 4.5rem;
  text-align: center;
}

@media (min-width: 768px) {
  .tf-wne-problem {
    padding: 3.5rem 3rem;
  }
}

.tf-wne-problem-label {
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #555;
  margin: 0 0 1.1rem;
}

.tf-wne-problem-statement {
  font-size: clamp(1.1rem, 3vw, 1.6rem);
  font-weight: 700;
  color: #FFFFFF;
  line-height: 1.4;
  margin: 0 0 2.5rem;
}

.tf-wne-problem-statement em {
  font-style: normal;
  color: #FFCC00;
}

.tf-wne-problem-stat-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  margin-bottom: 0.85rem;
}

.tf-wne-problem-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
}

.tf-wne-problem-stat-pct {
  font-size: clamp(2.2rem, 5vw, 3.25rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.03em;
}

.tf-wne-problem-stat--bad  .tf-wne-problem-stat-pct { color: #EF4444; }
.tf-wne-problem-stat--good .tf-wne-problem-stat-pct { color: #FFCC00; }

.tf-wne-problem-stat-name {
  font-size: 0.78rem;
  font-weight: 600;
  color: #666;
  text-align: center;
  max-width: 130px;
  line-height: 1.35;
}

.tf-wne-problem-stat--good .tf-wne-problem-stat-name { color: #999; }

.tf-wne-problem-vs {
  font-size: 1rem;
  font-weight: 800;
  color: #333;
  padding: 0 0.25rem;
}

.tf-wne-problem-caption {
  font-size: 0.75rem;
  color: #444;
  margin: 0;
  letter-spacing: 0.04em;
}

/* ── TABLE ────────────────────────────────────────────────────── */

.tf-wne-table-section {
  margin-bottom: 4.5rem;
}

.tf-wne-table-heading {
  font-size: clamp(1.1rem, 2.5vw, 1.5rem);
  font-weight: 700;
  color: #FFFFFF;
  text-align: center;
  margin: 0 0 1.75rem;
}

.tf-wne-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
  border: 1px solid #222;
}

.tf-wne-table {
  width: 100%;
  min-width: 580px;
  border-collapse: collapse;
  font-size: 0.875rem;
}

.tf-wne-table-caption {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* Header row */

.tf-wne-table thead tr {
  background: #161616;
}

.tf-wne-table thead th {
  padding: 1rem 1.25rem;
  text-align: left;
  font-weight: 700;
  border-bottom: 1px solid #2A2A2A;
  vertical-align: bottom;
}

.tf-wne-th-feature {
  width: 36%;
  color: #555;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.tf-wne-th-software {
  color: #777;
  text-align: center;
}

.tf-wne-th-tapfive {
  background: rgba(255, 204, 0, 0.06);
  color: #FFCC00;
  text-align: center;
  border-left: 2px solid rgba(255, 204, 0, 0.35);
}

.tf-wne-th-label {
  display: block;
  font-size: 0.9rem;
  font-weight: 800;
  margin-bottom: 0.2rem;
}

.tf-wne-th-sub {
  display: block;
  font-size: 0.7rem;
  font-weight: 500;
  opacity: 0.75;
  letter-spacing: 0.04em;
}

/* Body rows */

.tf-wne-table tbody tr {
  border-bottom: 1px solid #1A1A1A;
  transition: background 0.15s ease;
}

.tf-wne-table tbody tr:last-child {
  border-bottom: none;
}

.tf-wne-tr-alt {
  background: #0D0D0D;
}

.tf-wne-td-feature {
  padding: 0.9rem 1.25rem;
  color: #AAA;
  font-weight: 600;
  font-size: 0.85rem;
}

.tf-wne-td-software {
  padding: 0.9rem 1.25rem;
  color: #777;
  text-align: center;
  vertical-align: middle;
}

.tf-wne-td-bad {
  color: #EF4444;
  font-weight: 600;
}

.tf-wne-td-tapfive {
  padding: 0.9rem 1.25rem;
  text-align: center;
  vertical-align: middle;
  background: rgba(255, 204, 0, 0.04);
  border-left: 2px solid rgba(255, 204, 0, 0.25);
  color: #E5E5E5;
}

.tf-wne-td-tapfive strong {
  color: #FFCC00;
}

.tf-wne-icon-yes,
.tf-wne-icon-no {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  margin-right: 0.3rem;
  vertical-align: middle;
  flex-shrink: 0;
}

.tf-wne-icon-yes {
  background: rgba(34, 197, 94, 0.15);
  color: #22C55E;
}

.tf-wne-icon-no {
  background: rgba(239, 68, 68, 0.12);
  color: #EF4444;
}

/* ── 3-YEAR MATH ──────────────────────────────────────────────── */

.tf-wne-math {
  margin-bottom: 4.5rem;
}

.tf-wne-math-heading {
  font-size: clamp(1.1rem, 2.5vw, 1.5rem);
  font-weight: 700;
  color: #FFFFFF;
  text-align: center;
  margin: 0 0 2rem;
}

.tf-wne-math-grid {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  margin-bottom: 1.75rem;
}

@media (min-width: 640px) {
  .tf-wne-math-grid {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 0;
  }
}

.tf-wne-math-card {
  flex: 1;
  max-width: 380px;
  width: 100%;
  border-radius: 14px;
  padding: 2rem 1.75rem;
  text-align: center;
}

.tf-wne-math-card--bad {
  background: #120808;
  border: 1px solid #3A1515;
}

.tf-wne-math-card--good {
  background: #111000;
  border: 2px solid rgba(255, 204, 0, 0.45);
}

.tf-wne-math-card-label {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-bottom: 1rem;
}

.tf-wne-math-card--bad  .tf-wne-math-card-label { color: #EF4444; }
.tf-wne-math-card--good .tf-wne-math-card-label { color: #FFCC00; }

.tf-wne-math-card-cost {
  font-size: clamp(1.6rem, 4vw, 2.25rem);
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1;
  margin-bottom: 0.3rem;
}

.tf-wne-math-card--bad  .tf-wne-math-card-cost { color: #EF4444; }
.tf-wne-math-card--good .tf-wne-math-card-cost { color: #FFCC00; }

.tf-wne-math-card-cost-label {
  font-size: 0.75rem;
  color: #555;
  margin-bottom: 1.35rem;
  font-style: italic;
}

.tf-wne-math-card-reviews {
  font-size: 1.25rem;
  font-weight: 800;
  color: #E5E5E5;
  margin-bottom: 0.25rem;
}

.tf-wne-math-card-reviews-label {
  font-size: 0.75rem;
  color: #555;
  margin-bottom: 1rem;
}

.tf-wne-math-card-per {
  font-size: 0.8rem;
  font-weight: 700;
  padding: 0.45em 1em;
  border-radius: 999px;
  display: inline-block;
}

.tf-wne-math-card--bad  .tf-wne-math-card-per { background: rgba(239,68,68,0.12); color: #EF4444; }
.tf-wne-math-card--good .tf-wne-math-card-per { background: rgba(255,204,0,0.12); color: #FFCC00; }

.tf-wne-math-divider {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1.25rem;
  gap: 0.5rem;
  flex-shrink: 0;
}

@media (max-width: 639px) {
  .tf-wne-math-divider {
    flex-direction: row;
    padding: 0.5rem;
  }
  .tf-wne-math-arrow svg {
    transform: rotate(90deg);
  }
}

.tf-wne-math-vs {
  font-size: 0.8rem;
  font-weight: 800;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.tf-wne-math-summary {
  text-align: center;
  font-size: clamp(1rem, 2.5vw, 1.2rem);
  color: #CCC;
  line-height: 1.5;
  margin: 0;
}

.tf-wne-math-summary strong {
  color: #FFCC00;
}

/* ── INSIGHT CALLOUT ──────────────────────────────────────────── */

.tf-wne-insight {
  background: #FFCC00;
  border-radius: 16px;
  padding: 2.5rem 1.5rem;
  margin-bottom: 4rem;
}

@media (min-width: 768px) {
  .tf-wne-insight {
    padding: 3rem 3.5rem;
  }
}

.tf-wne-insight-inner {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  max-width: 820px;
  margin: 0 auto;
}

.tf-wne-insight-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  background: rgba(0,0,0,0.12);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.15rem;
}

.tf-wne-insight-copy {
  flex: 1;
}

.tf-wne-insight-line1 {
  font-size: clamp(1rem, 2.5vw, 1.2rem);
  font-weight: 700;
  color: #0A0A0A;
  margin: 0 0 0.65rem;
  line-height: 1.4;
}

.tf-wne-insight-line2 {
  font-size: 0.95rem;
  color: #1A1A00;
  margin: 0 0 0.5rem;
  line-height: 1.6;
}

.tf-wne-insight-line3 {
  font-size: 0.95rem;
  font-weight: 700;
  color: #0A0A0A;
  margin: 0;
}

/* ── CTA ──────────────────────────────────────────────────────── */

.tf-wne-cta {
  text-align: center;
}

.tf-wne-cta-btn {
  display: inline-block;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  text-decoration: none;
  padding: 1rem 2.5rem;
  border-radius: 8px;
  transition: background 0.2s ease, transform 0.15s ease;
  margin-bottom: 1rem;
}

.tf-wne-cta-btn:hover,
.tf-wne-cta-btn:focus-visible {
  background: #FFD633;
  transform: translateY(-2px);
  outline: none;
}

.tf-wne-cta-btn:active {
  transform: translateY(0);
}

.tf-wne-cta-sub {
  font-size: 0.8rem;
  color: #555;
  margin: 0;
  letter-spacing: 0.04em;
}
/* END_SECTION:why-not-email */

/* START_SECTION:with-without (INDEX:193) */
.tf-ww {
  padding: clamp(3rem, 8vw, 6rem) 1rem;
  background: var(--tf-secondary, #1a1a1a);
}
.tf-ww .tf-container {
  max-width: 960px;
  margin: 0 auto;
}
.tf-ww-eyebrow {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--tf-primary, #FACC15);
  text-align: center;
  margin: 0 0 0.75rem;
}
.tf-ww-heading {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 800;
  color: var(--tf-secondary-foreground, #fafafa);
  text-align: center;
  line-height: 1.15;
  margin: 0 0 1rem;
}
.tf-ww-subheading {
  font-size: 1.0625rem;
  color: rgba(255, 255, 255, 0.55);
  text-align: center;
  max-width: 580px;
  margin: 0 auto 3rem;
  line-height: 1.6;
}
.tf-ww-columns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .tf-ww-columns {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
.tf-ww-col {
  border-radius: 1.25rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.tf-ww-col--without {
  background: rgba(255, 255, 255, 0.03);
  opacity: 0.75;
}
.tf-ww-col--with {
  background: rgba(250, 204, 21, 0.06);
  border-color: rgba(250, 204, 21, 0.25);
  box-shadow: 0 8px 40px rgba(250, 204, 21, 0.1);
}
.tf-ww-col-header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.tf-ww-col-header--with {
  border-color: rgba(250, 204, 21, 0.2);
}
.tf-ww-col-icon {
  font-size: 1.25rem;
  line-height: 1;
}
.tf-ww-col-icon--x {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(239, 68, 68, 0.15);
  color: #ef4444;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-ww-col-icon--check {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: rgba(250, 204, 21, 0.2);
  color: var(--tf-primary, #FACC15);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tf-ww-col-title {
  font-size: 1rem;
  font-weight: 800;
  color: var(--tf-secondary-foreground, #fafafa);
  letter-spacing: -0.01em;
}
.tf-ww-col--without .tf-ww-col-title {
  color: rgba(255, 255, 255, 0.5);
}
.tf-ww-list {
  list-style: none;
  padding: 1.25rem 1.5rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.tf-ww-item {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  font-size: 0.9375rem;
  line-height: 1.45;
}
.tf-ww-item--without {
  color: rgba(255, 255, 255, 0.4);
}
.tf-ww-item--with {
  color: var(--tf-secondary-foreground, #fafafa);
}
.tf-ww-item-icon {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}
.tf-ww-item--without .tf-ww-item-icon {
  color: #ef4444;
  background: rgba(239, 68, 68, 0.12);
}
.tf-ww-item--with .tf-ww-item-icon {
  color: var(--tf-primary, #FACC15);
  background: rgba(250, 204, 21, 0.15);
}
.tf-ww-cta {
  padding: 1rem 1.5rem 1.5rem;
}
.tf-ww-btn {
  display: block;
  background: var(--tf-primary, #FACC15);
  color: var(--tf-foreground, #141414);
  font-weight: 700;
  font-size: 1rem;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  text-decoration: none;
  text-align: center;
  transition: background 0.2s, transform 0.15s;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.4);
}
.tf-ww-btn:hover {
  background: hsl(45, 100%, 45%);
  transform: translateY(-2px);
}
/* END_SECTION:with-without */

/* START_SECTION:zero-risk-guarantee (INDEX:194) */
/* ============================================================
   ZERO RISK GUARANTEE — tf-zrg
   ============================================================ */

/* --- Reset / base ------------------------------------------ */
.tf-zrg *,
.tf-zrg *::before,
.tf-zrg *::after {
  box-sizing: border-box;
}

/* --- Section container ------------------------------------- */
.tf-zrg {
  background: #0A0A0A;
  color: #FFFFFF;
  font-family: 'Montserrat', sans-serif;
  padding: 4rem 1.25rem 4.5rem;
  overflow: hidden;
}

@media (min-width: 768px) {
  .tf-zrg {
    padding: 6rem 2rem 6rem;
  }
}

/* --- Fade-in animation ------------------------------------- */
.tf-zrg__fade {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

.tf-zrg__fade--delay-1 { transition-delay: 0.12s; }
.tf-zrg__fade--delay-2 { transition-delay: 0.24s; }
.tf-zrg__fade--delay-3 { transition-delay: 0.36s; }

.tf-zrg__fade.tf-zrg--visible {
  opacity: 1;
  transform: translateY(0);
}

/* --- HEADER ----------------------------------------------- */
.tf-zrg__header {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 3rem;
}

.tf-zrg__overline {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #FFCC00;
  margin-bottom: 1rem;
  padding: 0.35rem 0.9rem;
  border: 1px solid rgba(255, 204, 0, 0.35);
  border-radius: 2rem;
}

.tf-zrg__title {
  font-size: clamp(1.75rem, 5vw, 2.75rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #FFFFFF;
  margin: 0 0 1rem;
}

.tf-zrg__subtitle {
  font-size: clamp(0.95rem, 2vw, 1.1rem);
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.65);
  margin: 0;
}

/* --- PILLARS ---------------------------------------------- */
.tf-zrg__pillars {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  max-width: 1100px;
  margin: 0 auto 3rem;
}

@media (min-width: 768px) {
  .tf-zrg__pillars {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }
}

/* --- Single pillar card ----------------------------------- */
.tf-zrg__pillar {
  background: #111111;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-top: 3px solid #FFCC00;
  border-radius: 12px;
  padding: 2rem 1.75rem 2.25rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.tf-zrg__pillar:hover {
  transform: translateY(-4px);
  border-top-color: #FFD700;
}

.tf-zrg__pillar-icon {
  margin-bottom: 1rem;
  line-height: 0;
}

.tf-zrg__badge {
  display: inline-block;
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #0A0A0A;
  background: #FFCC00;
  padding: 0.25rem 0.65rem;
  border-radius: 3px;
  margin-bottom: 0.9rem;
}

.tf-zrg__pillar-title {
  font-size: clamp(1rem, 2.2vw, 1.2rem);
  font-weight: 700;
  line-height: 1.3;
  color: #FFFFFF;
  margin: 0 0 0.75rem;
}

.tf-zrg__pillar-body {
  font-size: 0.9rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
  margin: 0;
}

/* --- SOCIAL PROOF BAND ------------------------------------ */
.tf-zrg__band {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  background: #FFCC00;
  border-radius: 10px;
  max-width: 1100px;
  margin: 0 auto 4rem;
  padding: 1.25rem 1.5rem;
}

.tf-zrg__band-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 0.5rem 1.5rem;
  flex: 1 1 auto;
  min-width: 140px;
}

.tf-zrg__band-divider {
  width: 1px;
  height: 2.5rem;
  background: rgba(0, 0, 0, 0.2);
  flex-shrink: 0;
}

@media (max-width: 767px) {
  .tf-zrg__band-divider {
    display: none;
  }
  .tf-zrg__band-item {
    min-width: 100px;
    padding: 0.4rem 0.75rem;
  }
}

.tf-zrg__band-stars {
  font-size: clamp(0.85rem, 2vw, 1.1rem);
  letter-spacing: 0.05em;
  color: #0A0A0A;
  font-weight: 700;
  line-height: 1.2;
}

.tf-zrg__band-number {
  font-size: clamp(1rem, 2.5vw, 1.4rem);
  font-weight: 800;
  color: #0A0A0A;
  line-height: 1.2;
}

.tf-zrg__band-label {
  font-size: clamp(0.6rem, 1.5vw, 0.78rem);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.65);
  margin-top: 0.2rem;
}

/* --- CLOSING CTA ----------------------------------------- */
.tf-zrg__cta {
  text-align: center;
  max-width: 600px;
  margin: 0 auto;
}

.tf-zrg__cta-title {
  font-size: clamp(1.5rem, 4vw, 2.2rem);
  font-weight: 800;
  line-height: 1.2;
  color: #FFFFFF;
  margin: 0 0 0.75rem;
}

.tf-zrg__cta-sub {
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.55);
  margin: 0 0 2rem;
  line-height: 1.6;
}

.tf-zrg__cta-btn {
  display: inline-block;
  background: #FFCC00;
  color: #0A0A0A;
  font-family: 'Montserrat', sans-serif;
  font-size: clamp(0.9rem, 2vw, 1.05rem);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 1rem 2.5rem;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 0 0 0 rgba(255, 204, 0, 0);
  will-change: transform;
}

.tf-zrg__cta-btn:hover,
.tf-zrg__cta-btn:focus-visible {
  background: #FFD700;
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(255, 204, 0, 0.35);
  outline: none;
}

.tf-zrg__cta-btn:active {
  transform: translateY(0);
}

.tf-zrg__cta-fine {
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.38);
  margin: 1.1rem 0 0;
  letter-spacing: 0.01em;
}
/* END_SECTION:zero-risk-guarantee */