:root {
   --tgzap-bg: #071019;
   --tgzap-bg-soft: #0c1725;
   --tgzap-surface: rgba(10, 21, 34, 0.84);
   --tgzap-surface-strong: rgba(10, 21, 34, 0.96);
   --tgzap-border: rgba(157, 255, 219, 0.2);
   --tgzap-text: #f7fcff;
   --tgzap-text-soft: #c7d8e5;
   --tgzap-accent: #37e3a4;
   --tgzap-accent-strong: #23b9ff;
   --tgzap-danger: #ff7189;
   --tgzap-shadow: 0 32px 90px rgba(0, 0, 0, 0.32);
   --tgzap-radius-xl: 32px;
   --tgzap-radius-lg: 24px;
   --tgzap-radius-md: 18px;
}

html {
   scroll-behavior: smooth;
}

body {
   background:
      radial-gradient(circle at top left, rgba(35, 185, 255, 0.12), transparent 28%),
      radial-gradient(circle at 90% 12%, rgba(55, 227, 164, 0.12), transparent 22%),
      linear-gradient(180deg, #050b12 0%, #071019 48%, #050b12 100%);
   color: var(--tgzap-text);
   font-family: 'Manrope', sans-serif;
}

body.tgzap-nav-open {
   overflow: hidden;
}

.tgzap-home,
.tgzap-header,
.tgzap-footer {
   position: relative;
   z-index: 1;
}

.tgzap-home a,
.tgzap-header a,
.tgzap-footer a {
   text-decoration: none;
}

.tgzap-eyebrow {
   display: inline-flex;
   align-items: center;
   gap: 0.65rem;
   padding: 0.5rem 0.9rem;
   border: 1px solid rgba(255, 255, 255, 0.1);
   border-radius: 999px;
   background: rgba(255, 255, 255, 0.03);
   color: #d9ffef;
   font-size: 0.82rem;
   font-weight: 700;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}

.tgzap-button {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   gap: 0.65rem;
   border: 1px solid transparent;
   border-radius: 999px;
   padding: 0.95rem 1.45rem;
   font-size: 0.98rem;
   font-weight: 800;
   line-height: 1;
   transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.tgzap-button:hover {
   transform: translateY(-2px);
}

.tgzap-button--primary {
   background: linear-gradient(135deg, var(--tgzap-accent) 0%, var(--tgzap-accent-strong) 100%);
   box-shadow: 0 24px 45px rgba(35, 185, 255, 0.24);
   color: #04131d;
}

.tgzap-button--ghost {
   background: rgba(255, 255, 255, 0.06);
   border-color: rgba(255, 255, 255, 0.16);
   color: #f7fcff;
}

.tgzap-button--full {
   width: 100%;
}

.tgzap-header {
   position: sticky;
   top: 0;
   z-index: 40;
   padding: 18px 0 0;
}

.tgzap-header__shell {
   width: min(1180px, calc(100% - 32px));
   margin: 0 auto;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 1rem;
   padding: 1rem 1.25rem;
   border: 1px solid rgba(255, 255, 255, 0.09);
   border-radius: 999px;
   background: rgba(7, 16, 25, 0.78);
   backdrop-filter: blur(18px);
   box-shadow: 0 18px 40px rgba(0, 0, 0, 0.24);
}

.tgzap-header__brand,
.tgzap-footer__logo-link {
   display: inline-flex;
   align-items: center;
   gap: 0.9rem;
   color: var(--tgzap-text);
}

.tgzap-header__logo,
.tgzap-footer__logo {
   width: auto;
   max-height: 44px;
}

.tgzap-header__brand-copy strong,
.tgzap-footer__logo-link strong {
   display: block;
   font-family: 'Sora', sans-serif;
   font-size: 1rem;
   letter-spacing: -0.03em;
}

.tgzap-header__brand-copy small,
.tgzap-footer__logo-link small {
   display: block;
   color: var(--tgzap-text-soft);
   font-size: 0.78rem;
   font-weight: 700;
   letter-spacing: 0.04em;
   text-transform: uppercase;
}

.tgzap-header__nav {
   display: flex;
   align-items: center;
   gap: 1.15rem;
}

.tgzap-header__nav a {
   color: rgba(247, 252, 255, 0.9);
   font-size: 0.95rem;
   font-weight: 700;
}

.tgzap-header__nav a:hover,
.tgzap-footer__links a:hover,
.tgzap-footer__contact a:hover {
   color: #ffffff;
}

.tgzap-header__actions {
   display: flex;
   align-items: center;
   gap: 0.85rem;
}

.tgzap-header__toggle {
   display: none;
   width: 48px;
   height: 48px;
   border: 1px solid rgba(255, 255, 255, 0.12);
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.04);
   padding: 0;
}

.tgzap-header__toggle span {
   display: block;
   width: 18px;
   height: 2px;
   margin: 4px auto;
   border-radius: 999px;
   background: #fff;
}

.tgzap-mobile-nav {
   position: fixed;
   inset: 0;
   z-index: 45;
   padding: 1rem;
   background: rgba(2, 7, 12, 0.72);
   backdrop-filter: blur(14px);
}

.tgzap-mobile-nav__panel {
   margin-left: auto;
   width: min(420px, 100%);
   height: 100%;
   padding: 1.5rem;
   border: 1px solid rgba(255, 255, 255, 0.08);
   border-radius: 28px;
   background: rgba(8, 15, 24, 0.96);
   box-shadow: var(--tgzap-shadow);
   overflow: auto;
}

.tgzap-mobile-nav__top,
.tgzap-mobile-nav__links,
.tgzap-mobile-nav__meta {
   display: grid;
   gap: 1rem;
}

.tgzap-mobile-nav__top {
   grid-template-columns: 1fr auto;
   align-items: start;
   margin-bottom: 2rem;
}

.tgzap-mobile-nav__top p,
.tgzap-mobile-nav__meta a,
.tgzap-footer__brand p,
.tgzap-footer__contact a,
.tgzap-footer__links a {
   color: var(--tgzap-text-soft);
}

.tgzap-mobile-nav__top strong,
.tgzap-mobile-nav__meta a:hover {
   color: var(--tgzap-text);
}

.tgzap-mobile-nav__links {
   margin-bottom: 1.6rem;
}

.tgzap-mobile-nav__links a {
   padding: 0.9rem 1rem;
   border-radius: 16px;
   background: rgba(255, 255, 255, 0.03);
   color: var(--tgzap-text);
   font-weight: 700;
}

.tgzap-mobile-nav__close {
   width: 44px;
   height: 44px;
   border: 0;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.06);
   color: #fff;
}

.tgzap-hero {
   position: relative;
   overflow: hidden;
   padding: 120px 0 80px;
}

.tgzap-hero__noise,
.tgzap-hero__glow {
   position: absolute;
   pointer-events: none;
}

.tgzap-hero__noise {
   inset: 0;
   opacity: 0.22;
   background-image:
      linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
   background-size: 72px 72px;
   mask-image: radial-gradient(circle at center, black 18%, transparent 78%);
}

.tgzap-hero__glow {
   width: 420px;
   height: 420px;
   border-radius: 50%;
   filter: blur(50px);
}

.tgzap-hero__glow--left {
   left: -120px;
   top: 90px;
   background: rgba(55, 227, 164, 0.17);
}

.tgzap-hero__glow--right {
   right: -90px;
   top: 60px;
   background: rgba(35, 185, 255, 0.16);
}

.tgzap-hero__grid {
   position: relative;
   display: grid;
   grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr);
   gap: 3.5rem;
   align-items: center;
}

.tgzap-hero__copy h1,
.tgzap-section__heading h2,
.tgzap-section__copy h2,
.tgzap-cta-panel h2 {
   font-family: 'Sora', sans-serif;
   letter-spacing: -0.05em;
   color: #f7fcff;
   text-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.tgzap-hero__copy h1 {
   margin: 1.1rem 0 1.3rem;
   font-size: clamp(2.8rem, 5.4vw, 5rem);
   line-height: 0.98;
   color: #f2fbff;
}

.tgzap-hero__copy p,
.tgzap-section__heading p,
.tgzap-section__copy p,
.tgzap-cta-panel p {
   color: var(--tgzap-text-soft);
   font-size: 1.08rem;
   line-height: 1.8;
}

.tgzap-section__heading,
.tgzap-section__copy,
.tgzap-cta-panel,
.tgzap-footer__brand,
.tgzap-footer__links,
.tgzap-footer__contact {
   color: var(--tgzap-text);
}

.tgzap-hero__actions {
   display: flex;
   flex-wrap: wrap;
   gap: 1rem;
   margin-top: 2rem;
}

.tgzap-hero__chips {
   display: flex;
   flex-wrap: wrap;
   gap: 0.85rem;
   margin-top: 2rem;
}

.tgzap-hero__chips span,
.tgzap-console__pill,
.tgzap-console__metrics article,
.tgzap-floating-card,
.tgzap-benefit,
.tgzap-card,
.tgzap-compare,
.tgzap-step,
.tgzap-faq__item,
.tgzap-cta-panel,
.tgzap-footer__grid {
   border: 1px solid rgba(255, 255, 255, 0.08);
   background: var(--tgzap-surface);
   backdrop-filter: blur(16px);
}

.tgzap-hero__chips span {
   display: inline-flex;
   align-items: center;
   padding: 0.75rem 1rem;
   border-radius: 999px;
   color: #e5fff7;
   font-weight: 700;
}

.tgzap-hero__visual {
   position: relative;
   min-height: 560px;
}

.tgzap-console {
   position: relative;
   padding: 1rem;
   border: 1px solid rgba(255, 255, 255, 0.08);
   border-radius: var(--tgzap-radius-xl);
   background: linear-gradient(180deg, rgba(7, 16, 25, 0.98) 0%, rgba(10, 21, 34, 0.88) 100%);
   box-shadow: var(--tgzap-shadow);
}

.tgzap-console__top {
   display: flex;
   gap: 0.5rem;
   margin-bottom: 1rem;
}

.tgzap-console__top span {
   width: 12px;
   height: 12px;
   border-radius: 50%;
   background: rgba(255, 255, 255, 0.2);
}

.tgzap-console__body {
   display: grid;
   grid-template-columns: 115px minmax(0, 1fr);
   gap: 1rem;
}

.tgzap-console__sidebar {
   display: grid;
   gap: 0.75rem;
}

.tgzap-console__pill {
   padding: 0.85rem 0.8rem;
   border-radius: 18px;
   color: #d5e3ec;
   font-size: 0.86rem;
   font-weight: 800;
   text-align: center;
}

.tgzap-console__pill--active {
   color: #04131d;
   background: linear-gradient(135deg, rgba(55, 227, 164, 0.95), rgba(35, 185, 255, 0.95));
}

.tgzap-console__content {
   display: grid;
   gap: 1rem;
}

.tgzap-chat-card {
   padding: 1.25rem;
   border-radius: 24px;
   background: rgba(255, 255, 255, 0.03);
}

.tgzap-chat-card__header {
   display: flex;
   justify-content: space-between;
   gap: 1rem;
   align-items: center;
   margin-bottom: 1rem;
}

.tgzap-chat-card__header small {
   display: block;
   color: var(--tgzap-text-soft);
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.08em;
}

.tgzap-chat-card__header strong {
   font-size: 1.08rem;
   color: #f5fbff;
}

.tgzap-chat-card__header span {
   display: inline-flex;
   align-items: center;
   padding: 0.5rem 0.75rem;
   border-radius: 999px;
   background: rgba(55, 227, 164, 0.12);
   color: #a8ffda;
   font-size: 0.82rem;
   font-weight: 800;
}

.tgzap-message {
   max-width: 82%;
   margin-bottom: 0.85rem;
   padding: 0.95rem 1rem;
   border-radius: 18px;
   font-size: 0.96rem;
   line-height: 1.7;
}

.tgzap-message--incoming {
   border-top-left-radius: 6px;
   background: rgba(255, 255, 255, 0.05);
   color: #edf7fd;
}

.tgzap-message--outgoing {
   margin-left: auto;
   border-top-right-radius: 6px;
   background: linear-gradient(135deg, rgba(55, 227, 164, 0.9), rgba(35, 185, 255, 0.82));
   color: #04131d;
   font-weight: 700;
}

.tgzap-console__metrics {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 0.9rem;
}

.tgzap-console__metrics article {
   padding: 1rem;
   border-radius: 20px;
}

.tgzap-console__metrics small {
   display: block;
   margin-bottom: 0.45rem;
   color: var(--tgzap-text-soft);
   font-size: 0.76rem;
   text-transform: uppercase;
   letter-spacing: 0.08em;
}

.tgzap-floating-card {
   position: absolute;
   width: 250px;
   padding: 1.05rem 1.15rem;
   border-radius: 22px;
   box-shadow: 0 18px 32px rgba(0, 0, 0, 0.2);
}

.tgzap-floating-card span {
   display: block;
   margin-bottom: 0.45rem;
   color: var(--tgzap-accent);
   font-size: 0.78rem;
   font-weight: 800;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}

.tgzap-floating-card strong {
   font-size: 0.96rem;
   line-height: 1.55;
   color: #f5fbff;
}

.tgzap-floating-card--top {
   top: 32px;
   right: -18px;
}

.tgzap-floating-card--bottom {
   left: -12px;
   bottom: 42px;
}

.tgzap-section {
   padding: 90px 0;
}

.tgzap-section--accent,
.tgzap-section--comparison,
.tgzap-section--authority,
.tgzap-section--cta {
   position: relative;
}

.tgzap-section--accent::before,
.tgzap-section--comparison::before,
.tgzap-section--authority::before,
.tgzap-section--cta::before {
   content: '';
   position: absolute;
   inset: 24px 0;
   border-top: 1px solid rgba(255, 255, 255, 0.05);
   border-bottom: 1px solid rgba(255, 255, 255, 0.05);
   pointer-events: none;
}

.tgzap-section__heading,
.tgzap-section__copy {
   max-width: 760px;
}

.tgzap-section__heading h2,
.tgzap-section__copy h2,
.tgzap-cta-panel h2 {
   margin: 1rem 0 1.1rem;
   font-size: clamp(2rem, 3.8vw, 3.35rem);
   line-height: 1.06;
}

.tgzap-section__split {
   display: grid;
   grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
   gap: 2rem;
   align-items: start;
}

.tgzap-card-grid,
.tgzap-resource-grid,
.tgzap-timeline,
.tgzap-benefits-grid,
.tgzap-compare-grid,
.tgzap-authority-grid {
   display: grid;
   gap: 1.2rem;
}

.tgzap-card-grid--problems {
   grid-template-columns: repeat(3, minmax(0, 1fr));
   margin-top: 2.5rem;
}

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

.tgzap-card,
.tgzap-step,
.tgzap-benefit,
.tgzap-compare,
.tgzap-faq__item,
.tgzap-cta-panel {
   border-radius: var(--tgzap-radius-lg);
}

.tgzap-card {
   padding: 1.5rem;
   box-shadow: 0 18px 45px rgba(0, 0, 0, 0.14);
}

.tgzap-card__icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 52px;
   height: 52px;
   margin-bottom: 1rem;
   border-radius: 18px;
   background: linear-gradient(135deg, rgba(55, 227, 164, 0.18), rgba(35, 185, 255, 0.18));
   color: #b2fff1;
   font-size: 1.35rem;
}

.tgzap-card h3,
.tgzap-step h3,
.tgzap-compare__label,
.tgzap-footer__links h3,
.tgzap-footer__contact h3 {
   font-family: 'Sora', sans-serif;
   color: #f7fcff;
}

.tgzap-card h3,
.tgzap-step h3 {
   margin-bottom: 0.75rem;
   font-size: 1.15rem;
}

.tgzap-card p,
.tgzap-step p,
.tgzap-compare li,
.tgzap-benefit p,
.tgzap-footer__brand p {
   color: var(--tgzap-text-soft);
   line-height: 1.75;
}

.tgzap-card strong,
.tgzap-card--authority strong,
.tgzap-compare__label,
.tgzap-faq__question span:first-child,
.tgzap-contact-points a:hover,
.tgzap-footer__logo-link {
   color: #f7fcff;
}

.tgzap-card--resource {
   display: flex;
   align-items: center;
   gap: 1rem;
}

.tgzap-card--resource .tgzap-card__icon {
   margin-bottom: 0;
   flex: 0 0 auto;
}

.tgzap-card--resource h3 {
   margin-bottom: 0;
}

.tgzap-timeline {
   grid-template-columns: repeat(5, minmax(0, 1fr));
   margin-top: 2.5rem;
}

.tgzap-step {
   position: relative;
   padding: 1.6rem;
}

.tgzap-step::before {
   content: '';
   position: absolute;
   top: 34px;
   left: calc(100% - 8px);
   width: 18px;
   height: 1px;
   background: linear-gradient(90deg, rgba(35, 185, 255, 0.5), transparent);
}

.tgzap-step:last-child::before {
   display: none;
}

.tgzap-step__number {
   display: inline-flex;
   margin-bottom: 1rem;
   padding: 0.45rem 0.72rem;
   border-radius: 999px;
   background: rgba(55, 227, 164, 0.1);
   color: #d9ffef;
   font-size: 0.86rem;
   font-weight: 800;
   letter-spacing: 0.08em;
}

.tgzap-benefits-grid {
   grid-template-columns: repeat(4, minmax(0, 1fr));
   margin-top: 2.2rem;
}

.tgzap-benefit {
   display: flex;
   gap: 0.85rem;
   align-items: start;
   padding: 1.25rem 1.2rem;
}

.tgzap-benefit__marker {
   width: 12px;
   height: 12px;
   margin-top: 0.38rem;
   border-radius: 50%;
   background: linear-gradient(135deg, var(--tgzap-accent), var(--tgzap-accent-strong));
   box-shadow: 0 0 18px rgba(55, 227, 164, 0.45);
   flex: 0 0 auto;
}

.tgzap-benefit p {
   margin: 0;
   font-weight: 700;
   color: #ebf6fd;
}

.tgzap-compare-grid {
   grid-template-columns: repeat(2, minmax(0, 1fr));
   margin-top: 2.4rem;
}

.tgzap-compare {
   padding: 1.8rem;
}

.tgzap-compare__label {
   display: inline-flex;
   margin-bottom: 1rem;
   font-size: 1.4rem;
}

.tgzap-compare ul {
   margin: 0;
   padding: 0;
   list-style: none;
   display: grid;
   gap: 0.9rem;
}

.tgzap-compare li {
   position: relative;
   padding-left: 1.4rem;
}

.tgzap-compare li::before {
   content: '';
   position: absolute;
   top: 0.68rem;
   left: 0;
   width: 7px;
   height: 7px;
   border-radius: 50%;
}

.tgzap-compare--before li::before {
   background: var(--tgzap-danger);
}

.tgzap-compare--after {
   border-color: rgba(55, 227, 164, 0.22);
   background: linear-gradient(180deg, rgba(10, 21, 34, 0.94) 0%, rgba(8, 29, 34, 0.84) 100%);
}

.tgzap-compare--after li::before {
   background: var(--tgzap-accent);
}

.tgzap-authority-grid {
   grid-template-columns: repeat(3, minmax(0, 1fr));
   margin-top: 2.2rem;
}

.tgzap-card--authority strong {
   display: block;
   margin-bottom: 0.85rem;
   font-size: 1.12rem;
}

.tgzap-faq {
   display: grid;
   gap: 1rem;
   margin-top: 2.1rem;
}

.tgzap-faq__item {
   overflow: hidden;
}

.tgzap-faq__question {
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 1rem;
   padding: 1.35rem 1.45rem;
   border: 0;
   background: transparent;
   color: var(--tgzap-text);
   font-family: 'Sora', sans-serif;
   font-size: 1.02rem;
   font-weight: 700;
   text-align: left;
}

.tgzap-faq__icon {
   position: relative;
   width: 18px;
   height: 18px;
   flex: 0 0 auto;
}

.tgzap-faq__icon::before,
.tgzap-faq__icon::after {
   content: '';
   position: absolute;
   left: 50%;
   top: 50%;
   width: 16px;
   height: 2px;
   border-radius: 999px;
   background: rgba(255, 255, 255, 0.82);
   transform: translate(-50%, -50%);
}

.tgzap-faq__icon::after {
   transform: translate(-50%, -50%) rotate(90deg);
   transition: opacity 0.2s ease;
}

.tgzap-faq__answer {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.28s ease;
}

.tgzap-faq__answer p {
   margin: 0;
   padding: 0 1.45rem 1.45rem;
   color: #d5e3ec;
   line-height: 1.8;
}

.tgzap-faq__item.is-open .tgzap-faq__answer {
   max-height: 220px;
}

.tgzap-faq__item.is-open .tgzap-faq__icon::after {
   opacity: 0;
}

.tgzap-cta-panel {
   display: grid;
   grid-template-columns: minmax(0, 1fr) auto;
   gap: 2rem;
   align-items: center;
   padding: 2rem;
   box-shadow: var(--tgzap-shadow);
}

.tgzap-cta-panel__actions {
   display: grid;
   gap: 1rem;
}

.tgzap-contact-points {
   display: grid;
   gap: 0.7rem;
}

.tgzap-contact-points a {
   color: var(--tgzap-text-soft);
   font-weight: 700;
}

.tgzap-footer {
   padding: 0 0 44px;
}

.tgzap-footer__grid {
   display: grid;
   grid-template-columns: minmax(0, 1.15fr) repeat(2, minmax(0, 0.7fr));
   gap: 2rem;
   padding: 2rem;
   border-radius: 28px;
}

.tgzap-footer__links,
.tgzap-footer__contact {
   display: grid;
   gap: 0.9rem;
   align-content: start;
}

.tgzap-footer__links h3,
.tgzap-footer__contact h3 {
   margin-bottom: 0.15rem;
   font-size: 1rem;
}

.tgzap-footer__bottom {
   padding-top: 1.2rem;
   text-align: center;
}

.tgzap-footer__bottom p {
   color: rgba(214, 229, 238, 0.88);
   font-size: 0.95rem;
}

[data-reveal] {
   opacity: 0;
   transform: translateY(20px);
   transition: opacity 0.5s ease, transform 0.5s ease;
}

[data-reveal].is-visible {
   opacity: 1;
   transform: translateY(0);
}

@media (max-width: 1199px) {
   .tgzap-header__shell {
      width: min(100% - 24px, 1120px);
   }

   .tgzap-hero__grid,
   .tgzap-section__split,
   .tgzap-cta-panel,
   .tgzap-footer__grid {
      grid-template-columns: 1fr;
   }

   .tgzap-card-grid--problems,
   .tgzap-benefits-grid,
   .tgzap-authority-grid,
   .tgzap-timeline {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }

   .tgzap-step::before {
      display: none;
   }

   .tgzap-floating-card--top {
      right: 0;
   }

   .tgzap-floating-card--bottom {
      left: 0;
   }
}

@media (max-width: 991px) {
   .tgzap-header {
      padding-top: 12px;
   }

   .tgzap-header__shell {
      border-radius: 24px;
      padding: 0.95rem 1rem;
   }

   .tgzap-header__nav,
   .tgzap-header__cta {
      display: none;
   }

   .tgzap-header__toggle {
      display: inline-block;
   }

   .tgzap-hero {
      padding: 104px 0 60px;
   }

   .tgzap-hero__grid,
   .tgzap-console__body,
   .tgzap-console__metrics,
   .tgzap-card-grid--problems,
   .tgzap-resource-grid,
   .tgzap-benefits-grid,
   .tgzap-compare-grid,
   .tgzap-authority-grid {
      grid-template-columns: 1fr;
   }

   .tgzap-hero__visual {
      min-height: auto;
      padding-bottom: 110px;
   }

   .tgzap-floating-card {
      position: relative;
      width: 100%;
      top: auto;
      right: auto;
      left: auto;
      bottom: auto;
      margin-top: 1rem;
   }
}

@media (max-width: 767px) {
   .tgzap-hero__copy h1 {
      font-size: clamp(2.4rem, 11vw, 3.55rem);
   }

   .tgzap-section {
      padding: 74px 0;
   }

   .tgzap-section__heading h2,
   .tgzap-section__copy h2,
   .tgzap-cta-panel h2 {
      font-size: clamp(1.8rem, 8vw, 2.6rem);
   }

   .tgzap-cta-panel,
   .tgzap-footer__grid,
   .tgzap-card,
   .tgzap-step,
   .tgzap-benefit,
   .tgzap-compare {
      padding: 1.4rem;
   }

   .tgzap-header__brand-copy small,
   .tgzap-footer__logo-link small {
      font-size: 0.72rem;
   }
}
