/**
 * Tik Tak Mazganim — Visual System v2
 * Scoped, RTL-first presentation layer. No external font or image requests.
 */
:root {
  --ttm-teal-950: #062e30;
  --ttm-teal-900: #0a3c3e;
  --ttm-teal-800: #114b4d;
  --ttm-teal-700: #176064;
  --ttm-teal-100: #dcebec;
  --ttm-teal-50: #f0f5f3;
  --ttm-gold-600: #bd8430;
  --ttm-gold-500: #d9a441;
  --ttm-gold-300: #f0ce86;
  --ttm-ink: #102a2d;
  --ttm-copy: #385457;
  --ttm-muted: #5c7476;
  --ttm-paper: #fff;
  --ttm-canvas: #f8f7f3;
  --ttm-line: #dbe4e1;
  --ttm-success: #237a58;
  --ttm-warning: #a56113;
  --ttm-danger: #a92e25;
  --ttm-shadow-xs: 0 2px 8px rgba(6, 46, 48, .07);
  --ttm-shadow-sm: 0 14px 36px rgba(6, 46, 48, .09);
  --ttm-shadow-lg: 0 30px 76px rgba(6, 46, 48, .16);
  --ttm-radius-sm: 10px;
  --ttm-radius-md: 16px;
  --ttm-radius-lg: 22px;
  --ttm-container: 1240px;
  --ttm-readable: 780px;
  --ttm-font-head: "Rubik", "Heebo", Arial, sans-serif;
  --ttm-font-body: "Heebo", Arial, sans-serif;
}

.ttm-vs,
.ttm-vs *,
.ttm-vs-header,
.ttm-vs-header *,
.ttm-vs-footer,
.ttm-vs-footer *,
.ttm-vs-mobile-dock,
.ttm-vs-mobile-dock * {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ttm-ink);
  background: var(--ttm-canvas);
}

.ttm-vs {
  min-width: 0;
  overflow: clip;
  direction: rtl;
  color: var(--ttm-ink);
  background: var(--ttm-canvas);
  font-family: var(--ttm-font-body);
  font-size: 17px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

.ttm-vs a,
.ttm-vs-header a,
.ttm-vs-footer a,
.ttm-vs-mobile-dock a {
  color: inherit;
}

html.ttm-vs-menu-lock,
html.ttm-vs-menu-lock body {
  overflow: hidden;
}

.ttm-vs img,
.ttm-vs svg,
.ttm-vs-header img,
.ttm-vs-footer img {
  display: block;
  max-width: 100%;
}

.ttm-vs button,
.ttm-vs input,
.ttm-vs textarea,
.ttm-vs select,
.ttm-vs-header button {
  font: inherit;
}

.ttm-vs :where(h1, h2, h3, h4, p, ul, ol) {
  margin-top: 0;
}

.ttm-vs :where(h1, h2, h3, h4),
.ttm-vs-header,
.ttm-vs-footer__heading,
.ttm-vs-btn {
  font-family: var(--ttm-font-head);
}

.ttm-vs-container {
  width: min(calc(100% - 40px), var(--ttm-container));
  margin-inline: auto;
}

.ttm-vs-container--readable {
  width: min(calc(100% - 40px), var(--ttm-readable));
  margin-inline: auto;
}

.ttm-vs-section {
  position: relative;
  padding-block: clamp(48px, 5.5vw, 76px);
}

.ttm-vs-section--white { background: var(--ttm-paper); }
.ttm-vs-section--soft { background: var(--ttm-teal-50); }
.ttm-vs-section--tight { padding-block: clamp(34px, 4vw, 52px); }
.ttm-vs-section--overflow { overflow: hidden; }

.ttm-vs-section--dark {
  color: #fff;
  background:
    radial-gradient(circle at 12% 12%, rgba(217, 164, 65, .18), transparent 29%),
    radial-gradient(circle at 90% 86%, rgba(255, 255, 255, .08), transparent 28%),
    linear-gradient(135deg, var(--ttm-teal-950), var(--ttm-teal-800));
}

.ttm-vs-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 13px;
  color: var(--ttm-teal-700);
  font-family: var(--ttm-font-head);
  font-size: 14px;
  font-weight: 800;
}

.ttm-vs-kicker::before {
  width: 28px;
  height: 3px;
  content: "";
  border-radius: 999px;
  background: var(--ttm-gold-500);
}

.ttm-vs-section--dark .ttm-vs-kicker,
.ttm-vs-hero .ttm-vs-kicker { color: var(--ttm-gold-300); }

.ttm-vs-section-head {
  max-width: 790px;
  margin: 0 auto clamp(26px, 3.5vw, 40px);
  text-align: center;
}

.ttm-vs-section-head--start {
  margin-inline: 0;
  text-align: start;
}

.ttm-vs-section-head h2,
.ttm-vs-copy h2 {
  margin-bottom: 14px;
  color: var(--ttm-ink);
  font-size: clamp(30px, 3.6vw, 44px);
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: -.04em;
}

.ttm-vs-section--dark .ttm-vs-section-head h2,
.ttm-vs-section--dark .ttm-vs-copy h2 { color: #fff; }

.ttm-vs-section-head p {
  margin: 0;
  color: var(--ttm-copy);
  font-size: clamp(16px, 1.7vw, 19px);
}

.ttm-vs-section--dark .ttm-vs-section-head p { color: rgba(255,255,255,.78); }

.ttm-vs-btn {
  min-height: 52px;
  padding: 12px 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: 12px;
  text-decoration: none !important;
  cursor: pointer;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease;
}

.ttm-vs-btn:hover { transform: translateY(-2px); }
.ttm-vs-btn--primary {
  color: var(--ttm-teal-950) !important;
  background: var(--ttm-gold-500);
  box-shadow: 0 14px 30px rgba(189, 132, 48, .24);
}
.ttm-vs-btn--primary:hover { background: #e6b455; box-shadow: 0 18px 38px rgba(189,132,48,.3); }
.ttm-vs-btn--secondary { color: #fff !important; background: var(--ttm-teal-800); }
.ttm-vs-btn--secondary:hover { background: var(--ttm-teal-950); }
.ttm-vs-btn--ghost { color: #fff !important; border-color: rgba(255,255,255,.38); background: rgba(255,255,255,.07); }
.ttm-vs-btn--ghost:hover { border-color: rgba(255,255,255,.75); background: rgba(255,255,255,.13); }
.ttm-vs-btn--light { color: var(--ttm-teal-800) !important; border-color: var(--ttm-line); background: #fff; box-shadow: var(--ttm-shadow-xs); }
.ttm-vs-btn--phone { color: #fff !important; background: var(--ttm-teal-800); box-shadow: 0 12px 28px rgba(6,46,48,.18); }
.ttm-vs-btn--phone:hover { background: var(--ttm-teal-950); box-shadow: 0 16px 34px rgba(6,46,48,.24); }
.ttm-vs-btn--whatsapp { color: #fff !important; background: #187552; box-shadow: 0 12px 28px rgba(24,117,82,.18); }
.ttm-vs-btn--whatsapp:hover { background: #105d40; box-shadow: 0 16px 34px rgba(24,117,82,.24); }
.ttm-vs-btn--lead { box-shadow: 0 14px 30px rgba(189,132,48,.24); }

.ttm-action--phone::before,
.ttm-action--whatsapp::before,
[data-ttm-lead-open]::before {
  width: 19px;
  height: 19px;
  display: inline-block;
  flex: 0 0 19px;
  content: "";
  background: currentColor;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
}
.ttm-action--phone::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 2 .7 2.9a2 2 0 0 1-.5 2.1L8 10a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c1 .3 1.9.6 2.9.7A2 2 0 0 1 22 16.9z' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 2 .7 2.9a2 2 0 0 1-.5 2.1L8 10a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c1 .3 1.9.6 2.9.7A2 2 0 0 1 22 16.9z' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.ttm-action--whatsapp::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 11.6A8 8 0 0 1 8.1 18.5L3 20l1.5-5A8 8 0 1 1 20 11.6ZM8.5 7.5c.3 3.3 2.7 5.7 6 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 11.6A8 8 0 0 1 8.1 18.5L3 20l1.5-5A8 8 0 1 1 20 11.6ZM8.5 7.5c.3 3.3 2.7 5.7 6 6' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
[data-ttm-lead-open]::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16v16H4zM8 9h8M8 13h8M8 17h5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16v16H4zM8 9h8M8 13h8M8 17h5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }

.ttm-vs-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.ttm-vs-actions--spaced { margin-top: 28px; }
.ttm-vs-center-actions { margin-top: 28px; text-align: center; }
.ttm-vs-factor-card h3 { margin-top: 18px; }
.ttm-vs-page-hero__inner--single { grid-template-columns: 1fr !important; }

.ttm-vs-icon {
  width: 46px;
  height: 46px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 46px;
  color: var(--ttm-teal-800);
  background: var(--ttm-teal-50);
  border: 1px solid var(--ttm-line);
  border-radius: 14px;
}

.ttm-vs-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ttm-vs-icon--gold { color: var(--ttm-teal-950); background: var(--ttm-gold-500); border-color: transparent; }

/* Accessible header */
.ttm-vs-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  direction: rtl;
  color: var(--ttm-ink);
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid rgba(17,75,77,.12);
  box-shadow: 0 8px 28px rgba(6,46,48,.08);
  backdrop-filter: blur(16px);
  font-family: var(--ttm-font-head);
}

.ttm-vs-skip {
  position: fixed;
  top: 8px;
  right: 12px;
  z-index: 9999;
  padding: 10px 16px;
  color: #fff !important;
  background: var(--ttm-teal-950);
  border-radius: 8px;
  transform: translateY(-150%);
  transition: transform .15s ease;
}
.ttm-vs-skip:focus { transform: translateY(0); }

.ttm-vs-header__utility {
  color: #fff;
  background: var(--ttm-teal-950);
  font-family: var(--ttm-font-body);
  font-size: 13px;
}

.ttm-vs-header__utility-inner {
  width: min(calc(100% - 40px), var(--ttm-container));
  min-height: 34px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.ttm-vs-header__utility p { margin: 0; color: rgba(255,255,255,.83); }
.ttm-vs-header__utility-links { display: flex; gap: 22px; }
.ttm-vs-header__utility a { color: #fff; text-decoration: none; }

.ttm-vs-header__main {
  width: min(calc(100% - 40px), var(--ttm-container));
  min-height: 80px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(20px, 3vw, 44px);
}

.ttm-vs-header__brand { min-width: 0; display: inline-flex; align-items: center; text-decoration: none; }
.ttm-vs-header__brand img { width: 178px; height: auto; object-fit: contain; }

.ttm-vs-nav > ul {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(15px, 2vw, 30px);
  list-style: none;
}

.ttm-vs-nav a,
.ttm-vs-nav button {
  min-height: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--ttm-ink);
  background: none;
  border: 0;
  text-decoration: none;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
}

.ttm-vs-nav a:hover,
.ttm-vs-nav button:hover,
.ttm-vs-nav [aria-current="page"] { color: var(--ttm-teal-700); }

.ttm-vs-nav__item { position: relative; }
.ttm-vs-nav__chevron { width: 8px; height: 8px; border-inline-end: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); }

.ttm-vs-nav__menu {
  position: absolute;
  top: calc(100% + 9px);
  right: -20px;
  width: 330px;
  margin: 0;
  padding: 12px;
  display: grid;
  gap: 4px;
  background: #fff;
  border: 1px solid var(--ttm-line);
  border-radius: 16px;
  box-shadow: var(--ttm-shadow-lg);
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.ttm-vs-nav__item.is-open > .ttm-vs-nav__menu { opacity: 1; visibility: visible; transform: translateY(0); }

.ttm-vs-nav__menu a {
  min-height: 54px;
  padding: 9px 12px;
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 11px;
  border-radius: 10px;
}
.ttm-vs-nav__menu a:hover { background: var(--ttm-teal-50); }
.ttm-vs-nav__menu .ttm-vs-icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 10px; }
.ttm-vs-nav__menu strong { display: block; font-size: 14px; }
.ttm-vs-nav__menu small { display: block; color: var(--ttm-muted); font-family: var(--ttm-font-body); font-size: 12px; font-weight: 500; }

.ttm-vs-header__actions { display: flex; align-items: center; gap: 9px; }
.ttm-vs-header__phone { min-height: 48px; padding: 9px 14px; display: inline-flex; align-items: center; gap: 9px; color: var(--ttm-teal-800); border: 1px solid var(--ttm-line); border-radius: 12px; text-decoration: none; font-weight: 800; white-space: nowrap; }
.ttm-vs-header__phone small { display: block; color: var(--ttm-muted); font-family: var(--ttm-font-body); font-size: 10px; font-weight: 600; line-height: 1.1; }
.ttm-vs-header__phone strong { display: block; font-size: 14px; line-height: 1.2; }
.ttm-vs-header__whatsapp { width: 48px; height: 48px; display: inline-grid; place-items: center; overflow: hidden; color: #fff !important; background: #187552; border-radius: 12px; text-indent: -999px; text-decoration: none; white-space: nowrap; }
.ttm-vs-header__whatsapp::before { width: 21px; height: 21px; margin: 0; text-indent: 0; }

.ttm-vs-menu-toggle {
  width: 48px;
  height: 48px;
  display: none;
  place-items: center;
  color: var(--ttm-teal-950);
  background: var(--ttm-teal-50);
  border: 1px solid var(--ttm-line);
  border-radius: 12px;
  cursor: pointer;
}
.ttm-vs-menu-toggle span,
.ttm-vs-menu-toggle::before,
.ttm-vs-menu-toggle::after { width: 21px; height: 2px; content: ""; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
.ttm-vs-menu-toggle { gap: 5px; }
.ttm-vs-menu-toggle[aria-expanded="true"] span { opacity: 0; }
.ttm-vs-menu-toggle[aria-expanded="true"]::before { transform: translateY(7px) rotate(45deg); }
.ttm-vs-menu-toggle[aria-expanded="true"]::after { transform: translateY(-7px) rotate(-45deg); }

/* Hero */
.ttm-vs-hero {
  position: relative;
  isolation: isolate;
  min-height: 600px;
  color: #fff;
  background: var(--ttm-teal-950);
}

.ttm-vs-hero__media,
.ttm-vs-hero__media::before,
.ttm-vs-hero__media::after { position: absolute; inset: 0; }
.ttm-vs-hero__media { z-index: -2; overflow: hidden; }
.ttm-vs-hero__media picture { display: block; width: 100%; height: 100%; }
.ttm-vs-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.ttm-vs-hero__media::before {
  z-index: 1;
  content: "";
  background: linear-gradient(90deg, rgba(6,46,48,.2), rgba(6,46,48,.6) 48%, rgba(6,46,48,.9) 100%);
}
.ttm-vs-hero__media::after {
  z-index: 2;
  content: "";
  background:
    radial-gradient(circle at 12% 22%, rgba(217,164,65,.23), transparent 28%),
    linear-gradient(0deg, rgba(6,46,48,.32), transparent 40%);
}

.ttm-vs-hero__inner {
  min-height: 600px;
  padding-block: clamp(52px, 6vw, 78px);
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(315px, .65fr);
  align-items: center;
  gap: clamp(38px, 5vw, 72px);
}

.ttm-vs-hero__copy { max-width: 760px; }
.ttm-vs-breadcrumbs { margin: 0 0 24px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; color: rgba(255,255,255,.66); list-style: none; font-size: 13px; }
.ttm-vs-breadcrumbs li + li::before { margin-inline-end: 8px; color: var(--ttm-gold-300); content: "/"; }
.ttm-vs-breadcrumbs a { text-decoration: none; }
.ttm-vs-breadcrumbs a:hover { color: #fff; }

.ttm-vs-hero h1 {
  max-width: 800px;
  margin: 0;
  color: #fff;
  font-size: clamp(46px, 5.2vw, 70px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -.025em;
}
.ttm-vs-hero h1 em { color: var(--ttm-gold-500); font-style: normal; }
.ttm-vs-hero__lead { max-width: 680px; margin: 23px 0 0; color: rgba(255,255,255,.84); font-size: clamp(18px, 1.8vw, 21px); line-height: 1.7; }
.ttm-vs-hero__points { margin: 27px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 18px; list-style: none; }
.ttm-vs-hero__points li { display: inline-flex; align-items: center; gap: 8px; color: rgba(255,255,255,.92); font-size: 15px; font-weight: 700; }
.ttm-vs-hero__points li::before { width: 22px; height: 22px; display: grid; place-items: center; flex: 0 0 22px; color: var(--ttm-teal-950); background: var(--ttm-gold-500); border-radius: 50%; content: "✓"; font-size: 12px; font-weight: 900; }
.ttm-vs-hero .ttm-vs-actions { margin-top: 33px; }

.ttm-vs-hero-card {
  padding: 28px;
  color: var(--ttm-ink);
  background: rgba(255,255,255,.98);
  border: 1px solid rgba(255,255,255,.72);
  border-radius: var(--ttm-radius-lg);
  box-shadow: 0 30px 76px rgba(0,0,0,.24);
  backdrop-filter: blur(12px);
}
.ttm-vs-hero-card__status { margin-bottom: 20px; padding-bottom: 17px; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--ttm-line); }
.ttm-vs-hero-card__pulse { width: 12px; height: 12px; background: var(--ttm-success); border: 4px solid rgba(35,122,88,.18); border-radius: 50%; box-sizing: content-box; }
.ttm-vs-hero-card__status strong { display: block; color: var(--ttm-teal-800); font-family: var(--ttm-font-head); font-size: 16px; }
.ttm-vs-hero-card__status small { color: var(--ttm-muted); }
.ttm-vs-hero-card h2 { margin: 0 0 8px; color: var(--ttm-ink); font-size: 24px; line-height: 1.25; }
.ttm-vs-hero-card p { margin: 0 0 18px; color: var(--ttm-copy); font-size: 14px; }
.ttm-vs-hero-card .ttm-vs-btn { width: 100%; }
.ttm-vs-hero-card__meta { margin-top: 15px; display: flex; justify-content: center; gap: 8px; color: var(--ttm-muted); font-size: 12px; }
.ttm-vs-hero-card__eyebrow { margin-bottom: 10px; display: block; color: var(--ttm-teal-700); font-family: var(--ttm-font-head); font-size: 13px; font-weight: 800; }
.ttm-vs-hero-card__quick { margin: 0 0 22px; padding: 0; display: grid; gap: 7px; list-style: none; }
.ttm-vs-hero-card__quick li { min-height: 58px; padding: 9px 11px; display: grid; grid-template-columns: 35px 1fr; align-items: center; gap: 11px; background: var(--ttm-teal-50); border: 1px solid rgba(17,75,77,.1); border-radius: 11px; }
.ttm-vs-hero-card__quick svg { width: 22px; height: 22px; fill: none; stroke: var(--ttm-teal-700); stroke-width: 1.8; }
.ttm-vs-hero-card__quick strong,.ttm-vs-hero-card__quick small { display: block; }
.ttm-vs-hero-card__quick strong { color: var(--ttm-ink); font-family: var(--ttm-font-head); font-size: 14px; }
.ttm-vs-hero-card__quick small { color: var(--ttm-muted); font-size: 12px; }

.ttm-vs-trustbar { color: #fff; background: var(--ttm-teal-900); border-top: 1px solid rgba(255,255,255,.12); }
.ttm-vs-trustbar__grid { min-height: 82px; display: grid; grid-template-columns: repeat(4, 1fr); }
.ttm-vs-trustbar__item { padding: 15px 22px; display: flex; align-items: center; justify-content: center; gap: 11px; text-align: center; border-inline-start: 1px solid rgba(255,255,255,.12); }
.ttm-vs-trustbar__item:last-child { border-inline-start: 0; }
.ttm-vs-trustbar__item svg { width: 22px; height: 22px; fill: none; stroke: var(--ttm-gold-300); stroke-width: 1.8; }
.ttm-vs-trustbar__item span { font-family: var(--ttm-font-head); font-size: 14px; font-weight: 700; }

/* Cards and layouts */
.ttm-vs-grid { display: grid; gap: 22px; }
.ttm-vs-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ttm-vs-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ttm-vs-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ttm-vs-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--ttm-line);
  border-radius: var(--ttm-radius-md);
  box-shadow: var(--ttm-shadow-xs);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.ttm-vs-card:hover,
.ttm-vs-card:focus-within { transform: translateY(-4px); border-color: rgba(217,164,65,.55); box-shadow: var(--ttm-shadow-sm); }
.ttm-vs-card__body { padding: 25px; }
.ttm-vs-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.ttm-vs-card h3 { margin: 0 0 9px; color: var(--ttm-ink); font-size: 22px; font-weight: 800; line-height: 1.25; }
.ttm-vs-card p { margin: 0; color: var(--ttm-copy); font-size: 15px; }
.ttm-vs-card__link { margin-top: 20px; display: inline-flex; align-items: center; gap: 8px; color: var(--ttm-teal-700) !important; text-decoration: none; font-family: var(--ttm-font-head); font-size: 14px; font-weight: 800; }
.ttm-vs-card__link::after { content: "←"; transition: transform .2s ease; }
.ttm-vs-card:hover .ttm-vs-card__link::after,
.ttm-vs-card:focus-within .ttm-vs-card__link::after { transform: translateX(-4px); }
.ttm-vs-card__media { aspect-ratio: 16 / 9; overflow: hidden; background: linear-gradient(135deg, var(--ttm-teal-100), #fff); }
.ttm-vs-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.ttm-vs-card:hover .ttm-vs-card__media img,
.ttm-vs-card:focus-within .ttm-vs-card__media img { transform: scale(1.035); }

.ttm-vs-section[id],
.ttm-vs :where(h2,h3,h4)[id] { scroll-margin-top: 120px; }

.ttm-vs-service-card { padding: 28px; }
.ttm-vs-service-card::before { position: absolute; top: 0; right: 0; width: 92px; height: 5px; content: ""; background: var(--ttm-gold-500); border-radius: 0 0 0 999px; }
.ttm-vs-service-card .ttm-vs-icon { margin-bottom: 24px; }
.ttm-vs-service-card ul { margin: 18px 0 0; padding: 0; display: grid; gap: 8px; color: var(--ttm-copy); list-style: none; font-size: 14px; }
.ttm-vs-service-card li { display: flex; align-items: center; gap: 8px; }
.ttm-vs-service-card li::before { color: var(--ttm-gold-600); content: "•"; font-size: 20px; line-height: 1; }

.ttm-vs-service-showcase { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.ttm-vs-service-photo-card { position: relative; min-width: 0; display: grid; grid-template-columns: minmax(190px,.8fr) minmax(0,1.2fr); overflow: hidden; color: var(--ttm-ink); background: #fff; border: 1px solid var(--ttm-line); border-radius: var(--ttm-radius-md); box-shadow: var(--ttm-shadow-xs); transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.ttm-vs-service-photo-card:hover { transform: translateY(-3px); border-color: rgba(217,164,65,.5); box-shadow: var(--ttm-shadow-sm); }
.ttm-vs-service-photo-card__media { min-height: 300px; overflow: hidden; background: var(--ttm-teal-100); }
.ttm-vs-service-photo-card__media picture { display: block; width: 100%; height: 100%; }
.ttm-vs-service-photo-card__image { width: 100%; height: 100%; min-height: 300px; object-fit: cover; transition: transform .45s ease; }
.ttm-vs-service-photo-card:hover .ttm-vs-service-photo-card__image { transform: scale(1.025); }
.ttm-vs-service-photo-card__body { padding: clamp(22px,3vw,34px); display: flex; flex-direction: column; justify-content: center; }
.ttm-vs-service-photo-card__title { margin-bottom: 12px; display: flex; align-items: center; gap: 12px; }
.ttm-vs-service-photo-card__title .ttm-vs-icon { width: 42px; height: 42px; flex-basis: 42px; color: var(--ttm-teal-950); background: var(--ttm-gold-500); border-color: transparent; border-radius: 11px; }
.ttm-vs-service-photo-card h3 { margin: 0; font-size: clamp(20px,2vw,25px); line-height: 1.2; }
.ttm-vs-service-photo-card p { margin: 0; color: var(--ttm-copy); font-size: 15px; }
.ttm-vs-service-photo-card ul { margin: 16px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 7px; list-style: none; }
.ttm-vs-service-photo-card li { padding: 5px 9px; color: var(--ttm-teal-800); background: var(--ttm-teal-50); border-radius: 999px; font-size: 12px; font-weight: 700; }
.ttm-vs-service-photo-card .ttm-vs-card__link { margin-top: 18px; }

.ttm-vs-feature-strip {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--ttm-line);
  border-radius: var(--ttm-radius-lg);
  box-shadow: var(--ttm-shadow-sm);
}
.ttm-vs-feature-strip__media { min-height: 400px; background: var(--ttm-teal-100); }
.ttm-vs-feature-strip__media img { width: 100%; height: 100%; object-fit: cover; }
.ttm-vs-feature-strip__copy { padding: clamp(30px, 4.5vw, 58px); align-self: center; }
.ttm-vs-feature-strip__copy h2 { margin-bottom: 16px; font-size: clamp(31px, 4vw, 48px); line-height: 1.13; }
.ttm-vs-feature-strip__copy p { color: var(--ttm-copy); }

.ttm-vs-checklist { margin: 24px 0 0; padding: 0; display: grid; gap: 14px; list-style: none; }
.ttm-vs-checklist li { position: relative; padding-inline-start: 34px; color: var(--ttm-copy); }
.ttm-vs-checklist li::before { position: absolute; top: 2px; inset-inline-start: 0; width: 24px; height: 24px; display: grid; place-items: center; color: var(--ttm-teal-950); background: var(--ttm-gold-500); border-radius: 50%; content: "✓"; font-size: 12px; font-weight: 900; }

.ttm-vs-process { counter-reset: ttmstep; }
.ttm-vs-step { position: relative; padding: 31px 28px; counter-increment: ttmstep; }
.ttm-vs-step::before { width: 44px; height: 44px; margin-bottom: 22px; display: grid; place-items: center; color: var(--ttm-teal-950); background: var(--ttm-gold-500); border-radius: 14px; content: counter(ttmstep); font-family: var(--ttm-font-head); font-weight: 900; }
.ttm-vs-step:not(:last-child)::after { position: absolute; top: 52px; inset-inline-start: calc(100% - 6px); z-index: 2; width: 34px; height: 2px; content: ""; background: var(--ttm-gold-300); }

.ttm-vs-chip-list { margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; list-style: none; }
.ttm-vs-chip-list a,
.ttm-vs-chip-list span { min-height: 42px; padding: 8px 15px; display: inline-flex; align-items: center; color: var(--ttm-teal-800); background: #fff; border: 1px solid var(--ttm-line); border-radius: 999px; text-decoration: none; font-size: 14px; font-weight: 700; box-shadow: var(--ttm-shadow-xs); }
.ttm-vs-chip-list a:hover { border-color: var(--ttm-gold-500); background: #fffdf7; }

.ttm-vs-city-directory { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; list-style: none; }
.ttm-vs-city-directory a { min-height: 86px; padding: 18px; display: flex; flex-direction: column; justify-content: center; color: var(--ttm-teal-800); background: #fff; border: 1px solid var(--ttm-line); border-radius: 14px; text-decoration: none; box-shadow: var(--ttm-shadow-xs); transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.ttm-vs-city-directory a:hover { transform: translateY(-2px); border-color: var(--ttm-gold-500); box-shadow: var(--ttm-shadow-sm); }
.ttm-vs-city-directory span { font-family: var(--ttm-font-head); font-size: 18px; font-weight: 800; }
.ttm-vs-city-directory small { color: var(--ttm-muted); }

.ttm-vs-callout { padding: clamp(28px, 4vw, 48px); display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 30px; color: #fff; background: linear-gradient(135deg, var(--ttm-teal-950), var(--ttm-teal-700)); border: 1px solid rgba(255,255,255,.1); border-radius: var(--ttm-radius-lg); box-shadow: var(--ttm-shadow-lg); }
.ttm-vs-callout h2 { margin: 0 0 8px; color: #fff; font-size: clamp(28px, 4vw, 43px); line-height: 1.15; }
.ttm-vs-callout p { max-width: 720px; margin: 0; color: rgba(255,255,255,.78); }

/* Inner-page hero */
.ttm-vs-page-hero { position: relative; overflow: hidden; color: #fff; background: linear-gradient(135deg, var(--ttm-teal-950), var(--ttm-teal-800)); }
.ttm-vs-page-hero::before { position: absolute; inset: auto -140px -260px auto; width: 540px; height: 540px; content: ""; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; }
.ttm-vs-page-hero__inner { min-height: 390px; padding-block: clamp(46px,5.5vw,72px); display: grid; grid-template-columns: minmax(0,1.1fr) minmax(300px,.72fr); align-items: center; gap: clamp(34px,5vw,68px); }
.ttm-vs-page-hero--compact .ttm-vs-container { padding-block: clamp(50px,6vw,78px); }
.ttm-vs-page-hero--compact .ttm-vs-actions { margin-top: 28px; }
.ttm-vs-page-hero h1 { margin: 0; color: #fff; font-size: clamp(39px,4.8vw,60px); line-height: 1.07; letter-spacing: -.025em; }
.ttm-vs-page-hero__lead { max-width: 700px; margin: 20px 0 0; color: rgba(255,255,255,.82); font-size: 19px; }
.ttm-vs-page-hero__media { min-height: 320px; overflow: hidden; border: 1px solid rgba(255,255,255,.24); border-radius: var(--ttm-radius-lg); box-shadow: 0 28px 70px rgba(0,0,0,.25); }
.ttm-vs-page-hero__media img { width: 100%; height: 100%; min-height: 320px; object-fit: cover; }

.ttm-vs-anchor-nav { position: relative; z-index: 4; margin-top: -30px; }
.ttm-vs-anchor-nav__inner { min-height: 64px; padding: 10px; display: flex; align-items: center; justify-content: center; gap: 4px; background: #fff; border: 1px solid var(--ttm-line); border-radius: 16px; box-shadow: var(--ttm-shadow-sm); }
.ttm-vs-anchor-nav a { padding: 10px 15px; color: var(--ttm-copy); border-radius: 9px; text-decoration: none; font-family: var(--ttm-font-head); font-size: 14px; font-weight: 700; }
.ttm-vs-anchor-nav a:hover { color: var(--ttm-teal-800); background: var(--ttm-teal-50); }

.ttm-vs-content-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: clamp(42px, 7vw, 90px); align-items: start; }
.ttm-vs-copy { min-width: 0; }
.ttm-vs-copy > :first-child { margin-top: 0; }
.ttm-vs-copy h2:not(:first-child) { margin-top: 42px; padding-top: 34px; border-top: 1px solid var(--ttm-line); }
.ttm-vs-copy h3 { margin: 34px 0 10px; color: var(--ttm-teal-800); font-size: 25px; line-height: 1.28; }
.ttm-vs-copy p,
.ttm-vs-copy li { color: var(--ttm-copy); }
.ttm-vs-copy a { color: var(--ttm-teal-700); overflow-wrap: anywhere; text-decoration-thickness: 1px; text-underline-offset: 3px; font-weight: 700; }
.ttm-vs-copy ul { padding-inline-start: 23px; }
.ttm-vs-copy blockquote { margin: 32px 0; padding: 25px 28px; color: var(--ttm-ink); background: var(--ttm-teal-50); border: 1px solid var(--ttm-line); border-inline-start: 5px solid var(--ttm-gold-500); border-radius: 14px; }

.ttm-vs-sidebar { position: sticky; top: 132px; display: grid; gap: 18px; }
.ttm-vs-sidebar-card { padding: 23px; background: #fff; border: 1px solid var(--ttm-line); border-radius: 16px; box-shadow: var(--ttm-shadow-xs); }
.ttm-vs-sidebar-card--accent { color: #fff; background: linear-gradient(150deg, var(--ttm-teal-900), var(--ttm-teal-700)); border-color: transparent; }
.ttm-vs-sidebar-card h2,
.ttm-vs-sidebar-card h3 { margin: 0 0 9px; font-size: 21px; }
.ttm-vs-sidebar-card--accent h2,
.ttm-vs-sidebar-card--accent h3 { color: #fff; }
.ttm-vs-sidebar-card p { margin: 0 0 16px; color: var(--ttm-copy); font-size: 14px; }
.ttm-vs-sidebar-card--accent p { color: rgba(255,255,255,.76); }
.ttm-vs-sidebar-card .ttm-vs-btn { width: 100%; }
.ttm-vs-sidebar-links { margin: 0; padding: 0; display: grid; list-style: none; }
.ttm-vs-sidebar-links a { padding: 11px 0; display: flex; justify-content: space-between; gap: 12px; color: var(--ttm-copy); border-bottom: 1px solid var(--ttm-line); text-decoration: none; font-size: 14px; font-weight: 700; }
.ttm-vs-sidebar-links li:last-child a { border-bottom: 0; }
.ttm-vs-sidebar-links a::after { color: var(--ttm-gold-600); content: "←"; }

.ttm-vs-alert { margin: 28px 0; padding: 22px 24px; display: flex; align-items: flex-start; gap: 15px; border-radius: 14px; }
.ttm-vs-alert--warning { color: #5e3b0b; background: #fff7e7; border: 1px solid #efd39b; }
.ttm-vs-alert--danger { color: #69221c; background: #fff1f0; border: 1px solid #ecc2be; }
.ttm-vs-alert strong { display: block; margin-bottom: 3px; }
.ttm-vs-alert p { margin: 0; color: inherit; font-size: 14px; }

.ttm-vs-diagnostic { grid-template-columns: repeat(3,minmax(0,1fr)); }
.ttm-vs-diagnostic-card { padding: 25px; }
.ttm-vs-diagnostic-card__level { width: fit-content; margin-bottom: 17px; padding: 5px 10px; display: inline-flex; border-radius: 999px; font-size: 12px; font-weight: 800; }
.ttm-vs-diagnostic-card__level--low { color: #15583d; background: #e3f5ec; }
.ttm-vs-diagnostic-card__level--medium { color: #79480a; background: #fff1d3; }
.ttm-vs-diagnostic-card__level--high { color: #7a231c; background: #fde9e7; }

.ttm-vs-faq { display: grid; gap: 12px; }
.ttm-vs-faq details { overflow: hidden; background: #fff; border: 1px solid var(--ttm-line); border-radius: 14px; }
.ttm-vs-faq summary { position: relative; min-height: 66px; padding: 18px 22px 18px 60px; display: flex; align-items: center; color: var(--ttm-ink); cursor: pointer; font-family: var(--ttm-font-head); font-weight: 800; list-style: none; }
.ttm-vs-faq summary::-webkit-details-marker { display: none; }
.ttm-vs-faq summary::after { position: absolute; inset-inline-end: 22px; width: 28px; height: 28px; display: grid; place-items: center; color: var(--ttm-teal-800); background: var(--ttm-teal-50); border-radius: 50%; content: "+"; font-size: 20px; }
.ttm-vs-faq details[open] summary::after { content: "−"; }
.ttm-vs-faq__answer { padding: 0 22px 20px; color: var(--ttm-copy); }
.ttm-vs-faq__answer p:last-child { margin-bottom: 0; }

/* Article system */
.ttm-vs-filterbar { margin-bottom: 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.ttm-vs-filterbar__tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.ttm-vs-filterbar__tabs button { min-height: 42px; padding: 8px 15px; color: var(--ttm-copy); background: #fff; border: 1px solid var(--ttm-line); border-radius: 999px; cursor: pointer; font-weight: 700; }
.ttm-vs-filterbar__tabs button[aria-pressed="true"] { color: #fff; background: var(--ttm-teal-800); border-color: var(--ttm-teal-800); }
.ttm-vs-search { min-width: min(100%,310px); min-height: 46px; padding: 9px 15px; color: var(--ttm-ink); background: #fff; border: 1px solid var(--ttm-line); border-radius: 12px; }

.ttm-vs-article-card { display: flex; flex-direction: column; }
.ttm-vs-article-card .ttm-vs-card__body { display: flex; flex: 1; flex-direction: column; }
.ttm-vs-article-card__meta { margin-bottom: 12px; display: flex; align-items: center; gap: 9px; color: var(--ttm-muted); font-size: 12px; }
.ttm-vs-article-card__tag { padding: 4px 9px; color: var(--ttm-teal-800); background: var(--ttm-teal-50); border-radius: 999px; font-weight: 800; }
.ttm-vs-article-card .ttm-vs-card__link { margin-top: auto; padding-top: 20px; }

.ttm-vs-article-hero { padding-block: clamp(58px,8vw,96px); color: #fff; background: linear-gradient(135deg,var(--ttm-teal-950),var(--ttm-teal-800)); }
.ttm-vs-article-hero__inner { display: grid; grid-template-columns: minmax(0,1fr) minmax(330px,.8fr); gap: clamp(38px,7vw,86px); align-items: center; }
.ttm-vs-article-hero h1 { margin: 0; font-size: clamp(42px,5.5vw,68px); line-height: 1.06; letter-spacing: -.045em; }
.ttm-vs-article-hero__meta { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 14px; color: rgba(255,255,255,.72); font-size: 14px; }
.ttm-vs-article-hero__media { overflow: hidden; aspect-ratio: 4/3; border-radius: var(--ttm-radius-lg); box-shadow: 0 26px 75px rgba(0,0,0,.27); }
.ttm-vs-article-hero__media img { width: 100%; height: 100%; object-fit: cover; }

.ttm-vs-toc { padding: 22px; background: var(--ttm-teal-50); border: 1px solid var(--ttm-line); border-radius: 14px; }
.ttm-vs-toc strong { display: block; margin-bottom: 9px; }
.ttm-vs-toc ol { margin: 0; padding-inline-start: 22px; }
.ttm-vs-toc a { color: var(--ttm-teal-700); text-decoration: none; }

/* Contact and legal */
.ttm-vs-contact-grid { display: grid; grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); gap: clamp(30px,6vw,72px); align-items: start; }
.ttm-vs-contact-stack { display: grid; gap: 15px; }
.ttm-vs-contact-item { padding: 20px; display: grid; grid-template-columns: 46px 1fr; gap: 14px; align-items: center; background: #fff; border: 1px solid var(--ttm-line); border-radius: 15px; }
.ttm-vs-contact-item small { display: block; color: var(--ttm-muted); }
.ttm-vs-contact-item strong { display: block; color: var(--ttm-ink); font-family: var(--ttm-font-head); font-size: 18px; }
.ttm-vs-form-shell { padding: clamp(25px,5vw,48px); background: #fff; border: 1px solid var(--ttm-line); border-top: 5px solid var(--ttm-gold-500); border-radius: var(--ttm-radius-lg); box-shadow: var(--ttm-shadow-sm); }
.ttm-vs-form-shell h2 { margin: 0 0 8px; font-size: 32px; }
.ttm-vs-form-shell > p { color: var(--ttm-copy); }
.ttm-vs-form-slot { min-height: 180px; margin-top: 24px; padding: 24px; display: grid; place-items: center; color: var(--ttm-copy); background: var(--ttm-teal-50); border: 1px solid var(--ttm-line); border-radius: 13px; text-align: center; }

.ttm-vs-legal { background: #fff; }
.ttm-vs-legal__notice { margin-bottom: 34px; padding: 20px 23px; color: #6f470d; background: #fff7e6; border: 1px solid #efd094; border-radius: 13px; }
.ttm-vs-legal__content { color: var(--ttm-copy); }
.ttm-vs-legal__content h2 { margin: 50px 0 12px; color: var(--ttm-ink); font-size: 30px; }
.ttm-vs-legal__content h3 { margin: 28px 0 8px; color: var(--ttm-teal-800); font-size: 22px; }

/* Footer */
.ttm-vs-footer {
  position: relative;
  direction: rtl;
  color: #fff;
  background:
    radial-gradient(circle at 12% 10%, rgba(217,164,65,.13), transparent 27%),
    linear-gradient(145deg,var(--ttm-teal-950),#0b4042 62%,var(--ttm-teal-950));
  font-family: var(--ttm-font-body);
}
.ttm-vs-footer__cta { padding-block: 38px; border-bottom: 1px solid rgba(255,255,255,.12); }
.ttm-vs-footer__cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 34px; }
.ttm-vs-footer__cta h2 { margin: 0 0 7px; color: #fff; font-family: var(--ttm-font-head); font-size: clamp(27px,3.5vw,42px); }
.ttm-vs-footer__cta p { margin: 0; color: rgba(255,255,255,.72); }
.ttm-vs-footer__main { padding-block: 48px 36px; display: grid; grid-template-columns: 1.45fr repeat(3,.82fr) 1fr; gap: clamp(26px,3.5vw,44px); }
.ttm-vs-footer__brand img { width: 205px; height: auto; padding: 7px 10px; object-fit: contain; background: rgba(255,255,255,.96); border-radius: 14px; }
.ttm-vs-footer__brand p { max-width: 330px; margin: 20px 0 0; color: rgba(255,255,255,.72); font-size: 14px; }
.ttm-vs-footer__heading { margin: 0 0 18px; color: var(--ttm-gold-300); font-size: 15px; font-weight: 800; }
.ttm-vs-footer__links { margin: 0; padding: 0; display: grid; gap: 11px; list-style: none; }
.ttm-vs-footer__links a { color: rgba(255,255,255,.78); text-decoration: none; font-size: 14px; }
.ttm-vs-footer__links a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.ttm-vs-footer__contact { display: grid; gap: 11px; }
.ttm-vs-footer__contact a,
.ttm-vs-footer__contact span { min-width: 0; padding: 11px 13px; display: flex; align-items: center; gap: 10px; overflow-wrap: anywhere; color: #fff; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); border-radius: 10px; text-decoration: none; font-size: 13px; }
.ttm-vs-footer__bottom { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 24px; color: rgba(255,255,255,.6); border-top: 1px solid rgba(255,255,255,.12); font-size: 12px; }
.ttm-vs-footer__legal { display: flex; flex-wrap: wrap; gap: 18px; }
.ttm-vs-footer__legal a { text-decoration: none; }

.ttm-vs-action-rail { position: fixed; top: 50%; right: 14px; z-index: 880; display: grid; gap: 7px; direction: rtl; transform: translateY(-50%); }
.ttm-vs-action-rail__item { width: 66px; min-height: 58px; padding: 7px 5px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; appearance: none; color: #fff !important; background: var(--ttm-teal-800); border: 1px solid rgba(255,255,255,.2); border-radius: 14px; box-shadow: 0 12px 30px rgba(6,46,48,.2); cursor: pointer; text-decoration: none; font-family: var(--ttm-font-head); font-size: 11px; font-weight: 800; line-height: 1.15; transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease; }
.ttm-vs-action-rail__item:hover { color: #fff; transform: translateX(-3px); box-shadow: 0 16px 34px rgba(6,46,48,.28); }
.ttm-vs-action-rail__whatsapp { background: #187552; }
.ttm-vs-action-rail__lead { color: var(--ttm-teal-950) !important; background: var(--ttm-gold-500); }
.ttm-vs-action-rail__lead:hover { color: var(--ttm-teal-950); background: var(--ttm-gold-600); }
.ttm-vs-action-rail__item::before { width: 20px; height: 20px; flex-basis: 20px; }

.ttm-vs-mobile-dock { position: fixed; right: 12px; bottom: max(12px,env(safe-area-inset-bottom)); left: 12px; z-index: 900; padding: 7px; display: none; direction: rtl; background: rgba(255,255,255,.97); border: 1px solid var(--ttm-line); border-radius: 16px; box-shadow: 0 14px 50px rgba(6,46,48,.22); backdrop-filter: blur(12px); }
.ttm-vs-mobile-dock a { min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 7px; border-radius: 11px; text-decoration: none; font-family: var(--ttm-font-head); font-size: 13px; font-weight: 800; }
.ttm-vs-mobile-dock__phone { color: #fff !important; background: var(--ttm-teal-800); }
.ttm-vs-mobile-dock__form { color: var(--ttm-teal-950) !important; background: var(--ttm-gold-500); }
.ttm-vs-mobile-dock__whatsapp { color: #fff !important; background: #187552; }

/* Focus and motion */
:where(.ttm-vs,.ttm-vs-header,.ttm-vs-footer,.ttm-vs-action-rail,.ttm-vs-mobile-dock) :focus-visible {
  outline: 3px solid #f5bd4c;
  outline-offset: 3px;
}

@media (max-width: 1120px) {
  .ttm-vs-header__main { grid-template-columns: 176px minmax(0,1fr) auto; gap: 15px; }
  .ttm-vs-nav > ul { gap: 13px; }
  .ttm-vs-nav a,.ttm-vs-nav button { font-size: 13px; }
  .ttm-vs-header__phone { display: none; }
  .ttm-vs-footer__main { grid-template-columns: 1.35fr repeat(3,1fr); }
  .ttm-vs-footer__contact-column { grid-column: 1 / -1; }
  .ttm-vs-footer__contact { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 920px) {
	.ttm-vs-action-rail { display: none; }
  .ttm-vs-header__utility { display: none; }
  .ttm-vs-header__main { min-height: 72px; grid-template-columns: 1fr auto; }
  .ttm-vs-header__brand img { width: 160px; height: auto; }
  .ttm-vs-menu-toggle { display: grid; }
  .ttm-vs-nav { position: fixed; top: 72px; right: 0; bottom: 0; left: 0; z-index: 999; padding: 20px; overflow-y: auto; background: #fff; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-12px); transition: opacity .2s ease, visibility .2s ease, transform .2s ease; }
  .admin-bar .ttm-vs-nav { top: 104px; }
  .ttm-vs-header.is-menu-open .ttm-vs-nav { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
  .ttm-vs-nav > ul { display: grid; align-items: stretch; gap: 4px; }
  .ttm-vs-nav a,.ttm-vs-nav button { width: 100%; min-height: 52px; padding: 8px 10px; justify-content: space-between; font-size: 16px; }
  .ttm-vs-nav__item { border-bottom: 1px solid var(--ttm-line); }
  .ttm-vs-nav__menu { position: static; width: 100%; max-height: 0; padding: 0 10px; overflow: hidden; border: 0; box-shadow: none; opacity: 1; visibility: visible; transform: none; transition: max-height .25s ease, padding .25s ease; }
  .ttm-vs-nav__item.is-open > .ttm-vs-nav__menu { max-height: 500px; padding-block: 6px 14px; }
  .ttm-vs-header__actions { display: none; }
  .ttm-vs-hero__inner,.ttm-vs-page-hero__inner,.ttm-vs-article-hero__inner { grid-template-columns: 1fr; }
  .ttm-vs-hero-card { max-width: 560px; }
  .ttm-vs-trustbar__grid { grid-template-columns: repeat(2,1fr); }
  .ttm-vs-trustbar__item:nth-child(2) { border-inline-start: 0; }
  .ttm-vs-trustbar__item:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.12); }
  .ttm-vs-grid--4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ttm-vs-grid--3 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ttm-vs-service-showcase { grid-template-columns: 1fr; }
  .ttm-vs-feature-strip { grid-template-columns: 1fr; }
  .ttm-vs-feature-strip__media { min-height: 360px; }
  .ttm-vs-content-layout,.ttm-vs-contact-grid { grid-template-columns: 1fr; }
  .ttm-vs-sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ttm-vs-diagnostic { grid-template-columns: 1fr; }
  .ttm-vs-footer__main { grid-template-columns: repeat(2,1fr); }
  .ttm-vs-footer__brand,.ttm-vs-footer__contact-column { grid-column: 1 / -1; }
  .ttm-vs-city-directory { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (min-width: 641px) and (max-width: 920px) {
  .ttm-vs-header__main { grid-template-columns: minmax(0,1fr) auto auto; gap: 12px; }
  .ttm-vs-header__actions { display: flex; }
  .ttm-vs-header__phone,.ttm-vs-header__whatsapp { display: none; }
  .ttm-vs-header__actions .ttm-vs-btn { min-height: 44px; padding-inline: 16px; font-size: 13px; }
}

@media screen and (min-width: 783px) {
  .admin-bar .ttm-vs-header { top: 32px; }
}

@media screen and (max-width: 782px) {
  .admin-bar .ttm-vs-header { top: 46px; }
}

@media (max-width: 640px) {
  .ttm-vs { font-size: 16px; padding-bottom: 76px; }
  .ttm-vs-container,.ttm-vs-container--readable { width: min(calc(100% - 28px), var(--ttm-container)); }
  .ttm-vs-section { padding-block: 44px; }
  .ttm-vs-section--tight { padding-block: 34px; }
  .ttm-vs-section-head { margin-bottom: 26px; text-align: start; }
  .ttm-vs-kicker { font-size: 12px; }
  .ttm-vs-header__main { width: calc(100% - 24px); }
  .ttm-vs-header__brand img { width: 142px; }
  .ttm-vs-header__actions { display: none; }
  .ttm-vs-hero { min-height: auto; }
  .ttm-vs-hero__media img { object-position: 42% center; }
  .ttm-vs-hero__media::before { background: linear-gradient(0deg,rgba(6,46,48,.94),rgba(6,46,48,.66) 70%,rgba(6,46,48,.44)); }
  .ttm-vs-hero__inner { min-height: auto; padding-block: 52px 44px; gap: 26px; }
  .ttm-vs-hero h1 { font-size: clamp(38px,11.5vw,52px); }
  .ttm-vs-hero__lead { font-size: 17px; }
  .ttm-vs-hero__points { display: grid; }
  .ttm-vs-hero .ttm-vs-actions,.ttm-vs-actions { display: grid; }
  .ttm-vs-hero .ttm-vs-btn,.ttm-vs-actions .ttm-vs-btn { width: 100%; }
  .ttm-vs-hero-card { padding: 21px; border-radius: 20px; }
  .ttm-vs-trustbar__item { min-height: 70px; padding: 12px 8px; display: grid; gap: 5px; }
  .ttm-vs-trustbar__item span { font-size: 12px; }
  .ttm-vs-grid--2,.ttm-vs-grid--3,.ttm-vs-grid--4 { grid-template-columns: 1fr; }
  .ttm-vs-feature-strip__media { min-height: 260px; }
  .ttm-vs-feature-strip__copy { padding: 28px 22px; }
  .ttm-vs-service-photo-card { grid-template-columns: 1fr; }
  .ttm-vs-service-photo-card__media,.ttm-vs-service-photo-card__image { min-height: 230px; }
  .ttm-vs-service-photo-card__media { aspect-ratio: 16/10; }
  .ttm-vs-step:not(:last-child)::after { display: none; }
  .ttm-vs-callout { grid-template-columns: 1fr; }
  .ttm-vs-page-hero__inner { min-height: auto; padding-block: 44px; }
  .ttm-vs-page-hero__media { min-height: 220px; }
  .ttm-vs-page-hero__media img { min-height: 220px; }
  .ttm-vs-anchor-nav { display: none; }
  .ttm-vs-sidebar { grid-template-columns: 1fr; }
  .ttm-vs-article-hero__media { aspect-ratio: 16/10; }
  .ttm-vs-footer__cta-inner { display: grid; }
  .ttm-vs-footer__main { grid-template-columns: 1fr 1fr; padding-block: 46px 32px; }
  .ttm-vs-footer__brand,.ttm-vs-footer__contact-column { grid-column: 1 / -1; }
  .ttm-vs-footer__contact { grid-template-columns: 1fr; }
  .ttm-vs-footer__bottom { padding-block: 20px 92px; display: grid; }
  .ttm-vs-mobile-dock { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; }
  .ttm-vs-mobile-dock a,.ttm-vs-mobile-dock button { min-width: 0; padding-inline: 5px; font-size: 11px; }
  .ttm-vs-mobile-dock :where(a,button)::before { width: 17px; height: 17px; flex-basis: 17px; }
  .ttm-vs-city-directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media screen and (max-width: 782px) and (max-width: 920px) {
  .admin-bar .ttm-vs-nav { top: 118px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  :where(.ttm-vs,.ttm-vs-header,.ttm-vs-footer,.ttm-vs-action-rail,.ttm-vs-mobile-dock),
  :where(.ttm-vs,.ttm-vs-header,.ttm-vs-footer,.ttm-vs-action-rail,.ttm-vs-mobile-dock) *,
  :where(.ttm-vs,.ttm-vs-header,.ttm-vs-footer,.ttm-vs-action-rail,.ttm-vs-mobile-dock) *::before,
  :where(.ttm-vs,.ttm-vs-header,.ttm-vs-footer,.ttm-vs-action-rail,.ttm-vs-mobile-dock) *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

@media print {
  .ttm-vs-header,.ttm-vs-footer,.ttm-vs-action-rail,.ttm-vs-mobile-dock,.ttm-vs-sidebar,.ttm-vs-anchor-nav,.ttm-vs-actions { display: none !important; }
  .ttm-vs { color: #000; background: #fff; }
  .ttm-vs-content-layout { display: block; }
}
