/* =====================================================================
   Hustlify — редизайн главной (Figma node 413:2), v2
   1 px макета (ширина фрейма 6085) = var(--u) = clientWidth / 6085.
   ВСЕ координаты ниже = координаты Figma минус верх своей секции:
     hero  : 0     … 3047   (карточка: x119 y117 w5847 h2813)
     calc  : 3047  … 6368
     about : 6368  … 8574   (заголовок выезжает вверх на 166)
     партн.: 8574  … 9168
     новости: 9168 … 12075
   Десктоп (>=861px) — 1:1 по макету. Мобильная версия — вёрстка потоком.
   ===================================================================== */
:root{ --u: calc(100vw / 6085); --rd-blue:#2f6bff; }

/* ---------- общие ---------- */
.rd-hero, .rd-calc, .rd-about, .rd-partners, .rd-news{ position:relative; }
.rd-hero img, .rd-calc img, .rd-about img, .rd-news img{ max-width:none; }
.rd-hero{ background:#fff; padding:10px; }
.rd-calc{ background:#fff; color:#000; padding:36px 16px 44px; overflow-x:clip; z-index:0; }
.rd-about, .rd-partners, .rd-news{ background:#000; color:#fff; z-index:1; }
.rd-about{ padding:40px 0 20px; }
.rd-news{ padding:30px 0 60px; }
.rd-h2{ font-family:'Unbounded',sans-serif; font-weight:600; line-height:.91; letter-spacing:-.05em; font-size:clamp(24px,7vw,40px); margin:0 0 20px; padding:0 16px; position:relative; z-index:2; }
.rd-calc .rd-h2{ color:#000; padding:0; }
.rd-br{ display:none; }

/* ---------- HERO (мобильная база) ---------- */
.rd-card{ position:relative; background:#000; border-radius:28px; overflow:hidden; isolation:isolate; color:#fff; padding:16px 18px 24px; }
.rd-card-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; pointer-events:none; }
.rd-card > *:not(.rd-card-bg){ position:relative; }
.rd-nav-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.rd-logo img{ width:44px; height:auto; display:block; }
.rd-nav-links, .rd-contact-btn, .rd-cube, .rd-globe{ display:none; }
.rd-nav-tools{ display:flex; align-items:center; gap:10px; }
.rd-ico{ position:relative; width:30px; height:34px; background:none; border:0; padding:0; cursor:pointer; color:#fff; }
.rd-ico img{ position:absolute; left:-8.43%; top:-8.74%; width:116.86%; height:117.48%; pointer-events:none; }
#cartBtn img{ width:119.01%; }
.rd-ico .badge{ position:absolute; top:-6px; right:-8px; }
.rd-title{ font-family:'Unbounded',sans-serif; font-weight:600; font-size:clamp(28px,8.6vw,44px); line-height:.91; letter-spacing:-.05em; margin:28px 0 14px; color:#fff; }
.rd-title span{ display:block; white-space:nowrap; }
.rd-title .l3 u{ text-decoration:underline; text-underline-position:from-font; text-decoration-skip-ink:none; }
.rd-sub{ font-family:'Montserrat',sans-serif; font-weight:400; font-size:14px; line-height:1.4; color:rgba(255,255,255,.8); max-width:420px; margin:0 0 18px; }
.rd-cta{ display:flex; gap:10px; }
.rd-btn{ flex:1; display:flex; align-items:center; justify-content:center; height:48px; border-radius:200px; font-family:'Unbounded',sans-serif; font-weight:500; font-size:14px; line-height:.987; letter-spacing:0; color:#fff; border:2px solid #fff; background:rgba(217,217,217,.2); text-decoration:none; }
.rd-btn.blue{ background:var(--rd-blue); border-color:var(--rd-blue); }
.rd-proof{ display:flex; align-items:center; gap:14px; margin-top:18px; }
.rd-avatars{ position:relative; width:130px; height:50px; overflow:hidden; mix-blend-mode:luminosity; flex:none; }
.rd-avatars img{ position:absolute; height:229.94%; width:346.33%; left:-24.05%; top:-53.11%; }
.rd-stat b{ display:block; font-family:'Unbounded',sans-serif; font-weight:600; font-size:24px; letter-spacing:-.05em; line-height:.91; }
.rd-stat span{ font-family:'Montserrat',sans-serif; font-weight:600; font-size:12px; color:rgba(255,255,255,.8); }
.rd-3d{ display:block; width:100%; height:auto; mix-blend-mode:lighten; margin-top:8px; pointer-events:none; }

/* ---------- КАЛЬКУЛЯТОР (мобильная база) ---------- */
.rd-glow{ display:none; }
.rd-panel{ position:relative; border-radius:28px; color:#fff; padding:22px 20px; margin-top:14px; overflow:hidden; }
.rd-panel.big{ background:linear-gradient(40.54deg,#000 50.463%,#2f6bff 92.222%); }
.rd-panel.invest{ isolation:isolate; }
.rd-panel.m-a, .rd-panel.m-b{ background:linear-gradient(180deg,#2f6bff,#1c4099); }
.rd-panel.m-c{ background:linear-gradient(180deg,#001b5f,#000 60.955%); }
.rd-panel.m-d{ background:rgba(0,0,0,.57); }
.rd-metrics{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; }
.rd-metrics .rd-panel{ margin:0; padding:16px 14px; border-radius:22px; }
.rd-ph{ font-family:'Unbounded',sans-serif; font-weight:600; letter-spacing:-.05em; line-height:.91; font-size:clamp(20px,6vw,28px); margin:0; display:block; white-space:nowrap; }
.rd-pl{ font-family:'Montserrat',sans-serif; font-weight:600; font-size:11px; color:rgba(255,255,255,.8); display:block; margin-top:6px; }
/* число бюджета: белый текст + режим «Overlay» (как в Figma) → синее свечение на градиенте */
.rd-budget-num{ font-family:'Unbounded',sans-serif; font-weight:600; letter-spacing:-.05em; font-size:clamp(28px,9vw,42px); display:block; margin:6px 0; color:#fff; mix-blend-mode:overlay; text-align:right; white-space:nowrap; }
.rd-track{ position:relative; height:12px; border-radius:200px; margin:22px 0 10px; --pct:8.16%; background:linear-gradient(90deg,#fff var(--pct),var(--rd-blue) var(--pct)); }
.rd-track input{ -webkit-appearance:none; appearance:none; position:absolute; left:0; top:50%; width:100%; height:40px; margin:-20px 0 0; background:transparent; cursor:pointer; opacity:.001; z-index:3; }
.rd-track input::-webkit-slider-thumb{ -webkit-appearance:none; width:40px; height:40px; }
.rd-track input::-moz-range-thumb{ width:40px; height:40px; border:0; }
.rd-thumb{ position:absolute; left:var(--pct); top:50%; width:28px; height:28px; transform:translate(-50%,-50%); pointer-events:none; z-index:2; }
.rd-thumb img{ position:absolute; left:-117.74%; top:-117.74%; width:335.5%; height:335.5%; }
.rd-ticks{ display:flex; justify-content:space-between; font-family:'Montserrat',sans-serif; font-size:11px; color:rgba(255,255,255,.8); }
.rd-pills{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px; }
.rd-calc .rd-pill{ display:flex; align-items:center; justify-content:center; text-align:center; padding:12px 6px; border-radius:14px; border:1px solid #fff; background:rgba(255,255,255,.2); color:#fff; font-family:'Montserrat',sans-serif; font-weight:600; font-size:12px; box-shadow:none; cursor:pointer; transition:background .2s; }
.rd-calc .rd-pill:hover{ background:rgba(255,255,255,.3); }
.rd-calc .rd-pill.active{ background:rgba(255,255,255,.42); box-shadow:none; }
.rd-cta-black{ display:flex; align-items:center; justify-content:center; width:100%; height:64px; margin-top:14px; border:0; border-radius:200px; background:#2f6bff; color:#fff; font-family:'Unbounded',sans-serif; font-weight:600; font-size:15px; letter-spacing:-.05em; box-shadow:0 4px 44.3px rgba(0,0,0,.25); cursor:pointer; }

/* ---------- ПРОЕКТЫ / ПАРТНЁРЫ / НОВОСТИ — тонкая подстройка под макет ---------- */
.rd-about .proj-nav, .rd-news .news-nav{ background:rgba(255,255,255,.22); color:#fff; border:0; box-shadow:none; }
.rd-about .proj-nav:hover, .rd-news .news-nav:hover{ background:rgba(255,255,255,.34); }
.rd-about .flip-front-bg{ display:none; }
.rd-about .flip-front{ border:1px solid rgba(255,255,255,.12); background-color:#020b07; }
.rd-about .projects-track .flip-card:nth-child(3n+1) .flip-front{ background-image:radial-gradient(ellipse 38% 34% at 36% 32%,rgba(130,160,140,.55),transparent 72%),radial-gradient(ellipse 75% 65% at 92% 0%,#0b5a2c,transparent 72%),radial-gradient(ellipse 40% 30% at 70% 85%,rgba(30,120,70,.45),transparent 72%); }
.rd-about .projects-track .flip-card:nth-child(3n+2) .flip-front{ background-color:#020d10; background-image:radial-gradient(ellipse 38% 34% at 36% 32%,rgba(120,160,170,.5),transparent 72%),radial-gradient(ellipse 75% 65% at 92% 0%,#0a5566,transparent 72%),radial-gradient(ellipse 40% 30% at 70% 85%,rgba(20,100,120,.42),transparent 72%); }
.rd-about .projects-track .flip-card:nth-child(3n) .flip-front{ background-color:#05020f; background-image:radial-gradient(ellipse 38% 34% at 36% 32%,rgba(175,135,205,.5),transparent 72%),radial-gradient(ellipse 75% 65% at 92% 0%,#1d1a78,transparent 72%),radial-gradient(ellipse 40% 30% at 70% 85%,rgba(110,50,160,.42),transparent 72%); }
.rd-about .flip-front-overlay h3{ font-weight:800; line-height:1.02; letter-spacing:0; color:#fff; }
.rd-about .flip-open-btn{ font-family:'Inter',sans-serif; font-weight:500; color:#000; background:#fff; }
.rd-partners .partner-item{ color:rgba(255,255,255,.5); }
.rd-partners .partner-name{ font-family:'Inter',sans-serif; font-weight:500; }
.rd-news .news-card{ background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.14); }
.rd-news .news-card h3{ font-weight:800; letter-spacing:0; }
.rd-news .news-card .stamp{ color:#7d7d84; font-family:'Inter',sans-serif; }
.rd-news .news-card .headline{ font-family:'Inter',sans-serif; font-weight:700; color:#fff; }
.rd-news .news-card .body-txt{ font-family:'Inter',sans-serif; color:rgba(255,255,255,.58); }
.rd-news .news-tag{ background:rgba(255,255,255,.07); color:rgba(255,255,255,.65); font-family:'Inter',sans-serif; }
.rd-news .news-tag .go{ background:rgba(255,255,255,.14); color:rgba(255,255,255,.7); }

/* =====================================================================
   ДЕСКТОП 1:1
   ===================================================================== */
@media (min-width:861px){
  .rd-br{ display:inline; }

  /* --- HERO: 0…3047, карточка x119 y117 w5847 h2813 --- */
  .rd-hero{ height:calc(3047 * var(--u)); padding:0; }
  .rd-card{ position:absolute; left:calc(119 * var(--u)); top:calc(117 * var(--u)); width:calc(5847 * var(--u)); height:calc(2813 * var(--u)); border-radius:calc(200 * var(--u)); padding:0; }
  .rd-card > *:not(.rd-card-bg){ position:absolute; }
  .rd-card-bg{ object-fit:fill; }
  .rd-3d{ left:calc(1956 * var(--u)); top:calc(597 * var(--u)); width:calc(3891 * var(--u)); height:calc(2592 * var(--u)); margin:0; border-bottom-right-radius:calc(213 * var(--u)); object-fit:cover; z-index:1; }
  .rd-nav-row, .rd-nav-tools, .rd-proof, .rd-cta{ display:contents; }
  .rd-card > .rd-nav-row > *, .rd-card .rd-nav-tools > *, .rd-card .rd-cta > *, .rd-card .rd-proof > *{ position:absolute; }
  .rd-card > *, .rd-nav-row > *, .rd-nav-tools > *, .rd-cta > *, .rd-proof > *{ z-index:2; }

  .rd-logo{ left:calc(239 * var(--u)); top:calc(159 * var(--u)); width:calc(127 * var(--u)); height:calc(118.339 * var(--u)); }
  .rd-logo img{ width:100%; height:100%; }
  .rd-nav-links{ display:block; left:0; top:0; width:100%; height:0; }
  .rd-nav-links a{ position:absolute; top:calc(179 * var(--u)); font-family:'Montserrat',sans-serif; font-weight:600; font-size:calc(64 * var(--u)); line-height:.987; letter-spacing:calc(-1.92 * var(--u)); color:rgba(255,255,255,.9); white-space:nowrap; text-decoration:none; transition:color .2s; }
  .rd-nav-links a:hover{ color:#fff; }
  .rd-nav-links a:nth-child(1){ left:calc(569 * var(--u)); }
  .rd-nav-links a:nth-child(2){ left:calc(1188 * var(--u)); }
  .rd-nav-links a:nth-child(3){ left:calc(1650 * var(--u)); }
  .rd-nav-links a:nth-child(4){ left:calc(2037 * var(--u)); }
  .rd-nav-links a:nth-child(5){ left:calc(2377 * var(--u)); }

  /* иконки: рамка = векторы Figma (inset 2.49% / 74.12% и 77.49%), картинка вынесена на ±8.4% из-за штриха */
  .rd-ico{ top:calc(183.7 * var(--u)); width:calc(88.8 * var(--u)); height:calc(85.7 * var(--u)); }
  .rd-card #searchBtn{ left:calc(4391 * var(--u)); }
  .rd-card #cartBtn{ left:calc(4596 * var(--u)); }
  .rd-ico .badge{ width:calc(60 * var(--u)); height:calc(60 * var(--u)); font-size:calc(34 * var(--u)); top:calc(-30 * var(--u)); right:calc(-44 * var(--u)); }
  #wishBtn, #mobileMenuBtn{ display:none; }

  .rd-contact-btn{ display:flex; align-items:center; justify-content:center; left:calc(4859 * var(--u)); top:calc(123 * var(--u)); width:calc(748 * var(--u)); height:calc(207 * var(--u)); border-radius:calc(200 * var(--u)); border:2px solid #fff; background:rgba(217,217,217,.2); font-family:'Unbounded',sans-serif; font-weight:500; font-size:calc(64 * var(--u)); line-height:.987; letter-spacing:0; color:#fff; text-decoration:none; transition:background .2s; }
  .rd-contact-btn:hover{ background:rgba(217,217,217,.34); }

  .rd-title{ left:calc(215 * var(--u)); top:calc(707 * var(--u)); margin:0; font-size:calc(300 * var(--u)); letter-spacing:calc(-15 * var(--u)); white-space:nowrap; }
  .rd-title .l3{ padding-left:calc(430 * var(--u)); }
  .rd-sub{ left:calc(215 * var(--u)); top:calc(1643 * var(--u)); width:calc(2495 * var(--u)); max-width:none; margin:0; font-size:calc(96 * var(--u)); line-height:.987; }
  .rd-btn{ top:calc(1950 * var(--u)); height:calc(261 * var(--u)); font-size:calc(96 * var(--u)); line-height:.987; border-width:2px; flex:none; transition:transform .2s, background .2s; }
  .rd-btn:hover{ transform:translateY(-3px); }
  .rd-btn.blue{ left:calc(215 * var(--u)); width:calc(955 * var(--u)); }
  .rd-btn.ghost{ left:calc(1270 * var(--u)); width:calc(1078 * var(--u)); }

  .rd-avatars{ left:calc(215 * var(--u)); top:calc(2366 * var(--u)); width:calc(661 * var(--u)); height:calc(257 * var(--u)); }
  /* 500+ : x1087 y2525 ; подпись y2641 (смещение от 500+ = 116, не 233) */
  .rd-stat{ position:absolute; left:calc(968 * var(--u)); top:calc(2408 * var(--u)); }
  .rd-stat b{ position:static; font-size:calc(128 * var(--u)); letter-spacing:calc(-6.4 * var(--u)); line-height:.91; }
  .rd-stat span{ position:absolute; left:0; top:calc(116 * var(--u)); white-space:nowrap; font-size:calc(64 * var(--u)); letter-spacing:calc(-3.2 * var(--u)); line-height:.91; }
  .rd-proof{ display:block; left:0; top:0; width:100%; height:0; }
  .rd-globe, .rd-cube{ display:block; overflow:hidden; }
  .rd-globe{ left:calc(264 * var(--u)); top:calc(1307 * var(--u)); width:calc(268 * var(--u)); height:calc(268 * var(--u)); }
  .rd-globe img{ position:absolute; left:-23%; top:-23%; width:146%; height:146%; }
  .rd-cube{ left:calc(2775 * var(--u)); top:calc(686 * var(--u)); width:calc(388 * var(--u)); height:calc(388 * var(--u)); mix-blend-mode:luminosity; }
  .rd-cube img{ width:100%; height:100%; object-fit:cover; display:block; }

  /* --- КАЛЬКУЛЯТОР: секция 3047…6368 (высота 3321) --- */
  .rd-calc{ height:calc(3321 * var(--u)); padding:0; }
  .rd-glow{ display:block; position:absolute; pointer-events:none; }
  .rd-glow img{ position:absolute; }
  .rd-glow.g1{ left:calc(-218 * var(--u)); top:calc(638 * var(--u)); width:calc(6637 * var(--u)); height:calc(2943 * var(--u)); }
  .rd-glow.g1 img{ left:-7.53%; top:-16.99%; width:115.06%; height:133.98%; }
  .rd-glow.g2{ left:calc(-306 * var(--u)); top:calc(1194 * var(--u)); width:calc(6982 * var(--u)); height:calc(2753 * var(--u)); }
  .rd-glow.g2 img{ left:-10.03%; top:-25.43%; width:120.06%; height:150.86%; }
  .rd-glow.g3{ left:calc(-762 * var(--u)); top:calc(2570 * var(--u)); width:calc(7609 * var(--u)); height:calc(949 * var(--u)); filter:blur(50px); }
  .rd-glow.g3 img{ inset:0; width:100%; height:100%; object-fit:cover; }
  .rd-calc .rd-h2{ position:absolute; left:calc(334 * var(--u)); top:calc(327 * var(--u)); width:calc(4096 * var(--u)); margin:0; font-size:calc(200 * var(--u)); letter-spacing:calc(-10 * var(--u)); }

  .rd-panel{ position:absolute; margin:0; padding:0; overflow:visible; }
  .rd-panel.big{ left:calc(334 * var(--u)); width:calc(2975 * var(--u)); height:calc(725 * var(--u)); border-radius:calc(100 * var(--u)); }
  .rd-panel.invest{ top:calc(844 * var(--u)); }
  .rd-panel.cat{ top:calc(1626 * var(--u)); }
  .rd-metrics .rd-panel.m-a, .rd-metrics .rd-panel.m-b, .rd-metrics .rd-panel.m-c, .rd-metrics .rd-panel.m-d{ width:calc(1248 * var(--u)); height:calc(534 * var(--u)); border-radius:calc(100 * var(--u)); padding:0; }
  .rd-panel.m-a{ left:calc(3397 * var(--u)); top:calc(844 * var(--u)); }
  .rd-panel.m-b{ left:calc(4679 * var(--u)); top:calc(844 * var(--u)); }
  .rd-panel.m-c{ left:calc(3397 * var(--u)); top:calc(1416 * var(--u)); }
  .rd-panel.m-d{ left:calc(4679 * var(--u)); top:calc(1416 * var(--u)); }
  .rd-metrics{ display:block; margin:0; }
  .rd-panel .rd-ph{ position:absolute; font-size:calc(128 * var(--u)); letter-spacing:calc(-6.4 * var(--u)); line-height:.91; }
  .rd-panel .rd-pl{ position:absolute; margin:0; white-space:nowrap; font-size:calc(64 * var(--u)); letter-spacing:calc(-3.2 * var(--u)); line-height:.91; }
  .m-a .rd-ph, .m-c .rd-ph{ left:calc(89 * var(--u)); }
  .m-b .rd-ph, .m-d .rd-ph{ left:calc(104 * var(--u)); }
  .m-a .rd-ph, .m-b .rd-ph{ top:calc(180 * var(--u)); }
  .m-c .rd-ph, .m-d .rd-ph{ top:calc(179 * var(--u)); }
  .m-a .rd-pl, .m-c .rd-pl{ left:calc(89 * var(--u)); }
  .m-b .rd-pl, .m-d .rd-pl{ left:calc(104 * var(--u)); }
  .rd-panel .rd-pl{ top:calc(296 * var(--u)); }

  .invest .rd-ph{ left:calc(96 * var(--u)); top:calc(150 * var(--u)); }
  /* число бюджета прижато ПРАВЫМ краем (x≈3187 макета) → при >99.000 растёт влево, а не вправо */
  .rd-budget-num{ position:absolute; left:auto; right:calc(122 * var(--u)); top:calc(150 * var(--u)); margin:0; font-size:calc(200 * var(--u)); letter-spacing:calc(-10 * var(--u)); line-height:.91; }
  .invest .rd-pl.lbl{ left:calc(96 * var(--u)); top:calc(300 * var(--u)); font-family:'Montserrat',sans-serif; font-weight:400; letter-spacing:0; font-size:calc(64 * var(--u)); line-height:.987; }
  .rd-track{ position:absolute; left:calc(96 * var(--u)); top:calc(488 * var(--u)); width:calc(2755 * var(--u)); height:calc(31 * var(--u)); margin:0; }
  .rd-track input{ height:calc(93 * var(--u)); margin-top:calc(-46.5 * var(--u)); }
  .rd-thumb{ width:calc(93 * var(--u)); height:calc(93 * var(--u)); }
  .rd-ticks{ position:static; display:block; }
  .rd-ticks span{ position:absolute; top:calc(542 * var(--u)); font-family:'Montserrat',sans-serif; font-weight:400; font-size:calc(48 * var(--u)); line-height:.987; }
  .rd-ticks span:first-child{ left:calc(96 * var(--u)); }
  .rd-ticks span:last-child{ left:calc(2656 * var(--u)); top:calc(548 * var(--u)); }

  .cat .rd-ph{ left:calc(96 * var(--u)); top:calc(150 * var(--u)); }
  .rd-pills{ display:block; margin:0; }
  .rd-calc .rd-pill{ position:absolute; width:calc(1224 * var(--u)); height:calc(127 * var(--u)); padding:0; border-radius:calc(100 * var(--u)); font-size:calc(48 * var(--u)); line-height:.987; }
  .rd-pill:nth-child(1){ left:calc(96 * var(--u)); top:calc(339 * var(--u)); }
  .rd-pill:nth-child(2){ left:calc(1349 * var(--u)); top:calc(339 * var(--u)); }
  .rd-pill:nth-child(3){ left:calc(96 * var(--u)); top:calc(500 * var(--u)); }
  .rd-pill:nth-child(4){ left:calc(1349 * var(--u)); top:calc(500 * var(--u)); }
  .rd-cta-black{ position:absolute; left:calc(3392 * var(--u)); top:calc(2005 * var(--u)); width:calc(2574 * var(--u)); height:calc(346 * var(--u)); margin:0; border-radius:calc(200 * var(--u)); font-size:calc(96 * var(--u)); letter-spacing:calc(-4.8 * var(--u)); line-height:.91; transition:transform .2s; }
  .rd-cta-black:hover{ transform:translateY(-3px); }

  /* --- ПРОЕКТЫ: 6368…8574 --- */
  .rd-about{ height:calc(2206 * var(--u)); padding:0; }
  .rd-about .rd-h2{ position:absolute; left:calc(334 * var(--u)); top:calc(-166 * var(--u)); width:calc(4096 * var(--u)); margin:0; padding:0; font-size:calc(200 * var(--u)); letter-spacing:calc(-10 * var(--u)); }
  .rd-about .projects-wrap{ position:absolute; left:calc(334 * var(--u)); top:calc(323 * var(--u)); width:calc(5593 * var(--u)); height:calc(2086 * var(--u)); padding:0; margin:0; }
  .rd-about .projects-track{ height:100%; gap:calc(84 * var(--u)); padding:calc(204 * var(--u)) calc(248 * var(--u)) 0 calc(248 * var(--u)); align-items:flex-start; scroll-padding-left:calc(248 * var(--u)); }
  .rd-about .projects-track .flip-card{ flex:0 0 calc(1574 * var(--u)); width:calc(1574 * var(--u)); min-width:calc(1574 * var(--u)); height:calc(1574 * var(--u)); }
  .rd-about .flip-face{ border-radius:calc(150 * var(--u)); }
  .rd-about .flip-front-overlay h3{ font-size:calc(100 * var(--u)); margin-bottom:calc(70 * var(--u)); }
  .rd-about .flip-open-btn{ height:calc(168 * var(--u)); padding:0 calc(132 * var(--u)); border-radius:calc(200 * var(--u)); font-size:calc(62 * var(--u)); }
  .rd-about .flip-back{ padding:calc(110 * var(--u)) calc(100 * var(--u)); }
  .rd-about .proj-nav{ width:calc(208 * var(--u)); height:calc(208 * var(--u)); top:calc(901 * var(--u)); margin-top:0; transform:none; }
  .rd-about .proj-nav:hover, .rd-about .proj-nav:active{ transform:scale(1.06); }
  .rd-about .proj-nav.prev{ left:0; }
  .rd-about .proj-nav.next{ right:0; left:auto; }
  .rd-about .proj-nav svg{ width:calc(72 * var(--u)); height:calc(72 * var(--u)); }

  /* --- ПАРТНЁРЫ: 8574…9168 --- */
  .rd-partners{ height:calc(594 * var(--u)); padding:0; }
  .rd-partners .partners-marquee{ height:100%; display:flex; align-items:center; }
  .rd-partners .partners-track{ gap:calc(220 * var(--u)); }
  .rd-partners .partner-logo{ width:calc(126 * var(--u)); height:calc(126 * var(--u)); min-width:calc(126 * var(--u)); font-size:calc(20 * var(--u)); }
  .rd-partners .partner-name{ font-size:calc(100 * var(--u)); }

  /* --- НОВОСТИ: 9168…12075 --- */
  .rd-news{ height:calc(2907 * var(--u)); padding:0; }
  .rd-news .rd-h2{ position:absolute; left:calc(334 * var(--u)); top:calc(478 * var(--u)); width:calc(4096 * var(--u)); margin:0; padding:0; font-size:calc(200 * var(--u)); letter-spacing:calc(-10 * var(--u)); }
  .rd-news .news-wrap{ position:static; padding:0; }
  .rd-news .news-track{ position:absolute; left:calc(746 * var(--u)); top:calc(1145 * var(--u)); width:calc(4708 * var(--u)); gap:calc(98 * var(--u)); padding:0; }
  .rd-news .news-card{ flex:0 0 calc(1476 * var(--u)); min-width:calc(1476 * var(--u)); width:calc(1476 * var(--u)); padding:calc(114 * var(--u)) calc(121 * var(--u)) calc(130 * var(--u)); border-radius:calc(160 * var(--u)); }
  .rd-news .news-card:first-child{ flex-basis:calc(3134 * var(--u)); min-width:calc(3134 * var(--u)); width:calc(3134 * var(--u)); }
  .rd-news .news-tag{ height:calc(188 * var(--u)); padding:0 calc(40 * var(--u)) 0 calc(60 * var(--u)); border-radius:calc(200 * var(--u)); font-size:calc(50 * var(--u)); margin-bottom:calc(100 * var(--u)); }
  .rd-news .news-tag .go{ width:calc(114 * var(--u)); height:calc(114 * var(--u)); }
  .rd-news .news-tag .go svg{ width:calc(50 * var(--u)); height:calc(50 * var(--u)); }
  .rd-news .news-card h3{ font-size:calc(104 * var(--u)); line-height:1.05; margin:0; }
  .rd-news .news-card .stamp{ font-size:calc(46 * var(--u)); margin:calc(10 * var(--u)) 0 calc(100 * var(--u)); }
  .rd-news .news-card .headline{ font-size:calc(56 * var(--u)); margin:0 0 calc(40 * var(--u)); }
  .rd-news .news-card .body-txt{ font-size:calc(52 * var(--u)); line-height:1.8; }
  .rd-news .news-nav{ top:calc(1651 * var(--u)); width:calc(223 * var(--u)); height:calc(223 * var(--u)); margin:0; transform:none; }
  .rd-news .news-nav.next{ top:calc(1680 * var(--u)); }
  .rd-news .news-nav:hover{ transform:scale(1.06); }
  .rd-news .news-nav.prev{ left:calc(334 * var(--u)); }
  .rd-news .news-nav.next{ left:calc(5704 * var(--u)); right:auto; }
  .rd-news .news-nav svg{ width:calc(78 * var(--u)); height:calc(78 * var(--u)); }
}
@media (max-width:860px){
  .rd-hero #wishBtn{ display:none; }
  .rd-hero #mobileMenuBtn{ display:flex; width:34px; height:34px; align-items:center; justify-content:center; background:none; border:0; color:#fff; }
}

/* =====================================================================
   ЧАСТЬ 2 (Figma node 424:142): кейсы → контакты
   ===================================================================== */
.rd2{
  --ml:calc(334*var(--u)); --mr:calc(158*var(--u));
  position:relative; z-index:1; background:#fff; color:#000;
  padding:calc(761*var(--u)) 0; overflow-x:clip; font-family:'Inter',sans-serif;
}
.rd2 *{ box-sizing:border-box; }
.rd2 img{ max-width:none; }
.rd2-w{ margin-left:var(--ml); margin-right:var(--mr); }
.rd2-sec{ position:relative; }

.rd2-h2{ margin:0; font:600 calc(200*var(--u))/.92 'Unbounded',sans-serif; letter-spacing:calc(-10*var(--u)); color:#000; }
.rd2-sub{ margin:0; font:600 calc(96*var(--u))/.92 'Montserrat',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:rgba(0,0,0,.8); }
.rd2-head{ position:relative; }
.rd2-head .rd2-h2{ position:absolute; left:0; top:0; white-space:nowrap; }
.rd2-head .rd2-sub{ position:absolute; left:0; white-space:nowrap; }
.rd2-head--cases{ height:calc(474*var(--u)); }   .rd2-head--cases .rd2-sub{ top:calc(204*var(--u)); }
.rd2-head--catalog{ height:calc(428*var(--u)); } .rd2-head--catalog .rd2-sub{ top:calc(204*var(--u)); }
.rd2-head--why{ height:calc(354*var(--u)); }
.rd2-head--proc{ height:calc(558*var(--u)); }    .rd2-head--proc .rd2-h2{ line-height:1.2; } .rd2-head--proc .rd2-sub{ top:calc(215*var(--u)); line-height:1.2; }
.rd2-head--rev{ height:calc(446*var(--u)); }     .rd2-head--rev .rd2-h2{ line-height:1.2; }  .rd2-head--rev .rd2-sub{ top:calc(229*var(--u)); line-height:1.2; }

.rd2-btn-blue{
  position:absolute; right:0; display:flex; align-items:center; justify-content:center;
  background:#2f6bff; color:#fff; border-radius:calc(200*var(--u)); text-decoration:none;
  font:600 calc(96*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-4.8*var(--u)); white-space:nowrap;
  transition:transform .25s, filter .25s;
}
.rd2-btn-blue:hover{ transform:translateY(calc(-4*var(--u))); filter:brightness(1.08); }
.rd2-closed{ top:calc(18*var(--u)); width:calc(1589*var(--u)); height:calc(246*var(--u)); }
.rd2-allrev{ top:0; width:calc(1209*var(--u)); height:calc(321*var(--u)); }

/* вращённые 3D-картинки (маска = скруглённая карточка с overflow:hidden) */
.rd2-rot{ position:absolute; width:calc(var(--s)*var(--u)); height:calc(var(--s)*var(--u)); transform:rotate(var(--r,0deg)) scaleY(var(--fy,1)); overflow:hidden; border-radius:var(--br,0); pointer-events:none; }
.rd2-rot img, .rd2-img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.16,1,.3,1); }
.rd2-rot--crop img{ inset:auto; left:-23%; top:-23%; width:146%; height:146%; }
.rd2-img{ position:absolute; pointer-events:none; overflow:hidden; }

/* ---------------------------- КЕЙСЫ ---------------------------- */
.rd2-cases{ display:grid; grid-template-columns:1fr 1fr; column-gap:calc(155*var(--u)); }
.rd2-case{ position:relative; overflow:hidden; border-radius:calc(200*var(--u)); color:#fff; cursor:pointer; isolation:isolate; }
.rd2-case:hover .rd2-rot img{ transform:scale(1.08); }
.rd2-case-big{ aspect-ratio:1/1; background:linear-gradient(-46.75deg,#fff 0%,#2f6bff 45.242%); }
.rd2-case-side{ display:grid; grid-template-rows:repeat(3,1fr); row-gap:calc(95*var(--u)); }
.rd2-case-sm{ background:#000; border:calc(2*var(--u)) solid #fff; }
.rd2-case > *:not(.rd2-rot){ position:absolute; z-index:2; }

.cb-title{ left:calc(146*var(--u)); top:calc(247*var(--u)); display:flex; align-items:center; gap:calc(13*var(--u)); }
.cb-ico{ position:static !important; width:calc(182*var(--u)); height:calc(182*var(--u)); object-fit:cover; display:block; }
.cb-title h3{ margin:0; font:600 calc(200*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-10*var(--u)); color:#fff; white-space:nowrap; }
.cb-desc{ left:calc(146*var(--u)); top:calc(484*var(--u)); width:calc(1129*var(--u)); margin:0; font:600 calc(64*var(--u))/.91 'Montserrat',sans-serif; letter-spacing:calc(-3.2*var(--u)); color:rgba(255,255,255,.8); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.cb-price{ left:calc(146*var(--u)); top:calc(740*var(--u)); display:flex; align-items:baseline; gap:calc(60*var(--u)); }
.cb-price b{ font:600 calc(96*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:#fff; white-space:nowrap; }
.cb-price s{ font:600 calc(64*var(--u))/.91 'Montserrat',sans-serif; letter-spacing:calc(-3.2*var(--u)); color:rgba(255,255,255,.8); white-space:nowrap; }
.cb-btn{ left:calc(146*var(--u)); bottom:calc(201*var(--u)); width:calc(754*var(--u)); height:calc(152*var(--u)); border-radius:calc(200*var(--u)); border:calc(3*var(--u)) solid #fff; background:rgba(255,255,255,.1); color:#fff; display:flex; align-items:center; justify-content:center; gap:calc(45*var(--u)); font:600 calc(64*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-3.2*var(--u)); cursor:pointer; transition:background .2s, transform .2s; }
.cb-btn i{ font-style:normal; font-weight:300; }
.cb-btn:hover{ background:rgba(255,255,255,.22); transform:translateY(calc(-3*var(--u))); }

.cs-body{ left:calc(911*var(--u)); top:50%; transform:translateY(-50%); width:calc(1450*var(--u)); max-width:calc(100% - calc(1190*var(--u))); }
.cs-body h3{ margin:0; font:600 calc(150*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-7.5*var(--u)); color:#fff; max-width:calc(1309*var(--u)); overflow-wrap:break-word; }
.cs-body p{ margin:calc(45*var(--u)) 0 0; width:calc(1129*var(--u)); max-width:100%; font:600 calc(64*var(--u))/.91 'Montserrat',sans-serif; letter-spacing:calc(-3.2*var(--u)); color:rgba(255,255,255,.5); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.cs-price{ margin-top:calc(43*var(--u)); display:flex; align-items:baseline; gap:calc(61*var(--u)); }
.cs-price b{ font:600 calc(96*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:#fff; white-space:nowrap; }
.cs-price s{ font:600 calc(64*var(--u))/.91 'Montserrat',sans-serif; letter-spacing:calc(-3.2*var(--u)); color:rgba(255,255,255,.8); }
.cs-plus{ right:calc(98*var(--u)); bottom:calc(85*var(--u)); width:calc(182*var(--u)); height:calc(182*var(--u)); border-radius:calc(200*var(--u)); border:calc(3*var(--u)) solid #fff; background:rgba(255,255,255,.1); color:#fff; display:flex; align-items:center; justify-content:center; font:300 calc(128*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-6.4*var(--u)); cursor:pointer; padding:0; transition:background .2s, transform .2s; }
.cs-plus:hover{ background:rgba(255,255,255,.25); transform:scale(1.07); }
.rd2-added{ background:#fff !important; color:#000 !important; }

/* ---------------------------- КАТАЛОГ ---------------------------- */
.rd2-catalog{ margin-top:calc(807*var(--u)); }
.rd2 .filter-row{ display:flex; flex-wrap:wrap; justify-content:flex-start; gap:calc(38*var(--u)); margin:0 0 calc(106*var(--u)); padding:0; overflow:visible; }
.rd2 .filter-chip{
  height:calc(171*var(--u)); padding:0 calc(85*var(--u)); display:inline-flex; align-items:center; border-radius:calc(200*var(--u));
  border:calc(5*var(--u)) solid #000; background:transparent; color:#000; flex-shrink:0; white-space:nowrap;
  font:600 calc(64*var(--u))/.92 'Montserrat',sans-serif; letter-spacing:calc(-3.2*var(--u)); transition:background .2s,color .2s,border-color .2s;
}
.rd2 .filter-chip:hover{ color:#000; border-color:#000; background:rgba(47,107,255,.1); }
.rd2 .filter-chip.active{ background:#2f6bff; border-color:#2f6bff; color:#fff; }
.rd2 #catalogSpecialWrap{ margin-bottom:calc(84*var(--u)) !important; }
.rd2 .cfg-card{ background:#000; border-radius:calc(100*var(--u)); border-color:#000; color:#fff; }

.rd2 .pgrid{ display:grid; grid-template-columns:repeat(4,1fr); column-gap:calc(84*var(--u)); row-gap:calc(67*var(--u)); }
.rd2 .rd2-pc{ background:#000; border:0; border-radius:calc(100*var(--u)); overflow:hidden; color:#fff; display:flex; flex-direction:column; cursor:pointer; box-shadow:none; transform:none; }
.rd2 .rd2-pc:hover{ transform:none; box-shadow:none; border-color:transparent; }
.rd2-pc-img{ position:relative; aspect-ratio:1/1; border-radius:calc(100*var(--u)); overflow:hidden; background:#111; flex:none; }
.rd2-pc-img img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .7s cubic-bezier(.16,1,.3,1); }
.rd2 .rd2-pc:hover .rd2-pc-img img{ transform:scale(1.08); }
.rd2-pc-ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#fff; }
.rd2-pc-ph svg{ width:30%; height:30%; }
.rd2-pc-body{ flex:1; display:flex; flex-direction:column; padding:calc(64*var(--u)) calc(67*var(--u)) calc(105*var(--u)); }
.rd2-pc-title{ margin:0; font:600 calc(64*var(--u))/.92 'Unbounded',sans-serif; letter-spacing:calc(-3.2*var(--u)); color:#fff; }
.rd2-pc-desc{ margin:calc(59*var(--u)) 0 0; font:500 calc(64*var(--u))/.92 'Montserrat',sans-serif; letter-spacing:calc(-1.28*var(--u)); color:rgba(255,255,255,.8); display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; min-height:calc(236*var(--u)); }
.rd2-pc-price{ margin-top:auto; padding-top:calc(59*var(--u)); display:flex; align-items:baseline; gap:calc(54*var(--u)); flex-wrap:wrap; }
.rd2-pc-price .now{ font:500 calc(96*var(--u))/.92 'Unbounded',sans-serif; letter-spacing:calc(-1.92*var(--u)); color:#fff; white-space:nowrap; }
.rd2-pc-price .old{ font:500 calc(48*var(--u))/.92 'Montserrat',sans-serif; letter-spacing:calc(-.96*var(--u)); color:rgba(255,255,255,.8); text-decoration:line-through; white-space:nowrap; }
.rd2 .rd2-pc-btn{ margin-top:calc(81*var(--u)); width:100%; height:calc(152*var(--u)); padding:0; border:0; border-radius:calc(200*var(--u)); background:#2f6bff; color:#fff; display:flex; align-items:center; justify-content:center; gap:calc(45*var(--u)); font:600 calc(64*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-3.2*var(--u)); transition:filter .2s, transform .2s; }
.rd2 .rd2-pc-btn:hover{ background:#2f6bff; color:#fff; filter:brightness(1.12); transform:translateY(calc(-3*var(--u))); }
.rd2 .rd2-pc-btn.added{ background:#fff; color:#000; }
.rd2-pc-btn .plus{ font-weight:400; }
.rd2-pc-btn svg{ display:none; }
.rd2-more-wrap{ margin-top:calc(170*var(--u)); display:flex; justify-content:center; }
.rd2 .rd2-more{ width:calc(1079*var(--u)); height:calc(211*var(--u)); border:calc(5*var(--u)) solid #000; border-radius:calc(200*var(--u)); background:transparent; color:#000; align-items:center; justify-content:center; font:600 calc(64*var(--u))/.91 'Unbounded',sans-serif; letter-spacing:calc(-3.2*var(--u)); padding:0; transition:background .2s,color .2s; }
.rd2 .rd2-more:hover{ background:#000; color:#fff; }
.rd2 .rd2-more svg{ display:none; }

/* ---------------------------- ПОЧЕМУ МЫ ---------------------------- */
.rd2-whys{ margin-top:calc(593*var(--u)); }
.rd2-why{ background:#000; border-radius:calc(200*var(--u)); padding:calc(69*var(--u)) calc(100*var(--u)) calc(92*var(--u)); display:grid; row-gap:calc(54*var(--u)); }
.rd2-why-row{ display:grid; column-gap:calc(100*var(--u)); }
.rd2-why-row.r1{ grid-template-columns:1666fr 3173fr; }
.rd2-why-row.r2{ grid-template-columns:1666fr 1544fr 1544fr; }
.rd2-cell{ position:relative; overflow:hidden; border-radius:calc(200*var(--u)); height:calc(1389*var(--u)); color:#fff; background:linear-gradient(134.95deg,#151515 0%,#0b1c45 100%); isolation:isolate; }
.rd2-cell.b{ background:radial-gradient(ellipse 70.9% 82.7% at 77.2% 45.1%,#0b1c45 0%,#10182d 50%,#151515 100%); }
.rd2-cell.c{ background:linear-gradient(132.78deg,#151515 0%,#0b1c45 100%); }
.rd2-cell:hover .rd2-rot img, .rd2-cell:hover .rd2-img img{ transform:scale(1.08); }
.rd2-cell .t, .rd2-cell .d{ position:relative; z-index:2; margin:0; }
.rd2-cell .t{ font:300 calc(128*var(--u))/.92 'Unbounded',sans-serif; letter-spacing:calc(-6.4*var(--u)); white-space:nowrap; }
.rd2-cell .d{ font:500 calc(64*var(--u))/.92 'Montserrat',sans-serif; letter-spacing:calc(-3.2*var(--u)); color:rgba(255,255,255,.8); width:calc(1248*var(--u)); max-width:calc(100% - calc(180*var(--u))); }
.rd2-cell.big{ padding:calc(93*var(--u)) 0 0 calc(81*var(--u)); }
.rd2-cell.big .d{ margin-top:calc(51*var(--u)); }
.rd2-cell.sm{ padding:calc(122*var(--u)) 0 0 calc(100*var(--u)); }
.rd2-cell.sm .d{ margin-top:calc(40*var(--u)); }
.rd2-cell.big.b{ padding-left:calc(108*var(--u)); }

/* ---------------------------- ПРОЦЕСС ---------------------------- */
.rd2-proc{ margin-top:calc(505*var(--u)); }
.rd2-steps{ display:grid; grid-template-columns:repeat(4,1fr); column-gap:calc(64*var(--u)); }
.rd2-step{ position:relative; overflow:hidden; height:calc(1719*var(--u)); border-radius:calc(200*var(--u)); background:#e9efff; padding:calc(111*var(--u)) 0 0 calc(117*var(--u)); isolation:isolate; }
.rd2-step:hover .rd2-rot img{ transform:scale(1.08); }
.rd2-step .n{ display:block; font:600 calc(96*var(--u))/1.2 'Unbounded',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:#2f6bff; position:relative; z-index:2; }
.rd2-step h3{ margin:calc(21*var(--u)) 0 0; width:calc(721*var(--u)); font:400 calc(96*var(--u))/.85 'Unbounded',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:#000; position:relative; z-index:2; }
.rd2-step p{ margin:calc(27*var(--u)) 0 0; width:calc(990*var(--u)); max-width:calc(100% - calc(140*var(--u))); font:400 calc(48*var(--u))/.85 'Montserrat',sans-serif; letter-spacing:calc(-2.4*var(--u)); color:#000; position:relative; z-index:2; }

/* ---------------------------- ОТЗЫВЫ ---------------------------- */
.rd2-reviews{ margin-top:calc(825*var(--u)); }
.rd2 .vision-hero{ padding:0; background:transparent; border-top:0; display:block; overflow:visible; --card-w:calc(1380*var(--u)); --card-h:calc(1725*var(--u)); }
.rd2 .vision-hero .stage{ height:calc(1934*var(--u)); margin-top:0; perspective:calc(9200*var(--u)); }
.rd2 .vision-hero .card{ border-radius:calc(150*var(--u)); border:0; background:transparent; box-shadow:none; overflow:hidden; }
.rd2 .vision-hero .card img{ border-radius:calc(150*var(--u)); transition:transform .7s cubic-bezier(.16,1,.3,1); }
.rd2 .vision-hero .card:hover{ border-color:transparent; }
.rd2 .vision-hero .card:hover img{ transform:scale(1.07); }

/* ---------------------------- FAQ ---------------------------- */
.rd2-faqsec{ margin-top:calc(407*var(--u)); }
.rd2-faq{ display:grid; grid-template-columns:2798fr 2181fr; column-gap:calc(179*var(--u)); align-items:start; }
.rd2-faq-img{ position:relative; height:calc(1842*var(--u)); border-radius:calc(200*var(--u)); overflow:hidden; background:#e9efff; }
.rd2-faq-img img{ position:absolute; left:0; top:-123.42%; width:100%; height:223.43%; transition:transform .8s cubic-bezier(.16,1,.3,1); }
.rd2-faq-img:hover img{ transform:scale(1.06); }
.rd2-faq-head{ position:relative; height:calc(449*var(--u)); }
.rd2-faq-head .rd2-h2{ position:absolute; left:0; top:0; line-height:1.09; white-space:nowrap; }
.rd2-faq-head .rd2-sub{ position:absolute; left:0; top:calc(224*var(--u)); line-height:1.09; white-space:nowrap; }
.rd2 .faq-grid{ max-width:none; margin:0; display:block; border-bottom:calc(4*var(--u)) solid #000; }
.rd2 .faq-item{ background:transparent; border:0; border-top:calc(4*var(--u)) solid #000; border-radius:0; overflow:visible; position:relative; }
.rd2 .faq-item.active{ background:transparent; border-color:#000; }
.rd2 .faq-q{ padding:calc(111*var(--u)) calc(190*var(--u)) calc(125*var(--u)) 0; font:600 calc(96*var(--u))/1.09 'Montserrat',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:#000; display:block; cursor:pointer; }
.rd2 .faq-icon{ position:absolute; right:calc(57*var(--u)); top:calc(111*var(--u)); width:calc(135*var(--u)); height:calc(135*var(--u)); margin-top:calc(-15*var(--u)); background:transparent; border-radius:0; transform:none; }
.rd2 .faq-item.active .faq-icon{ background:transparent; color:inherit; transform:none; }
.rd2 .faq-icon svg{ display:none; }
.rd2 .faq-icon::before, .rd2 .faq-icon::after{ content:''; position:absolute; background:#000; border-radius:calc(100*var(--u)); left:calc(59*var(--u)); top:0; width:calc(17*var(--u)); height:calc(135*var(--u)); transition:transform .3s, opacity .3s; }
.rd2 .faq-icon::after{ left:0; top:calc(59*var(--u)); width:calc(135*var(--u)); height:calc(17*var(--u)); }
.rd2 .faq-item.active .faq-icon::before{ transform:scaleY(0); opacity:0; }
.rd2 .faq-a{ display:none; padding:0 calc(190*var(--u)) calc(125*var(--u)) 0; margin-top:calc(-60*var(--u)); font:400 calc(52*var(--u))/1.35 'Montserrat',sans-serif; letter-spacing:calc(-1.5*var(--u)); color:rgba(0,0,0,.8); white-space:pre-line; }
.rd2 .faq-item.active .faq-a{ display:block; }

/* ---------------------------- КОНТАКТЫ ---------------------------- */
.rd2-contacts{ margin-top:calc(644*var(--u)); }
.rd2-contact{ position:relative; overflow:hidden; height:calc(1320*var(--u)); border-radius:calc(200*var(--u)); background:linear-gradient(90deg,#e9efff 0%,#8cadff 100%); isolation:isolate; }
.rd2-contact:hover .rd2-rot img{ transform:scale(1.06); }
.rd2-contact h2{ position:absolute; left:calc(149*var(--u)); top:calc(192*var(--u)); margin:0; z-index:2; font:600 calc(200*var(--u))/1.09 'Unbounded',sans-serif; letter-spacing:calc(-10*var(--u)); color:#2f6bff; white-space:nowrap; }
.rd2-contact p{ position:absolute; left:calc(149*var(--u)); top:calc(410*var(--u)); width:calc(1981*var(--u)); margin:0; z-index:2; font:600 calc(96*var(--u))/1.09 'Montserrat',sans-serif; letter-spacing:calc(-4.8*var(--u)); color:#000; }
.rd2-cbtn{ position:absolute; top:calc(746*var(--u)); height:calc(317*var(--u)); z-index:2; display:flex; align-items:center; justify-content:center; border-radius:calc(200*var(--u)); background:#2f6bff; color:#fff; text-decoration:none; font:600 calc(128*var(--u))/1.09 'Unbounded',sans-serif; letter-spacing:calc(-6.4*var(--u)); transition:transform .25s, filter .25s; }
.rd2-cbtn:hover{ transform:translateY(calc(-6*var(--u))); filter:brightness(1.08); }
.rd2-cbtn.tg{ left:calc(155*var(--u)); width:calc(1482*var(--u)); } .rd2-cbtn.mini{ left:calc(1736*var(--u)); width:calc(1482*var(--u)); }
.rd2-cbtn.ai{ left:calc(3318*var(--u)); width:calc(1612*var(--u)); background:rgba(182,182,182,.48); border:calc(3*var(--u)) solid rgba(255,255,255,.8); backdrop-filter:blur(6px); }

/* ---------------------------- ПОДВАЛ: отступ после блока ---------------------------- */
.rd2 + footer{ border-top:0; }

/* ---------------------------- HERO (часть 1): плавное «парение» при наведении ---------------------------- */
@media (min-width:861px){
  .rd-globe, .rd-avatars{ cursor:pointer; will-change:transform; }
}

/* ============================ МОБИЛЬНАЯ ВЕРСИЯ ============================ */
@media (max-width:860px){
  .rd2{ --u:calc(100vw / 1800); --ml:calc(60*var(--u)); --mr:calc(60*var(--u)); padding:calc(240*var(--u)) 0 calc(200*var(--u)); }
  .rd2-h2, .rd2-sub{ white-space:normal !important; }
  .rd2-head{ height:auto !important; margin-bottom:calc(70*var(--u)); }
  .rd2-head .rd2-h2, .rd2-head .rd2-sub{ position:static !important; }
  .rd2-head .rd2-sub{ margin-top:calc(30*var(--u)); }
  .rd2-h2{ font-size:calc(128*var(--u)); letter-spacing:calc(-6.4*var(--u)); }
  .rd2-sub{ font-size:calc(64*var(--u)); letter-spacing:calc(-3.2*var(--u)); }
  .rd2-btn-blue{ position:static; margin-top:calc(50*var(--u)); width:100% !important; height:calc(200*var(--u)) !important; font-size:calc(64*var(--u)); }

  .rd2-cases{ grid-template-columns:1fr; row-gap:calc(60*var(--u)); }
  .rd2-case-big{ aspect-ratio:auto; height:calc(2300*var(--u)); border-radius:calc(140*var(--u)); }
  .rd2-case-side{ row-gap:calc(60*var(--u)); grid-template-rows:none; }
  .rd2-case-sm{ height:calc(1000*var(--u)); border-radius:calc(140*var(--u)); }
  .cb-title h3{ font-size:calc(150*var(--u)); }
  .cb-desc{ font-size:calc(56*var(--u)); width:calc(1100*var(--u)); max-width:calc(100% - calc(292*var(--u))); }
  .cs-body{ left:calc(540*var(--u)); width:auto; max-width:none; right:calc(300*var(--u)); }
  .cs-body h3{ font-size:calc(104*var(--u)); letter-spacing:calc(-5*var(--u)); }
  .cs-body p{ font-size:calc(52*var(--u)); width:auto; margin-top:calc(30*var(--u)); }
  .cs-price{ margin-top:calc(30*var(--u)); gap:calc(40*var(--u)); flex-wrap:wrap; }
  .cs-price b{ font-size:calc(76*var(--u)); } .cs-price s{ font-size:calc(50*var(--u)); }
  .cs-plus{ right:calc(60*var(--u)); bottom:calc(60*var(--u)); width:calc(150*var(--u)); height:calc(150*var(--u)); font-size:calc(100*var(--u)); }

  .rd2-catalog{ margin-top:calc(300*var(--u)); }
  .rd2 .filter-row{ flex-wrap:nowrap; overflow-x:auto; margin:0 calc(-60*var(--u)) calc(60*var(--u)); padding:0 calc(60*var(--u)); gap:calc(24*var(--u)); scrollbar-width:none; }
  .rd2 .filter-row::-webkit-scrollbar{ display:none; }
  .rd2 .filter-chip{ height:calc(120*var(--u)); padding:0 calc(56*var(--u)); font-size:calc(50*var(--u)); border-width:calc(4*var(--u)); }
  .rd2 .pgrid{ grid-template-columns:repeat(2,1fr); column-gap:calc(30*var(--u)); row-gap:calc(30*var(--u)); }
  .rd2 .rd2-pc{ border-radius:calc(70*var(--u)); }
  .rd2-pc-img{ border-radius:calc(70*var(--u)); }
  .rd2-pc-body{ padding:calc(40*var(--u)) calc(36*var(--u)) calc(50*var(--u)); }
  .rd2-pc-title{ font-size:calc(52*var(--u)); letter-spacing:calc(-2.6*var(--u)); }
  .rd2-pc-desc{ font-size:calc(44*var(--u)); min-height:0; margin-top:calc(24*var(--u)); -webkit-line-clamp:3; }
  .rd2-pc-price{ padding-top:calc(30*var(--u)); gap:calc(20*var(--u)); } .rd2-pc-price .now{ font-size:calc(66*var(--u)); } .rd2-pc-price .old{ font-size:calc(38*var(--u)); }
  .rd2 .rd2-pc-btn{ margin-top:calc(36*var(--u)); height:calc(110*var(--u)); font-size:calc(46*var(--u)); gap:calc(20*var(--u)); }
  .rd2 .rd2-more{ width:100%; height:calc(150*var(--u)); font-size:calc(52*var(--u)); }
  .rd2-more-wrap{ margin-top:calc(80*var(--u)); }

  .rd2-whys{ margin-top:calc(300*var(--u)); }
  .rd2-why{ padding:calc(40*var(--u)); row-gap:calc(40*var(--u)); border-radius:calc(120*var(--u)); }
  .rd2-why-row{ column-gap:calc(40*var(--u)); row-gap:calc(40*var(--u)); }
  .rd2-why-row.r1, .rd2-why-row.r2{ grid-template-columns:1fr; }
  .rd2-cell{ height:calc(1100*var(--u)); border-radius:calc(120*var(--u)); }
  .rd2-cell .t{ font-size:calc(108*var(--u)); letter-spacing:calc(-5.4*var(--u)); } .rd2-cell .d{ font-size:calc(56*var(--u)); }

  .rd2-proc{ margin-top:calc(300*var(--u)); }
  .rd2-steps{ grid-template-columns:1fr; row-gap:calc(40*var(--u)); }
  .rd2-step{ height:calc(1000*var(--u)); border-radius:calc(120*var(--u)); padding:calc(70*var(--u)) 0 0 calc(80*var(--u)); }
  .rd2-step .n{ font-size:calc(70*var(--u)); } .rd2-step h3{ font-size:calc(84*var(--u)); width:auto; max-width:60%; } .rd2-step p{ font-size:calc(48*var(--u)); width:auto; max-width:50%; }

  .rd2-reviews{ margin-top:calc(300*var(--u)); }
  .rd2 .vision-hero{ --card-w:190px; --card-h:240px; }
  .rd2 .vision-hero .stage{ height:300px; perspective:1600px; }
  .rd2 .vision-hero .card{ border-radius:20px; } .rd2 .vision-hero .card img{ border-radius:20px; }

  .rd2-faqsec{ margin-top:calc(300*var(--u)); }
  .rd2-faq{ grid-template-columns:1fr; row-gap:calc(80*var(--u)); }
  .rd2-faq-img{ height:calc(900*var(--u)); border-radius:calc(120*var(--u)); }
  .rd2-faq-head{ height:auto; margin-bottom:calc(50*var(--u)); }
  .rd2-faq-head .rd2-h2, .rd2-faq-head .rd2-sub{ position:static; white-space:normal; }
  .rd2 .faq-q{ font-size:calc(68*var(--u)); padding:calc(70*var(--u)) calc(150*var(--u)) calc(70*var(--u)) 0; letter-spacing:calc(-3.4*var(--u)); }
  .rd2 .faq-icon{ top:calc(70*var(--u)); width:calc(90*var(--u)); height:calc(90*var(--u)); margin-top:0; right:calc(20*var(--u)); }
  .rd2 .faq-icon::before{ left:calc(36*var(--u)); width:calc(12*var(--u)); height:calc(90*var(--u)); } .rd2 .faq-icon::after{ top:calc(36*var(--u)); width:calc(90*var(--u)); height:calc(12*var(--u)); }
  .rd2 .faq-a{ font-size:calc(48*var(--u)); padding-right:0; margin-top:calc(-30*var(--u)); padding-bottom:calc(70*var(--u)); }

  .rd2-contacts{ margin-top:calc(300*var(--u)); }
  .rd2-contact{ height:auto; border-radius:calc(120*var(--u)); padding:calc(100*var(--u)) calc(70*var(--u)) calc(90*var(--u)); display:flex; flex-direction:column; gap:calc(36*var(--u)); }
  .rd2-contact h2, .rd2-contact p, .rd2-cbtn{ position:relative; left:auto; top:auto; }
  .rd2-contact h2{ font-size:calc(120*var(--u)); white-space:normal; letter-spacing:calc(-6*var(--u)); }
  .rd2-contact p{ width:auto; font-size:calc(60*var(--u)); max-width:70%; }
  .rd2-cbtn, .rd2-cbtn.tg, .rd2-cbtn.mini, .rd2-cbtn.ai{ left:0 !important; width:100% !important; height:calc(200*var(--u)); font-size:calc(76*var(--u)); z-index:2; }
  .rd2-contact .rd2-rot{ opacity:.55; }
}

/* =====================================================================
   ИСПРАВЛЕНИЕ ЧАСТИ 1: проекты / партнёры / новости — светлый фон, как в макете
   (карточки проектов 001–004, ленты партнёров, синяя + серая карточки новостей)
   ===================================================================== */
.rd-about, .rd-partners, .rd-news{ background:#fff; color:#000; z-index:auto; }
.rd-partners{ background:linear-gradient(180deg,#f3f3f4 0%,#fff 100%); }
.rd-calc{ z-index:2; }
.rd-calc .rd-glow{ pointer-events:none; }
.rd-about .rd-h2, .rd-news .rd-h2{ color:#000; z-index:3; }

/* ---- проекты ---- */
.rd-about .projects-track{ counter-reset:proj; gap:12px; padding:8px 4px 12px; }
.rd-about .projects-track .flip-card{ counter-increment:proj; flex:0 0 250px; width:250px; min-width:250px; height:320px; aspect-ratio:auto; }
.rd-about .flip-inner{ transform:none !important; transition:none; }
.rd-about .flip-front{ display:none; }
.rd-about .flip-face{ border:0; }
.rd-about .flip-back{ transform:none; position:absolute; inset:0; display:block; padding:0; overflow:hidden; color:#0a1b17; }
.rd-about .projects-track .flip-card:nth-child(4n+1) .flip-back{ background:linear-gradient(180deg,#d9f6ec 0%,#7fdcc3 38%,#1a9a80 72%,#062f28 100%); }
.rd-about .projects-track .flip-card:nth-child(4n+2) .flip-back{ background:linear-gradient(180deg,#dbf0fb 0%,#86cdee 38%,#1e88b3 72%,#06293d 100%); }
.rd-about .projects-track .flip-card:nth-child(4n+3) .flip-back{ background:linear-gradient(180deg,#e8e0fb 0%,#ab98f0 38%,#6f48d2 72%,#1b0e4f 100%); }
.rd-about .projects-track .flip-card:nth-child(4n) .flip-back{ background:linear-gradient(180deg,#d8f3f6 0%,#79d3de 38%,#1b909f 72%,#05303a 100%); }
.rd-about .flip-back::before{ content:'00' counter(proj); position:absolute; left:0; right:0; top:6px; text-align:center; font:600 92px/1 'Unbounded',sans-serif; letter-spacing:-.05em; color:rgba(255,255,255,.42); pointer-events:none; }
.rd-about .flip-back .proj-top{ display:block; margin:0; }
.rd-about .flip-back h3{ position:absolute; left:16px; top:30px; z-index:2; margin:0; font:700 17px/1.1 'Montserrat',sans-serif; letter-spacing:-.02em; color:#0b1d18; transform:none; }
.rd-about .flip-back .desc{ position:absolute; left:16px; right:16px; top:58px; z-index:2; margin:0; min-height:0; flex:none; font:500 10.5px/1.2 'Montserrat',sans-serif; color:rgba(10,27,23,.8); transform:none; }
.rd-about .flip-back .desc b{ font-weight:700; color:#0a1b17; }
.rd-about .flip-back .proj-icon{ position:absolute !important; left:50%; bottom:26px; width:76% !important; height:auto !important; aspect-ratio:1/1; min-width:0 !important; padding:0 !important; overflow:visible !important; border-radius:0 !important; background:none !important; transform:translateX(-50%); transition:transform .7s cubic-bezier(.16,1,.3,1); }
.rd-about .flip-back .proj-icon img{ width:100%; height:100%; object-fit:contain; border-radius:0 !important; }
.rd-about .flip-card:hover .proj-icon{ transform:translateX(-50%) scale(1.08); }
.rd-about .flip-back .proj-actions{ position:absolute; left:14px; bottom:12px; z-index:3; display:flex; gap:6px; margin:0; transform:none; }
.rd-about .flip-back .pbtn{ flex:none; position:relative; width:36px; height:26px; padding:0; border-radius:100px; font-size:0 !important; background:rgba(0,0,0,.4) !important; color:#fff !important; }
.rd-about .flip-back .pbtn::before{ content:''; position:absolute; inset:0; background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='7' width='20' height='14' rx='2'/><path d='M16 7V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v2'/></svg>") center/52% no-repeat; }
.rd-about .flip-back .tg-btn{ width:36px; height:26px; border-radius:100px; background:rgba(0,0,0,.4); color:#fff; }
.rd-about .flip-back .tg-btn svg{ width:14px; height:14px; }
.rd-about .proj-nav{ background:rgba(0,0,0,.7); color:#fff; }
.rd-about .proj-nav[style*="opacity: 0.25"]{ display:none; }

/* ---- партнёры ---- */
.rd-partners .partner-item{ color:rgba(0,0,0,.34); }
.rd-partners .partner-item:hover{ color:#000; }
.rd-partners .partner-logo{ background:transparent; border:0; }
.rd-partners .partner-logo img{ filter:grayscale(1); opacity:.5; }
.rd-partners .partner-item:hover .partner-logo img{ opacity:1; }
.rd-partners .partner-name{ font-family:'Montserrat',sans-serif; font-weight:600; letter-spacing:-.02em; }

/* ---- новости ---- */
.rd-news .news-card{ background:#4f4f4f; border:0; color:#fff; }
.rd-news .news-card:first-child{ background:#2f6bff; }
.rd-news .news-card:hover{ transform:none; }
.rd-news .news-tag{ background:transparent; border:1.5px solid rgba(255,255,255,.55); color:#fff; font-family:'Montserrat',sans-serif; font-weight:500; }
.rd-news .news-tag .go{ background:rgba(0,0,0,.45); color:#fff; }
.rd-news .news-card h3{ font-family:'Unbounded',sans-serif; font-weight:400; letter-spacing:-.02em; color:#fff; }
.rd-news .news-card .stamp{ color:rgba(255,255,255,.85); }
.rd-news .news-card .headline{ color:#fff; font-weight:700; }
.rd-news .news-card .body-txt{ color:rgba(255,255,255,.9); }
.rd-news .news-nav{ background:rgba(0,0,0,.7); color:#fff; }

@media (min-width:861px){
  /* проекты: 4 карточки 1350×1717 в ряд, как в макете */
  .rd-about .projects-track{ gap:calc(64 * var(--u)); padding:calc(152 * var(--u)) 0 0 0; scroll-padding-left:0; }
  .rd-about .projects-track .flip-card{ flex:0 0 calc(1350 * var(--u)); width:calc(1350 * var(--u)); min-width:calc(1350 * var(--u)); height:calc(1717 * var(--u)); }
  .rd-about .flip-face{ border-radius:calc(160 * var(--u)); }
  .rd-about .flip-back::before{ top:calc(60 * var(--u)); font-size:calc(500 * var(--u)); }
  .rd-about .flip-back h3{ left:calc(100 * var(--u)); top:calc(170 * var(--u)); font-size:calc(92 * var(--u)); }
  .rd-about .flip-back .desc{ left:calc(100 * var(--u)); right:calc(100 * var(--u)); top:calc(285 * var(--u)); font-size:calc(50 * var(--u)); }
  .rd-about .flip-back .proj-icon{ bottom:calc(40 * var(--u)); width:76% !important; }
  .rd-about .flip-back .proj-actions{ left:calc(100 * var(--u)); bottom:calc(87 * var(--u)); gap:calc(40 * var(--u)); }
  .rd-about .flip-back .pbtn, .rd-about .flip-back .tg-btn{ width:calc(230 * var(--u)); height:calc(147 * var(--u)); }
  .rd-about .flip-back .tg-btn svg{ width:calc(70 * var(--u)); height:calc(70 * var(--u)); }

  /* новости: заголовок на 334 от верха секции, синяя 3620×1376 + серые 1890×1376 */
  .rd-news{ height:calc(2535 * var(--u)); }
  .rd-news .rd-h2{ top:calc(334 * var(--u)); }
  .rd-news .news-track{ left:calc(334 * var(--u)); top:calc(909 * var(--u)); width:calc(5593 * var(--u)); gap:calc(94 * var(--u)); }
  .rd-news .news-card{ flex:0 0 calc(1890 * var(--u)); min-width:calc(1890 * var(--u)); width:calc(1890 * var(--u)); height:calc(1376 * var(--u)); padding:calc(140 * var(--u)) calc(134 * var(--u)) calc(90 * var(--u)); border-radius:calc(254 * var(--u)); }
  .rd-news .news-card:first-child{ flex-basis:calc(3620 * var(--u)); min-width:calc(3620 * var(--u)); width:calc(3620 * var(--u)); }
  .rd-news .news-tag{ height:calc(207 * var(--u)); padding:0 calc(33 * var(--u)) 0 calc(87 * var(--u)); font-size:calc(73 * var(--u)); margin-bottom:calc(100 * var(--u)); border-width:calc(3 * var(--u)); }
  .rd-news .news-tag .go{ width:calc(140 * var(--u)); height:calc(140 * var(--u)); }
  .rd-news .news-tag .go svg{ width:calc(62 * var(--u)); height:calc(62 * var(--u)); }
  .rd-news .news-card h3, .rd-news .news-card .stamp, .rd-news .news-card .headline, .rd-news .news-card .body-txt{ padding-left:calc(26 * var(--u)); }
  .rd-news .news-card h3{ font-size:calc(147 * var(--u)); line-height:1.05; }
  .rd-news .news-card .stamp{ font-size:calc(47 * var(--u)); margin:calc(12 * var(--u)) 0 calc(75 * var(--u)); }
  .rd-news .news-card .headline{ font-size:calc(67 * var(--u)); margin:0 0 calc(26 * var(--u)); }
  .rd-news .news-card .body-txt{ font-size:calc(63 * var(--u)); line-height:1.4; }
  .rd-news .news-nav{ top:calc(1486 * var(--u)); width:calc(208 * var(--u)); height:calc(208 * var(--u)); }
  .rd-news .news-nav.next{ top:calc(1486 * var(--u)); left:calc(5719 * var(--u)); }
  .rd-news .news-nav.prev{ left:calc(334 * var(--u)); }
}

/* === FIXES v3 (update-fixes.js) === */
/* Настройки, которые можно крутить:
   --hero-top  — отступ карточки хиро сверху (в «пикселях макета», было 117; меньше = хиро выше)
   --pi-w/--pi-r/--pi-b — размер / сдвиг вправо / сдвиг вниз 3D-иконки в карточках проектов */
:root{ --hero-top:40; --pi-w:1200; --pi-r:-10; --pi-b:-150; }

/* 1. Хиро выше, чтобы целиком влезал в экран */
@media (min-width:861px){
  .rd-hero{ height:calc((var(--hero-top) + 2813 + 30) * var(--u)); }
  .rd-card{ top:calc(var(--hero-top) * var(--u)); }
  /* 2. luminosity у фото клиентов: .rd-proof создавал свой stacking context и режим смешивания не работал */
  .rd-card > .rd-proof{ z-index:auto; }
}
.rd-avatars{ mix-blend-mode:luminosity; }

/* 3. Калькулятор: фон синий → белый вместо синий → чёрный */
.rd-calc .rd-glow{ display:none !important; }
.rd-calc{
  background:
    radial-gradient(ellipse 55% 34% at 22% 52%, rgba(47,107,255,.55) 0%, rgba(47,107,255,0) 70%),
    radial-gradient(ellipse 60% 36% at 82% 60%, rgba(47,107,255,.60) 0%, rgba(47,107,255,0) 70%),
    radial-gradient(ellipse 80% 22% at 50% 82%, rgba(47,107,255,.35) 0%, rgba(47,107,255,0) 70%),
    #fff;
}

/* 4. Проекты: без цифр 001–004 */
.rd-about .flip-back::before{ content:none !important; }

/* 5. Проекты: 3D-иконка крупно, справа-снизу, обрезается краем карточки */
.rd-about .flip-back .proj-icon{
  left:auto !important; right:-2%; bottom:-8%; width:92% !important;
  transform:none; transform-origin:70% 70%;
}
.rd-about .flip-back .proj-icon img{ object-fit:contain !important; }
.rd-about .flip-card:hover .proj-icon{ transform:scale(1.06); }
@media (min-width:861px){
  .rd-about .flip-back .proj-icon{
    right:calc(var(--pi-r) * var(--u));
    bottom:calc(var(--pi-b) * var(--u));
    width:calc(var(--pi-w) * var(--u)) !important;
  }
}

/* 6. Иконка «портфолио» — теперь ссылка, показывается только у проектов с портфолио */
.rd-about .flip-back a.pbtn{ display:block; }

/* 7. Стрелки в проектах и новостях убраны */
.rd-about .proj-nav, .rd-news .news-nav{ display:none !important; }
.rd-about .projects-wrap{ padding-left:0; padding-right:0; }
.rd-news .news-wrap{ padding-left:0; padding-right:0; }
@media (max-width:860px){
  .rd-news .news-track{ padding-left:16px; padding-right:16px; }
  .rd-about .projects-track{ padding-left:16px; padding-right:16px; }
}

/* 8. Уведомления убраны (страховка, если блоки остались в разметке) */
.social-proof-toast, .survey-prompt-toast{ display:none !important; }

/* === FIXES v4 (update-fixes2.js) === */
/* Подгонка 3D-иконки в карточках проектов (единицы = «пиксели макета», карточка 1350x1717):
   --pi-w ширина, --pi-l сдвиг слева (отрицательный = выходит за край), --pi-t отступ сверху.
   --pi-mask: размытие верхней кромки картинки (пока у PNG тёмный фон). Когда загрузите PNG
   с прозрачным фоном, поставьте --pi-mask:none; */
:root{
  --pi-w:1700; --pi-l:-127; --pi-t:465;
  --pi-mask:linear-gradient(to bottom, transparent 0%, #000 14%);
}
.rd-about .flip-back .proj-icon{
  left:-9.4% !important; top:27%; right:auto; bottom:auto; width:126% !important;
  transform:none;
  -webkit-mask-image:var(--pi-mask); mask-image:var(--pi-mask);
}
@media (min-width:861px){
  .rd-about .flip-back .proj-icon{
    left:calc(var(--pi-l) * var(--u)) !important;
    top:calc(var(--pi-t) * var(--u));
    right:auto; bottom:auto;
    width:calc(var(--pi-w) * var(--u)) !important;
  }
}

/* === FIXES v5 (update-fixes3.js) === */
/* Настройки:
   --proof-top  — верх аватарок «500+» (пиксели макета; кнопки заканчиваются на 2211, было 2366)
   --cube-swing — на сколько градусов качается верхнее фото
   --r3d-fade   — ширина размытия левого края большого фото */
:root{ --proof-top:2330; --cube-swing:90deg; --r3d-fade:32%; }

@media (min-width:861px){
  /* 1. «500+ клиентов» и аватарки выше */
  .rd-avatars{ top:calc(var(--proof-top) * var(--u)); }
  .rd-stat{ top:calc((var(--proof-top) + 42) * var(--u)); }

  /* 4. Большое фото справа: мягкий левый/нижний край + можно навести курсор */
  .rd-3d{
    pointer-events:auto;
    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, #000 var(--r3d-fade)),
      radial-gradient(ellipse 80% 85% at 72% 38%, #000 45%, transparent 100%);
    -webkit-mask-composite:source-in;
    mask-image:
      linear-gradient(to right, transparent 0%, #000 var(--r3d-fade)),
      radial-gradient(ellipse 80% 85% at 72% 38%, #000 45%, transparent 100%);
    mask-composite:intersect;
  }
  /* текст не должен перекрывать область наведения на фото */
  .rd-title, .rd-sub{ pointer-events:none; }
}

/* 2. Фото рядом с заголовком */
@keyframes rdSpin{ to{ transform:rotate(360deg); } }
@keyframes rdSwing{
  0%{ transform:rotate(0deg); }
  25%{ transform:rotate(var(--cube-swing)); }
  50%{ transform:rotate(0deg); }
  75%{ transform:rotate(calc(-1 * var(--cube-swing))); }
  100%{ transform:rotate(0deg); }
}
.rd-globe img{ transform-origin:50% 50%; animation:rdSpin 14s linear infinite; }
.rd-cube{ animation:rdSwing 8s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce){
  .rd-globe img, .rd-cube{ animation:none; }
}

/* === FIXES v6 (update-mobile.js) === */
/* ---- плавный hover: только transform, без JS в кадре ---- */
@keyframes rdBob{
  0%,100%{ transform:translate3d(0,0,0); }
  25%{ transform:translate3d(0,calc(var(--bob,6) * -1%),0); }
  75%{ transform:translate3d(0,calc(var(--bob,6) * 1%),0); }
}
.rd-globe, .rd-avatars, .rd-3d{ will-change:transform; backface-visibility:hidden; }
.rd-globe.rd-bob, .rd-avatars.rd-bob{ --bob:9; animation:rdBob 2.4s ease-in-out infinite; }
.rd-3d.rd-bob{ --bob:3.5; animation:rdBob 3.6s ease-in-out infinite; }
.rd-hero.rd-off .rd-globe img, .rd-hero.rd-off .rd-cube{ animation-play-state:paused; }
.rd-card > picture, .rd-cube picture{ display:contents; }

/* ---- МОБИЛЬНЫЙ ХИРО по Figma (кадр 3384 px; 1 px макета = --m) ---- */
@media (max-width:860px){
  .rd-hero{ --m:calc(100vw / 3384); padding:calc(103 * var(--m)); }
  .rd-hero .rd-card{ height:calc(6522 * var(--m)); padding:0; border-radius:calc(200 * var(--m)); }
  .rd-hero .rd-card-bg{ object-fit:fill; }
  .rd-hero .rd-nav-row, .rd-hero .rd-nav-tools, .rd-hero .rd-cta, .rd-hero .rd-proof{ display:contents; }

  /* большое 3D-фото внизу */
  .rd-hero .rd-card .rd-3d{
    position:absolute; display:block; margin:0; pointer-events:none;
    left:calc(-589.5 * var(--m)); top:calc(3825.4 * var(--m));
    width:calc(4181.5 * var(--m)); height:calc(2786.1 * var(--m)); object-fit:cover;
    -webkit-mask-image:none; mask-image:none;
  }

  /* лого и иконки */
  .rd-hero .rd-card .rd-logo{ position:absolute; left:calc(136 * var(--m)); top:calc(146 * var(--m)); width:calc(242.7 * var(--m)); height:calc(224.2 * var(--m)); }
  .rd-hero .rd-card .rd-logo img{ width:100%; height:100%; }
  .rd-hero .rd-card .rd-ico{ position:absolute; top:calc(202 * var(--m)); height:calc(106 * var(--m)); width:calc(108 * var(--m)); padding:0; }
  .rd-hero .rd-card .rd-ico::after{ content:''; position:absolute; inset:-14px; }
  .rd-hero .rd-card #searchBtn{ left:calc(2277 * var(--m)); }
  .rd-hero .rd-card #cartBtn{ left:calc(2502 * var(--m)); width:calc(112 * var(--m)); }
  .rd-hero .rd-card #mobileMenuBtn{
    left:calc(2728 * var(--m)); top:calc(146 * var(--m)); width:calc(320 * var(--m)); height:calc(224 * var(--m));
    display:block; border:1px solid #fff; border-radius:calc(200 * var(--m)); color:#fff;
    background:
      linear-gradient(#fff,#fff) calc(99 * var(--m)) calc(55 * var(--m)) / calc(121 * var(--m)) calc(16 * var(--m)) no-repeat,
      linear-gradient(#fff,#fff) calc(99 * var(--m)) calc(103 * var(--m)) / calc(121 * var(--m)) calc(16 * var(--m)) no-repeat,
      linear-gradient(#fff,#fff) calc(99 * var(--m)) calc(152 * var(--m)) / calc(121 * var(--m)) calc(16 * var(--m)) no-repeat,
      rgba(217,217,217,.2);
  }
  .rd-hero .rd-card #mobileMenuBtn svg{ display:none; }
  .rd-hero .rd-card #mobileMenuBtn::after{ inset:-8px; }

  /* куб и глобус возле заголовка (на мобилке без вращения — как в макете) */
  .rd-hero .rd-card .rd-cube{ display:block; position:absolute; left:calc(153 * var(--m)); top:calc(894 * var(--m)); width:calc(268 * var(--m)); height:calc(268 * var(--m)); animation:none; overflow:visible; }
  .rd-hero .rd-card .rd-cube img{ width:100%; height:100%; object-fit:fill; object-position:bottom; mix-blend-mode:luminosity; display:block; }
  .rd-hero .rd-card .rd-globe{ display:block; position:absolute; left:calc(153 * var(--m)); top:calc(1912 * var(--m)); width:calc(268 * var(--m)); height:calc(268 * var(--m)); overflow:hidden; }
  .rd-hero .rd-card .rd-globe img{ position:absolute; left:-23%; top:-23%; width:146%; height:146%; animation:none; }

  /* заголовок: 4 строки, отступ под иконки у 1-й и 4-й */
  .rd-hero .rd-card .rd-title{
    position:absolute; left:calc(116 * var(--m)); top:calc(871 * var(--m)); width:calc(2932 * var(--m)); margin:0;
    font-size:calc(350 * var(--m)); letter-spacing:calc(-17.5 * var(--m)); line-height:.91; text-indent:calc(366 * var(--m));
  }
  .rd-hero .rd-card .rd-title span{ display:inline; white-space:normal; }
  .rd-hero .rd-card .rd-title span:first-child::after{ content:' '; }
  .rd-hero .rd-card .rd-title .l3{ display:block; }

  .rd-hero .rd-card .rd-sub{ position:absolute; left:calc(136 * var(--m)); top:calc(2447 * var(--m)); width:calc(2243 * var(--m)); max-width:none; margin:0; font-size:calc(128 * var(--m)); line-height:.987; }

  /* кнопки */
  .rd-hero .rd-card .rd-btn{ position:absolute; top:calc(3044 * var(--m)); height:calc(324 * var(--m)); flex:none; font-size:calc(96 * var(--m)); border-width:1px; }
  .rd-hero .rd-card .rd-btn.blue{ left:calc(138 * var(--m)); width:calc(1204 * var(--m)); }
  .rd-hero .rd-card .rd-btn.ghost{ left:calc(1467 * var(--m)); width:calc(1361 * var(--m)); }

  /* соц. доказательство */
  .rd-hero .rd-card .rd-avatars{ position:absolute; left:calc(138 * var(--m)); top:calc(3487 * var(--m)); width:calc(826 * var(--m)); height:calc(322 * var(--m)); }
  .rd-hero .rd-card .rd-stat{ position:absolute; left:calc(1062 * var(--m)); top:calc(3532 * var(--m)); }
  .rd-hero .rd-card .rd-stat b{ font-size:calc(150 * var(--m)); letter-spacing:calc(-7.5 * var(--m)); line-height:.91; }
  .rd-hero .rd-card .rd-stat span{ position:absolute; left:0; top:calc(144 * var(--m)); white-space:nowrap; font-size:calc(96 * var(--m)); letter-spacing:calc(-4.8 * var(--m)); line-height:.91; }
}

/* ---- общая мобильная адаптация ---- */
@media (max-width:860px){
  html, body{ overflow-x:clip; }
  *{ -webkit-tap-highlight-color:transparent; }
  a, button, .rd-pill, .faq-q, .filter-chip{ touch-action:manipulation; }
  input, textarea, select{ font-size:16px !important; }
  .rd-pl{ white-space:normal; line-height:1.15; }
  .rd-metrics .rd-panel{ min-height:96px; }
  .search-modal{ max-height:calc(100dvh - 24px); overflow-y:auto; overscroll-behavior:contain; }
  .drawer{ height:100dvh; }
  .drawer-body{ overscroll-behavior:contain; }
  .rd2 .filter-row{ scroll-snap-type:x proximity; }
  .rd2 .filter-chip{ scroll-snap-align:start; }
}
@media (hover:none){
  .rd2-case:hover .rd2-rot img, .rd2-cell:hover .rd2-rot img, .rd2-cell:hover .rd2-img img,
  .rd2-step:hover .rd2-rot img, .rd2-contact:hover .rd2-rot img, .rd2-faq-img:hover img,
  .rd2 .rd2-pc:hover .rd2-pc-img img, .rd2 .vision-hero .card:hover img{ transform:none; }
  .rd2-btn-blue:hover, .rd2-cbtn:hover, .rd-btn:hover, .rd-cta-black:hover, .rd-contact-btn:hover{ transform:none; }
}
@media (prefers-reduced-motion: reduce){
  .rd-globe img, .rd-cube, .rd-bob{ animation:none !important; }
}


/* sticky-pill-nav */
.rd-pill-nav{
  position:fixed; top:14px; left:50%; z-index:200;
  display:flex; align-items:center; gap:clamp(12px,1.8vw,30px);
  max-width:calc(100vw - 24px); padding:8px 8px 8px 20px;
  border-radius:9999px;
  background:rgba(10,10,12,.72);
  -webkit-backdrop-filter:blur(14px) saturate(140%); backdrop-filter:blur(14px) saturate(140%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 36px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.08);
  color:#fff;
  transform:translate(-50%,-160%); opacity:0; pointer-events:none;
  transition:transform .5s cubic-bezier(.16,1,.3,1), opacity .3s ease;
}
.rd-pill-nav.show{ transform:translate(-50%,0); opacity:1; pointer-events:auto; }
.pn-logo{ display:flex; align-items:center; flex:none; }
.pn-logo img{ height:30px; width:auto; display:block; max-width:none; }
.pn-links{ display:flex; align-items:center; gap:clamp(14px,1.6vw,26px); }
.pn-links a{
  font:600 14px/1 'Montserrat',sans-serif; letter-spacing:-.01em; white-space:nowrap;
  color:rgba(255,255,255,.72); text-decoration:none; transition:color .2s;
}
.pn-links a:hover, .pn-links a.active{ color:#fff; }
.pn-tools{ display:flex; align-items:center; gap:4px; }
.pn-ico{
  position:relative; width:38px; height:38px; border-radius:50%; border:0; background:transparent;
  color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background .2s;
}
.pn-ico:hover{ background:rgba(255,255,255,.12); }
.pn-ico svg{ width:18px; height:18px; }
.pn-badge{
  position:absolute; top:1px; right:1px; min-width:16px; height:16px; padding:0 4px; border-radius:9999px;
  background:#2f6bff; color:#fff; font:700 10px/16px 'Inter',sans-serif; text-align:center;
}
.pn-cta{
  flex:none; display:flex; align-items:center; height:40px; padding:0 22px; border-radius:9999px;
  background:#2f6bff; color:#fff; text-decoration:none; white-space:nowrap;
  font:600 14px/1 'Unbounded',sans-serif; letter-spacing:-.02em; transition:filter .2s, transform .2s;
}
.pn-cta:hover{ filter:brightness(1.1); transform:translateY(-1px); }
@media (max-width:1100px){ .pn-links{ display:none; } }
@media (max-width:860px){ .rd-pill-nav{ display:none; } } /* на мобильных работает нижняя панель */
