/* fivetowersdesign.com -- style.css
   Theme: Parchment + Dark Forest Green + Electric Lime + Rust
   Nav: Full-screen overlay hamburger
   Hero: Dark editorial with SERP mockup
   Pricing: Monthly/annual toggle, dark bg
   CSS prefix: ft-
   Fonts: Syne + Figtree
   ------------------------------------------------------------ */

@import url('https://fonts.googleapis.com/css2?family=Syne:wght@600;700;800&family=Figtree:wght@400;500;600&display=swap');

:root {
  --ft-paper:   #F8F6F1;
  --ft-surface: #EFEDE8;
  --ft-card:    #E4E2DA;
  --ft-pebble:  #D6D4CC;
  --ft-ink:     #0B1F0F;
  --ft-body:    #44503E;
  --ft-muted:   #8C9485;
  --ft-white:   #FFFFFF;
  --ft-lime:    #C9ED32;
  --ft-lime-d:  #A8C120;
  --ft-lime-g:  rgba(201,237,50,0.12);
  --ft-rust:    #E85D2C;
  --ft-rust-g:  rgba(232,93,44,0.1);
  --ft-forest:  #1A3820;
  --ft-edge:    rgba(11,31,15,0.08);
  --ft-edge2:   rgba(11,31,15,0.15);
  --ft-max:     1220px;
  --ft-ease:    all 0.22s cubic-bezier(0.4,0,0.2,1);
  --ft-fh:      'Syne', system-ui, sans-serif;
  --ft-fb:      'Figtree', system-ui, sans-serif;
  --ft-r:       6px;
  --ft-r2:      12px;
  --ft-r3:      18px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { background: var(--ft-paper); color: var(--ft-body); font-family: var(--ft-fb); font-size: 1rem; line-height: 1.7; overflow-x: hidden; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; }
input, textarea, select { font-family: inherit; font-size: 1rem; }
address { font-style: normal; }

h1, h2, h3, h4 { font-family: var(--ft-fh); color: var(--ft-ink); line-height: 1.06; letter-spacing: -0.03em; }
h1 { font-size: clamp(2.8rem, 6vw, 6.5rem); font-weight: 800; }
h2 { font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 700; }
h3 { font-size: clamp(1.2rem, 2vw, 1.75rem); font-weight: 700; }
h4 { font-size: 1rem; font-weight: 700; letter-spacing: -0.01em; }
p  { font-size: .95rem; line-height: 1.78; color: var(--ft-body); }

.ft-bound { max-width: var(--ft-max); margin: 0 auto; padding: 0 2.5rem; }
.ft-zone { padding: 7rem 0; }
.ft-zone-sm { padding: 5rem 0; }

/* BUTTONS */
.ft-btn-lime { display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ft-fh);font-size:.9rem;font-weight:700;background:var(--ft-lime);color:var(--ft-ink);padding:.82rem 1.85rem;border-radius:100px;transition:var(--ft-ease);white-space:nowrap; }
.ft-btn-lime:hover { background:var(--ft-lime-d);transform:translateY(-2px);box-shadow:0 6px 22px rgba(201,237,50,0.3); }
.ft-btn-outline { display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ft-fh);font-size:.9rem;font-weight:700;color:var(--ft-white);padding:.82rem 1.75rem;border-radius:100px;border:1.5px solid rgba(255,255,255,0.3);background:transparent;transition:var(--ft-ease);white-space:nowrap; }
.ft-btn-outline:hover { border-color:rgba(255,255,255,0.7);background:rgba(255,255,255,0.08); }
.ft-btn-dark { display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ft-fh);font-size:.9rem;font-weight:700;background:var(--ft-ink);color:var(--ft-white);padding:.82rem 1.85rem;border-radius:100px;transition:var(--ft-ease);white-space:nowrap; }
.ft-btn-dark:hover { background:var(--ft-forest);transform:translateY(-1px); }
.ft-btn-ghost { display:inline-flex;align-items:center;gap:.5rem;font-family:var(--ft-fh);font-size:.9rem;font-weight:700;color:var(--ft-ink);padding:.82rem 1.75rem;border-radius:100px;border:1.5px solid var(--ft-edge2);background:transparent;transition:var(--ft-ease);white-space:nowrap; }
.ft-btn-ghost:hover { border-color:var(--ft-ink);background:rgba(11,31,15,0.04); }
.ft-link-lime { display:inline-flex;align-items:center;gap:.4rem;font-family:var(--ft-fh);font-size:.85rem;font-weight:700;color:var(--ft-lime);transition:gap 0.2s; }
.ft-link-lime:hover { gap:.65rem; }
.ft-link-dark { display:inline-flex;align-items:center;gap:.4rem;font-family:var(--ft-fh);font-size:.85rem;font-weight:700;color:var(--ft-ink);transition:gap 0.2s; }
.ft-link-dark:hover { gap:.65rem; }

/* NAV */
.ft-topbar { position:fixed;top:0;left:0;right:0;z-index:900;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;transition:background 0.3s,border-bottom 0.3s; }
.ft-topbar.ft-dark-bg { background:var(--ft-ink); }
.ft-topbar.ft-solid-bg { background:rgba(248,246,241,0.96);border-bottom:1px solid var(--ft-edge);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px); }
.ft-topbar-brand { display:flex;align-items:center;gap:.5rem;z-index:901;text-decoration:none; }
.ft-topbar-brand img { width:30px;height:30px; }
.ft-brand-nm { font-family:var(--ft-fh);font-size:.88rem;font-weight:700;color:var(--ft-ink);letter-spacing:-0.04em; }
.ft-topbar.ft-dark-bg .ft-brand-nm { color:var(--ft-white); }
.ft-topbar-r { display:flex;align-items:center;gap:1rem;z-index:901; }
.ft-lang-btn { font-family:var(--ft-fb);font-size:.82rem;font-weight:600;color:var(--ft-muted);padding:.3rem .6rem;border-radius:100px;border:1px solid var(--ft-edge);transition:var(--ft-ease); }
.ft-lang-btn:hover { color:var(--ft-ink);border-color:var(--ft-edge2); }
.ft-topbar.ft-dark-bg .ft-lang-btn { border-color:rgba(255,255,255,0.18);color:rgba(255,255,255,0.4); }
.ft-topbar.ft-dark-bg .ft-lang-btn:hover { color:var(--ft-white); }
/* Hamburger */
.ft-burger { width:38px;height:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;border:none;background:none;z-index:901;position:relative; }
.ft-bl { width:22px;height:1.5px;background:var(--ft-ink);border-radius:2px;transition:transform 0.25s,opacity 0.2s,width 0.2s;display:block; }
.ft-topbar.ft-dark-bg .ft-bl { background:var(--ft-white); }
.ft-burger.ft-bopen .ft-bl:nth-child(1) { transform:rotate(45deg) translate(4.5px,4.5px); }
.ft-burger.ft-bopen .ft-bl:nth-child(2) { opacity:0;width:0; }
.ft-burger.ft-bopen .ft-bl:nth-child(3) { transform:rotate(-45deg) translate(4.5px,-4.5px); }
/* Overlay */
.ft-overlay { position:fixed;inset:0;z-index:800;background:var(--ft-ink);display:flex;flex-direction:column;justify-content:center;padding:5rem 2.5rem 3rem;opacity:0;pointer-events:none;transition:opacity 0.3s ease; }
.ft-overlay.ft-ov-on { opacity:1;pointer-events:auto; }
.ft-ov-links { display:flex;flex-direction:column;gap:.25rem;margin-bottom:3rem; }
.ft-ov-link { font-family:var(--ft-fh);font-size:clamp(2.2rem,6vw,4.5rem);font-weight:800;color:rgba(255,255,255,0.18);transition:color 0.18s;line-height:1.12;letter-spacing:-0.04em;display:block;text-decoration:none; }
.ft-ov-link:hover { color:var(--ft-lime); }
.ft-ov-link.ft-nav-active { color:rgba(255,255,255,0.75); }
.ft-ov-bottom { display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid rgba(255,255,255,0.07);padding-top:2rem;flex-wrap:wrap; }
.ft-ov-addr { font-size:.8rem;color:rgba(255,255,255,0.28);line-height:1.6; }

/* HERO */
.ft-stage { background:var(--ft-ink);min-height:100vh;padding-top:64px;display:flex;align-items:center;position:relative;overflow:hidden; }
.ft-stage::before { content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 70% 50%,rgba(201,237,50,0.05),transparent);pointer-events:none; }
.ft-stage-inner { max-width:var(--ft-max);margin:0 auto;padding:4rem 2.5rem;width:100%;display:grid;grid-template-columns:1.1fr 0.9fr;gap:4rem;align-items:center;position:relative;z-index:1; }
.ft-stage-tag { display:inline-flex;align-items:center;gap:.5rem;background:var(--ft-lime-g);color:var(--ft-lime);font-family:var(--ft-fh);font-size:.63rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:.28rem .85rem;border-radius:100px;margin-bottom:1.75rem;border:1px solid rgba(201,237,50,0.18); }
.ft-stage-tag::before { content:'';width:5px;height:5px;border-radius:50%;background:var(--ft-lime); }
.ft-stage-lhs h1 { color:var(--ft-white);margin-bottom:1.5rem; }
.ft-stage-lhs h1 em { font-style:normal;color:var(--ft-lime); }
.ft-stage-sub { font-size:.98rem;color:rgba(255,255,255,0.5);line-height:1.75;max-width:45ch;margin-bottom:2.5rem; }
.ft-stage-acts { display:flex;align-items:center;gap:1rem;flex-wrap:wrap; }

/* SERP PANEL */
.ft-serp-panel { background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:var(--ft-r2);overflow:hidden; }
.ft-serp-top { background:rgba(255,255,255,0.04);padding:.7rem 1rem;display:flex;align-items:center;gap:.6rem;border-bottom:1px solid rgba(255,255,255,0.05); }
.ft-serp-dots { display:flex;gap:5px; }
.ft-serp-dot { width:8px;height:8px;border-radius:50%; }
.ft-serp-search { background:rgba(255,255,255,0.06);border-radius:100px;padding:.28rem .85rem;font-size:.68rem;color:rgba(255,255,255,0.22);flex:1;border:1px solid rgba(255,255,255,0.07); }
.ft-serp-body { padding:1rem;display:flex;flex-direction:column;gap:.55rem; }
.ft-serp-row { background:rgba(255,255,255,0.03);border-radius:var(--ft-r);padding:.6rem .8rem;display:flex;align-items:center;gap:.7rem;transition:var(--ft-ease); }
.ft-serp-row.ft-sr-our { background:rgba(201,237,50,0.07);border:1px solid rgba(201,237,50,0.14); }
.ft-sr-pos { font-family:var(--ft-fh);font-size:.95rem;font-weight:800;width:20px;text-align:center;flex-shrink:0; }
.ft-sr-our .ft-sr-pos { color:var(--ft-lime); }
.ft-serp-row:not(.ft-sr-our) .ft-sr-pos { color:rgba(255,255,255,0.18); }
.ft-sr-info { flex:1; }
.ft-sr-dom { font-size:.62rem;color:rgba(255,255,255,0.28);margin-bottom:.1rem; }
.ft-sr-our .ft-sr-dom { color:var(--ft-lime); }
.ft-sr-ttl { font-family:var(--ft-fh);font-size:.72rem;font-weight:700; }
.ft-sr-our .ft-sr-ttl { color:rgba(255,255,255,0.88); }
.ft-serp-row:not(.ft-sr-our) .ft-sr-ttl { color:rgba(255,255,255,0.28); }
.ft-sr-arr { font-size:.68rem;font-weight:700;flex-shrink:0; }
.ft-sr-our .ft-sr-arr { color:var(--ft-lime); }
.ft-serp-row:not(.ft-sr-our) .ft-sr-arr { color:rgba(255,255,255,0.1); }
.ft-rank-bar { padding:.75rem 1rem;border-top:1px solid rgba(255,255,255,0.05); }
.ft-rank-label { font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,0.28);margin-bottom:.45rem; }
.ft-rank-track { background:rgba(255,255,255,0.06);border-radius:100px;height:5px;overflow:hidden; }
.ft-rank-fill { height:100%;background:var(--ft-lime);border-radius:100px;width:0;animation:ft-fill 2.2s ease 0.8s forwards; }
@keyframes ft-fill { from{width:0} to{width:73%} }

/* DATA BAND */
.ft-databand { background:var(--ft-forest);border-bottom:1px solid rgba(255,255,255,0.06); }
.ft-databand-inner { display:grid;grid-template-columns:repeat(4,1fr); }
.ft-data-cell { padding:2.75rem 2rem;border-right:1px solid rgba(255,255,255,0.07); }
.ft-data-cell:last-child { border-right:none; }
.ft-data-n { font-family:var(--ft-fh);font-size:clamp(2.4rem,4vw,4.2rem);font-weight:800;color:var(--ft-lime);line-height:1;margin-bottom:.3rem; }
.ft-data-l { font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,0.38); }

/* EYEBROW */
.ft-eyebrow { display:block;font-size:.63rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--ft-rust);margin-bottom:.65rem; }

/* SERVICES */
.ft-offer { background:var(--ft-paper); }
.ft-offer-hdr { margin-bottom:4rem; }
.ft-offer-hdr-row { display:flex;align-items:flex-end;justify-content:space-between;gap:2rem; }
.ft-offer-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem; }
.ft-svc-tile { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r2);padding:2rem;display:flex;flex-direction:column;transition:var(--ft-ease);position:relative;overflow:hidden; }
.ft-svc-tile::before { content:'';position:absolute;top:0;left:0;height:3px;width:0;transition:width 0.35s ease; }
.ft-svc-tile.ft-lime-tone::before { background:var(--ft-lime); }
.ft-svc-tile.ft-rust-tone::before { background:var(--ft-rust); }
.ft-svc-tile:hover { box-shadow:0 8px 28px rgba(11,31,15,0.07);transform:translateY(-2px); }
.ft-svc-tile:hover::before { width:100%; }
.ft-tile-ico { width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem; }
.ft-lime-ico { background:var(--ft-lime-g);color:var(--ft-lime-d); }
.ft-rust-ico { background:var(--ft-rust-g);color:var(--ft-rust); }
.ft-svc-tile h3 { font-size:1rem;font-weight:700;margin-bottom:.4rem; }
.ft-svc-tile p { font-size:.8rem;color:var(--ft-muted);line-height:1.62;flex:1;margin-bottom:1.5rem; }
.ft-tile-price { font-family:var(--ft-fh);font-size:1.45rem;font-weight:800;color:var(--ft-ink); }
.ft-tile-unit { font-size:.63rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ft-muted);margin-bottom:1.25rem; }
.ft-tile-go { display:flex;align-items:center;gap:.3rem;font-family:var(--ft-fh);font-size:.78rem;font-weight:700;color:var(--ft-muted);transition:var(--ft-ease); }
.ft-svc-tile:hover .ft-tile-go { color:var(--ft-ink);gap:.55rem; }

/* PROCESS */
.ft-method { background:var(--ft-surface); }
.ft-method-hdr { text-align:center;margin-bottom:5rem; }
.ft-step-row { display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-bottom:5rem; }
.ft-step-row:last-child { margin-bottom:0; }
.ft-step-row.ft-flip { direction:rtl; }
.ft-step-row.ft-flip > * { direction:ltr; }
.ft-step-num { font-family:var(--ft-fh);font-size:5rem;font-weight:800;color:rgba(11,31,15,0.05);line-height:1;margin-bottom:.5rem;letter-spacing:-0.06em; }
.ft-step-pill { display:inline-flex;align-items:center;gap:.35rem;background:var(--ft-lime-g);color:var(--ft-lime-d);font-family:var(--ft-fh);font-size:.63rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.2rem .65rem;border-radius:100px;margin-bottom:1rem; }
.ft-step-txt h3 { font-size:1.55rem;margin-bottom:.85rem; }
.ft-step-txt p { font-size:.9rem;color:var(--ft-body);line-height:1.8;margin-bottom:1.5rem; }
.ft-step-list { display:flex;flex-direction:column;gap:.45rem; }
.ft-step-item { display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--ft-body); }
.ft-step-item svg { color:var(--ft-lime-d);flex-shrink:0; }
.ft-step-vis { background:var(--ft-ink);border-radius:var(--ft-r2);overflow:hidden;min-height:260px;display:flex;align-items:center;justify-content:center; }

/* CASE STUDIES */
.ft-caseband { background:var(--ft-paper); }
.ft-caseband-hdr { margin-bottom:3.5rem;display:flex;align-items:flex-end;justify-content:space-between; }
.ft-case-rail { display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem; }
.ft-case-card { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r2);overflow:hidden;transition:var(--ft-ease); }
.ft-case-card:hover { transform:translateY(-3px);box-shadow:0 12px 32px rgba(11,31,15,0.07); }
.ft-case-vis { min-height:200px;background:var(--ft-surface); }
.ft-case-body { padding:1.75rem; }
.ft-case-tag { display:inline-flex;align-items:center;gap:.3rem;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.14rem .6rem;border-radius:100px;margin-bottom:.85rem; }
.ft-tag-lime { background:var(--ft-lime-g);color:var(--ft-lime-d); }
.ft-tag-rust { background:var(--ft-rust-g);color:var(--ft-rust); }
.ft-case-body h3 { font-size:.95rem;margin-bottom:.55rem; }
.ft-case-body p { font-size:.78rem;color:var(--ft-muted);line-height:1.7;margin-bottom:1.2rem; }
.ft-kpi-row { display:flex;gap:1.5rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid var(--ft-edge); }
.ft-kpi-n { font-family:var(--ft-fh);font-size:1.3rem;font-weight:800;color:var(--ft-ink);line-height:1; }
.ft-kpi-l { font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ft-muted);margin-top:.22rem; }
.ft-case-chips { display:flex;gap:.35rem;flex-wrap:wrap; }
.ft-case-chip { font-size:.6rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ft-muted);border:1px solid var(--ft-edge);padding:.14rem .55rem;border-radius:100px; }

/* BLOG */
.ft-blog-zone { background:var(--ft-surface); }
.ft-blog-hdr { margin-bottom:3.5rem;display:flex;align-items:flex-end;justify-content:space-between; }
.ft-blog-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem; }
.ft-post-card { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r2);overflow:hidden;transition:var(--ft-ease); }
.ft-post-card:hover { transform:translateY(-2px);box-shadow:0 8px 22px rgba(11,31,15,0.06); }
.ft-post-thumb { background:var(--ft-card);min-height:155px; }
.ft-post-body { padding:1.5rem; }
.ft-post-cat { font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ft-rust);margin-bottom:.65rem; }
.ft-post-body h3 { font-size:.92rem;font-weight:700;color:var(--ft-ink);line-height:1.35;margin-bottom:.6rem; }
.ft-post-body p { font-size:.78rem;color:var(--ft-muted);line-height:1.68;margin-bottom:1rem; }
.ft-post-meta { font-size:.7rem;color:var(--ft-muted);display:flex;align-items:center;gap:.55rem; }

/* PRICING */
.ft-rates { background:var(--ft-ink); }
.ft-rates-hdr { text-align:center;margin-bottom:3.5rem; }
.ft-rates-hdr h2 { color:var(--ft-white); }
.ft-rates-hdr p { color:rgba(255,255,255,0.5); }
.ft-toggle-wrap { display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:3rem; }
.ft-tgl-lbl { font-family:var(--ft-fh);font-size:.85rem;font-weight:700;color:rgba(255,255,255,0.38); }
.ft-tgl-lbl.ft-tgl-active { color:var(--ft-white); }
.ft-tgl-btn { width:46px;height:24px;background:rgba(255,255,255,0.15);border-radius:100px;position:relative;cursor:pointer;transition:background 0.25s;border:none; }
.ft-tgl-btn.ft-tgl-on { background:var(--ft-lime); }
.ft-tgl-knob { position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--ft-white);border-radius:50%;transition:transform 0.25s; }
.ft-tgl-btn.ft-tgl-on .ft-tgl-knob { transform:translateX(22px); }
.ft-save-badge { display:inline-block;background:var(--ft-lime-g);color:var(--ft-lime);font-family:var(--ft-fh);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.1rem .5rem;border-radius:100px;border:1px solid rgba(201,237,50,0.2); }
.ft-plans { display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem; }
.ft-plan-card { background:rgba(255,255,255,0.05);border:1.5px solid rgba(255,255,255,0.07);border-radius:var(--ft-r2);padding:2.25rem;display:flex;flex-direction:column;transition:var(--ft-ease); }
.ft-plan-card:hover { border-color:rgba(255,255,255,0.16); }
.ft-plan-card.ft-plan-feat { background:var(--ft-lime);border-color:var(--ft-lime); }
.ft-plan-card.ft-plan-feat:hover { background:var(--ft-lime-d); }
.ft-plan-nm { font-family:var(--ft-fh);font-size:1rem;font-weight:700;color:rgba(255,255,255,0.6);margin-bottom:.15rem; }
.ft-plan-card.ft-plan-feat .ft-plan-nm { color:var(--ft-ink); }
.ft-plan-sub { font-size:.78rem;color:rgba(255,255,255,0.32);margin-bottom:1.5rem; }
.ft-plan-card.ft-plan-feat .ft-plan-sub { color:rgba(11,31,15,0.55); }
.ft-plan-price { font-family:var(--ft-fh);font-size:2.4rem;font-weight:800;color:var(--ft-white);line-height:1;margin-bottom:.18rem; }
.ft-plan-card.ft-plan-feat .ft-plan-price { color:var(--ft-ink); }
.ft-plan-period { font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,0.28);margin-bottom:2rem; }
.ft-plan-card.ft-plan-feat .ft-plan-period { color:rgba(11,31,15,0.45); }
.ft-plan-inc { display:flex;flex-direction:column;gap:.5rem;flex:1;margin-bottom:2rem; }
.ft-plan-item { display:flex;align-items:flex-start;gap:.5rem;font-size:.82rem;color:rgba(255,255,255,0.58); }
.ft-plan-item svg { flex-shrink:0;margin-top:.15rem;color:rgba(255,255,255,0.28); }
.ft-plan-card.ft-plan-feat .ft-plan-item { color:rgba(11,31,15,0.72); }
.ft-plan-card.ft-plan-feat .ft-plan-item svg { color:rgba(11,31,15,0.35); }
.ft-plan-cta { display:block;text-align:center;font-family:var(--ft-fh);font-size:.88rem;font-weight:700;padding:.85rem;border-radius:100px;transition:var(--ft-ease); }
.ft-plan-cta-def { background:rgba(255,255,255,0.1);color:var(--ft-white); }
.ft-plan-cta-def:hover { background:rgba(255,255,255,0.18); }
.ft-plan-cta-dark { background:var(--ft-ink);color:var(--ft-white); }
.ft-plan-cta-dark:hover { background:var(--ft-forest); }
.ft-plan-addons { margin-top:3.5rem; }
.ft-plan-addons h3 { font-size:.63rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,0.28);text-align:center;margin-bottom:1.5rem; }
.ft-addon-row { display:grid;grid-template-columns:repeat(5,1fr);gap:.85rem; }
.ft-addon-box { background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:var(--ft-r);padding:1.1rem 1rem;text-align:center;transition:var(--ft-ease); }
.ft-addon-box:hover { border-color:rgba(201,237,50,0.3); }
.ft-addon-nm { font-family:var(--ft-fh);font-size:.75rem;font-weight:700;color:rgba(255,255,255,0.65);margin-bottom:.3rem; }
.ft-addon-pr { font-family:var(--ft-fh);font-size:1rem;font-weight:800;color:var(--ft-lime); }
.ft-addon-nt { font-size:.62rem;color:rgba(255,255,255,0.28);text-transform:uppercase;letter-spacing:.07em; }

/* TESTIMONIALS */
.ft-voices { background:var(--ft-forest); }
.ft-voices-inner { max-width:820px;margin:0 auto;text-align:center; }
.ft-voices-tag { display:block;margin-bottom:1rem; }
.ft-q-stage { position:relative;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center; }
.ft-q-slide { position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;opacity:0;transition:opacity 0.5s;pointer-events:none; }
.ft-q-slide.ft-q-on { opacity:1;pointer-events:auto;position:relative; }
.ft-q-ico { color:var(--ft-lime);opacity:0.28;margin-bottom:-.75rem; }
.ft-q-text { font-family:var(--ft-fh);font-size:clamp(1rem,2vw,1.4rem);font-weight:600;color:var(--ft-white);line-height:1.5;letter-spacing:-0.02em; }
.ft-q-who { display:flex;align-items:center;gap:.65rem;justify-content:center; }
.ft-q-init { width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--ft-lime-d),var(--ft-lime));display:flex;align-items:center;justify-content:center;font-family:var(--ft-fh);font-size:.68rem;font-weight:800;color:var(--ft-ink);flex-shrink:0; }
.ft-q-nm { font-family:var(--ft-fh);font-size:.88rem;font-weight:700;color:var(--ft-white); }
.ft-q-role { font-size:.73rem;color:rgba(255,255,255,0.38); }
.ft-q-dots { display:flex;gap:.5rem;justify-content:center;margin-top:2rem; }
.ft-q-dot { width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,0.14);border:none;cursor:pointer;transition:var(--ft-ease); }
.ft-q-dot.ft-q-dot-on { background:var(--ft-lime);transform:scale(1.3); }

/* CTA */
.ft-promo { background:var(--ft-lime);position:relative;overflow:hidden; }
.ft-promo::before { content:'';position:absolute;top:-20%;left:-10%;width:50%;height:140%;background:rgba(0,0,0,0.04);border-radius:50%; }
.ft-promo-inner { position:relative;z-index:1;text-align:center;max-width:700px;margin:0 auto;padding:6.5rem 2.5rem; }
.ft-promo-inner h2 { color:var(--ft-ink);font-size:clamp(2rem,4vw,3.4rem);margin-bottom:1rem; }
.ft-promo-inner p { color:rgba(11,31,15,0.6);margin-bottom:2.5rem; }
.ft-promo-acts { display:flex;gap:1rem;justify-content:center;flex-wrap:wrap; }

/* FAQ */
.ft-faq { background:var(--ft-paper); }
.ft-faq-hdr { text-align:center;margin-bottom:4rem; }
.ft-faq-wrap { max-width:780px;margin:0 auto; }
.ft-faq-list { display:flex;flex-direction:column;gap:.85rem; }
.ft-faq-card { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r);overflow:hidden;transition:border-color 0.2s; }
.ft-faq-card.ft-faq-open { border-color:var(--ft-lime-d); }
.ft-faq-qbtn { width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;font-family:var(--ft-fh);font-size:.9rem;font-weight:700;color:var(--ft-ink);text-align:left;cursor:pointer;transition:color 0.2s; }
.ft-faq-qbtn:hover { color:var(--ft-forest); }
.ft-faq-chevron { color:var(--ft-muted);transition:transform 0.25s;flex-shrink:0; }
.ft-faq-card.ft-faq-open .ft-faq-chevron { transform:rotate(180deg);color:var(--ft-lime-d); }
.ft-faq-ans { max-height:0;overflow:hidden;transition:max-height 0.35s ease; }
.ft-faq-card.ft-faq-open .ft-faq-ans { max-height:600px; }
.ft-faq-ans-body { padding:0 1.4rem 1.1rem;font-size:.87rem;color:var(--ft-body);line-height:1.8; }

/* FOOTER */
.ft-ground { background:var(--ft-ink); }
.ft-ground-body { display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:3rem;padding:5rem 0 4rem; }
.ft-g-logo { display:flex;align-items:center;gap:.45rem;margin-bottom:1.1rem; }
.ft-g-logo img { width:26px;height:26px; }
.ft-g-logo-nm { font-family:var(--ft-fh);font-size:.88rem;font-weight:700;color:var(--ft-white);letter-spacing:-0.04em; }
.ft-g-tag { font-size:.78rem;color:rgba(255,255,255,0.32);line-height:1.65;max-width:22ch;margin-bottom:1.5rem; }
.ft-g-soc { display:flex;gap:.45rem; }
.ft-g-soc-a { width:30px;height:30px;border-radius:var(--ft-r);background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.07);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.38);transition:var(--ft-ease); }
.ft-g-soc-a:hover { color:var(--ft-white);border-color:rgba(255,255,255,0.18);background:rgba(255,255,255,0.1); }
.ft-col-h { font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,0.28);margin-bottom:1.1rem; }
.ft-col-links { display:flex;flex-direction:column;gap:.5rem; }
.ft-col-links a { font-size:.82rem;color:rgba(255,255,255,0.48);transition:color 0.2s; }
.ft-col-links a:hover { color:var(--ft-white); }
.ft-addr-row { display:flex;align-items:flex-start;gap:.45rem;font-size:.76rem;color:rgba(255,255,255,0.42);margin-bottom:.55rem; }
.ft-addr-row svg { color:var(--ft-lime);flex-shrink:0;margin-top:.1rem; }
.ft-addr-row a:hover { color:var(--ft-white); }
.ft-ground-bot { border-top:1px solid rgba(255,255,255,0.07);padding:1.5rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap; }
.ft-foot-copy,.ft-foot-note { font-size:.72rem;color:rgba(255,255,255,0.22); }
.ft-foot-legal { display:flex;gap:1.25rem; }
.ft-foot-legal a { font-size:.72rem;color:rgba(255,255,255,0.22);transition:color 0.2s; }
.ft-foot-legal a:hover { color:rgba(255,255,255,0.62); }

/* COOKIE */
.ft-cookie { position:fixed;bottom:1.5rem;left:1.5rem;z-index:9999;max-width:360px;background:var(--ft-white);border:1.5px solid var(--ft-edge2);border-radius:var(--ft-r2);padding:1.25rem 1.5rem;box-shadow:0 8px 30px rgba(11,31,15,0.1);display:none; }
.ft-cookie p { font-size:.8rem;color:var(--ft-body);line-height:1.6;margin-bottom:1rem; }
.ft-cookie-btns { display:flex;gap:.5rem; }
.ft-ck-yes { flex:1;background:var(--ft-ink);color:var(--ft-lime);font-family:var(--ft-fh);font-size:.8rem;font-weight:700;padding:.5rem .85rem;border-radius:100px;border:none;cursor:pointer;transition:var(--ft-ease); }
.ft-ck-yes:hover { background:var(--ft-forest); }
.ft-ck-no { font-family:var(--ft-fh);font-size:.8rem;font-weight:600;color:var(--ft-muted);padding:.5rem .85rem;border-radius:100px;border:1.5px solid var(--ft-edge);background:none;cursor:pointer;transition:var(--ft-ease); }
.ft-ck-no:hover { color:var(--ft-ink);border-color:var(--ft-edge2); }

/* CHAT */
.ft-chat-fab { position:fixed;bottom:1.75rem;right:1.75rem;z-index:9990;width:50px;height:50px;border-radius:50%;background:var(--ft-lime);color:var(--ft-ink);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(201,237,50,0.38);cursor:pointer;border:none;transition:var(--ft-ease); }
.ft-chat-fab:hover { transform:scale(1.08);background:var(--ft-lime-d); }
.ft-chat-panel { position:fixed;bottom:5.25rem;right:1.75rem;z-index:9989;width:310px;background:var(--ft-white);border:1.5px solid var(--ft-edge2);border-radius:var(--ft-r2);overflow:hidden;box-shadow:0 12px 40px rgba(11,31,15,0.1);transform:translateY(10px);opacity:0;pointer-events:none;transition:opacity 0.22s,transform 0.22s; }
.ft-chat-panel.ft-chat-open { opacity:1;pointer-events:auto;transform:translateY(0); }
.ft-chat-head { background:var(--ft-ink);padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between; }
.ft-chat-ht { font-family:var(--ft-fh);font-size:.88rem;font-weight:800;color:var(--ft-white); }
.ft-chat-hs { font-size:.7rem;color:rgba(255,255,255,0.45);margin-top:.1rem; }
.ft-chat-xbtn { color:rgba(255,255,255,0.45);cursor:pointer;border:none;background:none; }
.ft-chat-xbtn:hover { color:var(--ft-white); }
.ft-chat-bod { padding:1.25rem; }
.ft-chat-done-msg { display:none;text-align:center;padding:1rem;font-size:.85rem;color:var(--ft-lime-d);font-weight:600; }
.ft-chat-field { width:100%;background:var(--ft-surface);border:1px solid var(--ft-edge);border-radius:var(--ft-r);padding:.6rem .85rem;color:var(--ft-ink);font-size:.84rem;margin-bottom:.65rem;resize:none;transition:border-color 0.2s; }
.ft-chat-field:focus { outline:none;border-color:var(--ft-lime-d); }
.ft-chat-go { width:100%;background:var(--ft-ink);color:var(--ft-lime);font-family:var(--ft-fh);font-size:.84rem;font-weight:700;padding:.62rem;border-radius:100px;border:none;cursor:pointer;transition:var(--ft-ease); }
.ft-chat-go:hover { background:var(--ft-forest); }

/* PAGE HEADER */
.ft-pagehead { background:var(--ft-ink);padding:calc(64px + 4.5rem) 0 5rem;text-align:center; }
.ft-pagehead-eyebrow { display:inline-flex;align-items:center;gap:.4rem;background:var(--ft-lime-g);color:var(--ft-lime);font-family:var(--ft-fh);font-size:.6rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:.24rem .75rem;border-radius:100px;margin-bottom:1.25rem;border:1px solid rgba(201,237,50,0.16); }
.ft-pagehead h1 { color:var(--ft-white);max-width:18ch;margin:0 auto .85rem; }
.ft-pagehead-desc { font-size:1rem;color:rgba(255,255,255,0.48);max-width:52ch;margin:0 auto; }

/* SERVICE PAGE */
.ft-svc-pg { max-width:var(--ft-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 310px;gap:5rem;align-items:start; }
.ft-svc-intro p { font-size:.93rem;color:var(--ft-body);line-height:1.82;margin-bottom:1.1rem; }
.ft-svc-kicker { display:block;font-size:.63rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ft-rust);margin-bottom:.75rem; }
.ft-svc-list { display:flex;flex-direction:column;gap:.55rem;margin-bottom:2.5rem; }
.ft-svc-li { display:flex;align-items:center;gap:.6rem;font-size:.88rem;color:var(--ft-body); }
.ft-svc-li svg { color:var(--ft-lime-d);flex-shrink:0; }
.ft-svc-callout { background:var(--ft-surface);border-left:3px solid var(--ft-lime-d);border-radius:0 var(--ft-r) var(--ft-r) 0;padding:1.1rem 1.4rem;font-size:.85rem;color:var(--ft-body);line-height:1.7; }
.ft-svc-aside { position:sticky;top:calc(64px + 2rem); }
.ft-svc-price-card { background:var(--ft-white);border:1.5px solid var(--ft-edge2);border-radius:var(--ft-r2);overflow:hidden;margin-bottom:1.25rem; }
.ft-svc-pvis { background:var(--ft-ink);min-height:120px;display:flex;align-items:center;justify-content:center; }
.ft-svc-pbod { padding:1.5rem; }
.ft-svc-pnm { font-family:var(--ft-fh);font-size:.95rem;font-weight:700;color:var(--ft-ink);margin-bottom:.28rem; }
.ft-svc-pamt { font-family:var(--ft-fh);font-size:2rem;font-weight:800;color:var(--ft-ink);line-height:1; }
.ft-svc-punit { font-size:.63rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ft-muted);margin-bottom:1.5rem; }
.ft-svc-pacts { display:flex;flex-direction:column;gap:.65rem; }

/* BUILDER */
.ft-build-layout { max-width:var(--ft-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 310px;gap:4rem;align-items:start; }
.ft-build-step { margin-bottom:3rem; }
.ft-bld-kicker { display:block;font-family:var(--ft-fh);font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ft-rust);margin-bottom:1.1rem; }
.ft-bld-rows { display:flex;flex-direction:column;gap:.75rem; }
.ft-bld-row { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:var(--ft-ease);user-select:none; }
.ft-bld-row:hover { background:var(--ft-surface);border-color:var(--ft-edge2); }
.ft-bld-row.ft-picked { border-color:var(--ft-lime-d);background:var(--ft-lime-g); }
.ft-bld-ico { width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.ft-bld-nm { font-family:var(--ft-fh);font-size:.88rem;font-weight:700;color:var(--ft-ink);flex:1; }
.ft-bld-pr { font-size:.8rem;color:var(--ft-muted);flex-shrink:0; }
.ft-bld-chk { width:18px;height:18px;border-radius:4px;border:1.5px solid var(--ft-edge2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--ft-ease); }
.ft-bld-row.ft-picked .ft-bld-chk { background:var(--ft-lime-d);border-color:var(--ft-lime-d);color:var(--ft-ink); }
.ft-chip-grid { display:grid;grid-template-columns:1fr 1fr;gap:.75rem; }
.ft-chip { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r);padding:.85rem 1rem;cursor:pointer;transition:var(--ft-ease);user-select:none; }
.ft-chip:hover { border-color:var(--ft-edge2); }
.ft-chip.ft-picked { border-color:var(--ft-lime-d);background:var(--ft-lime-g); }
.ft-chip-nm { font-family:var(--ft-fh);font-size:.8rem;font-weight:700;color:var(--ft-ink); }
.ft-chip-pr { font-size:.72rem;color:var(--ft-muted);margin-top:.1rem; }
.ft-chip.ft-picked .ft-chip-pr { color:var(--ft-lime-d); }
.ft-hrs-box { background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r);padding:1.25rem 1.5rem; }
.ft-hrs-range { -webkit-appearance:none;width:100%;height:4px;background:var(--ft-card);border-radius:2px;margin-top:.75rem; }
.ft-hrs-range::-webkit-slider-thumb { -webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--ft-lime-d);cursor:pointer;box-shadow:0 0 0 3px rgba(168,193,32,0.2); }
.ft-hrs-disp { font-family:var(--ft-fh);font-size:1.2rem;font-weight:800;color:var(--ft-ink); }
.ft-summary { background:var(--ft-white);border:1.5px solid var(--ft-edge2);border-radius:var(--ft-r2);overflow:hidden;position:sticky;top:calc(64px + 2rem); }
.ft-summary-hd { background:var(--ft-ink);padding:1.1rem 1.5rem; }
.ft-summary-hd h3 { font-family:var(--ft-fh);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,0.45); }
.ft-summary-lines { padding:1.25rem 1.5rem;min-height:80px; }
.ft-sum-empty { font-size:.82rem;color:var(--ft-muted);font-style:italic; }
.ft-sum-line { display:flex;justify-content:space-between;gap:.75rem;font-size:.83rem;margin-bottom:.65rem; }
.ft-sum-nm { color:var(--ft-body); }
.ft-sum-pr { color:var(--ft-ink);font-family:var(--ft-fh);font-weight:700; }
.ft-summary-ft { border-top:1px solid var(--ft-edge);padding:1.25rem 1.5rem; }
.ft-total-row { display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem; }
.ft-total-lbl { font-family:var(--ft-fh);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ft-muted); }
.ft-total-num { font-family:var(--ft-fh);font-size:1.8rem;font-weight:800;color:var(--ft-ink); }
.ft-sum-submit { display:block;width:100%;text-align:center;background:var(--ft-lime);color:var(--ft-ink);font-family:var(--ft-fh);font-size:.88rem;font-weight:700;padding:.88rem;border-radius:100px;cursor:pointer;border:none;transition:var(--ft-ease); }
.ft-sum-submit:hover:not(:disabled) { background:var(--ft-lime-d); }
.ft-sum-submit:disabled { opacity:0.35;cursor:not-allowed; }

/* CHECKOUT */
.ft-checkout-wrap { max-width:900px;margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 300px;gap:3.5rem;align-items:start; }
.ft-field-lbl { display:block;font-family:var(--ft-fh);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ft-muted);margin-bottom:.45rem; }
.ft-field { width:100%;background:var(--ft-white);border:1.5px solid var(--ft-edge);border-radius:var(--ft-r);padding:.72rem 1rem;color:var(--ft-ink);font-size:.9rem;transition:border-color 0.2s; }
.ft-field:focus { outline:none;border-color:var(--ft-lime-d); }
.ft-fg { margin-bottom:1.25rem; }
.ft-fg-row { display:grid;grid-template-columns:1fr 1fr;gap:1rem; }
.ft-agree-row { display:flex;align-items:flex-start;gap:.6rem;font-size:.82rem;color:var(--ft-body);line-height:1.5;margin:1.5rem 0; }
.ft-agree-row input { margin-top:.15rem;accent-color:var(--ft-lime-d); }
.ft-agree-row a { color:var(--ft-lime-d); }
.ft-co-aside { background:var(--ft-white);border:1.5px solid var(--ft-edge2);border-radius:var(--ft-r2);overflow:hidden;position:sticky;top:calc(64px + 2rem); }
.ft-co-hd { background:var(--ft-surface);padding:1rem 1.5rem;border-bottom:1px solid var(--ft-edge); }
.ft-co-hd h3 { font-family:var(--ft-fh);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ft-muted); }
.ft-co-body { padding:1.25rem 1.5rem; }
.ft-co-line { display:flex;justify-content:space-between;gap:1rem;font-size:.83rem;margin-bottom:.6rem; }
.ft-co-nm { color:var(--ft-muted); }
.ft-co-pr { font-family:var(--ft-fh);font-weight:700;color:var(--ft-ink); }
.ft-co-div { border:none;border-top:1px solid var(--ft-edge);margin:1rem 0; }
.ft-co-total { display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem; }
.ft-co-total-l { font-family:var(--ft-fh);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ft-muted); }
.ft-co-total-n { font-family:var(--ft-fh);font-size:1.6rem;font-weight:800;color:var(--ft-ink); }
.ft-co-secure { display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--ft-muted); }
.ft-co-secure svg { color:var(--ft-lime-d); }

/* LEGAL / ABOUT / CONTACT */
.ft-legal-wrap { max-width:820px;margin:0 auto;padding:5rem 2.5rem; }
.ft-legal-wrap h2 { font-size:1.5rem;margin:2.5rem 0 .85rem; }
.ft-legal-wrap h3 { font-family:var(--ft-fb);font-size:.95rem;font-weight:600;color:var(--ft-ink);margin:1.5rem 0 .5rem; }
.ft-legal-wrap p { font-size:.88rem;color:var(--ft-body);line-height:1.82;margin-bottom:.9rem; }
.ft-legal-wrap ul { padding-left:1.25rem;margin:.5rem 0 1rem;display:flex;flex-direction:column;gap:.35rem; }
.ft-legal-wrap li { font-size:.88rem;color:var(--ft-body);line-height:1.7;list-style:disc; }
.ft-legal-wrap a { color:var(--ft-lime-d); }
.ft-legal-wrap address { font-style:normal;background:var(--ft-surface);border-left:3px solid var(--ft-lime-d);padding:1rem 1.25rem;margin:1rem 0;border-radius:0 var(--ft-r) var(--ft-r) 0;font-size:.88rem;line-height:1.9;color:var(--ft-body); }
.ft-legal-wrap table { width:100%;border-collapse:collapse;font-size:.82rem;margin:1rem 0 1.5rem; }
.ft-legal-wrap th { background:var(--ft-surface);color:var(--ft-ink);padding:.65rem 1rem;text-align:left;font-weight:700;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--ft-edge); }
.ft-legal-wrap td { padding:.65rem 1rem;border-bottom:1px solid var(--ft-edge);color:var(--ft-body);vertical-align:top; }
.ft-about-wrap { max-width:var(--ft-max);margin:0 auto;padding:5rem 2.5rem; }
.ft-about-pair { display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-bottom:5rem; }
.ft-about-pair p { font-size:.93rem;color:var(--ft-body);line-height:1.82;margin-bottom:1.25rem; }
.ft-about-img { background:var(--ft-ink);border-radius:var(--ft-r2);min-height:360px;display:flex;align-items:center;justify-content:center;overflow:hidden; }
.ft-val-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:5rem; }
.ft-val-item { background:var(--ft-white);border:1px solid var(--ft-edge);border-radius:var(--ft-r2);padding:2rem; }
.ft-val-ico { width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem; }
.ft-val-item h4 { color:var(--ft-ink);margin-bottom:.55rem; }
.ft-val-item p { font-size:.82rem;color:var(--ft-body);line-height:1.7; }
.ft-contact-wrap { max-width:var(--ft-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 1fr;gap:5rem; }
.ft-ct-item { display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem; }
.ft-ct-ico { width:36px;height:36px;border-radius:var(--ft-r);background:var(--ft-lime-g);display:flex;align-items:center;justify-content:center;color:var(--ft-lime-d);flex-shrink:0; }
.ft-ct-lbl { font-family:var(--ft-fh);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ft-muted);margin-bottom:.15rem; }
.ft-ct-val { font-size:.9rem;color:var(--ft-body); }
.ft-ct-val a:hover { color:var(--ft-ink); }

/* RESULT */
.ft-result { min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:5rem 2.5rem; }
.ft-result-inner { max-width:520px; }
.ft-result-ico { width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.75rem; }
.ft-ok-ico { background:var(--ft-lime-g);color:var(--ft-lime-d);border:1px solid rgba(168,193,32,0.22); }
.ft-err-ico { background:rgba(220,38,38,0.07);color:#DC2626;border:1px solid rgba(220,38,38,0.14); }
.ft-result-inner h1 { font-size:2.4rem;margin-bottom:.85rem; }
.ft-result-inner p { margin-bottom:2rem; }

/* REVEAL */
.ft-rise { opacity:0;transform:translateY(22px);transition:opacity 0.6s cubic-bezier(0.4,0,0.2,1),transform 0.6s cubic-bezier(0.4,0,0.2,1); }
.ft-rise.ft-vis { opacity:1;transform:translateY(0); }
.ft-from-l { opacity:0;transform:translateX(-24px);transition:opacity 0.6s ease,transform 0.6s ease; }
.ft-from-l.ft-vis { opacity:1;transform:translateX(0); }
.ft-from-r { opacity:0;transform:translateX(24px);transition:opacity 0.6s ease,transform 0.6s ease; }
.ft-from-r.ft-vis { opacity:1;transform:translateX(0); }

/* RESPONSIVE */
@media (max-width: 1024px) {
  .ft-stage-inner { grid-template-columns:1fr; }
  .ft-stage-rhs { display:none; }
  .ft-databand-inner { grid-template-columns:1fr 1fr; }
  .ft-offer-grid { grid-template-columns:1fr 1fr; }
  .ft-step-row { grid-template-columns:1fr; }
  .ft-step-row.ft-flip { direction:ltr; }
  .ft-case-rail { grid-template-columns:1fr 1fr; }
  .ft-blog-grid { grid-template-columns:1fr 1fr; }
  .ft-plans { grid-template-columns:1fr;max-width:440px;margin:0 auto; }
  .ft-addon-row { grid-template-columns:1fr 1fr 1fr; }
  .ft-ground-body { grid-template-columns:1fr 1fr; }
  .ft-svc-pg { grid-template-columns:1fr; }
  .ft-build-layout { grid-template-columns:1fr; }
  .ft-checkout-wrap { grid-template-columns:1fr; }
  .ft-contact-wrap { grid-template-columns:1fr; }
  .ft-about-pair { grid-template-columns:1fr; }
  .ft-val-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width: 640px) {
  .ft-bound { padding:0 1.25rem; }
  .ft-zone { padding:5rem 0; }
  .ft-databand-inner { grid-template-columns:1fr 1fr; }
  .ft-offer-grid { grid-template-columns:1fr; }
  .ft-case-rail { grid-template-columns:1fr; }
  .ft-blog-grid { grid-template-columns:1fr; }
  .ft-addon-row { grid-template-columns:1fr 1fr; }
  .ft-ground-body { grid-template-columns:1fr; }
  .ft-chip-grid { grid-template-columns:1fr; }
  .ft-fg-row { grid-template-columns:1fr; }
  .ft-val-grid { grid-template-columns:1fr; }
}
