:root {
  --c: #00D4FF;
  --cd: rgba(0,212,255,.1);
  --cl: rgba(0,212,255,.14);
  --cg: rgba(0,212,255,.28);
  --bg0: #000;
  --bg1: #06060f;
  --bg2: #0c0c1a;
  --bg3: #121224;
  --t1: #fff;
  --t2: rgba(255,255,255,.72);
  --t3: rgba(255,255,255,.38);
  --fh: 'Orbitron', sans-serif;
  --fb: 'Jost', sans-serif;
  --mob-h: 70px;
  --rad: 14px;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0 }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100% }
body {
  font-family: var(--fb);
  font-size: 17px;
  line-height: 1.6;
  background: var(--bg0);
  color: var(--t1);
  overflow-x: hidden;
  padding-bottom: var(--mob-h);
}
img { display: block; height: auto }
a { color: inherit; text-decoration: none }
ul { list-style: none }
button { cursor: pointer; font-family: var(--fb); border: none; background: none }

::-webkit-scrollbar { width: 4px }
::-webkit-scrollbar-track { background: var(--bg0) }
::-webkit-scrollbar-thumb { background: var(--c); border-radius: 2px }
.progress {
  position: fixed; top: 0; left: 0; height: 3px; width: 0;
  background: linear-gradient(90deg, var(--c), #fff);
  z-index: 9999; box-shadow: 0 0 8px var(--c); transition: width .08s linear;
}
#px { position: fixed; inset: 0; pointer-events: none; z-index: 0; opacity: .1 }
.dir-icon {
  font-size: 42px;
  color: var(--c);
  margin-bottom: 12px;
  line-height: 1;

  transition: transform 0.35s cubic-bezier(.4,0,.2,1);
}

.dir-card:hover .dir-icon {
  transform: translateY(-6px);
}
.urgency-bar {
  background: linear-gradient(90deg, rgba(0,212,255,.15), rgba(0,212,255,.05), rgba(0,212,255,.15));
  border-bottom: 1px solid var(--cl);
  padding: 10px 16px;
  text-align: center;
  font-size: 16.5px;
  font-weight: 600;
  font-family: var(--fb);
  color: #fff;
  display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap;
}
.urgency-bar i { color: var(--c) }
.urgency-bar strong { color: var(--c) }

.topbar {
  background: rgba(0,212,255,.04);
  border-bottom: 1px solid var(--cl);
  padding: 7px 16px;
  font-size: 16.5px;
  font-family: var(--fb);
  color: var(--t2);
  display: none;
}
.topbar-inner {
  max-width: 1200px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
.topbar-inner a { color: var(--c); font-weight: 600 }
.nav {
  position: sticky; top: 0; z-index: 800;
  transition: background .3s, box-shadow .3s;
}
.nav.scrolled {
  background: rgba(0,0,2,.97);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 1px 0 var(--cl);
}
.nav-inner {
  max-width: 1200px; margin: 0 auto; padding: 0 16px;
  height: 60px;
  display: flex; align-items: center; gap: 8px;
}
.nav-logo img { height: 40px; width: auto }
.nav-links {
  display: none; margin-left: auto; gap: 2px; align-items: center;
}
.nav-links a {
  padding: 7px 12px;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 500;
  color: var(--t2); border-radius: 8px;
  white-space: nowrap; transition: color .2s, background .2s;
}
.nav-links a:hover { color: var(--c); background: var(--cd) }
.nav-spacer { flex: 1 }
.nav-tel {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700; color: var(--t2);
  white-space: nowrap; display: none; transition: color .2s;
}
.nav-tel:hover { color: var(--c) }
.nav-cta-btn {
  display: none;
  background: var(--c); color: #000;
  padding: 10px 20px; border-radius: 10px;
  font-family: var(--fb);
  font-weight: 700; font-size: 16.5px;
  white-space: nowrap; flex-shrink: 0;
  transition: background .2s, transform .2s;
}
.nav-cta-btn:hover { background: #fff; transform: translateY(-1px) }
.burger {
  width: 44px; height: 44px; margin-left: auto;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
  flex-shrink: 0; border-radius: 8px;
}
.burger span {
  display: block; width: 22px; height: 2px;
  background: var(--c); border-radius: 2px;
  transition: transform .28s, opacity .28s;
}
.burger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg) }
.burger.open span:nth-child(2) { opacity: 0; transform: scaleX(0) }
.burger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg) }
.nav-drawer {
  display: none; position: fixed; inset: 0;
  background: rgba(0,0,2,.98); backdrop-filter: blur(24px);
  z-index: 700; flex-direction: column;
  align-items: stretch; padding: 80px 24px 120px;
  overflow-y: auto;
}
.nav-drawer.open { display: flex }
.nav-drawer a {
  display: block; width: 100%; padding: 18px 0;
  font-family: var(--fb);
  font-size: 19px; font-weight: 500; color: var(--t1);
  border-bottom: 1px solid var(--cl);
}
.nav-drawer a:hover { color: var(--c) }
.drawer-tel { color: var(--c) !important; font-weight: 700 }
.drawer-cta {
  margin-top: 28px;
  background: var(--c); color: #000;
  border-radius: 14px; padding: 18px;
  font-size: 17px; font-weight: 700;
  font-family: var(--fb);
  text-align: center; display: block;
  border: none; width: 100%; cursor: pointer;
}
@media (min-width: 1024px) {
  .topbar { display: block }
  .nav-links { display: flex }
  .nav-tel { display: block }
  .nav-cta-btn { display: flex }
  .burger { display: none }
  body { padding-bottom: 0 }
  .section { padding: 90px 0 }
  .trust-sec { padding: 90px 0 }
  .map-sec { padding: 90px 0 }
  .cta-strip { padding: 90px 16px }
  .hero { padding: 100px 0 80px }
}
.container { max-width: 1200px; margin: 0 auto; padding: 0 16px }
.section { padding: 56px 0; position: relative; z-index: 2 }
.section-alt { background: var(--bg1) }
.section-dark { background: var(--bg2); border-top: 1px solid var(--cl); border-bottom: 1px solid var(--cl) }
.sec-tag {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--cd); border: 1px solid var(--cl);
  color: var(--c); padding: 4px 13px; border-radius: 30px;
  font-family: var(--fb);
  font-size: 16px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  margin-bottom: 12px;
}
.sec-title {
  font-family: var(--fh);
  font-size: clamp(1.25rem, 5.5vw, 1.9rem);
  font-weight: 900; text-transform: uppercase;
  letter-spacing: .02em; line-height: 1.2; margin-bottom: 10px;
}
.sec-title span { color: var(--c) }
.sec-sub { font-family: var(--fb); font-size: 16.5px; line-height: 1.72; color: var(--t2); max-width: 560px }
.sec-head { margin-bottom: 36px }
.btn-primary {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: var(--c); color: #000;
  padding: 16px 26px; border-radius: 12px; border: none;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700;
  cursor: pointer; transition: background .2s, box-shadow .2s, transform .15s;
  white-space: nowrap; overflow: hidden; position: relative; min-height: 52px;
}
.btn-primary::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(90deg, transparent 30%, rgba(255,255,255,.4) 50%, transparent 70%);
  transform: translateX(-120%); transition: transform .5s;
}
.btn-primary:hover::after { transform: translateX(120%) }
.btn-primary:hover { background: #fff; box-shadow: 0 8px 28px var(--cg); transform: translateY(-2px) }
.btn-primary:active { transform: scale(.97) }
.btn-outline {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: transparent; color: var(--c);
  border: 1.5px solid rgba(0,212,255,.35);
  padding: 15px 24px; border-radius: 12px;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 600;
  cursor: pointer; transition: background .2s, border-color .2s; min-height: 52px;
}
.btn-outline:hover { background: var(--cd); border-color: var(--c) }
.btn-white {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  background: #fff; color: #000;
  padding: 16px 30px; border-radius: 12px; border: none;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700;
  cursor: pointer; transition: background .2s, box-shadow .2s, transform .2s; min-height: 52px;
}
.btn-white:hover { background: var(--c); box-shadow: 0 0 22px var(--cg); transform: translateY(-2px) }
.hero {
  position: relative; padding: 72px 0 64px;
  overflow: hidden; z-index: 2;
}
.hero-bg {
  position: absolute; inset: 0; z-index: 0;
  background: radial-gradient(ellipse 90% 60% at 80% 10%, rgba(0,212,255,.12) 0%, transparent 55%),
              radial-gradient(ellipse 50% 60% at 0% 100%, rgba(0,212,255,.06) 0%, transparent 55%),
              var(--bg0);
}
.hero-grid {
  position: absolute; inset: 0; z-index: 1; pointer-events: none;
  background:
    repeating-linear-gradient(0deg, transparent, transparent 59px, rgba(0,212,255,.012) 59px, rgba(0,212,255,.012) 60px),
    repeating-linear-gradient(90deg, transparent, transparent 59px, rgba(0,212,255,.012) 59px, rgba(0,212,255,.012) 60px);
}
.hero-inner {
  position: relative; z-index: 2;
  max-width: 1200px; margin: 0 auto; padding: 0 16px;
  display: flex; flex-direction: column; gap: 32px;
}
.hero h1 {
  font-family: var(--fh);
  font-size: clamp(1.7rem, 8.5vw, 3.2rem);
  font-weight: 900; text-transform: uppercase;
  line-height: 1.1; letter-spacing: .01em; margin-bottom: 14px;
}
.hero h1 em { font-style: normal; color: var(--c) }
.hero-desc {
  font-family: var(--fb);
  font-size: 17px; line-height: 1.72;
  color: var(--t2); margin-bottom: 18px; max-width: 520px;
}
.hero-trust {
  display: flex; align-items: center; gap: 8px;
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t3);
  margin-bottom: 22px; flex-wrap: wrap;
}
.hero-trust strong { color: var(--c); font-weight: 700 }
.hero-actions { display: flex; gap: 10px; flex-direction: column }
.hero-actions .btn-primary,
.hero-actions .btn-outline { width: 100%; justify-content: center }
.hero-form-card {
  background: var(--bg2);
  border: 1px solid var(--cl);
  border-radius: 18px; overflow: hidden;
  box-shadow: 0 0 50px rgba(0,212,255,.1), 0 24px 60px rgba(0,0,0,.5);
  flex-shrink: 0;
  width: 100%;
}
.hfc-head {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 20px;
  background: linear-gradient(135deg, var(--bg3), rgba(0,212,255,.06));
  border-bottom: 1px solid var(--cl);
}
.hfc-icon {
  width: 42px; height: 42px; flex-shrink: 0;
  background: var(--c); color: #000;
  border-radius: 11px; display: flex; align-items: center; justify-content: center; font-size: 18px;
}
.hfc-title {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700;
}
.hfc-sub {
  font-family: var(--fb);
  font-size: 16px; color: var(--c); margin-top: 2px;
}
.hfc-frame-wrap { height: 460px; overflow: hidden; position: relative; }
.hfc-frame { display:block; width:100%; border:none; height:480px; }
.hfc-foot {
  display: flex; gap: 16px; padding: 10px 20px;
  border-top: 1px solid var(--cl);
  font-family: var(--fb);
  font-size: 16px; color: var(--t3);
}
.hfc-foot span { display: flex; align-items: center; gap: 5px }
.hfc-foot i { color: var(--c) }

@media (min-width: 640px) {
  .hero-inner { flex-direction: row; align-items: center; gap: 44px }
  .hero-text { flex: 1; min-width: 0 }
  .hero-actions { flex-direction: row }
  .hero-actions .btn-primary,
  .hero-actions .btn-outline { width: auto }
  .hero-form-card { width: 400px }
}
@media (min-width: 1024px) {
  .hero-form-card { width: 440px }
}
.stats-bar {
  background: var(--bg2);
  border-top: 1px solid var(--cl); border-bottom: 1px solid var(--cl);
  padding: 20px 0; position: relative; z-index: 2;
}
.stats-grid {
  max-width: 1200px; margin: 0 auto; padding: 0 16px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
}
.stat-item {
  display: flex; align-items: center; gap: 10px;
  padding: 12px; border-radius: 10px;
  border: 1px solid transparent;
  transition: border-color .2s, background .2s;
}
.stat-item:hover { border-color: var(--cl); background: var(--cd) }
.stat-icon {
  width: 40px; height: 40px; flex-shrink: 0;
  background: var(--cd); border: 1px solid var(--cl);
  border-radius: 10px; display: flex; align-items: center; justify-content: center;
  color: var(--c); font-size: 17px;
}
.stat-num {
  font-family: var(--fh);
  font-size: 16.5px; font-weight: 700; color: var(--c); line-height: 1;
}
.stat-label {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3); margin-top: 3px; line-height: 1.4;
}
@media (min-width: 640px) { .stats-grid { grid-template-columns: repeat(2, 1fr) } }
.about-grid { display: flex; flex-direction: column; gap: 32px }
.video-ratio {
  position: relative; padding-bottom: 56.25%; height: 0;
  border-radius: var(--rad); overflow: hidden;
  border: 1px solid var(--cl); box-shadow: 0 0 30px rgba(0,212,255,.1);
}
.video-ratio iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: none }
.vid-tag {
  display: inline-block; background: var(--c); color: #000;
  font-family: var(--fb);
  font-size: 16px; font-weight: 700; padding: 4px 14px; border-radius: 20px; margin-top: 10px;
}
.check-list { display: flex; flex-direction: column; gap: 11px; margin-bottom: 24px }
.check-list li {
  display: flex; align-items: flex-start; gap: 10px;
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.6;
}
.chk {
  width: 22px; height: 22px; flex-shrink: 0;
  background: var(--c); color: #000; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 11.5px; font-weight: 900; margin-top: 1px;
}
@media (min-width: 640px) {
  .about-grid { flex-direction: row; align-items:center; gap: 48px }
  .about-grid > * { flex: 1 }
}
.dir-grid { display: flex; flex-direction: column; gap: 14px }
.dir-card {
  display: flex; flex-direction: column;
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: 16px; padding: 26px 22px;
  color: inherit; transition: border-color .25s, transform .25s, box-shadow .25s;
  position: relative; overflow: hidden;
}
.dir-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: var(--c); transform: scaleX(0); transform-origin: left; transition: transform .3s;
}
.dir-card:hover { border-color: var(--c); transform: translateY(-4px); box-shadow: 0 16px 38px rgba(0,0,0,.45), 0 0 26px rgba(0,212,255,.14) }
.dir-card:hover::before { transform: scaleX(1) }
.dir-icon { font-size: 42px; color: var(--c); margin-bottom: 12px; line-height: 1 }

.dir-card h3 {
  font-size: clamp(1.25rem, 2.5vw, 1.6rem);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 10px;
  margin-top: 6px;
  color: #fff;
  line-height: 1.15;
}
.dir-card p {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.7; flex: 1; margin-bottom: 14px;
}
.dir-chips { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 14px }
.dir-chips span {
  background: rgba(0,212,255,.07); border: 1px solid var(--cl);
  color: var(--c);
  font-family: var(--fb);
  font-size: 16px; padding: 3px 10px; border-radius: 20px; font-weight: 600;
}
.dir-cta {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700; color: var(--c);
}
@media (min-width: 640px) { .dir-grid { display: grid; grid-template-columns: repeat(3, 1fr) } }
/* Hero highlight */
.hero-highlight {
  color: var(--c);
  font-style: italic;
  text-shadow: 0 0 20px rgba(0,212,255,.5);
}

/* VR direction card special styling */
.dir-card-vr {
  border-color: rgba(0,212,255,.35);
  background: linear-gradient(135deg, rgba(0,212,255,.08), rgba(0,100,180,.06));
  position: relative;
}
.dir-card-vr::after {
  content: 'VR';
  position: absolute; top: 12px; right: 12px;
  background: var(--c); color: #000;
  font-family: var(--fh); font-size: 10.5px; font-weight: 900;
  padding: 3px 7px; border-radius: 4px; letter-spacing: .08em;
}

/* Advantages grid 6 cards */
.adv-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px }
.adv-grid-6 { grid-template-columns: 1fr 1fr; gap: 14px }
@media (min-width: 768px) { .adv-grid-6 { grid-template-columns: repeat(3, 1fr) } }
.adv-card {
  background: var(--cd); border: 1px solid var(--cl);
  border-radius: 12px; padding: 20px 16px;
  transition: background .2s, transform .2s; position: relative; overflow: hidden;
}
.adv-card-big { padding: 24px 20px; }
.adv-card::after {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--c); transform: scaleX(0); transform-origin: left; transition: transform .3s;
}
.adv-card:hover { background: rgba(0,212,255,.12); transform: translateY(-3px) }
.adv-card:hover::after { transform: scaleX(1) }
.adv-icon {
  width: 42px; height: 42px;
  background: var(--c); color: #000; border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  font-size: 17px; margin-bottom: 12px;
}
.adv-card h4 {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700; margin-bottom: 7px; line-height: 1.3;
}
.adv-card p {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.65;
}
.reviews-section { position: relative; z-index: 2 }
.reviews-header { margin-bottom: 36px }

/* Carousel wrapper */
.vc-wrapper { position: relative }
.vc-viewport {
  overflow: hidden; border-radius: 12px;
}
.vc-track {
  display: flex; gap: 18px;
  transition: transform .46s cubic-bezier(.4,0,.2,1);
  will-change: transform;
}
/* Each card */
.vc-card {
  margin: 0 10px;
  flex-shrink: 0;
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: 14px; overflow: hidden;
  cursor: pointer;
  transition: border-color .2s, box-shadow .2s, transform .2s;
  /* width set via JS */
}
.vc-card:hover { border-color: var(--c); box-shadow: 0 0 22px rgba(0,212,255,.25); transform: translateY(-3px) }

/* Thumb */
.vc-thumb {
  position: relative; aspect-ratio: 16/9; overflow: hidden; background: var(--bg3); height: 320px;
}
.vc-thumb img {
  width: 100%; height: 320px; object-fit: cover;
  transition: transform .45s ease;
}
.vc-card:hover .vc-thumb img { transform: scale(1.05) }
.vc-play-btn {
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  background: rgba(0,0,0,.32);
  height: 320px;
  transition: background .2s;
}
.vc-card:hover .vc-play-btn { background: rgba(0,0,0,.12) }
.vc-play-circle {
  width: 52px; height: 52px; border-radius: 50%;
  background: rgba(0,212,255,.9); color: #000;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; padding-left: 3px;
  box-shadow: 0 0 20px rgba(0,212,255,.6);
  transition: transform .2s, background .2s;
}
.vc-card:hover .vc-play-circle { transform: scale(1.08); background: #fff }

/* Text review */
.vc-info {
  padding: 14px 16px 16px;
  border-top: 1px solid var(--cl);
}
.vc-stars {
  display: flex; gap: 2px; margin-bottom: 6px;
}
.vc-stars i { color: #FFB800; font-size: 16px }
.vc-review-text {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.6;
  margin-bottom: 10px;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.vc-author {
  display: flex; align-items: center; gap: 8px;
}
.vc-avatar {
  width: 30px; height: 30px; border-radius: 50%;
  background: linear-gradient(135deg, var(--c), #006d82);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--fb);
  font-size: 16px; font-weight: 700; color: #000; flex-shrink: 0;
}
.vc-name {
  font-family: var(--fb);
  font-size: 16px; font-weight: 700; color: var(--c);
}
.vc-role {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3);
}

.vc-nav {
  display: flex; align-items: center; gap: 10px; margin-top: 20px;
}
.vc-nav-btn {
  width: 44px; height: 44px; border-radius: 10px;
  background: var(--bg2); border: 1px solid var(--cl);
  color: var(--c); font-size: 17px;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s, border-color .2s, transform .15s;
  flex-shrink: 0;
}
.vc-nav-btn:hover { background: var(--c); color: #000; border-color: var(--c); transform: scale(1.05) }
.vc-nav-btn:disabled { opacity: .3; pointer-events: none }
.vc-dots {
  display: flex; gap: 6px; align-items: center; flex: 1;
}
.vc-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--t3); cursor: pointer;
  transition: all .3s; border: none; padding: 0;
}
.vc-dot.active { background: var(--c); width: 22px; border-radius: 4px }
.trust-sec {
  background: var(--bg2);
  border-top: 1px solid var(--cl); border-bottom: 1px solid var(--cl);
  padding: 56px 0; position: relative; z-index: 2;
}
.trust-layout {
  display: flex; flex-direction: column; gap: 48px;
}
.trust-left { flex: 1 }
.trust-right { flex: 1 }
.trust-big-num {
  font-family: var(--fh);
  font-size: clamp(3.5rem, 13vw, 7rem);
  font-weight: 900; color: var(--c); line-height: 1;
  margin-bottom: 10px; text-shadow: 0 0 40px rgba(0,212,255,.35);
  white-space: nowrap;
}
.trust-title {
  font-family: var(--fh);
  font-size: clamp(1rem, 4vw, 1.6rem);
  font-weight: 900; text-transform: uppercase;
  letter-spacing: .02em; line-height: 1.25; margin-bottom: 12px;
}
.trust-title span { color: var(--c) }
.trust-text {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.75; margin-bottom: 24px;
}
.trust-stats-row {
  display: flex; gap: 0; margin-bottom: 28px;
  background: var(--bg3); border: 1px solid var(--cl);
  border-radius: 14px; overflow: hidden;
}
.trust-stat {
  flex: 1; padding: 16px 12px; text-align: center;
  border-right: 1px solid var(--cl);
}
.trust-stat:last-child { border-right: none }
.trust-stat-n {
  font-family: var(--fh);
  font-size: 20px; font-weight: 700; color: var(--c); line-height: 1;
}
.trust-stat-l {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3); margin-top: 4px; line-height: 1.4;
}
.trust-cta-btns { display: flex; flex-direction: column; gap: 12px }
.trust-cta-btns .btn-primary,
.trust-cta-btns .btn-outline { width: 100%; justify-content: center }
.pvc-label {
  font-family: var(--fb);
  font-size: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--c); margin-bottom: 12px; display: flex; align-items: center; gap: 6px;
}
.pvc-label::before {
  content: '';
  width: 18px; height: 2px; background: var(--c); border-radius: 2px; display: block;
}
.pvc-viewport { overflow: hidden; border-radius: 12px }
.pvc-track { display: flex; gap: 10px; transition: transform .44s cubic-bezier(.4,0,.2,1); width: 320px;}
.pvc-slide { flex: 0 0 100%; width: 100%; min-width: 0 }
.pvc-video-wrap {
  position: relative; aspect-ratio: 16/9; overflow: hidden;
  border-radius: 12px 12px 0 0; border: 1px solid var(--cl);
  border-bottom: none; cursor: pointer;
  height: 360px;
}
.pvc-video-wrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s, opacity .3s }
.pvc-slide:hover .pvc-video-wrap img { transform: scale(1.03) }
.pvc-video-play {
  position: absolute; inset: 0; background: rgba(0,0,0,.28);
  display: flex; align-items: center; justify-content: center;
  transition: opacity .3s;
}
.pvc-play-circle {
  width: 56px; height: 56px; border-radius: 50%;
  background: rgba(0,212,255,.92); color: #000;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; padding-left: 3px;
  box-shadow: 0 0 24px rgba(0,212,255,.6);
  transition: transform .2s;
}
.pvc-slide:hover .pvc-play-circle { transform: scale(1.1) }
.pvc-iframe-player {
  position: absolute; inset: 0; width: 100%; height: 100%;
  border: none; display: block; opacity: 0; pointer-events: none;
  transition: opacity .3s;
}
.pvc-video-wrap.playing img { opacity: 0; pointer-events: none }
.pvc-video-wrap.playing .pvc-video-play { opacity: 0; pointer-events: none }
.pvc-video-wrap.playing .pvc-iframe-player { opacity: 1; pointer-events: all }
.pvc-video-wrap.playing { cursor: default }
.pvc-text-review {
  background: var(--bg3); border: 1px solid var(--cl);
  border-radius: 0 0 12px 12px;
  padding: 16px;
}
.pvc-quote {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.65;
  font-style: italic; margin-bottom: 12px;
}
.pvc-quote::before { content: '"'; color: var(--c); font-style: normal; font-size: 20px; line-height: 0; vertical-align: -4px; margin-right: 2px }
.pvc-quote::after { content: '"'; color: var(--c); font-style: normal; font-size: 20px; line-height: 0; vertical-align: -4px; margin-left: 2px }
.pvc-parent { display: flex; align-items: center; gap: 10px }
.pvc-avatar {
  width: 34px; height: 34px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg, var(--c), #006d82);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700; color: #000;
}
.pvc-pname {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700; color: var(--c);
}
.pvc-child {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3);
}
.pvc-nav { display: flex; gap: 8px; margin-top: 12px; align-items: center }
.pvc-btn {
  width: 36px; height: 36px; border-radius: 8px;
  background: var(--bg2); border: 1px solid var(--cl);
  color: var(--c); font-size: 16.5px;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s;
}
.pvc-btn:hover { background: var(--c); color: #000 }
.pvc-dots-row { display: flex; gap: 5px; align-items: center }
.pvc-pdot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--t3); cursor: pointer; border: none; padding: 0;
  transition: all .3s;
}
.pvc-pdot.active { background: var(--c); width: 18px; border-radius: 3px }

@media (min-width: 768px) {
  .trust-layout { flex-direction: row; align-items: flex-start; gap: 52px }
}
.faq-list { display: flex; flex-direction: column; gap: 8px }
.faq-item {
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: 10px; overflow: hidden; transition: border-color .2s;
}
.faq-item:hover { border-color: rgba(0,212,255,.28) }
.faq-q {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 17px 20px;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 600; color: #fff;
  text-align: left; cursor: pointer; transition: color .2s;
  background: none; border: none; min-height: 54px;
}
.faq-q:hover { color: var(--c) }
.faq-chevron { color: var(--c); font-size: 16.5px; transition: transform .35s; flex-shrink: 0 }
.faq-item.open .faq-chevron { transform: rotate(180deg) }
.faq-a { max-height: 0; overflow: hidden; transition: max-height .4s ease }
.faq-a-inner {
  padding: 12px 20px 16px; border-top: 1px solid var(--cl);
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.75;
}

.cta-strip {
  background: var(--bg2);
  border-top: 1px solid var(--cl); border-bottom: 1px solid var(--cl);
  padding: 56px 16px; text-align: center;
  position: relative; overflow: hidden; z-index: 2;
}
.cta-strip::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(ellipse 70% 120% at 50% 50%, rgba(0,212,255,.07), transparent);
}
.cta-inner { max-width: 580px; margin: 0 auto; position: relative; z-index: 1 }
.cta-title {
  font-family: var(--fh);
  font-size: clamp(1.25rem, 5vw, 2rem);
  font-weight: 900; text-transform: uppercase;
  letter-spacing: .02em; line-height: 1.25; margin-bottom: 12px;
}
.cta-title span { color: var(--c) }
.cta-text {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t2); line-height: 1.7; margin-bottom: 26px;
}
.cta-note {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3); margin-top: 12px;
}
.map-sec { padding: 56px 0; background: var(--bg1); position: relative; z-index: 2 }
.map-layout {
  border-radius: var(--rad); overflow: hidden;
  border: 1px solid var(--cl);
  display: flex; flex-direction: column;
  align-items: stretch;
}
.map-sidebar { background: var(--bg2); flex-shrink: 0; }
.map-sidebar-head {
  padding: 16px 20px; border-bottom: 1px solid var(--cl);
  font-family: var(--fh);
  font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em;
}
.map-sidebar-head span {
  display: block;
  font-family: var(--fb);
  font-size: 16px; font-weight: 400; color: var(--t3);
  text-transform: none; letter-spacing: 0; margin-top: 3px;
}
.loc-item {
  padding: 15px 20px; border-bottom: 1px solid var(--cl);
  cursor: pointer; border-left: 3px solid transparent;
  transition: background .2s, border-left-color .2s;
}
.loc-item:hover, .loc-item.active { background: var(--cd); border-left-color: var(--c) }
.loc-row { display: flex; align-items: center; gap: 9px; margin-bottom: 4px }
.loc-num {
  width: 24px; height: 24px; border-radius: 50%; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--fb);
  font-size: 16px; font-weight: 800;
}
.loc-num-1 { background: var(--c); color: #000 }
.loc-num-2 { background: rgba(0,212,255,.4); color: #fff }
.loc-num-3 { background: rgba(0,212,255,.18); color: var(--c) }
.loc-name {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700;
}
.loc-addr {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3); line-height: 1.5;
}
.loc-metro {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--c); margin-top: 4px;
  display: flex; align-items: center; gap: 5px;
}
.loc-tel {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--c); font-weight: 600; margin-top: 7px; display: block;
}
.map-ext-btn { padding: 14px 18px; border-bottom: 1px solid var(--cl) }
.map-ext-btn a {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  background: var(--c); color: #000; border-radius: 10px;
  padding: 11px 16px; text-align: center;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700; transition: background .2s;
}
.map-ext-btn a:hover { background: #fff }
#map {
  width: 100%;
  height: 300px;
  min-height: 300px;
  background: var(--bg3);
  display: block;
  position: relative;
}
@media (min-width: 640px) {
  .map-layout { flex-direction: row; align-items: stretch; }
  .map-sidebar { width: 290px; flex-shrink: 0; display: flex; flex-direction: column; }
  #map { flex: 1; height: auto !important; min-height: 400px; }
}
@media (min-width: 1024px) {
  .map-sidebar { width: 320px; }
  #map { min-height: 440px; }
}
/* Override leaflet popup for light map */
.leaflet-popup-content-wrapper {
  background: #fff !important;
  color: #222 !important;
  border: 1px solid #ddd !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,.18) !important;
}
.leaflet-popup-tip { background: #fff !important }
.leaflet-popup-content { font-family: var(--fb) !important; font-size: 16.5px !important }
.contact-grid { display: flex; flex-direction: column; gap: 36px }
.contact-list { display: flex; flex-direction: column; gap: 14px }
.contact-item { display: flex; align-items: center; gap: 15px }
.c-icon {
  width: 44px; height: 44px; flex-shrink: 0;
  background: var(--c); color: #000; border-radius: 11px;
  display: flex; align-items: center; justify-content: center; font-size: 18px;
}
.c-label {
  font-family: var(--fb);
  font-size: 16px; color: var(--t3); text-transform: uppercase; letter-spacing: .06em;
}
.c-val {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 600; margin-top: 2px; transition: color .2s;
}
a.c-val:hover { color: var(--c) }
.contact-form-wrap {
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: var(--rad); overflow: hidden;
}
.cfw-head {
  padding: 15px 20px; background: var(--bg3);
  border-bottom: 1px solid var(--cl);
  display: flex; align-items: center; gap: 12px;
}
.cfw-icon {
  width: 38px; height: 38px;
  background: var(--c); color: #000; border-radius: 9px;
  display: flex; align-items: center; justify-content: center; font-size: 17px;
}
.cfw-title {
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700;
}
.cfw-sub {
  font-family: var(--fb);
  font-size: 16px; color: var(--c); margin-top: 2px;
}
.cfw-frame { display: block; width: 100%; height: 440px; min-height: 440px; border: none; overflow: hidden }
@media (min-width: 640px) {
  .contact-grid { flex-direction: row; align-items: flex-start; gap: 48px }
  .contact-grid > * { flex: 1 }
}

footer {
  background: var(--bg3); border-top: 1px solid var(--cl);
  padding: 48px 0 0; position: relative; z-index: 2;
}
.foot-grid {
  max-width: 1200px; margin: 0 auto; padding: 0 16px;
  display: grid; grid-template-columns: 1fr; gap: 28px; padding-bottom: 36px;
}
.foot-logo {
  height: 38px; margin-bottom: 12px;
  filter: drop-shadow(0 0 6px rgba(0,212,255,.4));
}
.foot-desc {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t3); line-height: 1.7; margin-bottom: 18px;
}
.social-row { display: flex; gap: 8px }
.soc-link {
  width: 38px; height: 38px; border: 1px solid var(--cl);
  background: var(--bg2); border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  color: var(--t3); font-size: 16.5px; transition: all .2s;
}
.soc-link:hover { background: var(--c); color: #000; border-color: var(--c) }
.foot-col h5 {
  font-family: var(--fh);
  font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em;
  color: var(--c); margin-bottom: 14px;
}
.foot-col a {
  display: block;
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t3); padding: 4px 0; transition: color .2s;
}
.foot-col a:hover { color: var(--c) }
.foot-bottom {
  border-top: 1px solid var(--cl); padding: 16px;
  max-width: 1200px; margin: 0 auto;
  display: flex; flex-direction: column; gap: 5px;
  font-family: var(--fb);
  font-size: 16px; color: var(--t3);
}
@media (min-width: 640px) {
  .foot-grid { grid-template-columns: 1.6fr 1fr 1fr 1fr }
  .foot-bottom { flex-direction: row; justify-content: space-between }
}

.modal-overlay {
  position: fixed; inset: 0; z-index: 5000;
  background: rgba(0,0,0,.88); backdrop-filter: blur(14px);
  display: flex; align-items: flex-end; justify-content: center;
  opacity: 0; pointer-events: none; transition: opacity .3s; padding: 0;
}
.modal-overlay.open { opacity: 1; pointer-events: all }
.modal-box {
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: 22px 22px 0 0;
  width: 100%; max-width: 460px;
  overflow: hidden; position: relative;
  transform: translateY(40px); transition: transform .35s cubic-bezier(.4,0,.2,1);
  box-shadow: 0 0 50px rgba(0,212,255,.18), 0 -16px 60px rgba(0,0,0,.6);
}
.modal-overlay.open .modal-box { transform: translateY(0) }
.modal-handle {
  width: 36px; height: 4px; background: var(--t3);
  border-radius: 4px; margin: 12px auto 0;
}
.modal-close {
  position: absolute; top: 16px; right: 16px;
  background: var(--bg3); border: 1px solid var(--cl);
  color: var(--t3); width: 32px; height: 32px;
  border-radius: 8px; font-size: 16.5px; z-index: 1;
  transition: background .2s, color .2s;
  display: flex; align-items: center; justify-content: center;
}
.modal-close:hover { background: var(--c); color: #000 }
.modal-head {
  padding: 18px 20px 14px; border-bottom: 1px solid var(--cl); text-align: center;
}
.modal-ico {
  width: 52px; height: 52px; border-radius: 14px;
  background: var(--c); color: #000;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; margin: 0 auto 12px;
}
.modal-ttl {
  font-family: var(--fh);
  font-size: 16px; font-weight: 900; text-transform: uppercase; letter-spacing: .04em;
}
.modal-sub {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t3); margin-top: 5px;
}
.modal-frame { display: block; width: 100%; height: 540px; min-height: 540px; border: none; overflow: hidden }
.modal-note {
  font-family: var(--fb);
  font-size: 16.5px; color: var(--t3); text-align: center; padding: 9px 18px 16px;
}
.modal-note a { color: var(--c) }
@media (min-width: 640px) {
  .modal-overlay { align-items: center; padding: 16px }
  .modal-box { border-radius: 18px }
}
.vmodal-overlay {
  position: fixed; inset: 0; z-index: 6000;
  background: rgba(0,0,0,.94);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none; transition: opacity .3s; padding: 14px;
}
.vmodal-overlay.open { opacity: 1; pointer-events: all }
.vmodal-box {
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: var(--rad); width: 100%; max-width: 820px; overflow: hidden;
  box-shadow: 0 0 40px rgba(0,212,255,.18);
}
.vmodal-head {
  padding: 10px 16px; border-bottom: 1px solid var(--cl);
  display: flex; align-items: center; justify-content: space-between;
}
.vmodal-badge {
  background: var(--cd); border: 1px solid var(--cl);
  color: var(--c);
  font-family: var(--fb);
  font-size: 11.5px; font-weight: 700; padding: 2px 10px; border-radius: 20px;
}
.vmodal-close {
  background: var(--bg3); border: 1px solid var(--cl);
  color: var(--t3); width: 32px; height: 32px;
  border-radius: 8px; font-size: 16.5px;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s;
}
.vmodal-close:hover { background: var(--c); color: #000 }
.vmodal-body { aspect-ratio: 16/9 }
.vmodal-body iframe { width: 100%; height: 100%; border: none; display: block }
.mob-bar {
  position: fixed; bottom: 0; left: 0; right: 0; z-index: 400;
  background: rgba(0,0,2,.97); border-top: 1px solid var(--cl);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  padding: 10px 14px;
  padding-bottom: max(10px, env(safe-area-inset-bottom));
  display: none; gap: 10px; align-items: center;
}
.mob-bar.visible { display: flex }
.mob-bar-tel {
  width: 52px; height: 52px; flex-shrink: 0;
  border-radius: 13px; background: var(--bg2); border: 1px solid var(--cl);
  display: flex; align-items: center; justify-content: center;
  color: var(--c); font-size: 21px;
}
.mob-bar-cta {
  flex: 1; background: var(--c); color: #000; border: none;
  padding: 15px; border-radius: 13px;
  font-family: var(--fb);
  font-size: 16.5px; font-weight: 700;
  transition: background .15s, transform .1s;
}
.mob-bar-cta:active { transform: scale(.97); background: #6ef }
@media (min-width: 1024px) { .mob-bar { display: none !important } }
[data-reveal] { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease }
[data-reveal].revealed { opacity: 1; transform: none }
/* Hero always visible */
.hero [data-reveal], .hero-form-card { opacity: 1 !important; transform: none !important }
[data-delay="1"] { transition-delay: .08s }
[data-delay="2"] { transition-delay: .16s }
[data-delay="3"] { transition-delay: .24s }
/* ═══ LANGUAGE SWITCHER ═══ */
.lang-switch {
  display: flex; align-items: center; gap: 2px;
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: 8px; padding: 3px; flex-shrink: 0;
}
.lang-btn {
  padding: 5px 10px; border-radius: 6px; font-size: 16px; font-weight: 700;
  color: var(--t3); background: none; border: none; cursor: pointer;
  font-family: var(--fb); letter-spacing: .04em;
  transition: color .2s, background .2s;
}
.lang-btn.active { background: var(--c); color: #000; }
.lang-btn:hover:not(.active) { color: var(--c); }

/* ═══════════════════════════════════════════════════════
   LANGUAGE SWITCHER
═══════════════════════════════════════════════════════ */
.lang-switch {
  display: flex; align-items: center; gap: 2px;
  background: var(--bg2); border: 1px solid var(--cl);
  border-radius: 8px; padding: 3px; flex-shrink: 0;
}
.lang-btn {
  padding: 5px 10px; border-radius: 6px; font-size: 16px; font-weight: 700;
  color: var(--t3); background: none; border: none; cursor: pointer;
  font-family: var(--fb); letter-spacing: .04em;
  transition: color .2s, background .2s;
}
.lang-btn.active { background: var(--c); color: #000; }
.lang-btn:hover:not(.active) { color: var(--c); }

/* ═══════════════════════════════════════════════════════
   TABLET  (640px – 1023px)
═══════════════════════════════════════════════════════ */
@media (max-width: 1023px) {
  .nav-links { display: none }
  .nav-tel   { display: none }
}
@media (min-width: 640px) and (max-width: 1023px) {
  body { padding-bottom: 68px }
  .adv-grid-6   { grid-template-columns: repeat(2, 1fr) }
  .dir-grid     { display: flex; flex-direction: column; gap: 14px }
  .hero-inner   { flex-direction: row; align-items: center; gap: 32px }
  .hero-text    { flex: 1; min-width: 0 }
  .hero-form-card { width: 380px; flex-shrink: 0 }
  .hfc-frame-wrap { height: 440px; overflow: hidden; position: relative; }
.hfc-frame { display:block; width:100%; border:none; height:480px; }
  .about-grid   { flex-direction: row; align-items: center; gap: 32px }
  .about-grid > * { flex: 1 }
  .trust-layout { flex-direction: column }
  .contact-grid { flex-direction: column; gap: 28px }
}

/* ═══════════════════════════════════════════════════════
   MOBILE  (< 640px)
═══════════════════════════════════════════════════════ */
@media (max-width: 639px) {

  /* ── Base ── */
  html { -webkit-text-size-adjust: 100% }
  body { overflow-x: hidden; padding-bottom: 72px }
  * { max-width: 100% }
  img, iframe { max-width: 100% }
  .container { padding: 0 14px }
  .section    { padding: 40px 0 }
  .section-alt { padding: 40px 0 }
  .sec-title  { font-size: clamp(1.1rem, 6vw, 1.5rem); line-height: 1.2 }
  .sec-sub    { font-size: 16.5px }
  .sec-head   { margin-bottom: 22px }

  /* ── Urgency bar ── */
  .urgency-bar { font-size: 16px; padding: 8px 12px }
  .topbar { display: none }

  /* ── Nav ── */
  .nav-inner   { padding: 0 12px; height: 54px; gap: 8px }
  .nav-logo img { height: 28px }
  .nav-spacer  { flex: 1 }
  .lang-switch { order: 2 }
  .lang-btn    { padding: 4px 8px; font-size: 16px }
  .nav-cta-btn { display: none }
  .burger      { display: flex }

  /* ── Hero ── */
  .hero { padding: 24px 0 32px }
  .hero-inner { flex-direction: column; gap: 24px }
  .hero h1 { font-size: clamp(1.45rem, 8.5vw, 2.1rem); margin-bottom: 10px }
  .hero h1 em { display: inline }
  .hero-desc { font-size: 16.5px; line-height: 1.65; margin-bottom: 14px }
  .hero-trust { font-size: 16.5px; margin-bottom: 16px }
  .hero-actions { flex-direction: column; gap: 10px }
  .hero-actions .btn-primary,
  .hero-actions .btn-outline { width: 100%; justify-content: center; font-size: 16.5px }
  .hero-form-card { width: 100% }
.hfc-frame-wrap { height: 440px; overflow: hidden; position: relative; }
  .hfc-frame {display: block;  width: 100%;  border: none;  height: 440px;}
  .hfc-foot   { gap: 1px; padding: 8px 14px; flex-wrap: wrap }
  .hfc-head   { padding: 12px 14px }
  .hfc-title  { font-size: 16.5px }
  .hfc-sub    { font-size: 16px }

  /* ── Stats bar ── */
  .stats-bar { padding: 14px 0 }
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 6px; padding: 0 14px }
  .stat-item  { padding: 10px 8px; gap: 7px; border-radius: 8px }
  .stat-icon  { width: 32px; height: 32px; font-size: 16.5px }
  .stat-num   { font-size: 16.5px }
  .stat-label { font-size: 11px; line-height: 1.3 }

  /* ── About ── */
  .about-grid { flex-direction: column; gap: 22px }
  .check-list li { font-size: 16.5px; gap: 9px }
  .chk { width: 20px; height: 20px; font-size: 10.5px }

  /* ── Directions ── */
  .dir-grid { display: flex; flex-direction: column; gap: 12px }
  .dir-card { padding: 18px 14px; border-radius: 14px; transition: transform 0.3s ease, box-shadow 0.3s ease; }
  .dir-icon { font-size: 22px; margin-bottom: 10px;   transition: transform 0.4s cubic-bezier(.4,0,.2,1);}
  
  .dir-card h3 {
  font-size: clamp(1.25rem, 2.5vw, 1.6rem);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 10px;
  margin-top: 6px;
  color: #fff;
  line-height: 1.15;
}
  .dir-card p  { font-size: 16.5px; line-height: 1.6; margin-bottom: 10px }
  .dir-chips { gap: 5px; flex-wrap: wrap }
  .dir-chips span { font-size: 11.5px; padding: 3px 8px }
  .dir-cta { font-size: 16.5px; margin-top: 12px }
  .dir-card:hover .dir-icon {
  transform: translateY(-8px);
}
.dir-card:hover {
  transform: translateY(-4px);
}

  /* ── Advantages ── */
  .adv-grid,
  .adv-grid-6 { grid-template-columns: 1fr !important; gap: 10px }
  .adv-card-big { padding: 18px 14px }
  .adv-icon   { width: 36px; height: 36px; font-size: 16.5px; margin-bottom: 10px }
  .adv-card h4 { font-size: 16.5px; margin-bottom: 6px }
  .adv-card p  { font-size: 16.5px; line-height: 1.6 }

  /* ── Video reviews ── */
  .reviews-header { margin-bottom: 18px }
  .vc-wrapper { margin: 0 -14px }
  .vc-viewport { border-radius: 0 }
  .vc-card { padding: 14px; min-width: calc(100vw - 60px) }
  .vc-thumb { border-radius: 8px; overflow: hidden }
  .vc-review-text { font-size: 16.5px; line-height: 1.6; -webkit-line-clamp: 5 }
  .vc-name { font-size: 16.5px }
  .vc-role { font-size: 12.5px }
  .vc-stars i { font-size: 16px }
  .vc-nav { margin-top: 14px }
  .vc-nav-btn { width: 38px; height: 38px }

  /* ── Trust section ── */
  .trust-sec { padding: 40px 0 }
  .trust-layout { flex-direction: column; gap: 32px }
  .trust-big-num { font-size: clamp(2.8rem, 15vw, 4.5rem); margin-bottom: 8px }
  .trust-title { font-size: clamp(0.9rem, 4.5vw, 1.25rem) }
  .trust-text { font-size: 16.5px; margin-bottom: 18px }
  .trust-stats-row { border-radius: 10px }
  .trust-stat { padding: 10px 6px }
  .trust-stat-n { font-size: 16.5px }
  .trust-stat-l { font-size: 11px; line-height: 1.3 }
  .trust-cta-btns { flex-direction: column; gap: 10px }
  .trust-cta-btns .btn-primary,
  .trust-cta-btns .btn-outline { width: 100%; justify-content: center }
  .pvc-quote { font-size: 16.5px }
  .pvc-pname { font-size: 16.5px }
  .pvc-child { font-size: 11.5px }

  /* ── FAQ ── */
  .faq-list { gap: 6px }
  .faq-item { border-radius: 10px }
  .faq-q { font-size: 16.5px; padding: 14px 14px; min-height: 50px; line-height: 1.4 }
  .faq-chevron { font-size: 16.5px }
  .faq-a-inner { font-size: 16.5px; padding: 10px 14px 14px; line-height: 1.7 }

  /* ── CTA strip ── */
  .cta-strip { padding: 40px 14px }
  .cta-title { font-size: clamp(1.1rem, 5.5vw, 1.5rem) }
  .cta-text  { font-size: 16.5px; margin-bottom: 18px }
  .cta-note  { font-size: 16.5px; margin-top: 10px }
  .btn-white { width: 100%; justify-content: center; font-size: 16.5px }

  /* ── Map ── */
  .map-sec { padding: 40px 0 }
  .map-layout { flex-direction: column; border-radius: 12px }
  .map-sidebar { width: 100% }
  .map-sidebar-head { font-size: 11px; padding: 12px 14px }
  .loc-item { padding: 11px 14px }
  .loc-name { font-size: 16.5px }
  .loc-addr { font-size: 16px }
  .loc-metro { font-size: 16px }
  .loc-tel { font-size: 16px }
  .map-ext-btn { padding: 10px 14px }
  .map-ext-btn a { font-size: 16.5px; padding: 9px 12px }
  #map { height: 240px; min-height: 240px }

  /* ── Contact ── */
  .contact-grid { flex-direction: column; gap: 24px }
  .c-icon { width: 38px; height: 38px; font-size: 17px }
  .c-label { font-size: 11.5px }
  .c-val { font-size: 16.5px }
  .cfw-head { padding: 12px 14px; gap: 10px }
  .cfw-icon { width: 38px; height: 38px; font-size: 17px }
  .cfw-title { font-size: 16.5px }
  .cfw-sub { font-size: 16px }
  .cfw-frame { height: 440px; min-height: 440px; overflow: hidden }

  /* ── Footer ── */
  footer { padding: 0 }
  .foot-grid { grid-template-columns: 1fr; gap: 20px; padding: 28px 14px 24px }
  .foot-logo { height: 32px }
  .foot-desc { font-size: 16.5px; margin-bottom: 14px }
  .foot-col { display: flex; flex-direction: column; gap: 5px }
  .foot-col h5 { font-size: 16px; margin-bottom: 6px }
  .foot-col a { font-size: 16.5px; padding: 2px 0 }
  .foot-bottom { padding: 12px 14px; flex-direction: column; gap: 4px; text-align: center; font-size: 16px }

  /* ── Modal ── */
  .modal-overlay { padding: 0 }
  .modal-box { border-radius: 20px 20px 0 0 }
  .modal-head { padding: 14px 16px 12px }
  .modal-ico { width: 40px; height: 40px; font-size: 17px }
  .modal-ttl { font-size: 16px }
  .modal-sub { font-size: 16.5px }
  .modal-frame { height: 540px; min-height: 540px; overflow: hidden }
  .modal-note { font-size: 12.5px; padding: 6px 14px 12px }

  /* ── Mobile bar ── */
  .mob-bar { padding: 8px 12px; padding-bottom: max(8px, env(safe-area-inset-bottom)); gap: 8px }
  .mob-bar-tel { width: 46px; height: 46px; font-size: 18px; border-radius: 10px }
  .mob-bar-cta { padding: 12px; font-size: 16.5px; border-radius: 10px }

  /* ── Buttons ── */
  .btn-primary { font-size: 16.5px; padding: 14px 18px; min-height: 48px }
  .btn-outline { font-size: 16.5px; padding: 13px 18px; min-height: 48px }

  /* ── VR card badge ── */
  .dir-card-vr::after { font-size: 9.5px; padding: 2px 5px; top: 10px; right: 10px }
}

/* ═══════════════════════════════════════
   IT VISUAL NOISE — hero background
═══════════════════════════════════════ */
.it-noise {
  position: absolute;
  inset: 0;
  z-index: 1;          /* above bg/grid, below hero-inner (z-index:2) */
  pointer-events: none;
  overflow: hidden;
}

.itn {
  position: absolute;
  font-family: 'Orbitron', monospace;
  font-weight: 900;
  line-height: 1;
  user-select: none;
  color: rgba(0,212,255,.16);
  animation: itn-float ease-in-out infinite alternate;
}
.itn i { color: inherit; font-size: inherit; }

@keyframes itn-float {
  from { transform: translateY(0)   rotate(-4deg); }
  to   { transform: translateY(-12px) rotate(4deg); }
}

/* Each icon: position, size, speed, opacity */
/* Top-right zone — safe from text on desktop */
.itn-1  { font-size:3.8rem; top:8%;  left:58%; animation-duration:5.2s; animation-delay:0s;    color:rgba(0,212,255,.18); }
.itn-2  { font-size:2.4rem; top:4%;  left:72%; animation-duration:7s;   animation-delay:1.1s;  color:rgba(0,212,255,.14); }
.itn-3  { font-size:2rem;   top:22%; left:82%; animation-duration:6.5s; animation-delay:0.4s;  color:rgba(0,212,255,.13); }
.itn-4  { font-size:3.2rem; top:48%; left:76%; animation-duration:8s;   animation-delay:1.8s;  color:rgba(0,212,255,.12); }
.itn-5  { font-size:2.6rem; top:70%; left:60%; animation-duration:6s;   animation-delay:0.7s;  color:rgba(0,212,255,.10); }
.itn-6  { font-size:2.2rem; top:82%; left:78%; animation-duration:7.5s; animation-delay:2.2s;  color:rgba(0,212,255,.13); }
.itn-7  { font-size:1.8rem; top:14%; left:90%; animation-duration:5.8s; animation-delay:1.5s;  color:rgba(0,212,255,.11); }
/* Left far-edge — peeks from left on desktop */
.itn-8  { font-size:2.8rem; top:72%; left:2%;  animation-duration:7s;   animation-delay:0.3s;  color:rgba(0,212,255,.12); }
.itn-9  { font-size:2.4rem; top:15%; left:0%;  animation-duration:6.2s; animation-delay:2.8s;  color:rgba(0,212,255,.10); }
.itn-10 { font-size:1.6rem; top:90%; left:44%; animation-duration:9s;   animation-delay:1s;    color:rgba(0,212,255,.09); }

/* ── MOBILE ( ≤ 639px ) ── */
@media (max-width: 639px) {
  /* On mobile hero is 1 column: text full-width top, form below.
     Keep icons only on right strip and bottom — never overlap text */
  .itn-1  { font-size:2.4rem; top:3%;  left:72%;  color:rgba(0,212,255,.22); }
  .itn-2  { font-size:1.6rem; top:2%;  left:86%;  color:rgba(0,212,255,.18); }
  .itn-3  { font-size:1.4rem; top:18%; left:80%;  color:rgba(0,212,255,.16); }
  .itn-4  { font-size:2rem;   top:32%; left:74%;  color:rgba(0,212,255,.18); }
  .itn-5  { font-size:1.8rem; top:46%; left:84%;  color:rgba(0,212,255,.14); }
  .itn-6  { display:none; }   /* мышка — скрыта чтобы не мешать */
  .itn-7  { font-size:1.3rem; top:8%;  left:92%;  color:rgba(0,212,255,.14); }
  .itn-8  { display:none; }   /* левый край — скрыт на мобилке */
  .itn-9  { display:none; }
  .itn-10 { font-size:1.2rem; top:60%; left:78%;  color:rgba(0,212,255,.12); }
}

/* ── TABLET ( 640–1023px ) ── */
@media (min-width: 640px) and (max-width: 1023px) {
  .itn-1  { left:55%; }
  .itn-8  { display:none; }
  .itn-9  { display:none; }
}

/* ═══════════════════════════════════════════════════
   AFZALLIKLAR — MIND MAP SECTION
═══════════════════════════════════════════════════ */

/* ══════════════════════════════════════
   ADVANTAGES SECTION
══════════════════════════════════════ */

/* Layout: 3 columns */
.afz-wrap {
  display: grid;
  grid-template-columns: 1fr 320px 1fr;
  align-items: center;
  gap: 0 32px;
  padding: 20px 0;
}
.afz-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.afz-col-right { align-items: flex-end; }

/* Float animation */
@keyframes afzFloat {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-7px); }
}
.afz-card:not(.is-open) {
  animation: afzFloat 4s ease-in-out infinite;
}
.afz-card:nth-child(2):not(.is-open) { animation-delay: .5s; }
.afz-card:nth-child(3):not(.is-open) { animation-delay: 1s; }
.afz-card:hover { animation-play-state: paused; }

/* Card */
.afz-card {
  border-radius: 18px;
  padding: 16px 18px;
  cursor: pointer;
  transition: border-color 0.3s, box-shadow 0.3s, background 0.3s;
  max-width: 300px;
  width: 100%;
}
.afz-dark {
  background: rgba(10,16,40,.92);
  border: 1.5px solid rgba(0,212,255,.2);
}
.afz-cyan {
  background: rgba(0,212,255,.1);
  border: 1.5px solid rgba(0,212,255,.3);
}
.afz-card:hover {
  border-color: rgba(0,212,255,.6);
  box-shadow: 0 6px 28px rgba(0,212,255,.18);
}
.afz-card.is-open {
  border-color: rgba(0,212,255,.65) !important;
  box-shadow: 0 0 32px rgba(0,212,255,.22) !important;
}
.afz-dark.is-open  { background: rgba(6,18,46,.99); }
.afz-cyan.is-open  { background: rgba(0,212,255,.18); }

/* Top row: icon + title */
.afz-top {
  display: flex;
  align-items: center;
  gap: 12px;
}
.afz-top-rev {
  flex-direction: row-reverse;
  justify-content: flex-end;
}
.afz-ico {
  width: 40px; height: 40px;
  flex-shrink: 0;
  border-radius: 50%;
  background: rgba(0,212,255,.12);
  display: flex; align-items: center; justify-content: center;
  font-size: 17px;
  color: var(--c);
}
.afz-info { display: flex; flex-direction: column; gap: 3px; }
.afz-ttl {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
}
.afz-sub {
  font-size: 13px;
  color: rgba(255,255,255,.5);
}

/* Accordion body */
.afz-txt {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s ease;
  overflow: hidden;
}
.afz-txt span {
  overflow: hidden;
  font-size: 14.5px;
  color: rgba(255,255,255,.8);
  line-height: 1.7;
  padding-top: 0;
  border-top: 1px solid rgba(0,212,255,.18);
  margin-top: 0;
  transition: padding-top 0.4s ease, margin-top 0.4s ease;
}
.afz-card.is-open .afz-txt {
  grid-template-rows: 1fr;
}
.afz-card.is-open .afz-txt span {
  padding-top: 12px;
  margin-top: 11px;
}

/* Center photo area */
.afz-center {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 520px;
  flex-shrink: 0;
}

/* Concentric rings container */
.afz-rings {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
/* Base ring style */
.afz-ring {
  position: absolute;
  border-radius: 50%;
  border: 1.5px solid rgba(0,212,255,.22);
}

.r1 { width: 260px; height: 260px; border-color: rgba(0,212,255,.4);
      animation: afzRing 3s ease-in-out infinite; }
.r2 { width: 370px; height: 370px; border-color: rgba(0,212,255,.2);
      animation: afzRing 3s ease-in-out .6s infinite; }
.r3 { width: 480px; height: 480px; border-color: rgba(0,212,255,.1);
      animation: afzRing 3s ease-in-out 1.2s infinite; }
@keyframes afzRing {
  0%,100% { transform: scale(1);    opacity: 1; }
  50%      { transform: scale(1.04); opacity: .7; }
}
.r1::before {
  content: '';
  position: absolute;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--c);
  box-shadow: 0 0 12px 4px rgba(0,212,255,.6);
  top: -4px; left: 50%;
  transform-origin: 0 130px;
  animation: afzOrbit 3s linear infinite;
}
@keyframes afzOrbit {
  from { transform: rotate(0deg) translateY(-130px) rotate(0deg); }
  to   { transform: rotate(360deg) translateY(-130px) rotate(-360deg); }
}
.afz-center::before {
  content: '';
  position: absolute;
  bottom: 0; left: 50%;
  transform: translateX(-50%);
  width: 240px; height: 260px;
  background: radial-gradient(ellipse at bottom,
    rgba(0,212,255,.25) 0%, transparent 70%);
  pointer-events: none;
}
.afz-photo-wrap {
  position: relative; z-index: 2;
  height: 100%;
  display: flex; align-items: flex-end; justify-content: center;
}
.afz-photo {
  height: 500px;
  object-fit: contain;
  object-position: bottom;
  filter: drop-shadow(0 0 28px rgba(0,212,255,.3)) drop-shadow(0 20px 40px rgba(0,0,0,.6));
  transition: opacity 0.45s ease, transform 0.45s ease;
}
.afz-photo.fade {
  opacity: 0;
  transform: scale(0.96) translateY(6px);
}

/* Responsive */
@media (max-width: 960px) {
  .afz-wrap {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .afz-col { flex-direction: row; flex-wrap: wrap; justify-content: center; }
  .afz-col-right { align-items: center; }
  .afz-card { max-width: 280px; }
  .afz-center { order: -1; height: 400px; }
  .r1 { width: 200px; height: 200px; }
  .r2 { width: 290px; height: 290px; }
  .r3 { width: 370px; height: 370px; }
  .afz-photo { height: 380px; }
}
@media (max-width: 540px) {
  .afz-card { max-width: 100%; border-radius: 14px; }
  .afz-col { gap: 10px; }
  .afz-center { height: 320px; }
  .afz-photo { height: 300px; }
  .r1 { width: 160px; height: 160px; }
  .r2 { width: 240px; height: 240px; }
  .r3 { width: 310px; height: 310px; }
  .afz-ttl { font-size: 14px; }
  .afz-txt span { font-size: 13.5px; }
}

/* ═══════════════════════════════════════
   IT VISUAL NOISE — all dark sections
═══════════════════════════════════════ */

/* BIZ HAQIMIZDA (about) */
#about .itn-1  { font-size:4rem;   top:5%;   right:2%;  animation-duration:6.2s; animation-delay:0s;   color:rgba(0,212,255,.11); }
#about .itn-2  { font-size:2.2rem; top:15%;  left:2%;   animation-duration:7.5s; animation-delay:.8s;  color:rgba(0,212,255,.09); }
#about .itn-3  { font-size:3rem;   top:45%;  right:3%;  animation-duration:5.8s; animation-delay:.4s;  color:rgba(0,212,255,.10); }
#about .itn-4  { font-size:2.5rem; bottom:8%;left:3%;   animation-duration:8.2s; animation-delay:1.4s; color:rgba(0,212,255,.08); }
#about .itn-5  { font-size:3.5rem; top:65%;  right:5%;  animation-duration:6.8s; animation-delay:.6s;  color:rgba(0,212,255,.09); }
#about .itn-6  { font-size:2rem;   top:80%;  left:48%;  animation-duration:7.2s; animation-delay:2s;   color:rgba(0,212,255,.07); }
#about .itn-7  { font-size:2.8rem; top:25%;  right:1%;  animation-duration:5.5s; animation-delay:1.8s; color:rgba(0,212,255,.10); }
#about .itn-8  { font-size:1.8rem; bottom:15%;right:4%; animation-duration:9s;   animation-delay:.3s;  color:rgba(0,212,255,.08); }
#about .itn-9  { font-size:2.5rem; top:5%;   left:48%;  animation-duration:6.5s; animation-delay:1.1s; color:rgba(0,212,255,.07); }
#about .itn-10 { font-size:3rem;   bottom:5%;right:1%;  animation-duration:7.8s; animation-delay:2.5s; color:rgba(0,212,255,.09); }
#about .container { position:relative; z-index:1; }

/* VIDEO SHARHLAR (video-reviews) */
#video-reviews .itn-1  { font-size:3.5rem; top:5%;   left:1%;   animation-duration:6s;   animation-delay:0s;   color:rgba(0,212,255,.10); }
#video-reviews .itn-2  { font-size:2rem;   top:10%;  right:2%;  animation-duration:7.8s; animation-delay:.9s;  color:rgba(0,212,255,.08); }
#video-reviews .itn-3  { font-size:2.8rem; bottom:5%;right:1%;  animation-duration:5.5s; animation-delay:.5s;  color:rgba(0,212,255,.09); }
#video-reviews .itn-4  { font-size:4rem;   top:40%;  left:0%;   animation-duration:8.5s; animation-delay:1.5s; color:rgba(0,212,255,.07); }
#video-reviews .itn-5  { font-size:2.2rem; bottom:10%;left:45%; animation-duration:6.5s; animation-delay:.2s;  color:rgba(0,212,255,.08); }
#video-reviews .itn-6  { font-size:3rem;   top:5%;   right:5%;  animation-duration:7s;   animation-delay:2.2s; color:rgba(0,212,255,.09); }
#video-reviews .itn-7  { font-size:2.5rem; top:60%;  right:2%;  animation-duration:5.8s; animation-delay:.7s;  color:rgba(0,212,255,.08); }
#video-reviews .itn-8  { font-size:1.8rem; bottom:20%;right:3%; animation-duration:9.2s; animation-delay:1.8s; color:rgba(0,212,255,.07); }
#video-reviews .itn-9  { font-size:3.2rem; top:3%;   left:44%;  animation-duration:6.2s; animation-delay:1.2s; color:rgba(0,212,255,.08); }
#video-reviews .itn-10 { font-size:2rem;   bottom:3%;left:2%;   animation-duration:7.5s; animation-delay:3s;   color:rgba(0,212,255,.07); }
#video-reviews .container { position:relative; z-index:1; }

/* FAQ */
#faq .itn-1  { font-size:4rem;   top:5%;   right:1%;  animation-duration:6.5s; animation-delay:0s;   color:rgba(0,212,255,.10); }
#faq .itn-2  { font-size:2.5rem; top:20%;  left:1%;   animation-duration:7s;   animation-delay:.6s;  color:rgba(0,212,255,.09); }
#faq .itn-3  { font-size:3rem;   bottom:8%;right:2%;  animation-duration:5.8s; animation-delay:1s;   color:rgba(0,212,255,.08); }
#faq .itn-4  { font-size:2rem;   top:50%;  left:0%;   animation-duration:8s;   animation-delay:.4s;  color:rgba(0,212,255,.09); }
#faq .itn-5  { font-size:2.8rem; bottom:20%;left:45%; animation-duration:6.8s; animation-delay:1.8s; color:rgba(0,212,255,.07); }
#faq .itn-6  { font-size:3.5rem; top:3%;   left:30%;  animation-duration:7.5s; animation-delay:.9s;  color:rgba(0,212,255,.08); }
#faq .itn-7  { font-size:2.2rem; top:70%;  right:3%;  animation-duration:5.5s; animation-delay:2s;   color:rgba(0,212,255,.09); }
#faq .itn-8  { font-size:3rem;   top:35%;  right:4%;  animation-duration:8.2s; animation-delay:.2s;  color:rgba(0,212,255,.08); }
#faq .itn-9  { font-size:2rem;   bottom:5%;left:5%;   animation-duration:6.5s; animation-delay:1.5s; color:rgba(0,212,255,.07); }
#faq .itn-10 { font-size:1.8rem; top:55%;  left:47%;  animation-duration:9s;   animation-delay:2.8s; color:rgba(0,212,255,.08); }
#faq .container { position:relative; z-index:1; }

/* JOYLASHUV (locations/map) */
#locations .itn-1  { font-size:3.5rem; top:5%;   left:0%;   animation-duration:6.2s; animation-delay:0s;   color:rgba(0,212,255,.09); }
#locations .itn-2  { font-size:2rem;   bottom:5%;left:0%;   animation-duration:7.5s; animation-delay:.7s;  color:rgba(0,212,255,.08); }
#locations .itn-3  { font-size:2.5rem; top:5%;   right:0%;  animation-duration:5.8s; animation-delay:.3s;  color:rgba(0,212,255,.07); }
#locations .itn-4  { font-size:3rem;   bottom:5%;right:0%;  animation-duration:8s;   animation-delay:1.2s; color:rgba(0,212,255,.08); }
#locations .itn-5  { font-size:2.2rem; top:50%;  left:0%;   animation-duration:6.8s; animation-delay:.5s;  color:rgba(0,212,255,.07); }
#locations .itn-6  { font-size:2.8rem; top:3%;   left:48%;  animation-duration:7.2s; animation-delay:2s;   color:rgba(0,212,255,.06); }
#locations .itn-7  { font-size:2rem;   bottom:10%;right:0%; animation-duration:5.5s; animation-delay:1.6s; color:rgba(0,212,255,.07); }
#locations .itn-8  { font-size:1.8rem; top:20%;  left:1%;   animation-duration:9s;   animation-delay:.4s;  color:rgba(0,212,255,.06); }
#locations .itn-9  { font-size:2.5rem; top:70%;  left:0%;   animation-duration:6.5s; animation-delay:1s;   color:rgba(0,212,255,.07); }
#locations .itn-10 { font-size:3rem;   bottom:3%;left:47%;  animation-duration:7.8s; animation-delay:2.5s; color:rgba(0,212,255,.06); }
#locations .container { position:relative; z-index:1; }

/* DIRECTIONS */
#directions .itn-1  { font-size:3.8rem; top:5%;   left:0%;   animation-duration:6s;   animation-delay:0s;   color:rgba(0,212,255,.10); }
#directions .itn-2  { font-size:2.2rem; top:10%;  right:0%;  animation-duration:7.5s; animation-delay:.8s;  color:rgba(0,212,255,.09); }
#directions .itn-3  { font-size:3rem;   bottom:8%;right:0%;  animation-duration:5.8s; animation-delay:.4s;  color:rgba(0,212,255,.08); }
#directions .itn-4  { font-size:2.5rem; top:55%;  left:0%;   animation-duration:8.2s; animation-delay:1.4s; color:rgba(0,212,255,.09); }
#directions .itn-5  { font-size:3.5rem; top:5%;   left:48%;  animation-duration:6.8s; animation-delay:.6s;  color:rgba(0,212,255,.08); }
#directions .itn-6  { font-size:2rem;   bottom:5%;left:0%;   animation-duration:7.2s; animation-delay:2s;   color:rgba(0,212,255,.07); }
#directions .itn-7  { font-size:2.8rem; top:40%;  right:0%;  animation-duration:5.5s; animation-delay:1.8s; color:rgba(0,212,255,.09); }
#directions .itn-8  { font-size:1.8rem; bottom:15%;right:0%; animation-duration:9s;   animation-delay:.3s;  color:rgba(0,212,255,.07); }
#directions .itn-9  { font-size:2.5rem; top:75%;  left:47%;  animation-duration:6.5s; animation-delay:1.1s; color:rgba(0,212,255,.08); }
#directions .itn-10 { font-size:3rem;   bottom:3%;right:3%;  animation-duration:7.8s; animation-delay:2.5s; color:rgba(0,212,255,.07); }
#directions .container { position:relative; z-index:1; }

/* MOBILE — hide most noise items, keep subtle */
@media (max-width: 639px) {
  #about .itn-1, #about .itn-3, #about .itn-5, #about .itn-7, #about .itn-9 { display:none; }
  #video-reviews .itn-1, #video-reviews .itn-3, #video-reviews .itn-5, #video-reviews .itn-7 { display:none; }
  #faq .itn-2, #faq .itn-4, #faq .itn-6, #faq .itn-8 { display:none; }
  #locations .itn-1, #locations .itn-3, #locations .itn-5, #locations .itn-7, #locations .itn-9 { display:none; }
  #directions .itn-1, #directions .itn-3, #directions .itn-5, #directions .itn-7 { display:none; }
}
