:root{--bg:#04060c;--bg-soft:#0b0f1b;--card:rgba(255,255,255,.055);--text:#f8fbff;--muted:#aeb9c9;--accent:#2862bd;--accent-2:#4b91f5;--accent-3:#4b91f5;--dark:#060912;--line:rgba(255,255,255,.12);--line-warm:rgba(75,145,245,.22);--shadow:0 32px 90px rgba(0,0,0,.46)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 18% 8%,rgba(75,145,245,.16),transparent 28%),radial-gradient(circle at 88% 12%,rgba(40,98,189,.16),transparent 30%),radial-gradient(circle at 50% 92%,rgba(75,145,245,.11),transparent 34%),linear-gradient(180deg,#04060c 0%,#080b14 44%,#05070d 100%);line-height:1.6}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 88%)}a{color:inherit;text-decoration:none}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1240px;margin:0 auto;padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.055);background:rgba(4,6,12,.72);backdrop-filter:blur(22px)}.logo{display:inline-flex;align-items:center;min-width:290px}.logo__stack{display:block}.logo__title{display:inline-block;font-family:Orbitron,Inter,sans-serif;font-size:clamp(22px,3vw,31px);font-weight:800;line-height:1;letter-spacing:-.045em;background:linear-gradient(180deg,#fff 0%,#cfd6df 68%,#8a96a8 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.logo__title span{color:transparent;background:linear-gradient(90deg,#4b91f5 0%,#2862bd 100%);-webkit-background-clip:text;background-clip:text}.logo small{display:block;margin-top:5px;color:var(--muted);font-size:12px;letter-spacing:.01em}.nav{display:flex;gap:26px;color:var(--muted);font-weight:700;font-size:14px}.nav a{transition:color .2s ease}.nav a:hover,.header__phone:hover,.footer a:hover{color:#fff}.header__phone{padding:11px 16px;border:1px solid var(--line-warm);border-radius:999px;color:#fff;background:rgba(75,145,245,.08);font-weight:800;white-space:nowrap}.section{max-width:1240px;margin:0 auto;padding:88px 24px}.hero{display:grid;grid-template-columns:.92fr 1.08fr;gap:46px;align-items:center;min-height:calc(100vh - 88px);padding-top:54px}.badge{display:inline-flex;align-items:center;width:fit-content;padding:8px 14px;border:1px solid var(--line-warm);border-radius:999px;color:#b8d7ff;background:rgba(75,145,245,.08);font-size:13px;font-weight:800;letter-spacing:.02em}.badge--dark{border-color:rgba(6,9,18,.18);color:#090b12;background:rgba(255,255,255,.56)}h1,h2,h3,p{margin-top:0}h1{margin:20px 0 24px;max-width:670px;font-size:clamp(46px,6vw,82px);line-height:.95;letter-spacing:-.067em}h1 span{color:#fff}h2{margin-bottom:16px;font-size:clamp(32px,4vw,52px);line-height:1.05;letter-spacing:-.047em}h3{margin-bottom:10px;font-size:20px;line-height:1.25}.hero__text{max-width:690px;margin-bottom:34px;color:var(--muted);font-size:20px}.hero__actions,.cta__actions{display:flex;flex-wrap:wrap;gap:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 26px;border-radius:14px;font-weight:900;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-2px)}.btn--primary{color:#090b12;background:linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);box-shadow:0 24px 54px rgba(40,98,189,.24)}.btn--secondary{border:1px solid rgba(75,145,245,.24);color:#fff;background:rgba(75,145,245,.07)}.btn--light{color:#090b12;background:#fff}.btn--outline{border:1px solid rgba(255,255,255,.48);color:#fff}.hero__features{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.hero__features span{padding:10px 14px;border:1px solid var(--line);border-radius:999px;color:#e6edf7;background:rgba(255,255,255,.045);font-size:14px;font-weight:700}.hero__visual{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:18px;align-items:stretch}.hero__poster,.hero__info{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.025));box-shadow:var(--shadow)}.hero__poster:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(75,145,245,.12);pointer-events:none}.hero__poster img{width:100%;height:100%;display:block;object-fit:cover}.hero__poster--main{min-height:570px}.hero__aside{display:grid;gap:18px}.hero__poster--small{min-height:265px}.hero__info{padding:24px;background:radial-gradient(circle at 15% 0%,rgba(75,145,245,.15),transparent 38%),radial-gradient(circle at 100% 100%,rgba(75,145,245,.11),transparent 42%),rgba(255,255,255,.04)}.hero__info span{display:inline-flex;margin-bottom:14px;padding:6px 10px;border-radius:999px;color:#b8d7ff;background:rgba(75,145,245,.08);font-size:12px;font-weight:900}.hero__info b{display:block;margin-bottom:10px;font-size:20px;line-height:1.2}.hero__info p{margin:0;color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-top:0}.stats article,.card,.apps__column,.steps article{border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.034));box-shadow:0 18px 58px rgba(0,0,0,.2)}.stats article{padding:26px}.stats strong{display:block;margin-bottom:14px;color:var(--accent-3);font-size:28px;letter-spacing:-.02em}.stats span,.card p,.section__head p,.steps p,.apps__column li,.cta p,.footer{color:var(--muted)}.section__head{max-width:780px;margin-bottom:32px}.section__head .badge{margin-bottom:16px}.cards{display:grid;gap:18px}.cards--services{grid-template-columns:repeat(4,1fr)}.card{padding:28px}.card__icon{display:grid;place-items:center;width:54px;height:54px;margin-bottom:22px;border:1px solid rgba(75,145,245,.16);border-radius:18px;background:linear-gradient(135deg,rgba(75,145,245,.16),rgba(75,145,245,.09));font-size:24px}.apps{border:1px solid rgba(255,255,255,.045);border-radius:40px;background:rgba(255,255,255,.028)}.apps__grid,.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.apps__column{padding:30px}.apps__column ul{display:grid;gap:11px;margin:0;padding:0;list-style:none}.apps__column li{position:relative;padding-left:22px}.apps__column li:before{content:"";position:absolute;left:0;top:10px;width:8px;height:8px;border-radius:50%;background:var(--accent-3)}.brands{display:flex;flex-wrap:wrap;gap:12px}.brands span{padding:12px 15px;border:1px solid var(--line);border-radius:999px;color:#eef4fb;background:rgba(255,255,255,.05);font-weight:700;font-size:14px}.gallery{position:relative}.gallery__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery__item{position:relative;overflow:hidden;display:block;min-height:270px;border:1px solid rgba(255,255,255,.13);border-radius:28px;background:rgba(255,255,255,.045);box-shadow:0 18px 58px rgba(0,0,0,.22)}.gallery__item:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(4,6,12,.18));pointer-events:none}.gallery__item img{width:100%;height:100%;aspect-ratio:4/3;display:block;object-fit:cover;transition:transform .45s ease,filter .45s ease}.gallery__item:hover img{transform:scale(1.035);filter:brightness(1.06) contrast(1.04)}.steps article{padding:30px}.steps b{display:grid;place-items:center;width:50px;height:50px;margin-bottom:20px;border-radius:16px;color:#090b12;background:linear-gradient(135deg,#4b91f5 0%,#2862bd 100%)}.cta{display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center;margin-bottom:54px;border-radius:38px;color:#090b12;background:linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);box-shadow:0 26px 86px rgba(40,98,189,.22)}.cta h2,.cta p{color:#090b12}.cta p{max-width:710px;opacity:.84}.footer{display:flex;justify-content:space-between;gap:20px;max-width:1240px;margin:0 auto;padding:0 24px 40px;font-size:14px}.footer p{margin:0}.float-call{position:fixed;right:18px;bottom:18px;z-index:20;display:none;padding:15px 20px;border-radius:999px;color:#090b12;background:linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);font-weight:900;box-shadow:0 16px 45px rgba(0,0,0,.34)}@media(max-width:1120px){.hero{grid-template-columns:1fr}.hero__visual{order:-1}}@media(max-width:980px){.header{align-items:flex-start}.nav{display:none}.cta{grid-template-columns:1fr}.stats,.cards--services,.apps__grid,.steps,.gallery__grid{grid-template-columns:1fr 1fr}.hero__visual{grid-template-columns:1fr}.hero__aside{grid-template-columns:1fr 1fr}.hero__poster--main{min-height:460px}}@media(max-width:640px){.header{padding:14px 16px}.logo{min-width:auto}.logo__title{font-size:21px}.logo small,.header__phone{display:none}.section{padding:56px 16px}.hero{gap:34px;min-height:auto;padding-top:36px}.hero__text{font-size:17px}.btn{width:100%}.stats,.cards--services,.apps__grid,.steps,.gallery__grid,.hero__aside{grid-template-columns:1fr}.hero__poster--main{min-height:395px}.hero__poster--small{min-height:220px}.gallery__item{min-height:230px}.brands span{width:100%;border-radius:18px}.footer{flex-direction:column;padding-bottom:82px}.float-call{display:inline-flex}}


/* Первый экран без крупного постера */
.hero__visual {
  display: block;
}

.hero__panel {
  position: relative;
  overflow: hidden;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 30px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.028)),
    radial-gradient(circle at 92% 12%, rgba(40,98,189,.22), transparent 34%),
    radial-gradient(circle at 8% 88%, rgba(75,145,245,.16), transparent 38%);
  box-shadow: var(--shadow);
}

.hero__panel::before {
  content: "";
  position: absolute;
  inset: 16px;
  border: 1px solid rgba(75,145,245,.12);
  border-radius: 22px;
  pointer-events: none;
}

.hero__panel-head,
.hero__apps,
.hero__checks,
.hero__summary {
  position: relative;
  z-index: 1;
}

.hero__panel-head {
  max-width: 520px;
}

.hero__panel-head span {
  display: inline-flex;
  margin-bottom: 16px;
  padding: 7px 11px;
  border-radius: 999px;
  color: #b8d7ff;
  background: rgba(75,145,245,.1);
  font-size: 12px;
  font-weight: 900;
}

.hero__panel-head b {
  display: block;
  margin-bottom: 12px;
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1;
  letter-spacing: -.04em;
}

.hero__panel-head p {
  margin-bottom: 0;
  max-width: 500px;
  color: var(--muted);
  font-size: 17px;
}

.hero__apps {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

.hero__apps span {
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  color: #eef4fb;
  background: rgba(4,6,12,.34);
  font-size: 14px;
  font-weight: 800;
}

.hero__checks {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 32px;
}

.hero__checks article {
  min-height: 142px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 20px;
  background: rgba(255,255,255,.045);
}

.hero__checks strong {
  display: block;
  margin-bottom: 18px;
  color: var(--accent-3);
  font-size: 24px;
  line-height: 1;
}

.hero__checks span {
  color: #dce5f1;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}

.hero__summary {
  display: grid;
  gap: 6px;
  margin-top: 14px;
  padding: 18px 20px;
  border: 1px solid rgba(75,145,245,.18);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(75,145,245,.13), rgba(40,98,189,.08));
}

.hero__summary b {
  font-size: 18px;
  line-height: 1.25;
}

.hero__summary span {
  color: var(--muted);
  font-size: 14px;
}

@media(max-width:1120px){
  .hero__visual{order:0}
}

@media(max-width:640px){
  .hero__panel{padding:22px}
  .hero__checks{grid-template-columns:1fr}
  .hero__checks article{min-height:auto}
}

/* Упрощённая навигация и прайс в мобильной шапке */
.nav-toggle {
  display: none;
  width: 46px;
  height: 46px;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 14px;
  color: var(--text);
  background: rgba(255,255,255,.06);
  cursor: pointer;
}

.nav-toggle span {
  display: block;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transition: transform .2s ease, opacity .2s ease;
}

.nav-toggle[aria-expanded="true"] span:first-child {
  transform: translateY(7px) rotate(45deg);
}

.nav-toggle[aria-expanded="true"] span:nth-child(2) {
  opacity: 0;
}

.nav-toggle[aria-expanded="true"] span:last-child {
  transform: translateY(-7px) rotate(-45deg);
}

.pricing__contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 24px;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255,255,255,.035);
}

.pricing__contact p {
  flex: 1 1 380px;
  margin: 0;
  color: var(--muted);
}

@media (max-width: 980px) {
  .header {
    position: sticky;
    align-items: center;
    flex-wrap: wrap;
  }

  .header .nav-toggle {
    display: grid;
    align-content: center;
    gap: 5px;
    margin-left: auto;
  }

  .header .nav {
    display: none !important;
    position: absolute;
    top: calc(100% + 8px);
    right: 16px;
    left: 16px;
    z-index: 25;
    gap: 0;
    padding: 8px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(8,11,20,.97);
    box-shadow: var(--shadow);
  }

  .header .nav.is-open {
    display: grid !important;
  }

  .header .nav a {
    padding: 13px 14px;
    border-radius: 12px;
  }

  .header .nav a:hover,
  .header .nav a:focus-visible {
    background: rgba(255,255,255,.07);
  }

  .header .header__phone {
    display: none;
  }
}

@media (max-width: 640px) {
  .header {
    justify-content: flex-start;
    padding: 12px 16px;
  }

  .header .logo {
    width: auto;
    justify-content: flex-start;
  }

  .header .nav-toggle {
    flex: 0 0 46px;
  }

  .pricing__grid {
    grid-template-columns: 1fr;
  }

  .pricing__contact {
    align-items: stretch;
    padding: 18px;
  }

  .pricing__contact .btn {
    width: 100%;
  }
}

/* Автоматическая горизонтальная галерея результатов работ */
.gallery {
  position: relative;
  --gallery-edge: max(24px, calc((100vw - 1240px) / 2 + 24px));
  max-width: none;
  padding-left: var(--gallery-edge);
  padding-right: var(--gallery-edge);
  overflow: hidden;
}
.gallery__marquee {
  position: relative;
  overflow: hidden;
  width: 100vw;
  margin-top: 36px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 8px 0 18px;
}

.gallery__marquee::before,
.gallery__marquee::after {
  right: 0;
  background: linear-gradient(270deg, #05070d 0%, rgba(5,7,13,0) 100%);
}

.gallery__marquee::before {
  left: 0;
  background: linear-gradient(90deg, #05070d 0%, rgba(5,7,13,0) 100%);
}

.gallery__marquee::after {
  right: 0;
  background: linear-gradient(270deg, #05070d 0%, rgba(5,7,13,0) 100%);
}

.gallery__track {
  display: flex;
  align-items: stretch;
  width: max-content;
  gap: 18px;
  padding-left: 18px;
  animation: gallery-scroll-left 70s linear infinite;
  will-change: transform;
}

.gallery__marquee:hover .gallery__track {
  animation-play-state: paused;
}

.gallery__item {
  position: relative;
  overflow: hidden;
  flex: 0 0 clamp(280px, 32vw, 450px);
  height: clamp(220px, 24vw, 330px);
  border: 1px solid rgba(255,255,255,0.13);
  border-radius: 28px;
  background: rgba(255,255,255,0.045);
  box-shadow: 0 18px 58px rgba(0,0,0,0.22);
}

.gallery__item::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(4,6,12,0.16));
  pointer-events: none;
}

.gallery__item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.45s ease, filter 0.45s ease;
}

.gallery__item:hover img {
  transform: scale(1.035);
  filter: brightness(1.06) contrast(1.04);
}

@keyframes gallery-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-50% - 9px));
  }
}


.gallery .section__head {
  max-width: 780px;
}

.gallery__viewport {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 6px 0 12px;
  mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 6%, #000 92%, transparent 100%);
}


.gallery__viewport:hover .gallery__track {
  animation-play-state: paused;
}




@media (prefers-reduced-motion: reduce) {
  .gallery__track {
    animation: none;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding-bottom: 10px;
  }

  .gallery__item {
    scroll-snap-align: start;
  }
}

@media (max-width: 980px) {
  .gallery {
    --gallery-edge: 24px;
  }

  .gallery__item {
    flex-basis: clamp(260px, 48vw, 390px);
    height: clamp(200px, 36vw, 300px);
  }
}

@media (max-width: 640px) {
  .gallery__marquee::before,
  .gallery__marquee::after {
    width: 54px;
  }

  .gallery__track {
    gap: 14px;
    animation-duration: 58s;
  }

  .gallery__item {
    flex-basis: 82vw;
    height: 245px;
    border-radius: 22px;
  }

  .gallery {
    --gallery-edge: 16px;
  }

  .gallery__viewport {
    overflow-x: auto;
    overflow-y: hidden;
    mask-image: none;
    -webkit-mask-image: none;
    scroll-snap-type: none;
    scrollbar-width: none;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
  }

  .gallery__viewport::-webkit-scrollbar {
    display: none;
  }

  .gallery__viewport:hover .gallery__track {
    animation-play-state: running;
  }

  .gallery__track {
    gap: 14px;
    animation: none;
    transform: none;
  }

  .gallery__item {
    flex-basis: 78vw;
    height: 235px;
    border-radius: 24px;
    scroll-snap-align: start;
  }
}

/* Продающая структура страницы */
body {
  background:
    radial-gradient(circle at 8% 16%, rgba(75,145,245,.17), transparent 28%),
    radial-gradient(circle at 96% 18%, rgba(40,98,189,.15), transparent 30%),
    radial-gradient(circle at 50% 92%, rgba(75,145,245,.1), transparent 34%),
    linear-gradient(180deg,#04060c 0%,#080b14 44%,#05070d 100%);
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(115deg, transparent 0%, rgba(75,145,245,.055) 28%, transparent 44%),
    linear-gradient(90deg, transparent 0%, rgba(75,145,245,.04) 50%, transparent 100%);
  background-size: 160% 160%, 220% 100%;
  opacity: .72;
  animation: ambient-sweep 18s ease-in-out infinite alternate;
}

body:before {
  animation: grid-drift 32s linear infinite;
}

@keyframes ambient-sweep {
  0% {
    background-position: 0% 50%, 0% 0%;
    opacity: .48;
  }
  100% {
    background-position: 100% 50%, 100% 0%;
    opacity: .78;
  }
}

@keyframes grid-drift {
  0% {
    background-position: 0 0, 0 0;
  }
  100% {
    background-position: 64px 64px, 64px 64px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body::before,
  body::after {
    animation: none;
  }
}

.motion-layer {
  position: fixed;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}

.motion-layer::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(115deg, transparent 0 36%, rgba(75,145,245,.11) 45%, transparent 54% 100%),
    linear-gradient(245deg, transparent 0 42%, rgba(75,145,245,.10) 50%, transparent 58% 100%);
  background-size: 140% 140%, 170% 170%;
  opacity: .7;
  animation: light-sweep 13s ease-in-out infinite alternate;
}

.motion-layer span {
  position: absolute;
  left: -18vw;
  width: 42vw;
  height: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(75,145,245,.42), rgba(75,145,245,.28), transparent);
  opacity: .58;
  transform: rotate(-12deg);
  animation: signal-line 11s linear infinite;
}

.motion-layer span:nth-child(1) {
  top: 24%;
}

.motion-layer span:nth-child(2) {
  top: 54%;
  width: 54vw;
  animation-delay: -4s;
  animation-duration: 14s;
  opacity: .42;
}

.motion-layer span:nth-child(3) {
  top: 78%;
  width: 36vw;
  animation-delay: -7s;
  animation-duration: 16s;
  opacity: .36;
}

@keyframes light-sweep {
  0% { background-position: 0% 18%, 100% 60%; }
  100% { background-position: 100% 42%, 0% 28%; }
}

@keyframes signal-line {
  0% { transform: translateX(-10vw) rotate(-12deg); }
  100% { transform: translateX(140vw) rotate(-12deg); }
}

.stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.header {
  border-left: 1px solid rgba(255,255,255,.045);
  border-right: 1px solid rgba(255,255,255,.045);
}

.hero {
  grid-template-columns: minmax(0, .95fr) minmax(420px, .82fr);
  gap: clamp(34px, 5vw, 70px);
}

.hero__content {
  max-width: 710px;
}

.hero__text {
  max-width: 650px;
}

.hero__features span {
  border-radius: 14px;
}

.hero__panel {
  min-height: 560px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.hero__panel::after {
  content: "";
  position: absolute;
  right: -58px;
  bottom: -58px;
  width: 190px;
  height: 190px;
  border: 1px solid rgba(75,145,245,.16);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(75,145,245,.18), transparent 60%);
  pointer-events: none;
}

.hero__summary {
  margin-top: 26px;
}

.stats {
  margin-top: -36px;
}

.stats article {
  min-height: 156px;
}

.stats strong {
  color: #b8d7ff;
  font-size: 24px;
}

.card {
  display: flex;
  flex-direction: column;
  min-height: 300px;
}

.card__icon {
  color: #b8d7ff;
  font-size: 15px;
  letter-spacing: .04em;
}

.card__result {
  display: block;
  margin-top: auto;
  padding-top: 18px;
  color: #eef4fb;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
}

.pricing {
  padding-top: 34px;
}

.pricing__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.price-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 340px;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.064), rgba(255,255,255,.032));
  box-shadow: 0 18px 58px rgba(0,0,0,.2);
}

.price-card--featured {
  border-color: rgba(75,145,245,.34);
  background:
    linear-gradient(180deg, rgba(75,145,245,.13), rgba(255,255,255,.04)),
    radial-gradient(circle at 92% 12%, rgba(40,98,189,.16), transparent 32%);
}

.price-card__label {
  width: fit-content;
  margin-bottom: 18px;
  padding: 7px 11px;
  border: 1px solid rgba(75,145,245,.18);
  border-radius: 999px;
  color: #b8d7ff;
  background: rgba(75,145,245,.08);
  font-size: 12px;
  font-weight: 900;
}

.price-card h3 {
  font-size: 24px;
}

.price-card strong {
  display: block;
  margin: 4px 0 18px;
  color: #fff;
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1;
  letter-spacing: -.03em;
}

.price-card p {
  color: var(--muted);
}

.price-card a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  margin-top: auto;
  padding: 0 18px;
  border-radius: 14px;
  color: #090b12;
  background: linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);
  font-weight: 900;
}

.pricing__legal {
  max-width: 820px;
  margin: 18px 0 0;
  color: rgba(174,185,201,.78);
  font-size: 13px;
}

.model-prices {
  margin-top: 24px;
  padding: 22px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 26px;
  background: rgba(255,255,255,.04);
}

.model-prices__head {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 16px;
}

.model-prices__head span {
  color: #b8d7ff;
  font-size: 13px;
  font-weight: 900;
}

.model-prices__head b {
  color: #fff;
  font-size: 22px;
}

.model-prices__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.model-prices__list span {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 14px;
  color: #dce5f1;
  background: rgba(4,6,12,.26);
  font-size: 14px;
}

.model-prices__list b {
  color: #fff;
  white-space: nowrap;
}

.quote-flow {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
  gap: 22px;
  align-items: stretch;
  padding-top: 36px;
}

.quote-flow__content,
.quote-flow__checklist {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.064), rgba(255,255,255,.032)),
    radial-gradient(circle at 100% 0%, rgba(75,145,245,.12), transparent 34%);
  box-shadow: 0 18px 58px rgba(0,0,0,.18);
}

.quote-flow__content {
  padding: 30px;
}

.quote-flow__content h2 {
  max-width: 680px;
}

.quote-flow__content p {
  max-width: 720px;
  color: var(--muted);
}

.quote-flow__checklist {
  display: grid;
  gap: 12px;
  padding: 26px;
}

.quote-flow__checklist b {
  color: #fff;
  font-size: 22px;
}

.quote-flow__checklist span {
  position: relative;
  padding-left: 28px;
  color: #dce5f1;
  font-weight: 700;
}

.quote-flow__checklist span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #4b91f5;
  box-shadow: 0 0 0 5px rgba(75,145,245,.12);
}

.before-after {
  padding-top: 44px;
}

.before-after__grid {
  display: grid;
  grid-template-columns: .9fr 1fr 1fr;
  gap: 18px;
}

.before-after__grid article,
.aftercare__grid article {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.064), rgba(255,255,255,.032)),
    radial-gradient(circle at 100% 0%, rgba(75,145,245,.1), transparent 34%);
  box-shadow: 0 18px 58px rgba(0,0,0,.18);
}

.before-after__grid article {
  min-height: 270px;
  padding: 28px;
}

.before-after__grid article::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, rgba(75,145,245,.9), rgba(40,98,189,.86));
}

.before-after__grid article:nth-child(2)::before {
  background: linear-gradient(90deg, rgba(75,145,245,.9), rgba(75,145,245,.9));
}

.before-after__grid article:nth-child(3)::before {
  background: linear-gradient(90deg, rgba(40,98,189,.88), rgba(75,145,245,.86));
}

.before-after__grid span {
  display: inline-flex;
  margin-bottom: 18px;
  padding: 7px 11px;
  border: 1px solid rgba(75,145,245,.18);
  border-radius: 999px;
  color: #b8d7ff;
  background: rgba(75,145,245,.08);
  font-size: 12px;
  font-weight: 900;
}

.before-after__grid h3 {
  max-width: 320px;
  color: #fff;
  font-size: 24px;
  line-height: 1.12;
}

.before-after__grid p {
  margin: 0;
  color: var(--muted);
}

.aftercare {
  padding-top: 38px;
}

.aftercare__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.aftercare__grid article {
  display: grid;
  gap: 12px;
  min-height: 190px;
  padding: 24px;
}

.aftercare__grid article::after {
  content: "";
  position: absolute;
  right: -42px;
  bottom: -54px;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  border: 1px solid rgba(75,145,245,.16);
  background: radial-gradient(circle, rgba(75,145,245,.12), transparent 64%);
  pointer-events: none;
}

.aftercare__grid b {
  position: relative;
  z-index: 1;
  color: #fff;
  font-size: 18px;
  line-height: 1.22;
}

.aftercare__grid span {
  position: relative;
  z-index: 1;
  color: var(--muted);
  font-size: 14px;
}

.apps {
  margin-top: 0;
}

.apps__column {
  min-height: 230px;
}

.gallery__note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-top: 24px;
  padding: 18px 20px;
  border: 1px solid rgba(75,145,245,.18);
  border-radius: 22px;
  background: rgba(255,255,255,.045);
}

.gallery__note span {
  color: #b8d7ff;
  font-weight: 900;
}

.gallery__note p {
  margin: 0;
  color: var(--muted);
}

.gallery__note a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 13px;
  color: #090b12;
  background: #fff;
  font-weight: 900;
  white-space: nowrap;
}

.reviews {
  padding-top: 34px;
}

.reviews__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.review-card {
  display: flex;
  flex-direction: column;
  min-height: 230px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.064), rgba(255,255,255,.032)),
    radial-gradient(circle at 100% 0%, rgba(75,145,245,.1), transparent 34%);
  box-shadow: 0 18px 58px rgba(0,0,0,.18);
}

.review-card__top {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 10px;
}

.review-card__top span {
  color: #fff;
  font-size: 18px;
  font-weight: 900;
}

.review-card__top b {
  color: var(--muted);
  font-size: 13px;
  white-space: nowrap;
}

.review-card__stars {
  margin-bottom: 16px;
  color: #ffad22;
  font-size: 18px;
  letter-spacing: .06em;
}

.review-card p {
  margin: 0;
  color: #dce5f1;
}

.reviews__footer {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
  padding: 16px 18px;
  border: 1px solid rgba(75,145,245,.18);
  border-radius: 20px;
  background: rgba(255,255,255,.04);
}

.reviews__footer span {
  color: var(--muted);
  font-size: 14px;
}

.reviews__footer a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 13px;
  color: #090b12;
  background: #fff;
  font-weight: 900;
}

.review-card__car {
  margin: -6px 0 14px !important;
  color: #b8d7ff !important;
  font-size: 14px;
  font-weight: 800;
}

.review-form {
  margin-top: 28px;
  padding: clamp(20px, 3vw, 30px);
  border: 1px solid rgba(75,145,245,.2);
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
}

.review-form__head {
  margin-bottom: 20px;
}

.review-form__head .badge {
  margin-bottom: 12px;
}

.review-form__head h3 {
  margin-bottom: 8px;
  font-size: 26px;
}

.review-form__head p,
.review-form__footer p {
  margin: 0;
  color: var(--muted);
}

.review-form__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.review-form__fields label {
  display: grid;
  gap: 8px;
  color: #e9edf4;
  font-size: 14px;
  font-weight: 800;
}

.review-form__optional {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

.review-form input,
.review-form select,
.review-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 11px 13px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 13px;
  color: var(--text);
  background: rgba(4,6,12,.55);
  font: inherit;
}

.review-form select option {
  color: #fff;
  background: #101522;
}

.review-form textarea {
  min-height: 132px;
  resize: vertical;
}

.review-form input:focus-visible,
.review-form select:focus-visible,
.review-form textarea:focus-visible {
  outline: 2px solid rgba(75,145,245,.72);
  outline-offset: 2px;
}

.review-form__message {
  grid-column: 1 / -1;
}

.review-form__consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 16px;
  color: var(--muted);
  font-size: 14px;
}

.review-form__consent input {
  flex: 0 0 18px;
  width: 18px;
  min-height: 18px;
  margin: 2px 0 0;
  accent-color: var(--accent-3);
}

.review-form__consent a {
  color: #b8d7ff;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.review-form__honeypot {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.review-form__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
}

.review-form__footer .btn {
  border: 0;
  cursor: pointer;
}

.review-form__status,
.review-admin__status {
  min-height: 24px;
  margin-top: 12px;
  color: #d8e3f2;
  font-size: 14px;
}

.review-form__status.is-error,
.review-admin__status.is-error {
  color: #ffb7a9;
}

.review-admin__list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.review-admin[hidden] {
  display: none !important;
}

.review-admin__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  background: rgba(255,255,255,.035);
}

.review-admin__row strong,
.review-admin__row p {
  display: block;
  margin: 0;
}

.review-admin__row strong {
  color: #fff;
}

.review-admin__row p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.review-admin__row button {
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid rgba(255,130,112,.32);
  border-radius: 11px;
  color: #ffc1b6;
  background: rgba(40,98,189,.1);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.faq {
  padding-top: 36px;
}

.faq__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 14px;
}

.faq__column {
  display: grid;
  align-content: start;
  gap: 14px;
}

.faq details {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.058), rgba(255,255,255,.03));
  transition: border-color .24s ease, background-color .24s ease, transform .24s ease;
}

.faq details[open] {
  border-color: rgba(75,145,245,.3);
  background: linear-gradient(180deg, rgba(75,145,245,.09), rgba(255,255,255,.035));
}

.faq summary {
  cursor: pointer;
  padding: 20px 22px;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  list-style: none;
}

.faq summary::-webkit-details-marker {
  display: none;
}

.faq summary::after {
  content: "+";
  float: right;
  color: #b8d7ff;
  transition: transform .24s ease;
}

.faq details[open] summary::after {
  content: "−";
  transform: rotate(180deg);
}

.faq p {
  margin: 0;
  padding: 0 22px 22px;
  color: var(--muted);
  animation: faq-answer-in .24s ease both;
}

@keyframes faq-answer-in {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .faq details,
  .faq summary::after,
  .faq p {
    animation: none;
    transition: none;
  }
}

.warranty-strip {
  display: grid;
  grid-template-columns: minmax(0, .58fr) minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding-top: 36px;
}

.warranty-strip h2 {
  margin-bottom: 0;
  font-size: clamp(28px, 3vw, 42px);
}

.warranty-strip__items {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.warranty-strip__items span {
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  color: #dce5f1;
  background: rgba(255,255,255,.045);
  font-size: 14px;
  font-weight: 700;
}

.warranty-strip > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 14px;
  color: #090b12;
  background: #fff;
  font-weight: 900;
  white-space: nowrap;
}

.cta {
  position: relative;
  overflow: hidden;
}

.cta::after {
  content: "WhatsApp";
  position: absolute;
  right: 28px;
  bottom: -16px;
  color: rgba(9,11,18,.09);
  font-size: clamp(58px, 9vw, 120px);
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
}

.cta > * {
  position: relative;
  z-index: 1;
}

@media(max-width:1120px){
  .hero {
    grid-template-columns: 1fr;
  }

  .hero__panel {
    min-height: auto;
  }

  .pricing__grid,
  .before-after__grid,
  .reviews__grid,
  .faq__grid {
    grid-template-columns: 1fr;
  }

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

  .quote-flow,
  .warranty-strip {
    grid-template-columns: 1fr;
  }

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

@media(max-width:980px){
  .stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pricing__grid {
    grid-template-columns: 1fr;
  }

  .gallery__note {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .gallery__note a {
    width: fit-content;
  }

  .reviews__grid {
    grid-template-columns: 1fr 1fr;
  }

  .before-after__grid article {
    min-height: auto;
  }

  .model-prices__list {
    grid-template-columns: 1fr;
  }
}

@media(max-width:640px){
  h1 {
    font-size: clamp(42px, 13vw, 58px);
  }

  .hero__panel-head b {
    font-size: 32px;
  }

  .stats {
    margin-top: 0;
    grid-template-columns: 1fr;
  }

  .card,
  .price-card {
    min-height: auto;
  }

  .gallery__note a {
    width: 100%;
  }

  .reviews__grid {
    grid-template-columns: 1fr;
  }

  .review-card {
    min-height: auto;
  }

  .reviews__footer a {
    width: 100%;
  }

  .model-prices {
    padding: 18px;
  }

  .model-prices__list span {
    flex-direction: column;
    gap: 4px;
  }

  .quote-flow {
    padding-top: 20px;
  }

  .quote-flow__content,
  .quote-flow__checklist {
    padding: 22px;
  }

  .before-after,
  .aftercare {
    padding-top: 24px;
  }

  .before-after__grid,
  .aftercare__grid {
    grid-template-columns: 1fr;
  }

  .before-after__grid article,
  .aftercare__grid article {
    padding: 22px;
    border-radius: 22px;
  }

  .before-after__grid h3 {
    max-width: none;
    font-size: 20px;
  }

  .warranty-strip > a {
    width: 100%;
  }

  .faq summary {
    font-size: 16px;
  }
}

/* Живой интерфейс и продающие интерактивные блоки */
body {
  overflow-x: hidden;
}

body::after {
  content: "";
  position: fixed;
  inset: -20%;
  z-index: -2;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 22%, rgba(75,145,245,.18), transparent 28%),
    radial-gradient(circle at 76% 18%, rgba(40,98,189,.14), transparent 26%),
    radial-gradient(circle at 48% 82%, rgba(75,145,245,.13), transparent 30%);
  filter: blur(18px);
  animation: ambient-drift 22s ease-in-out infinite alternate;
}

@keyframes ambient-drift {
  0% { transform: translate3d(-1.5%, -1%, 0) scale(1); }
  100% { transform: translate3d(1.5%, 1%, 0) scale(1.05); }
}

body:before {
  animation: grid-slide 18s linear infinite;
}

@keyframes grid-slide {
  from { background-position: 0 0, 0 0; }
  to { background-position: 64px 64px, 64px 64px; }
}

.hero__dashboard {
  position: relative;
  z-index: 1;
  margin-top: 28px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 24px;
  background:
    linear-gradient(160deg, rgba(5,9,18,.92), rgba(22,27,41,.72)),
    radial-gradient(circle at 12% 8%, rgba(75,145,245,.18), transparent 34%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 24px 64px rgba(0,0,0,.26);
}

.hero__dashboard::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,.11) 46%, transparent 58%);
  transform: translateX(-120%);
  animation: screen-glint 6s ease-in-out infinite;
  pointer-events: none;
}

@keyframes screen-glint {
  0%, 42% { transform: translateX(-120%); }
  64%, 100% { transform: translateX(120%); }
}

.hero__dashboard-top,
.function-preview__status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: rgba(248,251,255,.82);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .02em;
}

.hero__dashboard-top b,
.function-preview__status span:first-child {
  color: #b8d7ff;
}

.hero__dashboard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.hero__dashboard-grid span {
  position: relative;
  overflow: hidden;
  min-height: 70px;
  display: grid;
  place-items: center;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  color: #eef4fb;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035)),
    radial-gradient(circle at 50% 0%, rgba(75,145,245,.12), transparent 60%);
  font-size: 13px;
  font-weight: 900;
  text-align: center;
  animation: tile-breathe 5.6s ease-in-out infinite;
}

.hero__dashboard-grid span::after {
  content: "";
  position: absolute;
  inset: auto 18% 10px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(75,145,245,.72), transparent);
  opacity: .55;
  animation: tile-led 2.8s ease-in-out infinite;
}

.hero__dashboard-grid span:nth-child(2n) {
  animation-delay: -1.8s;
}

.hero__dashboard-grid span:nth-child(3n)::after {
  animation-delay: -1.1s;
}

@keyframes tile-breathe {
  0%, 100% { transform: translateY(0); border-color: rgba(255,255,255,.12); }
  50% { transform: translateY(-4px); border-color: rgba(75,145,245,.24); }
}

@keyframes tile-led {
  0%, 100% { opacity: .22; transform: scaleX(.55); }
  50% { opacity: .78; transform: scaleX(1); }
}

.hero__apps span {
  animation: app-float 7s ease-in-out infinite;
}

.hero__apps span:nth-child(2n) {
  animation-delay: -2.2s;
}

.hero__apps span:nth-child(3n) {
  animation-delay: -4.1s;
}

@keyframes app-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

.cost-wizard,
.function-preview {
  padding-top: 42px;
}

.cost-wizard__layout,
.function-preview__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr);
  gap: 22px;
  align-items: stretch;
}

.cost-wizard__controls,
.cost-wizard__result,
.function-preview__tabs,
.function-preview__screen {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.064), rgba(255,255,255,.032)),
    radial-gradient(circle at 100% 0%, rgba(75,145,245,.1), transparent 36%);
  box-shadow: 0 18px 58px rgba(0,0,0,.18);
}

.cost-wizard__result::before,
.function-preview__screen::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgba(255,255,255,.045), transparent);
  background-size: 100% 90px;
  opacity: .45;
  animation: scan-roll 5.8s linear infinite;
  pointer-events: none;
}

@keyframes scan-roll {
  from { background-position: 0 -90px; }
  to { background-position: 0 180px; }
}

.cost-wizard__controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 24px;
}

.cost-wizard__controls label {
  display: grid;
  gap: 10px;
}

.cost-wizard__controls label span {
  color: #b8d7ff;
  font-size: 13px;
  font-weight: 900;
}

.cost-wizard__select {
  width: 100%;
  min-height: 56px;
  padding: 0 16px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  color: #fff;
  background: #0b0f1b;
  font: inherit;
  font-weight: 800;
}

.cost-wizard__result {
  display: grid;
  align-content: center;
  gap: 12px;
  padding: 26px;
}

.cost-wizard__result span {
  color: #b8d7ff;
  font-size: 13px;
  font-weight: 900;
}

.cost-wizard__result strong {
  color: #fff;
  font-size: clamp(38px, 5vw, 58px);
  line-height: 1;
  letter-spacing: -.045em;
}

.cost-wizard__result p {
  margin: 0;
  color: var(--muted);
}

.cost-wizard__result .btn {
  width: fit-content;
  margin-top: 8px;
}

.function-preview__layout {
  grid-template-columns: 260px minmax(0, 1fr);
}

.function-preview__tabs {
  display: grid;
  gap: 10px;
  padding: 16px;
}

.function-preview__tabs button {
  min-height: 54px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  color: #dce5f1;
  background: rgba(255,255,255,.045);
  font: inherit;
  font-weight: 900;
  text-align: left;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.function-preview__tabs button:hover,
.function-preview__tabs button.is-active {
  border-color: rgba(75,145,245,.38);
  color: #fff;
  background: rgba(75,145,245,.12);
  transform: translateX(4px);
}

.function-preview__screen {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  padding: 24px;
  background:
    linear-gradient(150deg, rgba(5,9,18,.94), rgba(27,31,48,.72)),
    radial-gradient(circle at 78% 22%, rgba(40,98,189,.14), transparent 32%),
    radial-gradient(circle at 20% 80%, rgba(75,145,245,.18), transparent 34%);
}

.function-preview__screen.is-changing .function-preview__content {
  animation: preview-pop .24s ease;
}

@keyframes preview-pop {
  from { transform: translateY(8px); opacity: .55; }
  to { transform: translateY(0); opacity: 1; }
}

.function-preview__content {
  display: grid;
  gap: 14px;
  place-items: center;
  min-height: 210px;
  text-align: center;
}

.function-preview__icon {
  display: grid;
  place-items: center;
  width: 86px;
  height: 86px;
  border: 1px solid rgba(75,145,245,.24);
  border-radius: 26px;
  color: #090b12;
  background: linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);
  font-weight: 1000;
  box-shadow: 0 20px 54px rgba(40,98,189,.22);
}

.function-preview__content h3 {
  max-width: 560px;
  margin: 0;
  font-size: clamp(26px, 4vw, 42px);
  letter-spacing: -.04em;
}

.function-preview__content p {
  max-width: 580px;
  margin: 0;
  color: var(--muted);
  font-size: 17px;
}

.function-preview__dock {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 20px;
}

.function-preview__dock span {
  display: grid;
  place-items: center;
  min-height: 52px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  color: #dce5f1;
  background: rgba(255,255,255,.05);
  font-size: 13px;
  font-weight: 900;
}

.reviews__summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-bottom: 20px;
  padding: 20px;
  border: 1px solid rgba(75,145,245,.18);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.032)),
    radial-gradient(circle at 0% 0%, rgba(75,145,245,.11), transparent 34%);
}

.reviews__summary strong {
  display: block;
  color: #fff;
  font-size: 44px;
  line-height: 1;
}

.reviews__summary span,
.reviews__summary p {
  color: var(--muted);
}

.reviews__summary p {
  margin: 0;
}

.reviews__summary a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  color: #090b12;
  background: #fff;
  font-weight: 900;
  white-space: nowrap;
}

.review-card__top span {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.review-card__top span::before {
  content: attr(data-initial);
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: #090b12;
  background: linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);
  font-size: 17px;
  font-weight: 1000;
}

.mobile-cta {
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: 12px;
  z-index: 30;
  display: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 8px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 22px;
  background: rgba(6,9,18,.86);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
}

.mobile-cta a {
  display: grid;
  place-items: center;
  gap: 3px;
  min-height: 58px;
  border-radius: 16px;
  color: #fff;
  background: rgba(255,255,255,.055);
  font-size: 12px;
  font-weight: 900;
}

.mobile-cta span {
  color: #b8d7ff;
  font-size: 17px;
  line-height: 1;
}

.mobile-cta b {
  font-size: 11px;
}

.btn--primary,
.price-card a,
.gallery__note a,
.reviews__summary a,
.reviews__footer a,
.warranty-strip > a {
  position: relative;
  overflow: hidden;
}

.btn--primary::after,
.price-card a::after,
.gallery__note a::after,
.reviews__summary a::after,
.reviews__footer a::after,
.warranty-strip > a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,.35) 42%, transparent 58%);
  transform: translateX(-120%);
  animation: cta-shine 4.8s ease-in-out infinite;
  pointer-events: none;
}

@keyframes cta-shine {
  0%, 48% { transform: translateX(-120%); }
  68%, 100% { transform: translateX(120%); }
}

.card,
.price-card,
.review-card,
.before-after__grid article,
.aftercare__grid article,
.steps article,
.stats article {
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease, background .28s ease;
}

.card:hover,
.price-card:hover,
.review-card:hover,
.before-after__grid article:hover,
.aftercare__grid article:hover,
.steps article:hover,
.stats article:hover {
  transform: translateY(-6px);
  border-color: rgba(75,145,245,.26);
  box-shadow: 0 24px 76px rgba(0,0,0,.28);
}

.card__icon,
.steps b,
.function-preview__icon,
.review-card__top span::before {
  animation: soft-pulse 4.6s ease-in-out infinite;
}

@keyframes soft-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(75,145,245,0); }
  50% { box-shadow: 0 0 0 7px rgba(75,145,245,.08); }
}

.price-card strong,
.cost-wizard__result strong,
.stats strong {
  background: linear-gradient(90deg, #fff 0%, #b8d7ff 42%, #fff 78%);
  background-size: 220% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: text-glow-slide 7s ease-in-out infinite;
}

@keyframes text-glow-slide {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

.gallery__item {
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.gallery__item:hover {
  transform: translateY(-4px);
  border-color: rgba(75,145,245,.28);
  box-shadow: 0 24px 76px rgba(0,0,0,.32);
}

.function-preview__dock span {
  animation: dock-glow 5.5s ease-in-out infinite;
}

.function-preview__dock span:nth-child(2n) {
  animation-delay: -2s;
}

@keyframes dock-glow {
  0%, 100% { border-color: rgba(255,255,255,.1); background: rgba(255,255,255,.05); }
  50% { border-color: rgba(75,145,245,.24); background: rgba(75,145,245,.075); }
}

.mobile-cta a {
  transition: transform .2s ease, background .2s ease;
}

.mobile-cta a:active {
  transform: scale(.96);
  background: rgba(75,145,245,.14);
}

.reveal-ready [data-reveal] {
  opacity: 0;
  transform: translateY(24px) scale(.985);
  transition: opacity .68s ease, transform .68s cubic-bezier(.2,.8,.2,1);
}

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

@media(max-width:1120px){
  .cost-wizard__layout,
  .function-preview__layout {
    grid-template-columns: 1fr;
  }

  .function-preview__tabs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .function-preview__tabs button {
    text-align: center;
  }
}

@media(max-width:760px){
  .cost-wizard__controls,
  .function-preview__tabs,
  .function-preview__dock,
  .hero__dashboard-grid {
    grid-template-columns: 1fr 1fr;
  }

  .reviews__summary {
    grid-template-columns: 1fr;
  }

  .reviews__summary a,
  .cost-wizard__result .btn {
    width: 100%;
  }
}

@media(max-width:640px){
  body {
    padding-bottom: 92px;
  }

  .hero__dashboard {
    margin-top: 22px;
    padding: 14px;
    border-radius: 20px;
  }

  .hero__dashboard-grid span {
    min-height: 58px;
    font-size: 12px;
  }

  .cost-wizard,
  .function-preview {
    padding-top: 24px;
  }

  .cost-wizard__controls,
  .cost-wizard__result,
  .function-preview__tabs,
  .function-preview__screen {
    padding: 18px;
    border-radius: 22px;
  }

  .function-preview__tabs {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
  }

  .function-preview__tabs button {
    flex: 0 0 auto;
    min-width: 136px;
    scroll-snap-align: start;
  }

  .function-preview__screen {
    min-height: 330px;
  }

  .function-preview__dock {
    grid-template-columns: 1fr 1fr;
  }

  .reviews__grid {
    display: flex;
    overflow-x: auto;
    gap: 12px;
    margin: 0 -16px;
    padding: 0 16px 12px;
    scroll-snap-type: x mandatory;
  }

  .review-card {
    flex: 0 0 84vw;
    scroll-snap-align: start;
  }

  .mobile-cta {
    display: grid;
  }
}

@media (prefers-reduced-motion: reduce) {
  body::after,
  body:before,
  .motion-layer::before,
  .motion-layer span,
  .hero__dashboard::before,
  .hero__apps span,
  .hero__dashboard-grid span,
  .hero__dashboard-grid span::after,
  .cost-wizard__result::before,
  .function-preview__screen::before,
  .btn--primary::after,
  .price-card a::after,
  .gallery__note a::after,
  .reviews__summary a::after,
  .reviews__footer a::after,
  .warranty-strip > a::after,
  .card__icon,
  .steps b,
  .function-preview__icon,
  .review-card__top span::before,
  .price-card strong,
  .cost-wizard__result strong,
  .stats strong,
  .function-preview__dock span {
    animation: none;
  }

  .reveal-ready [data-reveal] {
    transition: none;
  }
}

/* Страница политики */
.footer__links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: flex-end;
}

.legal {
  max-width: 920px;
  padding-top: 72px;
}

.legal h1 {
  margin-top: 20px;
  font-size: clamp(40px, 6vw, 68px);
}

.legal__lead {
  max-width: 760px;
  margin-bottom: 34px;
  color: var(--muted);
  font-size: 20px;
}

.legal article {
  margin-top: 18px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.058), rgba(255,255,255,.03));
}

.legal article h2 {
  margin-bottom: 10px;
  font-size: 24px;
}

.legal article p {
  margin-bottom: 0;
  color: var(--muted);
}

.legal article a {
  color: #fff;
  font-weight: 800;
}

.legal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}

@media(max-width:640px){
  .footer__links {
    justify-content: flex-start;
  }

  .legal {
    padding-top: 44px;
  }

  .legal h1 {
    max-width: 100%;
    font-size: clamp(34px, 11vw, 46px);
    line-height: 1.06;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .legal__lead {
    font-size: 18px;
    line-height: 1.55;
  }

  .legal article {
    padding: 20px;
    border-radius: 20px;
  }

  .legal article h2 {
    font-size: 24px;
    line-height: 1.15;
    overflow-wrap: anywhere;
  }

  .legal article p {
    font-size: 16px;
    line-height: 1.65;
    overflow-wrap: anywhere;
  }

  .legal__actions .btn {
    width: 100%;
  }
}

/* Юридические сноски и privacy-friendly шрифты */
body {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.logo__title {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  letter-spacing: -.055em;
}

/* Более лёгкая, плавающая шапка */
.header {
  top: 10px;
  width: min(calc(100% - 32px), 1240px);
  min-height: 78px;
  margin: 10px auto 0;
  padding: 12px 16px 12px 24px;
  border: 1px solid rgba(255,255,255,.095);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(10,14,24,.78), rgba(5,7,13,.62)),
    radial-gradient(circle at 12% 0%, rgba(75,145,245,.12), transparent 38%),
    radial-gradient(circle at 88% 0%, rgba(75,145,245,.10), transparent 34%);
  box-shadow:
    0 18px 56px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(22px) saturate(1.25);
}

.header::before {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(75,145,245,.42), rgba(75,145,245,.24), transparent);
  opacity: .75;
  pointer-events: none;
}

.logo {
  min-width: 270px;
  padding: 4px 0;
}

.logo__title {
  font-size: clamp(24px, 2.6vw, 32px);
  line-height: .95;
  letter-spacing: -.05em;
  text-shadow: 0 10px 28px rgba(0,0,0,.32);
}

.logo small {
  margin-top: 8px;
  color: rgba(174,185,201,.82);
  font-size: 11px;
}

.nav {
  align-items: center;
  gap: 4px;
  padding: 6px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
}

.nav a {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 0 14px;
  border-radius: 999px;
  color: rgba(220,229,241,.84);
  font-size: 13px;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}

.nav a:hover {
  color: #fff;
  background: rgba(255,255,255,.075);
  transform: translateY(-1px);
}

.header__phone {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 18px;
  border-color: rgba(75,145,245,.28);
  background:
    linear-gradient(135deg, rgba(75,145,245,.13), rgba(40,98,189,.08)),
    rgba(255,255,255,.035);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}

.header__phone::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4b91f5;
  box-shadow: 0 0 0 5px rgba(75,145,245,.12);
}

.header__phone:hover {
  border-color: rgba(75,145,245,.5);
  background:
    linear-gradient(135deg, rgba(75,145,245,.18), rgba(40,98,189,.12)),
    rgba(255,255,255,.055);
  transform: translateY(-1px);
}

@media(max-width:980px){
  .header {
    align-items: center;
    min-height: 70px;
    width: min(calc(100% - 20px), 1240px);
    padding: 12px 16px;
    border-radius: 20px;
  }

  .logo {
    min-width: auto;
  }
}

@media(max-width:640px){
  .header {
    top: 8px;
    margin-top: 8px;
    padding: 13px 14px;
    border-radius: 18px;
  }

  .logo__title {
    font-size: clamp(23px, 8.6vw, 31px);
    letter-spacing: -.06em;
  }
}

.consent-note {
  max-width: 620px;
  margin: 14px 0 0;
  color: rgba(174,185,201,.82);
  font-size: 12px;
  line-height: 1.45;
}

.consent-note a {
  color: #b8d7ff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.cta__legal {
  grid-column: 1 / -1;
  max-width: 760px;
  margin: -16px 0 0;
  color: rgba(9,11,18,.72);
  font-size: 13px;
  line-height: 1.45;
}

@media(max-width:640px){
  .consent-note {
    font-size: 11px;
  }

  .cta__legal {
    margin-top: 0;
    font-size: 12px;
  }
}

/* Модальное подтверждение перед WhatsApp/звонком */
body.modal-open {
  overflow: hidden;
}

.legal-modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: none;
  place-items: center;
  padding: 20px;
}

.legal-modal.is-open {
  display: grid;
}

.legal-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(4,6,12,.72);
  backdrop-filter: blur(12px);
}

.legal-modal__dialog {
  position: relative;
  width: min(100%, 560px);
  max-height: min(720px, calc(100vh - 40px));
  overflow-y: auto;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 26px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.11), rgba(255,255,255,.035)),
    radial-gradient(circle at 92% 0%, rgba(40,98,189,.16), transparent 34%),
    #080b14;
  box-shadow: 0 30px 90px rgba(0,0,0,.55);
}

.legal-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  color: #fff;
  background: rgba(255,255,255,.06);
  font-size: 24px;
  cursor: pointer;
}

.legal-modal__badge {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 7px 11px;
  border: 1px solid rgba(75,145,245,.2);
  border-radius: 999px;
  color: #b8d7ff;
  background: rgba(75,145,245,.08);
  font-size: 12px;
  font-weight: 900;
}

.legal-modal h2 {
  margin-bottom: 12px;
  padding-right: 36px;
  font-size: clamp(28px, 4vw, 38px);
}

.legal-modal p {
  color: var(--muted);
}

.legal-modal__check {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 12px;
  margin: 22px 0;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.045);
  color: #e8eef7;
  font-size: 14px;
  line-height: 1.5;
}

.legal-modal__checkbox {
  width: 22px;
  height: 22px;
  margin-top: 2px;
  accent-color: #4b91f5;
}

.legal-modal__check a {
  color: #b8d7ff;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.legal-modal__check small {
  display: block;
  margin-top: 8px;
  color: rgba(174,185,201,.82);
  font-size: 12px;
  line-height: 1.45;
}

.legal-modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.legal-modal__submit,
.legal-modal__cancel {
  min-height: 50px;
  padding: 0 20px;
  border: 0;
  border-radius: 14px;
  font-weight: 900;
  cursor: pointer;
}

.legal-modal__submit {
  color: #090b12;
  background: linear-gradient(135deg,#4b91f5 0%,#2862bd 100%);
}

.legal-modal__submit:disabled {
  cursor: not-allowed;
  filter: grayscale(1);
  opacity: .46;
}

.legal-modal__cancel {
  border: 1px solid rgba(255,255,255,.16);
  color: #fff;
  background: rgba(255,255,255,.06);
}

@media(max-width:640px){
  .legal-modal {
    align-items: end;
    padding: 12px;
  }

  .legal-modal__dialog {
    max-height: calc(100vh - 24px);
    padding: 22px;
    border-radius: 22px;
  }

  .legal-modal__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .legal-modal__submit,
  .legal-modal__cancel {
    width: 100%;
  }
}

/* Финальная доводка iPhone-адаптива */
@media(max-width:640px){
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  body {
    padding-bottom: 120px;
  }

  .header {
    top: 8px;
    width: calc(100% - 20px);
    max-width: calc(100% - 20px);
    min-height: auto;
    margin: 8px 10px 0;
    padding: 12px 14px;
    gap: 0;
    justify-content: center;
    overflow: hidden;
    border-radius: 20px;
  }

  .nav,
  .header__phone,
  .logo small {
    display: none !important;
  }

  .logo {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    justify-content: center;
    overflow: hidden;
  }

  .logo__stack {
    min-width: 0;
    max-width: 100%;
  }

  .logo__title {
    display: block;
    max-width: 100%;
    font-size: clamp(22px, 7.7vw, 30px);
    line-height: 1;
    letter-spacing: -.064em;
    white-space: nowrap;
  }

  .section {
    padding-left: 18px;
    padding-right: 18px;
  }

  .hero {
    padding-top: 42px;
    gap: 26px;
  }

  h1 {
    max-width: 100%;
    font-size: clamp(38px, 11.2vw, 48px) !important;
    line-height: 1.04;
    letter-spacing: -.055em;
  }

  .hero__text {
    margin-bottom: 24px;
    font-size: 18px;
    line-height: 1.58;
  }

  .badge {
    max-width: 100%;
    white-space: normal;
    line-height: 1.3;
  }

  .hero__features {
    margin-top: 20px;
  }

  .hero__features span,
  .brands span {
    overflow-wrap: anywhere;
  }

  .btn {
    min-height: 52px;
  }

  .mobile-cta {
    bottom: max(10px, env(safe-area-inset-bottom));
    transform: translateY(calc(100% + 28px));
    opacity: 0;
    pointer-events: none;
    transition: transform .28s ease, opacity .28s ease;
  }

  body.show-mobile-cta .mobile-cta {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }

  .mobile-cta a {
    min-height: 54px;
  }
}

.price-admin-fab {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 95;
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid rgba(75,145,245,.34);
  border-radius: 999px;
  color: #f7d7a2;
  background: rgba(20,15,18,.78);
  box-shadow: 0 18px 48px rgba(0,0,0,.34);
  backdrop-filter: blur(16px);
  font: 900 13px/1 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  cursor: pointer;
}

.price-admin-fab[hidden],
.price-editor[hidden] {
  display: none;
}

.price-editor {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: grid;
  place-items: center;
  padding: 22px;
}

.price-editor__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3,5,11,.72);
  backdrop-filter: blur(12px);
}

.price-editor__panel {
  position: relative;
  z-index: 1;
  width: min(100%, 980px);
  max-height: min(86vh, 920px);
  overflow: auto;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 26px;
  color: #f8fbff;
  background:
    radial-gradient(circle at 12% 8%, rgba(75,145,245,.16), transparent 34%),
    radial-gradient(circle at 88% 6%, rgba(40,98,189,.14), transparent 36%),
    rgba(7,10,18,.96);
  box-shadow: 0 34px 120px rgba(0,0,0,.56);
}

.price-editor__head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.price-editor__head span {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 7px 11px;
  border: 1px solid rgba(75,145,245,.26);
  border-radius: 999px;
  color: #b8d7ff;
  background: rgba(75,145,245,.1);
  font-size: 12px;
  font-weight: 900;
}

.price-editor__head h2,
.price-editor__section h3 {
  margin: 0;
}

.price-editor__head h2 {
  font-size: clamp(28px, 4vw, 46px);
  line-height: .98;
  letter-spacing: -.045em;
}

.price-editor__close {
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  color: #fff;
  background: rgba(255,255,255,.06);
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.price-editor__note {
  max-width: 780px;
  margin: 0 0 18px;
  color: var(--muted);
  line-height: 1.55;
}

.price-editor__section {
  margin-top: 14px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 20px;
  background: rgba(255,255,255,.035);
}

.price-editor__section h3 {
  margin-bottom: 14px;
  font-size: 18px;
}

.price-editor__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.price-editor__grid label,
.price-editor__model-row label {
  display: grid;
  gap: 7px;
  color: #aeb9c9;
  font-size: 13px;
  font-weight: 850;
}

.price-editor__grid input,
.price-editor__model-row input {
  width: 100%;
  min-height: 48px;
  padding: 0 13px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 14px;
  color: #fff;
  background: rgba(255,255,255,.06);
  font: inherit;
  font-weight: 850;
  outline: none;
}

.price-editor__grid input:focus,
.price-editor__model-row input:focus {
  border-color: rgba(238,192,123,.62);
  box-shadow: 0 0 0 3px rgba(238,192,123,.1);
}

.price-editor__model-list {
  display: grid;
  gap: 10px;
}

.price-editor__model-row {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, .9fr) auto;
  gap: 10px;
  align-items: end;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.price-editor__remove,
.price-editor__add {
  min-height: 46px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  color: #fff;
  background: rgba(255,255,255,.07);
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.price-editor__remove {
  padding: 0 12px;
  color: #ffcabf;
}

.price-editor__add {
  margin-top: 12px;
  padding: 0 16px;
  color: #b8d7ff;
  background: rgba(75,145,245,.1);
}

.price-editor__status {
  min-height: 22px;
  margin-top: 14px;
  color: #c8ffd6;
  font-weight: 850;
}

.price-editor__status.is-error {
  color: #ffcabf;
}

.price-editor__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}

.price-editor__actions .btn {
  border: 0;
  cursor: pointer;
}

.admin-view[hidden],
.price-editor__model-row[hidden] {
  display: none !important;
}

body.price-editor-open {
  overflow: hidden;
}

@media(max-width:640px){
  .price-admin-fab {
    right: 14px;
    bottom: 92px;
    z-index: 96;
  }

  .price-editor {
    padding: 10px;
    align-items: end;
  }

  .price-editor__panel {
    max-height: 88vh;
    padding: 18px;
    border-radius: 24px 24px 18px 18px;
  }

  .price-editor__grid,
  .price-editor__model-row,
  .price-editor__actions {
    grid-template-columns: 1fr;
  }

  .price-editor__actions {
    display: grid;
  }
}

/* Compact price overview above the model list. */
.price-range {
  display: flex;
  max-width: 760px;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 22px 24px;
  border: 1px solid var(--line-warm);
  border-radius: 22px;
  background: linear-gradient(120deg, rgba(75,145,245,.11), rgba(255,255,255,.035));
}

.price-range div {
  display: grid;
  gap: 5px;
}

.price-range span {
  color: var(--muted);
  font-size: 14px;
  font-weight: 700;
}

.price-range strong {
  color: #fff;
  font-size: clamp(28px, 4vw, 38px);
  line-height: 1.1;
}

.price-range p {
  margin: 0;
  color: var(--muted);
}

@media (max-width: 640px) {
  .price-range {
    align-items: flex-start;
    flex-direction: column;
    padding: 18px;
  }
}


@media (max-width: 980px) {
  .header { align-items: center; }
}


@media (max-width: 640px) {
  .review-form__fields { grid-template-columns: 1fr; }
  .review-form__message { grid-column: auto; }
  .review-admin__row { grid-template-columns: 1fr; }
  .review-admin__row button { justify-self: start; }
}

/* Owner dashboard */
.admin-tabs,
.review-admin__filters {
  display: flex;
  gap: 8px;
  margin: 18px 0;
  padding-bottom: 4px;
  overflow-x: auto;
  scrollbar-width: thin;
}

.admin-tabs button,
.review-admin__filters button,
.admin-quick-actions button,
.admin-quick-actions a {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 13px;
  color: #e8edf5;
  background: rgba(255,255,255,.055);
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.admin-tabs button[aria-selected="true"],
.review-admin__filters button[aria-selected="true"] {
  border-color: rgba(75,145,245,.48);
  color: #c5deff;
  background: rgba(75,145,245,.13);
}

.admin-tabs button span,
.review-admin__filters button span {
  display: inline-grid;
  min-width: 22px;
  height: 22px;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  color: #11151d;
  background: #4b91f5;
  font-size: 11px;
}

.admin-view[hidden],
.price-editor__model-row[hidden] { display: none !important; }
.admin-view > h3 { margin: 18px 0 12px; color: #fff; font-size: 19px; }
.admin-dashboard-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.admin-dashboard-grid button { display: grid; gap: 5px; min-height: 104px; padding: 16px; border: 1px solid rgba(255,255,255,.12); border-radius: 17px; color: #fff; text-align: left; background: rgba(255,255,255,.045); cursor: pointer; }
.admin-dashboard-grid strong { color: #b8d7ff; font-size: 27px; line-height: 1; }
.admin-dashboard-grid span,.admin-updated,.backup-row span { color: var(--muted); font-size: 13px; }
.admin-updated { margin: 16px 0; }
.admin-quick-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.admin-status { min-height: 20px; margin-top: 12px; color: #c8ffd6; font-size: 14px; }
.admin-status.is-error { color: #ffb7a9; }
.price-editor__tools,.settings-fields,.password-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 12px 0; }
.price-editor__tools label,.settings-fields label,.password-fields label,.settings-faq-row label { display: grid; gap: 7px; color: #cbd4e2; font-size: 13px; font-weight: 800; }
.price-editor__tools input,.price-editor__tools select,.settings-fields input,.password-fields input,.settings-faq-row input,.settings-faq-row textarea { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: #f8fbff; background: rgba(4,6,12,.58); font: inherit; }
.settings-faq-row textarea { min-height: 88px; resize: vertical; }
.settings-fields__wide { grid-column: 1 / -1; }
.settings-faq-list { display: grid; gap: 10px; }
.settings-faq-row { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 12px; padding: 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.03); }
.settings-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 18px; }
.settings-actions .admin-status { margin: 0; }
.admin-duplicate-warning { margin: 8px 0; color: #ffcabf; font-size: 13px; font-weight: 800; }
.backup-list { display: grid; gap: 9px; margin-top: 16px; }
.backup-import { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; margin-top: 14px; padding: 14px; border: 1px dashed rgba(255,255,255,.15); border-radius: 15px; }
.backup-import label { display: grid; flex: 1 1 260px; gap: 7px; color: #cbd4e2; font-size: 13px; font-weight: 800; }
.backup-import input { max-width: 100%; color: var(--muted); font: inherit; }
.backup-import button { min-height: 42px; padding: 0 14px; border: 1px solid rgba(75,145,245,.35); border-radius: 13px; color: #c5deff; background: rgba(75,145,245,.1); font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
.backup-import button:disabled { opacity: .55; cursor: wait; }
.backup-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: rgba(255,255,255,.035); }
.backup-row div { display: grid; gap: 4px; min-width: 0; }
.backup-row strong { color: #fff; font-size: 14px; }
.backup-row button,.review-admin__actions button { min-height: 40px; padding: 0 13px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: #fff; background: rgba(255,255,255,.07); font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
.review-admin__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.review-admin__actions .review-admin__approve { border-color: rgba(124,214,152,.35); color: #c8ffd6; background: rgba(124,214,152,.09); }
.review-admin__actions button:disabled,.backup-row button:disabled { opacity: .55; cursor: wait; }
.cta__hours { flex: 0 0 100%; color: rgba(9,11,18,.72); font-size: 14px; font-weight: 800; }

@media (max-width: 720px) {
  .admin-dashboard-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .settings-faq-row { grid-template-columns: 1fr; }
}

@media (max-width: 540px) {
  .admin-dashboard-grid button { min-height: 90px; padding: 12px; }
  .price-editor__tools,.settings-fields,.password-fields { grid-template-columns: 1fr; }
  .settings-fields__wide { grid-column: auto; }
  .backup-row { align-items: stretch; flex-direction: column; }
  .backup-row button { width: 100%; }
}

/* Mobile layout refinements */
@media (max-width: 640px) {
  .header {
    overflow: visible;
  }

  .header .nav.is-open {
    top: calc(100% + 8px);
    right: 0;
    left: 0;
  }

  .logo__title {
    font-size: clamp(20px, 7vw, 27px);
  }

  .hero__panel {
    padding: 18px;
  }

  .hero__panel-head p {
    font-size: 14px;
    line-height: 1.5;
  }

  /* App shortcuts are already represented in the dashboard above. */
  .hero__apps {
    display: none;
  }

  .hero__checks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 20px;
  }

  .hero__checks article {
    padding: 13px;
    border-radius: 16px;
  }

  .hero__checks article:last-child {
    grid-column: 1 / -1;
  }

  .hero__checks strong {
    margin-bottom: 9px;
    font-size: 20px;
  }

  .hero__checks span {
    font-size: 13px;
  }

  body.mobile-cta-paused .mobile-cta {
    transform: translateY(calc(100% + 28px));
    opacity: 0;
    pointer-events: none;
  }
}


/* Searchable public pricing, separated review sources, and owner workflow states */
.admin-dirty { margin: 8px 0 0; color: #f5c77e; font-size: 13px; font-weight: 800; }
.admin-backup-health { margin: 12px 0; color: var(--muted); font-size: 13px; }
.admin-backup-health.is-error { color: #ffb7a9; }
.admin-undo { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 12px 0 18px; padding: 12px 14px; border: 1px solid rgba(75,145,245,.2); border-radius: 14px; background: rgba(75,145,245,.055); }
.admin-undo span { flex: 1 1 220px; color: var(--muted); font-size: 13px; }
.admin-undo button { min-height: 40px; padding: 0 14px; border: 1px solid rgba(75,145,245,.36); border-radius: 12px; color: #c5deff; background: rgba(75,145,245,.1); font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
.admin-undo button:disabled,.admin-tabs button:disabled,.review-admin__filters button:disabled,.settings-actions button:disabled,.price-editor__panel [type=submit]:disabled { opacity: .56; cursor: not-allowed; }
.model-prices__search { display: grid; gap: 7px; max-width: 480px; margin: 0 0 4px; color: #cbd4e2; font-size: 13px; font-weight: 800; }
.model-prices__search input { width: 100%; min-height: 46px; padding: 10px 14px; border: 1px solid rgba(255,255,255,.14); border-radius: 13px; color: #f8fbff; background: rgba(4,6,12,.5); font: inherit; }
.model-prices__count { margin: 8px 0 12px; color: var(--muted); font-size: 12px; }
.model-prices__list { display: grid; gap: 16px; }
.model-prices__group h3 { margin: 0 0 8px; color: #b8d7ff; font-size: 15px; }
.model-prices__group-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.model-prices__group-list > span { display: flex; justify-content: space-between; gap: 12px; padding: 13px 14px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; color: #dce5f1; background: rgba(4,6,12,.26); font-size: 14px; }
.model-prices__group-list b { color: #fff; white-space: nowrap; }
.model-prices__empty { grid-column: 1/-1; margin: 0; padding: 16px; color: var(--muted); }
.gallery__controls { display: none; }
.gallery__controls button { width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; color: #fff; background: rgba(255,255,255,.08); font-size: 28px; line-height: 1; cursor: pointer; }
.gallery__controls span { min-width: 56px; color: var(--muted); text-align: center; font-size: 13px; font-variant-numeric: tabular-nums; }
@media (max-width: 720px) {
  .admin-tabs { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); overflow: visible; }
  .admin-tabs button { min-width: 0; padding: 0 7px; white-space: normal; text-align: center; }
  .review-admin__filters { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); overflow: visible; }
  .review-admin__filters button { min-width: 0; padding: 0 6px; white-space: normal; }
}
@media (max-width: 640px) {
  .hero__panel-head p,.hero__summary { display: none; }
  .hero__panel-head b { font-size: clamp(24px, 7vw, 30px); }
  .hero__dashboard-grid span { min-height: 56px; padding: 10px 8px; }
  .hero__checks article { min-height: 78px; padding: 12px; }
  .gallery__controls { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin: 4px 0 8px; }
  .model-prices__group-list { grid-template-columns: 1fr; }
  .model-prices__group-list > span { flex-direction: row; }
  .model-prices__search input { font-size: 16px; }
  .admin-tabs { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .review-admin__filters { grid-template-columns: 1fr; }
  .admin-undo { align-items: stretch; }
  .admin-undo button { width: 100%; }
}
.model-prices__group-list > span > span { padding: 0; border: 0; border-radius: 0; color: inherit; background: transparent; font-size: inherit; }
.model-prices__group-list > span > span:first-child { min-width: 0; }
.model-prices__list { grid-template-columns: 1fr; }
.model-prices__group-list > span > span { display: block; justify-content: initial; gap: 0; }
@media (max-width: 980px) { .model-prices__group-list { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px) { .model-prices__group-list { grid-template-columns: 1fr; } }

/* Refined visual system: graphite, warm gold, calm surfaces */
:root {
  --bg: #080b10;
  --bg-soft: #11151b;
  --text: #f4f5f7;
  --muted: #aab3bf;
  --accent: #d9ad68;
  --accent-2: #efc987;
  --accent-3: #d9ad68;
  --line: rgba(255,255,255,.095);
  --line-warm: rgba(75,145,245,.24);
  --shadow: 0 24px 72px rgba(0,0,0,.34);
}
body {
  background: radial-gradient(circle at 78% 6%, rgba(75,145,245,.075), transparent 26%), linear-gradient(180deg,#080b10 0%,#0b0e13 48%,#080b10 100%);
}
body::before { opacity: .48; background-size: 80px 80px; }
.hero__panel,.card,.price-card,.price-range,.model-prices,.quote-flow__content,.quote-flow__checklist,.function-preview__screen,.cost-wizard__result {
  border-color: rgba(255,255,255,.095);
  box-shadow: 0 16px 48px rgba(0,0,0,.22);
}
.hero__panel {
  background: linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018)),radial-gradient(circle at 90% 12%,rgba(75,145,245,.105),transparent 36%);
}
.btn--primary,.cta,.mobile-cta a:first-child,.price-admin-fab {
  color: #17140f;
  background: linear-gradient(135deg,#f0cc8e 0%,#d9ad68 100%);
}
.btn--primary:hover,.mobile-cta a:first-child:hover { filter: brightness(1.05); transform: translateY(-2px); }
.cta { box-shadow: 0 20px 60px rgba(75,145,245,.12); }
.cta .badge { border-color: rgba(23,20,15,.18); }
.card,.price-card,.price-range,.model-prices,.quote-flow__content,.quote-flow__checklist {
  background: linear-gradient(155deg,rgba(255,255,255,.052),rgba(255,255,255,.018));
}
.nav a,.header__phone,.mobile-cta a,.admin-tabs button,.admin-quick-actions button,.backup-row button,.price-editor__add,.price-editor__remove {
  transition: color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.nav a:hover,.header__phone:hover,.admin-tabs button:hover,.admin-quick-actions button:hover,.price-editor__add:hover,.price-editor__remove:hover { transform: translateY(-1px); }
.compatibility-dialog {
  width: min(560px,calc(100vw - 28px));
  max-width: none;
  max-height: min(92dvh,820px);
  padding: 0;
  overflow: auto;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 26px;
  color: var(--text);
  background: #10141b;
  box-shadow: 0 30px 110px rgba(0,0,0,.6);
}
.compatibility-dialog::backdrop { background: rgba(3,5,9,.72); backdrop-filter: blur(7px); }
.compatibility-dialog[open] { animation: dialog-in .24s ease-out both; }
.compatibility-dialog__panel { position: relative; display: grid; gap: 14px; padding: clamp(22px,5vw,34px); }
.compatibility-dialog__panel h2 { max-width: 420px; margin: 2px 40px 0 0; font-size: clamp(26px,5vw,36px); line-height: 1.12; letter-spacing: -.035em; }
.compatibility-dialog__panel > p { margin: 0; color: var(--muted); }
.compatibility-dialog__close { position: absolute; top: 18px; right: 18px; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 50%; color: var(--text); background: rgba(255,255,255,.055); font-size: 26px; cursor: pointer; }
.compatibility-dialog__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.compatibility-dialog__fields label { display: grid; gap: 6px; color: #d8dee7; font-size: 13px; font-weight: 800; }
.compatibility-dialog__fields input,.compatibility-dialog__fields select { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.13); border-radius: 12px; outline: 0; color: var(--text); background: #171c24; font: inherit; }
.compatibility-dialog__fields input:focus,.compatibility-dialog__fields select:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(75,145,245,.12); }
.compatibility-dialog__fields select { grid-column: 1/-1; }
.compatibility-dialog__fields option { color: #fff; background: #171c24; }
.compatibility-dialog__hint { padding: 12px 14px; border-left: 2px solid var(--accent); border-radius: 0 10px 10px 0; background: rgba(75,145,245,.06); font-size: 13px; }
.compatibility-dialog__panel .btn { width: 100%; border: 0; cursor: pointer; }
.price-editor__bulk { display: flex; flex-wrap: wrap; align-items: end; gap: 9px; margin: 12px 0; padding: 12px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.025); }
.price-editor__bulk label { display: grid; flex: 1 1 180px; gap: 6px; color: #cbd4e2; font-size: 12px; font-weight: 800; }
.price-editor__bulk input { min-height: 42px; padding: 9px 11px; border: 1px solid rgba(255,255,255,.13); border-radius: 11px; color: #fff; background: rgba(4,6,12,.58); font: inherit; }
.price-editor__bulk button { min-height: 42px; padding: 0 14px; border: 1px solid var(--line-warm); border-radius: 11px; color: #f2d6aa; background: rgba(75,145,245,.09); font: inherit; font-size: 13px; font-weight: 850; cursor: pointer; }
.price-editor__bulk span { flex: 1 0 100%; color: var(--muted); font-size: 12px; }
.price-editor__model-row { grid-template-columns: auto minmax(0,1fr) minmax(0,1fr) auto; }
.price-editor__model-row .price-editor__select { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 11px; }
.price-editor__select input { width: 18px; min-height: 18px; accent-color: var(--accent); }
.brand-editor__hint { margin: -5px 0 14px; color: var(--muted); font-size: 13px; }
.brand-editor__list { display: grid; gap: 10px; }
.brand-editor__row { display: grid; grid-template-columns: minmax(130px,.7fr) minmax(0,2fr) auto; gap: 10px; align-items: end; padding: 12px; border: 1px solid rgba(255,255,255,.09); border-radius: 16px; background: rgba(255,255,255,.035); }
.brand-editor__row label { display: grid; gap: 7px; color: #aeb9c9; font-size: 13px; font-weight: 850; }
.brand-editor__row input { width: 100%; min-height: 46px; padding: 0 13px; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; color: #fff; background: rgba(255,255,255,.06); font: inherit; font-weight: 750; outline: none; }
.brand-editor__row input:focus { border-color: rgba(75,145,245,.7); box-shadow: 0 0 0 3px rgba(75,145,245,.12); }
.brand-editor__row[hidden] { display: none !important; }
.admin-view { animation: admin-view-in .2s ease-out both; }
.admin-dashboard-grid button:hover,.backup-row:hover { border-color: rgba(75,145,245,.22); background-color: rgba(75,145,245,.035); }
@keyframes dialog-in { from { opacity: 0; transform: translateY(10px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes admin-view-in { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 640px) {
  .compatibility-dialog { width: calc(100vw - 20px); max-height: 90dvh; border-radius: 22px; }
  .compatibility-dialog__fields { grid-template-columns: 1fr; }
  .compatibility-dialog__fields select { grid-column: auto; }
  .price-editor__model-row { grid-template-columns: 1fr; }
  .price-editor__model-row .price-editor__select { justify-self: start; }
  .brand-editor__row { grid-template-columns: 1fr; }
  .price-editor__bulk button { flex: 1 1 100%; }
  .mobile-cta { bottom: max(10px,env(safe-area-inset-bottom)); background: rgba(12,15,20,.94); }
  .mobile-cta a { min-height: 54px; }
  body.show-mobile-cta { padding-bottom: env(safe-area-inset-bottom); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *,*::before,*::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
:where(a,button,input,select,textarea,[tabindex]):focus-visible { outline: 3px solid rgba(240,204,142,.86); outline-offset: 3px; }
@media (max-width: 640px) { .compatibility-open .mobile-cta { display: none !important; } }
/* Remove opaque highlight blocks from small labels and counters. */
.logo__title span { display: inline; color: #d9ad68; -webkit-text-fill-color: #d9ad68; background: none; -webkit-background-clip: border-box; background-clip: border-box; }
.hero__panel-head span { border: 1px solid rgba(75,145,245,.2); color: #b8d7ff; background: rgba(75,145,245,.1); }
.hero__checks strong { display: block; margin-bottom: 18px; padding: 0; color: #b8d7ff; background: transparent; }
.steps b { color: #b8d7ff; background: rgba(75,145,245,.11); border: 1px solid rgba(75,145,245,.18); }
.hero__dashboard-grid span::after { background: linear-gradient(90deg,transparent,rgba(75,145,245,.55),transparent); }
.logo { min-width: 0; }
.header__phone { min-height: 44px; padding: 0 18px; border: 1px solid rgba(75,145,245,.27); border-radius: 14px; color: #17140f; background: linear-gradient(135deg,#f0cc8e,#d9ad68); box-shadow: none; font: inherit; font-size: 13px; font-weight: 900; cursor: pointer; }
.header__phone::before { display: none; }
.header__phone:hover { color: #17140f; border-color: rgba(75,145,245,.45); background: linear-gradient(135deg,#f4d7a2,#e3b978); transform: translateY(-1px); }

/* Cool blue visual theme and stronger mobile actions */
:root {
  --accent: #4b91f5;
  --accent-2: #8fc2ff;
  --accent-3: #8fc2ff;
  --line-warm: rgba(104,164,240,.24);
}
body {
  background: radial-gradient(circle at 78% 6%,rgba(62,126,208,.10),transparent 29%),linear-gradient(180deg,#080b10 0%,#0a0e14 48%,#080b10 100%);
}
.header__phone,.price-admin-fab {
  color: #f7fbff;
  border-color: rgba(111,169,245,.3);
  background: linear-gradient(135deg,#397fe0,#2862bd);
  font-size: 14px;
}
.header__phone:hover { color:#fff; border-color:rgba(143,194,255,.56); background:linear-gradient(135deg,#498feF,#3473cf); }
.btn { font: inherit; font-size: 16px; font-weight: 800; letter-spacing: .005em; }
.btn--primary,.mobile-cta a:first-child {
  color: #fff;
  background: #3478df;
  box-shadow: 0 12px 30px rgba(37,103,201,.26);
}
.btn--primary:hover,.mobile-cta a:first-child:hover { color:#fff; background:#4389ee; box-shadow:0 16px 34px rgba(37,103,201,.34); }
.btn--secondary { border-color:rgba(122,174,239,.28); color:#f1f6ff; background:rgba(42,78,126,.18); }
.btn--secondary:hover { border-color:rgba(143,194,255,.5); background:rgba(42,90,151,.25); }
.cta { color:#f4f8ff; background:linear-gradient(135deg,#172a43,#1e416a); box-shadow:0 20px 60px rgba(12,35,65,.28); }
.cta h2,.cta p { color:#f4f8ff; }
.cta p { opacity:.82; }
.cta .badge--dark { border-color:rgba(255,255,255,.18); color:#dcecff; background:rgba(255,255,255,.08); }
.hero__panel-head span { color:#b8d7ff; border-color:rgba(111,169,245,.2); background:rgba(52,120,223,.11); }
.hero__checks strong,.stats strong,.model-prices__group h3,.hero__info span { color:#9bc5ff; }
.steps b { color:#b8d7ff; border-color:rgba(111,169,245,.2); background:rgba(52,120,223,.12); }
.hero__dashboard-grid span::after { background:linear-gradient(90deg,transparent,rgba(111,169,245,.55),transparent); }
.hero__dashboard-grid span { background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025)),radial-gradient(circle at 50% 0%,rgba(62,126,208,.1),transparent 60%); }
.hero__features { gap:10px; }
.hero__features span { display:flex; align-items:center; justify-content:center; min-height:54px; padding:10px 12px; border-color:rgba(255,255,255,.105); border-radius:15px; text-align:center; line-height:1.3; }
:where(a,button,input,select,textarea,[tabindex]):focus-visible { outline-color:rgba(130,185,255,.95); }
.mobile-cta { border-color:rgba(255,255,255,.13); background:rgba(12,16,23,.94); }
.mobile-cta span { color:#a9ceff; }
.mobile-cta a:first-child span { color:#fff; }
.admin-dirty { color:#ffbd83; }
.admin-tabs button[aria-selected="true"],.review-admin__filters button[aria-selected="true"] { border-color:rgba(111,169,245,.44); color:#b8d7ff; background:rgba(52,120,223,.14); }
.admin-tabs button span,.review-admin__filters button span { color:#fff; background:#397fe0; }
.admin-undo button,.price-editor__bulk button { border-color:rgba(111,169,245,.34); color:#c5deff; background:rgba(52,120,223,.12); }
@media (max-width: 640px) {
  .hero__actions { gap:11px; }
  .hero__actions .btn { min-height:60px; padding:0 20px; border-radius:16px; font-size:18px; }
  .hero__features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero__features span { min-height:58px; padding:10px; font-size:13px; }
  .mobile-cta a { min-height:58px; }
  .mobile-cta b { font-size:12px; }
}
