/* The campaign keeps its focused navigation inside the original Live Wire shell. */
.generator-funnel { --gf-red: #e22229; }
.generator-funnel .gf-header {
  position: relative;
  background: transparent;
  z-index: 50;
}
.gf-header .header-inner { gap: 24px; }
.gf-header .gf-header-actions { pointer-events: auto; }
.generator-funnel .gf-header .button {
  border-radius: 999px;
  min-height: 48px;
  padding: 13px 21px;
  font-size: 14px;
}
.gf-promo { padding-top: 32px; }
.gf-promo > .gf-wrap { min-height: 44px; }
.gf-hero::before {
  background-image: linear-gradient(105deg, #101c20 18%, #101c20a8 80%), url('/livewire/assets/paint/topographic-contours.svg');
  background-size: auto, 1450px auto;
}
.gf-painted::before {
  inset: -18% -8% -15%;
  background: url('/livewire/assets/paint/headline-red-brush.webp') center / 100% 100% no-repeat;
  clip-path: none;
  transform: rotate(-4.5deg);
}
.gf-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 -15px;
  height: 36px;
  background: var(--gf-red);
  mask: url('/livewire/assets/paint/dark-brush-edge-header.webp') center / 100% 100% no-repeat;
  -webkit-mask: url('/livewire/assets/paint/dark-brush-edge-header.webp') center / 100% 100% no-repeat;
  pointer-events: none;
}
.gf-trust { padding-top: 16px; }
.gf-final {
  background: var(--gf-paper);
  color: var(--gf-ink);
  padding-bottom: 120px;
}
.gf-final::before {
  background: url('/livewire/assets/paint/topographic-contours.svg') center / 1100px auto;
  opacity: .22;
}
.gf-final .eyebrow { color: #66554a; }
.gf-final h2 > span { color: var(--gf-red); }
.gf-final > .gf-wrap > p:not(.eyebrow) { color: var(--gf-muted); }
.generator-funnel .site-footer h2 {
  font-family: var(--body);
  font-size: 23px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -.3px;
}
@media (max-width: 900px) {
  .gf-header .header-motto { display: block; font-size: 21px; width: max-content; }
  .gf-header .gf-header-actions { gap: 18px; }
}
@media (max-width: 640px) {
  /* Override the shared three-action bar for this two-action campaign. */
  body.generator-funnel[data-livewire-page] .mobile-action-bar[data-livewire-mobile-actions] {
    grid-template-columns: 80px minmax(0, 1fr);
  }
  body.generator-funnel[data-livewire-page] .mobile-action-bar[data-livewire-mobile-actions] > a {
    font-size: 12px;
    white-space: normal;
  }
  body.generator-funnel[data-livewire-page] .mobile-action-bar[data-livewire-mobile-actions] > a:last-child,
  body.generator-funnel[data-livewire-page] .mobile-action-bar[data-livewire-mobile-actions] > a:last-child .icon {
    color: #fff;
  }
  body.generator-funnel.gf-form-in-view .mobile-action-bar[data-livewire-mobile-actions],
  body.generator-funnel.gf-keyboard-open .mobile-action-bar[data-livewire-mobile-actions] {
    display: none;
  }
  .gf-header .header-inner { gap: 18px; }
  .gf-header .header-motto { font-size: 19px; }
  .gf-header .header-motto .marker-line { width: 75px; }
  .gf-header .gf-header-actions { gap: 0; }
  .gf-header .gf-call { font-size: 12px; gap: 5px; }
  .gf-header .gf-call .icon { width: 16px; height: 16px; }
  .gf-promo { padding-top: 23px; }
  .gf-promo > .gf-wrap { min-height: 40px; }
  .gf-painted::before { background-image: url('/livewire/assets/paint/headline-red-brush-mobile.webp'); }
  .gf-hero::after { height: 26px; bottom: -11px; }
  .gf-trust { padding-top: 12px; }
  .gf-final { padding-bottom: 90px; }
}
@media (max-width: 420px) {
  .gf-header .header-motto { display: none; }
  .gf-header .gf-call { font-size: 14px; }
}
