/* ─── Textora Theme v2 ────────────────────────────────────────────────────── */
/* Aesthetic: Refined editorial SaaS. Warm precision.                          */
/* Fraunces (editorial display) + Figtree (clean humanist body)               */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,400&family=Figtree:wght@300;400;500;600&display=swap');

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --ink:        #0e0e0c;
  --ink-2:      #52524e;
  --ink-3:      #a8a8a0;
  --canvas:     #f7f6f2;
  --white:      #ffffff;
  --surface:    #faf9f6;
  --border:     #e6e4de;
  --border-2:   #d4d1c8;
  --gold:       #c9903a;
  --gold-light: #f5ead8;
  --gold-dim:   rgba(201,144,58,.12);
  --tg:         #229ed9;
  --green:      #2a7a4b;
  --green-bg:   #edf7f2;

  --display:    'Fraunces', Georgia, serif;
  --body:       'Figtree', system-ui, sans-serif;

  --header-h:   62px;
  --r:          12px;
  --r-sm:       8px;
  --ease:       220ms cubic-bezier(.4,0,.2,1);
  --ease-spring:400ms cubic-bezier(.34,1.56,.64,1);
}

html { font-size: 16px; scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
body {
  font-family: var(--body);
  background: var(--canvas);
  color: var(--ink);
  line-height: 1.6;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.tx-main { flex: 1; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
ul { list-style: none; }

/* ── Container ──────────────────────────────────────────────────────────── */
.tx-container { width: 100%; max-width: 1140px; margin-inline: auto; padding-inline: 40px; }

/* ── Logo ───────────────────────────────────────────────────────────────── */
.tx-logo { display: inline-flex; align-items: center; gap: 2px; text-decoration: none; }
.tx-logo__mark {
  font-family: var(--display);
  font-weight: 700;
  font-size: 24px;
  color: var(--gold);
  font-style: italic;
  letter-spacing: -1px;
  line-height: 1;
}
.tx-logo__name {
  font-family: var(--display);
  font-weight: 600;
  font-size: 22px;
  color: var(--ink);
  letter-spacing: -.5px;
  line-height: 1;
}
.tx-logo--footer .tx-logo__mark,
.tx-logo--footer .tx-logo__name { font-size: 19px; }

/* ── Header ─────────────────────────────────────────────────────────────── */
.tx-header {
  position: sticky; top: 0; z-index: 100;
  height: var(--header-h);
  background: rgba(247,246,242,.9);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--border);
  transition: box-shadow var(--ease);
}
.tx-header.is-scrolled { box-shadow: 0 2px 20px rgba(0,0,0,.07); }
.tx-header__inner { height: 100%; display: flex; align-items: center; gap: 32px; }

.tx-nav { display: flex; align-items: center; gap: 2px; flex: 1; }
.tx-nav__link {
  font-size: 13px; font-weight: 500;
  color: var(--ink-2);
  padding: 6px 11px;
  border-radius: var(--r-sm);
  transition: color var(--ease), background var(--ease);
  white-space: nowrap;
  letter-spacing: .01em;
}
.tx-nav__link:hover { color: var(--ink); background: var(--border); }
.tx-nav__link--active {
  color: var(--ink);
  background: var(--white);
  box-shadow: 0 1px 4px rgba(0,0,0,.08), 0 0 0 1px var(--border);
}

.tx-header__right { display: flex; align-items: center; gap: 12px; margin-left: auto; }

/* lang switch */
.tx-lang-switch { display: flex; gap: 2px; }
.tx-lang-switch ul { display: flex; gap: 2px; list-style: none; padding: 0; margin: 0; }
.tx-lang-switch li { list-style: none; }
.tx-lang-switch a,
.tx-lang-switch span {
  font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .08em;
  padding: 4px 8px; border-radius: 5px;
  color: var(--ink-3);
  transition: all var(--ease);
  display: block;
}
.tx-lang-switch a:hover { color: var(--ink); background: var(--border); }
.tx-lang-switch .current-lang,
.tx-lang-switch [aria-current] { color: var(--ink); background: var(--border); }

/* burger */
.tx-burger {
  display: none; flex-direction: column; justify-content: center;
  gap: 5px; width: 36px; height: 36px;
  background: none; border: none; cursor: pointer; padding: 6px;
  border-radius: var(--r-sm);
}
.tx-burger span {
  display: block; width: 100%; height: 1.5px;
  background: var(--ink);
  transition: transform var(--ease), opacity var(--ease);
  transform-origin: center;
}
.tx-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.tx-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.tx-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.tx-btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 24px; border-radius: var(--r-sm);
  font-family: var(--body); font-size: 14px; font-weight: 500;
  cursor: pointer; border: none; text-decoration: none;
  transition: all var(--ease); white-space: nowrap; letter-spacing: .01em;
}
.tx-btn--primary { background: var(--ink); color: var(--white); }
.tx-btn--primary:hover { background: #222220; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(0,0,0,.18); }
.tx-btn--ghost {
  background: transparent; color: var(--ink-2);
  border: 1px solid var(--border-2);
}
.tx-btn--ghost:hover { border-color: var(--ink-2); color: var(--ink); background: var(--white); }
.tx-btn--outline { background: transparent; color: var(--ink); border: 1px solid var(--ink); }
.tx-btn--outline:hover { background: var(--ink); color: var(--white); }

.tx-btn-tg {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 22px; background: var(--tg); color: var(--white);
  border-radius: var(--r-sm); font-family: var(--body); font-size: 14px; font-weight: 500;
  text-decoration: none; transition: opacity var(--ease); white-space: nowrap;
}
.tx-btn-tg:hover { opacity: .88; }

/* ── Section label ──────────────────────────────────────────────────────── */
.tx-section-label {
  font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: .12em;
  color: var(--ink-3); margin-bottom: 40px;
}

/* ── Hero ────────────────────────────────────────────────────────────────── */
.tx-hero { padding: 88px 0 104px; overflow: hidden; }
.tx-hero .tx-container {
  display: grid; grid-template-columns: 1fr 480px; gap: 64px; align-items: center;
}

.tx-hero__eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 12px; font-weight: 500; color: var(--gold);
  background: var(--gold-light);
  padding: 5px 14px; border-radius: 20px;
  margin-bottom: 28px; letter-spacing: .02em;
}
.tx-hero__eyebrow::before {
  content: '';
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--gold);
  flex-shrink: 0;
}

.tx-hero__title {
  font-family: var(--display);
  font-size: clamp(42px, 5.5vw, 64px);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -2.5px;
  color: var(--ink);
  margin-bottom: 22px;
}
.tx-hero__title em {
  font-style: italic;
  color: var(--gold);
}

.tx-hero__sub {
  font-size: 16px; font-weight: 300;
  color: var(--ink-2); line-height: 1.75;
  max-width: 400px; margin-bottom: 40px;
}

.tx-hero__actions { display: flex; gap: 12px; flex-wrap: wrap; }

/* Hero visual */
.tx-hero__visual { position: relative; height: 380px; }

.tx-hero__window {
  position: absolute;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--r);
  box-shadow: 0 8px 40px rgba(0,0,0,.09), 0 2px 8px rgba(0,0,0,.05);
  overflow: hidden;
}
.tx-hero__window--main {
  width: 300px; top: 0; left: 0; right: 0; margin-inline: auto;
  padding: 20px 22px 22px;
  animation: tx-float1 7s ease-in-out infinite;
}
.tx-hero__window--metrics {
  width: 210px; top: 54px; right: -14px;
  padding: 16px 18px;
  animation: tx-float2 7s ease-in-out infinite 1.2s;
}
.tx-hero__window--chars {
  width: 170px; bottom: 36px; left: -14px;
  padding: 16px 18px;
  animation: tx-float3 7s ease-in-out infinite 2.4s;
}

@keyframes tx-float1 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@keyframes tx-float2 { 0%,100%{transform:translateY(0) rotate(1deg)} 50%{transform:translateY(-7px) rotate(1deg)} }
@keyframes tx-float3 { 0%,100%{transform:translateY(0) rotate(-1deg)} 50%{transform:translateY(-8px) rotate(-1deg)} }

.tx-win-top {
  display: flex; align-items: center; gap: 6px;
  margin-bottom: 14px; padding-bottom: 12px;
  border-bottom: 1px solid var(--border);
}
.tx-win-dot {
  width: 8px; height: 8px; border-radius: 50%;
}
.tx-win-dot:nth-child(1) { background: #ff6058; }
.tx-win-dot:nth-child(2) { background: #ffbd2e; }
.tx-win-dot:nth-child(3) { background: #28c840; }
.tx-win-title { font-size: 11px; font-weight: 600; color: var(--ink-3); margin-left: 4px; letter-spacing: .04em; text-transform: uppercase; }

.tx-win-lines { display: flex; flex-direction: column; gap: 7px; }
.tx-win-lines span {
  height: 7px; background: var(--border); border-radius: 4px; display: block;
  animation: tx-shimmer 2.5s ease-in-out infinite;
}
.tx-win-lines span:nth-child(2) { animation-delay: .15s; }
.tx-win-lines span:nth-child(3) { animation-delay: .3s; }
.tx-win-lines span:nth-child(4) { animation-delay: .45s; }
.tx-win-lines span.tx-win-kw { background: var(--gold-dim); border: 1px solid rgba(201,144,58,.3); }

@keyframes tx-shimmer {
  0%,100% { opacity: .7; }
  50% { opacity: 1; }
}

/* ── Hero window: pulse dot ──────────────────────────────────────────────── */
.tx-win-pulse {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--green); margin-left: auto; flex-shrink: 0;
  box-shadow: 0 0 0 0 rgba(42,122,75,.4);
  animation: tx-win-pulse 2s ease-in-out infinite;
}
@keyframes tx-win-pulse {
  0%   { box-shadow: 0 0 0 0 rgba(42,122,75,.4); }
  70%  { box-shadow: 0 0 0 6px rgba(42,122,75,0); }
  100% { box-shadow: 0 0 0 0 rgba(42,122,75,0); }
}

/* ── Hero window: metrics card ───────────────────────────────────────────── */
.tx-win-metrics-row {
  display: flex; align-items: center; gap: 0; margin-bottom: 14px;
}
.tx-win-metric { flex: 1; text-align: center; }
.tx-win-metric__val {
  font-family: var(--display); font-size: 20px; font-weight: 600;
  color: var(--ink); letter-spacing: -.5px; display: block; line-height: 1;
}
.tx-win-metric__label {
  font-size: 10px; color: var(--ink-3); font-weight: 500;
  text-transform: uppercase; letter-spacing: .06em; margin-top: 4px; display: block;
}
.tx-win-metric-divider {
  width: 1px; height: 32px; background: var(--border); flex-shrink: 0;
}
.tx-win-metrics-bar {
  height: 3px; background: var(--border); border-radius: 2px; margin-bottom: 10px; overflow: hidden;
}
.tx-win-metrics-bar__fill {
  height: 100%; width: 75%; background: var(--gold);
  border-radius: 2px;
  animation: tx-bar-fill 2s ease-out both;
}
@keyframes tx-bar-fill { from { width: 0; } to { width: 75%; } }

.tx-win-metrics-status {
  font-size: 11px; color: var(--ink-2); font-weight: 500;
  display: flex; align-items: center; gap: 6px;
}
.tx-win-status-dot {
  width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0;
}
.tx-win-status-dot--ok { background: var(--green); }

/* ── Hero window: chars card ─────────────────────────────────────────────── */
.tx-win-chars-num {
  font-family: var(--display); font-size: 32px; font-weight: 600;
  color: var(--ink); letter-spacing: -1.5px; line-height: 1; margin-bottom: 4px;
}
.tx-win-chars-label {
  font-size: 11px; color: var(--ink-3); font-weight: 500;
  text-transform: uppercase; letter-spacing: .06em; margin-bottom: 12px;
}
.tx-win-chars-bar {
  height: 3px; background: var(--border); border-radius: 2px; overflow: hidden;
}
.tx-win-chars-bar__fill {
  height: 100%; background: linear-gradient(90deg, var(--gold), var(--gold-light));
  border-radius: 2px; animation: tx-bar-fill 2.2s ease-out both .3s;
}

/* ── How it works ────────────────────────────────────────────────────────── */
.tx-how {
  padding: 80px 0;
  background: var(--white);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.tx-how__grid {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 1px;
  background: var(--border);
  border: 1px solid var(--border);
  border-radius: var(--r); overflow: hidden;
}
.tx-how__step {
  background: var(--white);
  padding: 40px 36px;
  transition: background var(--ease);
}
.tx-how__step:hover { background: var(--surface); }

.tx-how__num {
  font-family: var(--display);
  font-size: 13px; font-weight: 600;
  color: var(--gold); letter-spacing: .04em;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.tx-how__step-title {
  font-family: var(--display);
  font-size: 20px; font-weight: 600;
  letter-spacing: -.4px; margin-bottom: 12px; line-height: 1.25;
}
.tx-how__step-text { font-size: 14px; font-weight: 300; color: var(--ink-2); line-height: 1.7; }

/* ── Tools Grid ──────────────────────────────────────────────────────────── */
.tx-tools { padding: 88px 0; }
.tx-tools__grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
}

.tx-tool-card {
  display: flex; flex-direction: column;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 36px 32px 30px;
  text-decoration: none;
  transition: transform var(--ease), box-shadow var(--ease), border-color var(--ease), background var(--ease);
  position: relative; overflow: hidden;
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(0,0,0,.04), 0 4px 16px rgba(0,0,0,.03);
}

/* Decorative corner accent */
.tx-tool-card::after {
  content: '';
  position: absolute;
  top: 0; right: 0;
  width: 64px; height: 64px;
  background: radial-gradient(circle at top right, var(--gold-dim), transparent 70%);
  opacity: 0;
  transition: opacity var(--ease);
  border-radius: 0 var(--r) 0 0;
}
.tx-tool-card:hover::after { opacity: 1; }

.tx-tool-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 56px rgba(0,0,0,.10), 0 4px 12px rgba(0,0,0,.06);
  border-color: rgba(201,144,58,.35);
  background: var(--surface);
}

.tx-tool-card__top {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 20px;
}
.tx-tool-card__num {
  font-family: var(--display);
  font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: .1em;
  color: var(--ink-3);
}
.tx-tool-card__stat {
  font-size: 10px; font-weight: 600;
  text-transform: uppercase; letter-spacing: .07em;
  color: var(--gold);
  background: var(--gold-light);
  padding: 3px 9px; border-radius: 20px;
  border: 1px solid rgba(201,144,58,.2);
  white-space: nowrap;
}

.tx-tool-card__icon {
  width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  background: var(--canvas);
  border: 1px solid var(--border);
  border-radius: 10px;
  color: var(--ink-2);
  margin-bottom: 22px;
  transition: background var(--ease), color var(--ease), border-color var(--ease), box-shadow var(--ease);
}
.tx-tool-card:hover .tx-tool-card__icon {
  background: var(--gold-light);
  color: var(--gold);
  border-color: rgba(201,144,58,.3);
  box-shadow: 0 4px 12px rgba(201,144,58,.15);
}

.tx-tool-card__title {
  font-family: var(--display);
  font-size: 18px; font-weight: 600;
  letter-spacing: -.4px; margin-bottom: 10px; color: var(--ink);
  line-height: 1.2;
}

.tx-tool-card__desc {
  font-size: 13px; font-weight: 300;
  color: var(--ink-2); line-height: 1.7; flex: 1; margin-bottom: 24px;
}

.tx-tool-card__link {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 600;
  text-transform: uppercase; letter-spacing: .08em;
  color: var(--ink-3);
  transition: color var(--ease), gap var(--ease);
}
.tx-tool-card:hover .tx-tool-card__link {
  color: var(--gold);
  gap: 10px;
}
.tx-tool-card__link svg { transition: transform var(--ease); }
.tx-tool-card:hover .tx-tool-card__link svg { transform: translateX(3px); }

/* ── Pricing ─────────────────────────────────────────────────────────────── */
.tx-pricing {
  padding: 80px 0;
  background: var(--white);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.tx-pricing__grid {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; align-items: start;
}
.tx-pricing__card {
  border: 1px solid var(--border);
  border-radius: var(--r); padding: 36px 32px;
  display: flex; flex-direction: column; gap: 24px;
  background: var(--white);
}
.tx-pricing__card--featured {
  background: var(--ink);
  border-color: var(--ink);
  transform: scale(1.02);
}
.tx-pricing__tier {
  font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em;
  color: var(--ink-3);
}
.tx-pricing__card--featured .tx-pricing__tier { color: rgba(255,255,255,.5); }
.tx-pricing__price {
  font-family: var(--display);
  font-size: 30px; font-weight: 600;
  letter-spacing: -1.5px; color: var(--ink); line-height: 1;
}
.tx-pricing__card--featured .tx-pricing__price { color: var(--white); }
.tx-pricing__list { display: flex; flex-direction: column; gap: 12px; flex: 1; }
.tx-pricing__list li {
  font-size: 13.5px; font-weight: 300;
  color: var(--ink-2); padding-left: 18px; position: relative; line-height: 1.5;
}
.tx-pricing__list li::before {
  content: '';
  position: absolute; left: 0; top: 7px;
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--border-2);
}
.tx-pricing__card--featured .tx-pricing__list li { color: rgba(255,255,255,.7); }
.tx-pricing__card--featured .tx-pricing__list li::before { background: var(--gold); }
.tx-pricing__card--featured .tx-btn--outline {
  border-color: rgba(255,255,255,.25); color: var(--white);
}
.tx-pricing__card--featured .tx-btn--outline:hover {
  background: var(--white); color: var(--ink);
}

/* ── Page template ───────────────────────────────────────────────────────── */
.tx-page { padding: 60px 0 80px; }
.tx-page__inner { max-width: 860px; }
.tx-page__content .wp-block-shortcode,
.tx-page__content p:empty { display: none; }

/* ── SEO text ────────────────────────────────────────────────────────────── */
.tx-seo-text {
  padding: 60px 0 80px;
  border-top: 1px solid var(--border);
}
.tx-seo-text__body {
  max-width: 720px;
  font-size: 14.5px; font-weight: 300; color: var(--ink-2); line-height: 1.85;
}
.tx-seo-text__body h2 {
  font-family: var(--display);
  font-size: 20px; font-weight: 600; color: var(--ink);
  margin: 36px 0 12px; letter-spacing: -.4px;
}
.tx-seo-text__body p { margin-bottom: 18px; }
.tx-seo-text__body p:last-child { margin-bottom: 0; }

/* ── Footer ──────────────────────────────────────────────────────────────── */
.tx-footer__tg-band {
  background: var(--ink); padding: 32px 0;
}
.tx-footer__tg-inner {
  display: flex; align-items: center;
  justify-content: space-between; gap: 24px;
}
.tx-footer__tg-text {
  font-size: 14px; font-weight: 300; color: rgba(255,255,255,.65);
  max-width: 480px;
}
.tx-footer__tg-text strong { color: rgba(255,255,255,.9); font-weight: 500; }

.tx-footer__main {
  background: var(--canvas);
  border-top: 1px solid var(--border);
  padding: 56px 0 32px;
}
.tx-footer__grid {
  display: grid; grid-template-columns: 2fr 1fr 1fr;
  gap: 48px; margin-bottom: 48px;
}
.tx-footer__tagline { margin-top: 12px; font-size: 13px; font-weight: 300; color: var(--ink-3); }
.tx-footer__nav-title {
  font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em;
  color: var(--ink-3); margin-bottom: 16px;
}
.tx-footer__nav { display: flex; flex-direction: column; gap: 2px; }
.tx-footer__link {
  font-size: 13.5px; font-weight: 400; color: var(--ink-2);
  padding: 5px 0; transition: color var(--ease);
}
.tx-footer__link:hover { color: var(--ink); }

.tx-footer__lang-list { display: flex; flex-direction: column; gap: 2px; }
.tx-footer__lang-list li { list-style: none; }
.tx-footer__lang-list a,
.tx-footer__lang-list span {
  font-size: 13.5px; color: var(--ink-2); padding: 5px 0; display: block;
  transition: color var(--ease);
}
.tx-footer__lang-list a:hover { color: var(--ink); }
.tx-footer__lang-list .current-lang { color: var(--ink); font-weight: 500; }

.tx-footer__bottom {
  border-top: 1px solid var(--border); padding-top: 24px;
  display: flex; align-items: center; justify-content: space-between;
}
.tx-footer__copy { font-size: 12px; color: var(--ink-3); }

/* ── 404 ─────────────────────────────────────────────────────────────────── */
.tx-404 { padding: 120px 0; text-align: center; }
.tx-404__code {
  font-family: var(--display); font-size: 120px; font-weight: 600;
  letter-spacing: -6px; color: var(--border); line-height: 1; margin-bottom: 16px;
}
.tx-404__title {
  font-family: var(--display); font-size: 28px; font-weight: 600;
  margin-bottom: 12px; letter-spacing: -.5px;
}
.tx-404__sub { font-size: 15px; color: var(--ink-2); margin-bottom: 36px; }

/* ── Animations ──────────────────────────────────────────────────────────── */
.tx-hero__inner { animation: tx-rise .7s ease both; }
.tx-hero__visual { animation: tx-rise .7s ease .15s both; }
.tx-how__step { animation: tx-rise .6s ease both; }
.tx-how__step:nth-child(2) { animation-delay: .12s; }
.tx-how__step:nth-child(3) { animation-delay: .24s; }
.tx-tool-card { animation: tx-rise .55s ease both; }
.tx-tool-card:nth-child(2) { animation-delay: .07s; }
.tx-tool-card:nth-child(3) { animation-delay: .14s; }
.tx-tool-card:nth-child(4) { animation-delay: .21s; }
.tx-tool-card:nth-child(5) { animation-delay: .28s; }

@keyframes tx-rise {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .tx-container { padding-inline: 24px; }
  .tx-nav { display: none; }
  .tx-burger { display: flex; }
  .tx-nav.is-open {
    display: flex; flex-direction: column;
    position: fixed; inset: var(--header-h) 0 0 0;
    background: var(--white); padding: 20px;
    gap: 4px; z-index: 99;
    border-top: 1px solid var(--border); overflow-y: auto;
  }
  .tx-nav.is-open .tx-nav__link { font-size: 15px; padding: 12px 14px; }
  .tx-hero .tx-container { grid-template-columns: 1fr; gap: 48px; }
  .tx-hero__visual { height: 280px; }
  .tx-hero__window--badge { right: 20px; }
  .tx-tools__grid { grid-template-columns: repeat(2,1fr); }
  .tx-how__grid { grid-template-columns: 1fr; }
  .tx-pricing__grid { grid-template-columns: 1fr; }
  .tx-pricing__card--featured { transform: none; }
  .tx-footer__grid { grid-template-columns: 1fr 1fr; }
  .tx-footer__brand { grid-column: 1 / -1; }
  .tx-footer__tg-inner { flex-direction: column; text-align: center; }
}
@media (max-width: 640px) {
  .tx-container { padding-inline: 16px; }
  .tx-hero { padding: 52px 0 64px; }
  .tx-hero__visual { display: none; }
  .tx-tools__grid { grid-template-columns: 1fr; }
  .tx-footer__grid { grid-template-columns: 1fr; gap: 32px; }
  .tx-footer__bottom { flex-direction: column; gap: 8px; }
}

/* WP */
.aligncenter { margin-inline: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
