/* === AUDIT FIXES 2026-08-10 v2 === */

/* Fix 2: FAB button — move above bottom-nav, don't overlap */
.chat-fab, .chatbot-fab, .fab-button {
    bottom: 72px !important;
    z-index: 999 !important;
}
.bottom-nav {
    z-index: 1000 !important;
    position: relative !important;
}

/* Fix 3: Breadcrumbs — contain overflow on mobile */
.page-head {
    max-width: 100% !important;
    overflow: hidden !important;
}
.crumbs {
    max-width: 100% !important;
    overflow: hidden !important;
}
.crumb-list {
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    display: flex !important;
    flex-wrap: nowrap !important;
}
.crumb-list::-webkit-scrollbar { display: none; }
.crumb-list li {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important;
}
.crumb-active {
    flex-shrink: 1 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Fix 7: Award slider — contain cards on mobile */
.awards-slider, .award-slider {
    overflow: hidden !important;
}
.awards-slider__track, .awards-slider__container {
    overflow-x: auto !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}
.awards-slider__track::-webkit-scrollbar { display: none; }
.award-card {
    flex-shrink: 0 !important;
}

/* Prevent horizontal scroll on body */
body {
    overflow-x: hidden !important;
}

/* FIX: horizontal scroll on mobile — use overflow-x clip instead of hidden to avoid breaking vertical scroll */
html { overflow-x: clip; max-width: 100%; }
body { overflow-x: clip; max-width: 100%; position: relative; }
.awards-slider, .awards-slider__track { overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; }
.awards-slider__slide { flex-shrink: 0; }
.awards-slider { width: 100%; }

/* FIX: duplicate H1 in content-section */
.content-section h2:first-child { margin-top: 0; }

/* === FIGMA COMPARISON FIXES 2026-08-10 v3 === */

/* Fix A: /services page — карточки услуг по Figma (figma_services_block.png).
   service-card--full не имел стилей → ссылки выглядели plain text. */
.services-grid--full {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
}
@media (max-width: 1100px) {
    .services-grid--full { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 640px) {
    .services-grid--full { grid-template-columns: 1fr !important; }
}
.service-card--full {
    min-height: 180px !important;
    border-radius: 24px !important;
    background: #F3F7FA !important; /* Grey Extra Light — дизайн-система */
    padding: 24px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    text-decoration: none !important;
    transition: transform .2s, box-shadow .2s, background .2s !important;
    overflow: hidden !important;
}
.service-card--full:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,.08);
    background: #fff !important;
}
.service-card--full .service-card__title {
    color: #009294 !important; /* Primary teal — по Figma */
    font-weight: 600 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    text-decoration: none !important;
}
.service-card--full .service-card__chips:empty { display: none !important; }
.service-card--full .service-card__chips { margin-bottom: 12px; }

/* Перебиваем legacy nth-child override из figma-final.css (строки 641-645):
   часть заголовков карточек принудительно красилась в тёмный */
.services-grid .service-card:nth-child(n) .service-card__title {
    color: #009294 !important; /* Primary teal — по Figma */
}

/* Fix B: футер — цвет текста по Figma (Grey Light #A8B4BD, белый фон) */
.footer-bottom,
.footer-bottom span,
.footer-bottom a,
.footer-legal a,
.footer-bottom__contacts a {
    color: #A8B4BD !important;
}
.footer-bottom a:hover,
.footer-legal a:hover {
    color: #009294 !important;
}
.footer-bottom {
    background: #FFFFFF !important;
}

/* Fix C: hero — видео-фон не должен обрезать контент на узких экранах */
.hero__media video {
    object-fit: cover;
    object-position: center center;
}

/* Photo cards for services (Figma: 2 cards with lab photos) */
.service-card--image {
  position: relative;
  background-size: cover !important;
  background-position: center !important;
  min-height: 240px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.service-card--image .service-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,10,58,0.85) 0%, rgba(0,10,58,0.3) 60%, transparent 100%);
  border-radius: 24px;
  z-index: 0;
}
.service-card--image .service-card__chips,
.service-card--image .service-card__divider,
.service-card--image .service-card__title,
.service-card--image .service-card__desc {
  position: relative;
  z-index: 1;
}
.service-card--image .service-card__title {
  color: #fff !important;
}
.service-card--image .service-card__desc {
  color: rgba(255,255,255,0.85) !important;
}
.service-card--image .chip--bright {
  background: rgba(0,146,148,0.9) !important;
}

/* Divider line between chips and title (Figma) */
.service-card__divider {
  height: 1px;
  background: var(--c-accent, #009294);
  opacity: 0.3;
  margin: 12px 0;
  width: 40px;
}
.service-card--image .service-card__divider {
  background: rgba(255,255,255,0.3);
  opacity: 1;
}

/* Button "All services" (Figma: outline pill) */
.services-all-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 32px;
  border: 2px solid var(--c-accent, #009294);
  border-radius: 100px;
  color: var(--c-accent, #009294);
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  transition: all 200ms;
  margin: 32px auto 0;
}
.services-all-btn:hover {
  background: var(--c-accent, #009294);
  color: #fff;
}

/* Marketing badges (Figma: TOP, OT 3 DNEY) */
.chip--top {
  background: #009294 !important;
  color: #fff !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  letter-spacing: 0.04em !important;
}
.chip--days {
  background: transparent !important;
  color: #009294 !important;
  border: 1px solid #85BAAF !important;
  font-weight: 500 !important;
  font-size: 11px !important;
  padding: 3px 9px !important;
  border-radius: 6px !important;
  text-transform: lowercase !important;
}

/* === FIGMA INNER PAGES + VIDEO BLOCKS 2026-08-11 (v9) === */

/* Hero-card: заголовок + подзаголовок внутри карточки #F3F7FA (Figma inner template G-04) */
.hero-card {
  background: #F3F7FA;
  border-radius: 24px;
  padding: 40px;
  min-height: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
}
.hero-card h1 { margin: 0 0 12px !important; }
.hero-card .page-intro { margin: 0; color: #5A6E7C; font-size: 18px; line-height: 1.5; }
@media (max-width: 640px) {
  .hero-card { padding: 24px 20px; min-height: 0; }
  .hero-card .page-intro { font-size: 16px; }
}

/* Content-cards: radius 24px, фон #F3F7FA (Figma) */
.content-section .card,
.content-section .panel,
.content-section .panel--soft {
  background: #F3F7FA !important;
  border: none !important;
  border-radius: 24px !important;
  box-shadow: none !important;
}
.content-section .card { padding: 24px; }
.content-section .panel,
.content-section .panel--soft { padding: 32px; }
@media (max-width: 640px) {
  .content-section .panel,
  .content-section .panel--soft { padding: 20px; }
}

/* Карточка раздела с фото лаборатории (О центре) */
.card--photo { padding: 0 !important; overflow: hidden; display: flex; flex-direction: column; }
.card--photo .card__photo { width: 100%; height: 180px; object-fit: cover; display: block; }
.card--photo .card__body { padding: 24px; }

/* Фильтры карьеры вне тёмного hero (светлый вариант pills) */
.career-filters { margin: 0 0 32px; }
.career-filters .career-hero__pills { margin-top: 0; }
.career-filters .career-pill {
  background: #F3F7FA;
  border: 1px solid #85BAAF;
  color: #5A6E7C;
}
.career-filters .career-pill.is-active,
.career-filters .career-pill:hover {
  background: #009294;
  border-color: #009294;
  color: #fff;
}

/* CTA-баннер (главная): видео-фон вместо статичного изображения */
.cta-banner__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.cta-banner .cta-banner__overlay {
  display: block !important;
  position: absolute;
  inset: 0;
  background: rgba(61, 78, 93, 0.55);
  z-index: 1;
}
.cta-banner__content { z-index: 2 !important; }

/* Карьера (главная): видео вместо фото команды */
.career-banner__media { overflow: hidden; }
.career-banner__media video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.career-banner__media .career-banner__overlay { z-index: 1; }

/* Fix: all badges in one row at top, aligned */
.service-card__chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  align-items: center !important;
  margin-bottom: 8px !important;
}
.service-card__chips .chip {
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1.4 !important;
}

/* ===== Services page v2 (id=3): hero slider, filter catalog, cart ===== */
.services-hero{position:relative;max-width:1201px;margin:16px auto 0;height:400px;border-radius:24px;overflow:hidden;background:#0E2A2C}
.services-hero__slides,.services-hero__slide{position:absolute;inset:0}
.services-hero__slide{background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease}
.services-hero__slide.is-active{opacity:1}
.services-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,60,62,.75) 0%,rgba(0,60,62,.4) 55%,rgba(0,60,62,.18) 100%)}
.services-hero__content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 56px;max-width:660px;color:#fff}
.services-hero__title{margin:0 0 12px;font-size:40px;font-weight:700;line-height:1.15;color:#fff}
.services-hero__subtitle{margin:0 0 24px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.92)}
.services-hero__actions{display:flex;gap:12px;flex-wrap:wrap}
.services-hero__btn-solid{display:inline-flex;align-items:center;padding:13px 26px;border-radius:100px;background:#009294;color:#fff;text-decoration:none;font-size:14px;font-weight:600;transition:background .2s}
.services-hero__btn-solid:hover{background:#007B7D}
.services-hero__btn-outline{display:inline-flex;align-items:center;padding:13px 26px;border-radius:100px;border:1px solid rgba(255,255,255,.75);background:transparent;color:#fff;text-decoration:none;font-size:14px;font-weight:600;transition:all .2s}
.services-hero__btn-outline:hover{background:rgba(255,255,255,.15)}
.services-hero__dots{position:absolute;z-index:3;left:56px;bottom:20px;display:flex;gap:8px}
.services-hero__dot{width:10px;height:10px;border-radius:100px;border:none;background:rgba(255,255,255,.45);cursor:pointer;padding:0;transition:background .3s,width .3s}
.services-hero__dot.is-active{background:#fff;width:26px}

.services-filter-bar{position:sticky;top:76px;z-index:90;max-width:1201px;margin:16px auto 0;background:#fff;border:1px solid #E8EDF4;border-radius:16px;box-shadow:0 8px 24px rgba(15,40,60,.07)}
.services-filter-bar__inner{display:flex;gap:12px;align-items:center;padding:14px 20px;flex-wrap:wrap}
.services-search{flex:1 1 220px;position:relative}
.services-search input{width:100%;box-sizing:border-box;padding:12px 16px 12px 42px;border:1px solid #85BAAF;border-radius:12px;font:inherit;font-size:14px;background:#F3F7FA;color:#2A3548}
.services-search input:focus{outline:none;border-color:#009294;background:#fff}
.services-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;stroke:#85BAAF;fill:none;stroke-width:2}
.services-filter{padding:12px 14px;border:1px solid #85BAAF;border-radius:12px;background:#fff;font:inherit;font-size:14px;color:#2A3548;cursor:pointer;max-width:220px}
.services-filter:focus{outline:none;border-color:#009294}
.services-equip-btn{padding:12px 22px;border-radius:100px;border:1px solid #009294;color:#009294;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;transition:all .2s}
.services-equip-btn:hover{background:#009294;color:#fff}
.cart-status{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:100px;border:none;background:#009294;color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}
.cart-status:hover{background:#007B7D}
.cart-counter{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:100px;background:#fff;color:#009294;font-size:12px;font-weight:700}

.services-catalog{max-width:1201px;margin:0 auto;padding:24px 0 8px}
.services-catalog__list{display:flex;flex-direction:column;gap:12px}
.service-row{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:20px 24px;background:#F3F7FA;border-radius:24px;transition:box-shadow .2s}
.service-row:hover{box-shadow:0 10px 30px rgba(0,146,148,.13)}
.service-row__badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.service-row__badges:empty{margin-bottom:0}
.service-row__title{margin:0 0 6px;font-size:18px;font-weight:600;line-height:1.35}
.service-row__title a{color:#2A3548;text-decoration:none}
.service-row__title a:hover{color:#009294}
.service-row__desc{margin:0;font-size:14px;line-height:1.5;color:#5A6B7B}
.service-row__actions{display:flex;flex-direction:column;gap:8px;align-items:stretch;min-width:170px}
.service-row__more{text-align:center;font-size:13px;color:#009294;text-decoration:none}
.service-row__more:hover{text-decoration:underline}
.cart-btn{padding:11px 18px;border-radius:100px;border:none;background:#009294;color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}
.cart-btn:hover{background:#007B7D}
.cart-btn.is-in-cart{background:#85BAAF}
.services-catalog__empty{padding:40px 24px;text-align:center;background:#F3F7FA;border-radius:24px;color:#5A6B7B;font-size:15px}
.services-catalog__empty button{margin-left:8px;padding:8px 18px;border-radius:100px;border:1px solid #009294;background:#fff;color:#009294;cursor:pointer;font:inherit;font-size:14px}

.services-seo{max-width:1201px;margin:0 auto;padding:24px 0 8px;font-size:15px;line-height:1.6;color:#5A6B7B}

.services-cta{position:relative;max-width:1201px;margin:32px auto 48px;border-radius:24px;overflow:hidden;min-height:280px;display:flex;align-items:center;background:#0E2A2C}
.services-cta__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.services-cta__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,60,62,.8),rgba(0,146,148,.45))}
.services-cta__content{position:relative;z-index:2;padding:48px 56px;color:#fff;max-width:640px}
.services-cta__content h2{margin:0 0 12px;font-size:30px;line-height:1.2;color:#fff}
.services-cta__content p{margin:0 0 24px;font-size:15px;line-height:1.55;color:rgba(255,255,255,.92)}
.services-cta__actions{display:flex;gap:12px;flex-wrap:wrap}

.cart-drawer{position:fixed;inset:0;z-index:1200;background:rgba(15,40,60,.45);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.cart-drawer.is-open{opacity:1;visibility:visible}
.cart-drawer__panel{position:absolute;top:0;right:0;height:100%;width:min(420px,92vw);background:#fff;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s ease;box-shadow:-12px 0 40px rgba(15,40,60,.18)}
.cart-drawer.is-open .cart-drawer__panel{transform:none}
.cart-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #E8EDF4}
.cart-drawer__head h2{margin:0;font-size:20px}
.cart-drawer__close{border:none;background:none;font-size:28px;line-height:1;cursor:pointer;color:#5A6B7B;padding:0 4px}
.cart-drawer__close:hover{color:#2A3548}
.cart-drawer__body{flex:1;overflow:auto;padding:16px 24px}
.cart-drawer__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.cart-drawer__list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#F3F7FA;border-radius:16px;font-size:14px;color:#2A3548}
.cart-drawer__remove{border:none;background:none;font-size:20px;line-height:1;cursor:pointer;color:#A8B4BD;padding:0 4px}
.cart-drawer__remove:hover{color:#C0392B}
.cart-drawer__empty{color:#5A6B7B;font-size:14px;margin:8px 0}
.cart-drawer__foot{display:flex;gap:10px;padding:16px 24px;border-top:1px solid #E8EDF4}
.cart-drawer__clear{padding:12px 18px;border-radius:100px;border:1px solid #A8B4BD;background:#fff;color:#5A6B7B;font:inherit;font-size:14px;cursor:pointer}
.cart-drawer__foot .services-hero__btn-solid{flex:1;justify-content:center;text-align:center}

@media (max-width:900px){
  .services-hero{height:300px;margin:8px 12px 0}
  .services-hero__content{padding:0 24px}
  .services-hero__title{font-size:28px}
  .services-hero__subtitle{font-size:14px}
  .services-hero__dots{left:24px;bottom:14px}
  .services-filter-bar{top:64px;margin:12px 12px 0}
  .services-filter-bar__inner{padding:10px 12px;gap:8px}
  .services-filter{max-width:none;flex:1 1 46%}
  .services-search{flex:1 1 100%}
  .services-catalog{padding:16px 12px 8px}
  .service-row{grid-template-columns:1fr;padding:16px 18px;gap:12px}
  .service-row__actions{flex-direction:row;align-items:center;justify-content:space-between;min-width:0}
  .services-seo{padding:16px 12px 8px}
  .services-cta{margin:28px 12px 40px}
  .services-cta__content{padding:32px 24px}
  .services-cta__content h2{font-size:24px}
}

/* Services rows: badge contrast + dedupe polish */
.service-row .chip--top{background:#009294;color:#fff}
.service-row .chip--days{background:#fff;color:#007B7D;border:1px solid #85BAAF}
.service-row .chip--bright{background:#DDEEEC;color:#0B5E60;font-weight:600}

/* Fix: nav dropdown items in column, not row */
.nav__group.is-open .nav__dropdown {
  display: flex !important;
  flex-direction: column !important;
}
.nav__dropdown .nav__item {
  display: block !important;
  width: 100% !important;
}

/* Fix: nav centered, not shifted left */
.site-header__inner {
  justify-content: space-between !important;
}
.nav {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* === Bootstrap grid compatibility for old pages === */
.content-section .container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.content-section .row,
.content-section .row-fluid {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}
.content-section .row.centerAb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 24px 0;
}
.content-section [class*=col-] {
  flex: 0 0 auto;
  padding-left: 15px;
  padding-right: 15px;
  box-sizing: border-box;
}
.content-section .col-xs-6 { flex: 0 0 50%; max-width: 50%; }
.content-section .col-sm-2 { flex: 0 0 16.66%; max-width: 16.66%; }
.content-section .col-sm-3 { flex: 0 0 25%; max-width: 25%; }
.content-section .col-sm-4 { flex: 0 0 33.33%; max-width: 33.33%; }
.content-section .col-sm-6 { flex: 0 0 50%; max-width: 50%; }
.content-section .col-sm-8 { flex: 0 0 66.66%; max-width: 66.66%; }
.content-section .col-sm-9 { flex: 0 0 75%; max-width: 75%; }
.content-section .col-sm-12 { flex: 0 0 100%; max-width: 100%; }
.content-section .col-md-3 { flex: 0 0 25%; max-width: 25%; }
.content-section .col-md-4 { flex: 0 0 33.33%; max-width: 33.33%; }
.content-section .col-md-6 { flex: 0 0 50%; max-width: 50%; }
.content-section .col-md-8 { flex: 0 0 66.66%; max-width: 66.66%; }
.content-section .col-md-9 { flex: 0 0 75%; max-width: 75%; }

/* Style the advantage cards */
.content-section .centerAb > [class*=col-] {
  text-align: center;
  margin-bottom: 24px;
}
.content-section .centerAb img.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 12px;
  border-radius: 12px;
}
.content-section .centerAb span {
  display: block;
  font-size: 13px;
  color: var(--c-ink-700, #5A6E7C);
  line-height: 1.4;
}

/* Responsive: 2 columns on tablet, 1 on mobile */
@media (max-width: 991px) {
  .content-section .col-sm-2,
  .content-section .col-sm-3,
  .content-section .col-sm-4,
  .content-section .col-md-3,
  .content-section .col-md-4 { flex: 0 0 50%; max-width: 50%; }
}
@media (max-width: 575px) {
  .content-section [class*=col-] { flex: 0 0 100%; max-width: 100%; }
  .content-section .row { margin-left: 0; margin-right: 0; }
}

/* Equipment page: sidebar filters */
.equipment-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 32px;
  align-items: start;
}
.equipment-sidebar {
  position: sticky;
  top: 90px;
}
.equipment-sidebar .filter-group {
  background: #F3F7FA;
  border-radius: 16px;
  padding: 20px;
  margin-bottom: 16px;
}
.equipment-sidebar .filter-group h4 {
  font-size: 14px;
  font-weight: 600;
  color: #009294;
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.equipment-sidebar label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-size: 14px;
  color: #5A6E7C;
  cursor: pointer;
}
.equipment-sidebar input[type=checkbox] {
  accent-color: #009294;
}
.equipment-content { min-width: 0; }

@media (max-width: 900px) {
  .equipment-layout { grid-template-columns: 1fr; }
  .equipment-sidebar { position: static; }
}

/* === Info materials page === */
.content-section .item-wrap {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 20px 0;
}
.content-section .item-img {
  flex: 0 0 200px;
}
.content-section .item-img img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}
.content-section .item-content {
  flex: 1;
}
.content-section .item-content .h3 {
  font-size: 18px;
  font-weight: 600;
  color: #009294;
  margin-bottom: 8px;
}
.content-section .item-content .h3 a {
  color: inherit;
  text-decoration: none;
}
.content-section .item-content .h3 a:hover { text-decoration: underline; }
.content-section .item-more a {
  color: #009294;
  font-size: 14px;
  text-decoration: none;
  font-weight: 500;
}
.content-section .item-more a:hover { text-decoration: underline; }
.content-section .item-divider {
  border-bottom: 1px solid #E8EDF4;
  margin: 0;
}
.content-section .d-flex { display: flex; }
.content-section .mb20px { margin-bottom: 20px; }
.content-section .mt20px { margin-top: 20px; }
.content-section .img-responsive {
  max-width: 100%;
  height: auto;
  display: block;
}

/* === Проверить статус заявки page === */
.content-section .elemnts_pagination .pagination {
  display: flex;
  gap: 8px;
  padding: 16px 0;
}

/* === Equipment page sidebar layout === */
.content-section .equipment-page > .container > .row {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 32px;
  align-items: start;
}
@media (max-width: 900px) {
  .content-section .equipment-page > .container > .row {
    grid-template-columns: 1fr;
  }
}

/* Fix: constrain container width in content-section */
.content-section .container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  width: 100% !important;
}
.content-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* === Page hero (inner pages) — 2026-08-11 === */
 .page-hero-old {
  position: relative;
  width: 100%;
  height: 320px;
  border-radius: 24px;
  overflow: hidden;
  margin-bottom: 32px;
  background-size: cover;
  background-position: center;
}
.page-hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,10,58,0.7) 0%, rgba(0,146,148,0.3) 100%);
}
.page-hero__content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 48px;
  max-width: 700px;
  color: #fff;
}
.page-hero__content h1 {
  color: #fff !important;
  font-size: 36px;
  margin: 0 0 12px;
}
.page-hero__content p {
  color: rgba(255,255,255,0.85);
  font-size: 18px;
  margin: 0;
  line-height: 1.5;
}
@media (max-width: 768px) {
   .page-hero-old { height: 240px; border-radius: 16px; }
  .page-hero__content { padding: 0 24px; }
  .page-hero__content h1 { font-size: 26px; }
  .page-hero__content p { font-size: 15px; }
}

/* === Page Hero Slider === */
 .page-hero-old {
  position: relative;
  width: 100%;
  height: 360px;
  border-radius: 24px;
  overflow: hidden;
  margin-bottom: 32px;
  background: #0E2A2C;
}
.page-hero__slides {
  position: absolute;
  inset: 0;
}
.page-hero__slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.page-hero__slide.is-active {
  opacity: 1;
}
.page-hero__slide .page-hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,10,58,0.65) 0%, rgba(0,146,148,0.25) 100%);
  z-index: 1;
}
.page-hero__content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 48px;
  max-width: 700px;
  color: #fff;
}
.page-hero__content h1 {
  color: #fff !important;
  font-size: 36px;
  margin: 0 0 12px;
  text-shadow: 0 2px 8px rgba(0,0,0,0.3);
}
.page-hero__content p {
  color: rgba(255,255,255,0.9);
  font-size: 18px;
  margin: 0;
  line-height: 1.5;
  text-shadow: 0 1px 4px rgba(0,0,0,0.3);
}
.page-hero__dots {
  position: absolute;
  z-index: 3;
  bottom: 20px;
  left: 48px;
  display: flex;
  gap: 8px;
}
.page-hero__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,0.6);
  background: transparent;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s;
}
.page-hero__dot.is-active {
  background: #fff;
  border-color: #fff;
  transform: scale(1.2);
}
@media (max-width: 768px) {
   .page-hero-old { height: 260px; border-radius: 16px; }
  .page-hero__content { padding: 0 24px; }
  .page-hero__content h1 { font-size: 26px; }
  .page-hero__content p { font-size: 15px; }
  .page-hero__dots { left: 24px; bottom: 16px; }
}

/* Fix: remove border between header and hero */
.site-header {
  border-bottom: none !important;
  box-shadow: none !important;
}

/* === Page Hero Slider — taller === */
.page-hero {
  position: relative;
  width: 100%;
  height: 520px !important;
  border-radius: 24px;
  overflow: hidden;
  margin-bottom: 40px;
  background: #0E2A2C;
}
.page-hero__slides {
  position: absolute;
  inset: 0;
}
.page-hero__slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.page-hero__slide.is-active {
  opacity: 1;
}
.page-hero__slide .page-hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,10,58,0.6) 0%, rgba(0,146,148,0.2) 100%);
  z-index: 1;
}
.page-hero__content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 64px;
  max-width: 800px;
  color: #fff;
}
.page-hero__content h1 {
  color: #fff !important;
  font-size: 44px !important;
  margin: 0 0 16px;
  text-shadow: 0 2px 12px rgba(0,0,0,0.4);
}
.page-hero__content p {
  color: rgba(255,255,255,0.9);
  font-size: 20px;
  margin: 0;
  line-height: 1.5;
  text-shadow: 0 1px 6px rgba(0,0,0,0.3);
}
.page-hero__dots {
  position: absolute;
  z-index: 3;
  bottom: 24px;
  left: 64px;
  display: flex;
  gap: 10px;
}
.page-hero__dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,0.6);
  background: transparent;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s;
}
.page-hero__dot.is-active {
  background: #fff;
  border-color: #fff;
  transform: scale(1.3);
}
@media (max-width: 768px) {
  .page-hero { height: 340px !important; border-radius: 16px; }
  .page-hero__content { padding: 0 24px; }
  .page-hero__content h1 { font-size: 28px !important; }
  .page-hero__content p { font-size: 15px; }
  .page-hero__dots { left: 24px; bottom: 16px; }
}

/* === Full-bleed hero === */
.page-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  border-radius: 0 !important;
  height: 560px !important;
}
.page-head {
  padding: 0 !important;
  max-width: 100% !important;
}
.page-head .crumbs {
  position: absolute;
  top: 24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: min(1201px, calc(100% - 40px));
}
.page-hero__content {
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  width: 100%;
}
.page-hero__dots {
  left: 50% !important;
  transform: translateX(-50%) !important;
  max-width: 1201px;
  width: 100%;
  padding-left: 40px;
}
/* Content section below hero */
.content-section {
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding: 40px 20px !important;
  width: 100% !important;
}
@media (max-width: 768px) {
  .page-hero { height: 380px !important; }
  .page-hero__content { padding: 0 24px !important; }
  .page-hero__dots { padding-left: 24px; }
  .page-head .crumbs { width: calc(100% - 32px); }
}

/* Fix: slides behind overlay, z-index order */
.page-hero__slides { z-index: 0; }
.page-hero__slide { z-index: 0; }
.page-hero__slide.is-active { z-index: 1; }
.page-hero__overlay { z-index: 2; }
.page-hero__content { z-index: 3; }
.page-hero__dots { z-index: 4; }

/* Fix: ensure background images render */
.page-hero__slide {
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* === Fix full-bleed hero — proper approach === */
.page-head {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
.page-hero {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 0 !important;
  height: 560px !important;
  position: relative !important;
}
.page-hero__content {
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  width: 100% !important;
}
.page-hero__dots {
  left: 0 !important;
  transform: none !important;
  max-width: 1201px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding-left: 40px !important;
}
.page-head .crumbs {
  position: absolute !important;
  top: 20px !important;
  left: 0 !important;
  width: 100% !important;
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
}

/* Fix: break hero out of .page padding */
.page-hero {
  margin-left: -20px !important;
  margin-right: -20px !important;
  width: calc(100% + 40px) !important;
}

/* === Hero slide <img> rendering === */
.page-hero__slide img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.page-hero__slide.is-active img {
  z-index: 1;
}

/* === Make hero truly full-width === */
main.page {
  padding: 0 !important;
  overflow-x: hidden !important;
}
.page-head {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}
.page-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  border-radius: 0 !important;
}
.page-hero__content {
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding: 0 40px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.page-hero__dots {
  left: 50% !important;
  transform: translateX(-50%) !important;
  max-width: 1201px !important;
  width: 100% !important;
  padding-left: 40px !important;
  box-sizing: border-box !important;
}
.page-head .crumbs {
  position: absolute !important;
  top: 20px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100% !important;
  max-width: 1201px !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
}
.content-section {
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding: 40px 20px !important;
  width: 100% !important;
}

/* Fix: hero rounded corners */
.page-hero {
  border-radius: 24px !important;
  margin-top: 16px !important;
  margin-bottom: 32px !important;
}
@media (max-width: 768px) {
  .page-hero { border-radius: 16px !important; }
}

/* === Equipment page (Figma-эталон) === */
.equip-page { max-width: 1201px; margin: 0 auto; padding: 0 20px; }

/* Controls bar */
.equip-controls {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.equip-tabs {
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid #B3DFDF;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  height: 56px;
}
.equip-tab {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 10px;
  border: none;
  background: transparent;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  color: #809CAF;
  cursor: pointer;
  height: 100%;
  transition: all 0.2s;
}
.equip-tab.is-active {
  background: #009294;
  color: #fff;
  border-radius: 8px;
}
.equip-tab.is-active::before {
  content: ;
  width: 8px;
  height: 8px;
  background: #fff;
  border-radius: 100px;
}
.equip-search {
  flex: 1 1 300px;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 56px;
  border: 1px solid #B3DFDF;
  background: #F3F7FA;
  border-radius: 16px;
  padding: 12px 16px;
}
.equip-search input {
  flex: 1;
  border: none;
  background: transparent;
  font: inherit;
  font-size: 18px;
  color: #272D31;
  outline: none;
}
.equip-search input::placeholder { color: #A8B4BD; }
.equip-search__btn {
  width: 40px;
  height: 40px;
  border: none;
  background: #009294;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
}
.equip-search__btn svg { width: 20px; height: 20px; stroke: #fff; }
.equip-btn-equip {
  display: inline-flex;
  align-items: center;
  height: 56px;
  padding: 0 24px;
  background: #009294;
  color: #fff;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
}

/* Layout: sidebar + content */
.equip-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 32px;
  align-items: start;
}
.equip-sidebar {
  position: sticky;
  top: 90px;
}
.filter-group {
  background: #F3F7FA;
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 12px;
}
.filter-group h4 {
  font-size: 14px;
  font-weight: 600;
  color: #009294;
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.filter-group label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-size: 14px;
  color: #5A6E7C;
  cursor: pointer;
}
.filter-group input[type=checkbox] { accent-color: #009294; }
.equip-reset {
  width: 100%;
  padding: 12px;
  border: 1px solid #009294;
  background: transparent;
  color: #009294;
  border-radius: 100px;
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
}
.equip-reset:hover { background: #009294; color: #fff; }

/* Equipment rows */
.equip-list { display: flex; flex-direction: column; gap: 8px; }
.equip-row {
  display: grid;
  grid-template-columns: 1fr auto 200px;
  gap: 24px;
  align-items: center;
  padding: 16px 20px;
  background: #F3F7FA;
  border-radius: 16px;
  transition: background 0.2s;
}
.equip-row:hover { background: #EDF3F5; }
.equip-row__tags { display: flex; gap: 8px; margin-bottom: 8px; }
.bage {
  display: inline-flex;
  align-items: center;
  padding: 2px 10px;
  background: #85BAAF;
  color: #fff;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: 0.02em;
}
.equip-row__title {
  font-size: 18px;
  font-weight: 500;
  color: #009294;
  margin: 0 0 4px;
  line-height: 22px;
}
.equip-row__desc {
  font-size: 14px;
  color: #809CAF;
  margin: 0;
  line-height: 16px;
}
.equip-row__meta {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-end;
}
.equip-row__time {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 10px;
  background: #E4ECF3;
  border-radius: 4px;
  font-size: 14px;
  color: #809CAF;
  white-space: nowrap;
}
.equip-row__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 24px;
  border: 1px solid #009294;
  background: transparent;
  color: #009294;
  border-radius: 100px;
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s;
}
.equip-row__btn:hover { background: #009294; color: #fff; }
.equip-row__btn.is-in-cart {
  background: #009294;
  color: #fff;
}
.equip-row__photo img {
  width: 200px;
  height: 130px;
  object-fit: cover;
  border-radius: 12px;
  display: block;
}
.equip-empty {
  text-align: center;
  padding: 60px 20px;
  color: #809CAF;
}
.equip-empty button {
  margin-top: 16px;
  padding: 10px 24px;
  border: 1px solid #009294;
  background: transparent;
  color: #009294;
  border-radius: 100px;
  font: inherit;
  cursor: pointer;
}

/* Responsive */
@media (max-width: 900px) {
  .equip-layout { grid-template-columns: 1fr; }
  .equip-sidebar { position: static; }
  .filter-group { display: none; }
  .filter-group.is-open { display: block; }
  .equip-row {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .equip-row__photo img { width: 100%; height: auto; }
  .equip-row__meta { flex-direction: row; align-items: center; justify-content: space-between; }
}

/* === FINAL page-hero — matches home hero === */
.page-hero {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 520px !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  margin: 16px 0 32px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  background: #000A3A !important;
}
@media (max-width: 768px) {
  .page-hero {
    height: 340px !important;
    border-radius: 16px !important;
  }
}

/* === Service rows (no photo, wider info) === */
.equip-row--service {
  grid-template-columns: 1fr auto !important;
  gap: 24px !important;
}
.equip-row--service .equip-row__info {
  padding-right: 16px;
}
.equip-row--service .equip-row__title {
  font-size: 20px !important;
}
.equip-row--service .equip-row__desc {
  font-size: 15px !important;
  line-height: 1.6 !important;
}
.equip-row--service .bage--top {
  background: #009294 !important;
  color: #fff !important;
}

/* === Fix advantages grid === */
.content-section .row.centerAb {
  gap: 0 !important;
  margin: 24px 0 !important;
}
.content-section .centerAb > [class*=col-] {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 32px;
  padding-left: 12px;
  padding-right: 12px;
}
.content-section .centerAb img.img-responsive {
  width: 80px;
  height: 80px;
  object-fit: contain;
  margin: 0 auto 12px;
  border-radius: 16px;
  background: #F3F7FA;
  padding: 12px;
  box-sizing: border-box;
}
.content-section .centerAb span {
  display: block;
  font-size: 13px;
  color: #5A6E7C;
  line-height: 1.5;
  max-width: 180px;
  margin: 0 auto;
}

/* === Advantages grid (clean) === */
.advantages-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  max-width: 1201px;
  margin: 32px auto;
  padding: 0 20px;
}
.adv-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background: #F3F7FA;
  border-radius: 16px;
  padding: 24px 16px;
}
.adv-card img {
  width: 72px;
  height: 72px;
  object-fit: contain;
  margin: 0 auto 16px;
}
.adv-card span {
  display: block;
  font-size: 13px;
  color: #5A6E7C;
  line-height: 1.5;
}
@media (max-width: 991px) {
  .advantages-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 575px) {
  .advantages-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .adv-card { padding: 16px 12px; }
  .adv-card img { width: 56px; height: 56px; }
}

/* === Status Check Form === */
.status-check {
  max-width: 720px;
  margin: 0 auto;
  padding: 20px;
}
.status-check__card {
  background: #F3F7FA;
  border-radius: 24px;
  padding: 48px 40px;
  text-align: center;
}
.status-check__title {
  font-size: 28px;
  font-weight: 700;
  color: #009294;
  margin: 0 0 8px;
}
.status-check__subtitle {
  font-size: 16px;
  color: #809CAF;
  margin: 0 0 32px;
}
.status-check__form {
  display: flex;
  gap: 16px;
  align-items: flex-end;
  flex-wrap: wrap;
  justify-content: center;
}
.status-check__field {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  flex: 1 1 200px;
  min-width: 180px;
}
.status-check__field label {
  font-size: 14px;
  font-weight: 500;
  color: #5A6E7C;
}
.status-check__field input,
.status-check__field select {
  width: 100%;
  height: 56px;
  padding: 0 16px;
  border: 1px solid #85BAAF;
  border-radius: 12px;
  font: inherit;
  font-size: 16px;
  color: #272D31;
  background: #fff;
  box-sizing: border-box;
  outline: none;
  transition: border-color 0.2s;
}
.status-check__field input:focus,
.status-check__field select:focus {
  border-color: #009294;
}
.status-check__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 56px;
  padding: 0 32px;
  background: #009294;
  color: #fff;
  border: none;
  border-radius: 100px;
  font: inherit;
  font-size: 18px;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s;
}
.status-check__btn:hover { background: #007B7B; }
.status-check__btn svg { stroke: #fff; }

/* Loader */
.status-check__loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 32px;
  color: #809CAF;
}
.status-check__spinner {
  width: 24px;
  height: 24px;
  border: 3px solid #E4ECF3;
  border-top-color: #009294;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* Result */
.status-check__result { margin-top: 24px; }
.status-check__alert {
  padding: 16px 24px;
  border-radius: 12px;
  font-size: 15px;
  text-align: center;
}
.status-check__alert--error {
  background: #FFF0F0;
  color: #D64545;
}
.status-check__alert--info {
  background: #E8F4F4;
  color: #009294;
}

/* Order cards */
.status-check__orders {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.status-order {
  background: #F3F7FA;
  border-radius: 16px;
  padding: 20px 24px;
}
.status-order--border { border-top: 1px solid #E4ECF3; }
.status-order__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.status-order__number {
  font-size: 16px;
  font-weight: 600;
  color: #272D31;
}
.status-order__date {
  font-size: 14px;
  color: #A8B4BD;
}
.status-order__body {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.status-order__status {
  display: inline-flex;
  padding: 6px 16px;
  background: #E8F4F4;
  color: #009294;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 500;
}
.status-order__mesto {
  font-size: 14px;
  color: #5A6E7C;
}

/* Responsive */
@media (max-width: 600px) {
  .status-check__card { padding: 32px 20px; }
  .status-check__form { flex-direction: column; align-items: stretch; }
  .status-check__btn { justify-content: center; }
  .status-check__title { font-size: 22px; }
}

/* Fix: hidden attribute must override display:flex */
.status-check__loader[hidden] {
  display: none !important;
}

/* === Social articles === */
 .social-articles-OLD {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.social-article {
  background: #F3F7FA;
  border-radius: 20px;
  padding: 32px 36px;
}
.social-article__title {
  font-size: 22px;
  font-weight: 600;
  color: #009294;
  margin: 0 0 4px;
}
.social-article__date {
  font-size: 14px;
  color: #A8B4BD;
  margin: 0 0 16px;
}
.social-article p {
  font-size: 16px;
  line-height: 1.7;
  color: #5A6E7C;
  margin: 0 0 12px;
}
.social-article p:last-child { margin-bottom: 0; }
.social-article strong { color: #272D31; font-weight: 600; }
/* Gallery slider inside article */
.page-hero--gallery .page-hero__slide img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.page-hero--gallery .page-hero__overlay {
  background: linear-gradient(180deg, rgba(0,10,58,0.2) 0%, rgba(0,10,58,0.4) 100%) !important;
}
@media (max-width: 600px) {
  .social-article { padding: 24px 20px; }
  .social-article__title { font-size: 18px; }
  .social-article p { font-size: 15px; }
}

/* === Fix social articles width === */
.social-articles {
  max-width: 1201px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

/* === Social article cards (main page) === */
.social-card {
  display: flex;
  gap: 24px;
  background: #F3F7FA;
  border-radius: 20px;
  padding: 24px;
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s, transform 0.2s;
  margin-bottom: 20px;
}
.social-card:hover {
  box-shadow: 0 4px 20px rgba(0,146,148,0.12);
  transform: translateY(-2px);
}
.social-card__icon {
  flex: 0 0 200px;
  height: 140px;
  border-radius: 12px;
  overflow: hidden;
}
.social-card__icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.social-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.social-card__date {
  font-size: 14px;
  color: #A8B4BD;
  margin-bottom: 4px;
}
.social-card__title {
  font-size: 20px;
  font-weight: 600;
  color: #009294;
  margin: 0 0 8px;
}
.social-card__text {
  font-size: 15px;
  color: #5A6E7C;
  line-height: 1.5;
  margin: 0 0 12px;
  flex: 1;
}
.social-card__link {
  font-size: 15px;
  color: #009294;
  font-weight: 500;
}

/* === Article detail pages === */
.article-detail {
  max-width: 900px;
  margin: 0 auto;
}
.article-detail__lead {
  font-size: 18px;
  color: #272D31;
  line-height: 1.7;
  margin: 0 0 24px;
  font-weight: 500;
}
.article-detail h2 {
  font-size: 22px;
  font-weight: 600;
  color: #009294;
  margin: 32px 0 12px;
}
.article-detail p {
  font-size: 16px;
  color: #5A6E7C;
  line-height: 1.7;
  margin: 0 0 16px;
}
.article-detail ul {
  margin: 0 0 16px;
  padding-left: 20px;
}
.article-detail li {
  font-size: 16px;
  color: #5A6E7C;
  line-height: 1.7;
  margin-bottom: 8px;
}
.article-detail strong { color: #272D31; }
.article-detail__quote {
  border-left: 4px solid #009294;
  padding: 16px 24px;
  margin: 24px 0;
  background: #F3F7FA;
  border-radius: 0 12px 12px 0;
  font-size: 16px;
  color: #272D31;
  font-style: italic;
}

@media (max-width: 600px) {
  .social-card { flex-direction: column; gap: 16px; }
  .social-card__icon { flex: 0 0 auto; width: 100%; height: 200px; }
  .article-detail { padding: 0 16px; }
}
/* === Clients page (Заказчикам) === */
.clients-page { max-width: 1201px; margin: 0 auto; padding: 0 20px; }

/* HERO */
.clients-hero {
  position: relative;
  height: 520px;
  border-radius: 24px;
  overflow: hidden;
  background: linear-gradient(135deg, #60bbd7 0%, #009294 100%);
  margin: 16px 0 60px;
}
.clients-hero__bg {
  position: absolute; inset: 0;
  background: url(/assets/images/figma-new/hero-main.jpg) center/cover;
  opacity: 0.3;
}
.clients-hero__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,10,58,0.3) 0%, rgba(0,76,89,0.6) 100%);
}
.clients-hero__content {
  position: relative; z-index: 2;
  padding: 60px 48px;
  display: flex; flex-direction: column;
  gap: 24px; height: 100%;
  justify-content: center;
  max-width: 700px;
}
.clients-hero__title {
  color: #fff; font-size: 42px; font-weight: 700; line-height: 46px; margin: 0;
}
.clients-hero__sub {
  color: rgba(255,255,255,0.9); font-size: 18px; line-height: 22px; margin: 0;
}
.clients-hero__search { margin-top: 8px; }
.clients-hero__search-label {
  color: #fff; font-size: 20px; font-weight: 500; margin: 0 0 12px;
}
.clients-search-bar {
  display: flex; align-items: center; gap: 12px;
  background: #F3F7FA; border-radius: 100px; padding: 8px 10px 8px 20px;
  max-width: 540px;
}
.clients-search-bar input {
  flex: 1; border: none; background: transparent; outline: none;
  font: inherit; font-size: 18px; color: #272D31;
}
.clients-search-bar input::placeholder { color: #A8B4BD; }
.clients-search-btn {
  width: 40px; height: 40px; border: none; border-radius: 50%;
  background: #009294; color: #fff; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.clients-search-btn svg { stroke: #fff; }

/* STATS */
.clients-stats {
  background: linear-gradient(180deg, #009294 0%, #F3F7FA 100%);
  border-radius: 24px; padding: 40px 32px; margin-bottom: 60px;
}
.clients-stats__title {
  color: #fff; font-size: 32px; font-weight: 500; margin: 0 0 32px;
}
.clients-stats__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-bottom: 24px;
}
.stat-card {
  background: #fff; border-radius: 24px; padding: 24px;
  display: flex; flex-direction: column; gap: 16px;
}
.stat-card__badge {
  display: inline-flex; align-self: flex-start;
  padding: 6px 12px; background: #009294; color: #ccf2ea;
  border-radius: 100px; font-size: 14px; font-weight: 500;
}
.stat-card__num {
  color: #009294; font-size: 28px; font-weight: 500; line-height: 30px; margin: 0;
}
.stat-card__desc {
  color: #85BAAF; font-size: 16px; line-height: 18px; margin: 0;
}
.clients-stats__features {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
  background: #fff; border-radius: 24px; padding: 24px; margin-bottom: 24px;
}
.feature-item {
  display: flex; align-items: flex-start; gap: 16px;
}
.feature-item__icon {
  width: 40px; height: 40px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 24px;
}
.feature-item__title { color: #009294; font-size: 20px; font-weight: 500; margin: 0 0 4px; }
.feature-item__desc { color: #009294; font-size: 16px; line-height: 18px; margin: 0; }

/* BANNER */
.clients-banner {
  position: relative; height: 380px; border-radius: 24px; overflow: hidden;
  margin-bottom: 60px;
  background: url(/assets/images/figma-new/hero-main.jpg) center/cover;
}
.clients-banner__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(248,250,252,0.85) 0%, rgba(248,250,252,0.3) 100%);
}
.clients-banner__content {
  position: relative; z-index: 2; padding: 56px;
  display: flex; flex-direction: column; gap: 32px;
  max-width: 606px; height: 100%; justify-content: center;
}
.clients-banner__title {
  color: #809CAF; font-size: 36px; font-weight: 500; line-height: 40px; margin: 0;
}
.clients-banner__actions { display: flex; flex-direction: column; gap: 16px; }
.clients-banner__hint { color: #6D8A9F; font-size: 18px; font-weight: 500; margin: 0; }

/* LABS */
.clients-labs { margin-bottom: 60px; }
.clients-labs__layout {
  display: flex; gap: 8px; align-items: stretch;
}
.clients-labs__list {
  display: flex; flex-direction: column; gap: 8px; flex-shrink: 0;
}
.lab-tag {
  padding: 24px; background: #F3F7FA; border-radius: 12px;
  font-size: 18px; color: #5A6E7C; cursor: pointer;
  transition: background 0.2s;
}
.lab-tag:hover { background: #E8F4F4; color: #009294; }
.clients-labs__image {
  flex: 1; min-width: 0; border-radius: 24px;
  background: url(/assets/images/figma-new/lab_preview_1.jpg) center/cover;
  min-height: 400px;
}

/* SERVICES */
.clients-services {
  background: linear-gradient(180deg, #009294 0%, #F3F7FA 100%);
  border-radius: 24px; padding: 40px 32px; margin-bottom: 60px;
}
.section-title--light { color: #fff; font-size: 32px; font-weight: 500; margin: 0 0 32px; }
.clients-services__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px;
}
.svc-card {
  background: #fff; border-radius: 24px; padding: 24px 20px;
  display: flex; flex-direction: column; gap: 12px;
  min-height: 292px;
}
.svc-card__badges { display: flex; gap: 5px; flex-wrap: wrap; }
.svc-card__badges span {
  padding: 4px 10px; background: #85BAAF; color: #fff;
  border-radius: 4px; font-size: 10px; font-weight: 500;
}
.svc-card__divider { height: 1px; background: #009294; margin: 4px 0; }
.svc-card h3 { color: #009294; font-size: 20px; font-weight: 500; line-height: 22px; margin: 0; }
.svc-card p { color: #5A6E7C; font-size: 14px; line-height: 16px; margin: 0; }

/* LK BANNER */
.clients-lk {
  display: flex; gap: 8px; align-items: stretch; margin-bottom: 60px;
}
.clients-lk__text {
  flex: 1; background: #fff; border-radius: 24px; padding: 32px;
  display: flex; flex-direction: column; gap: 24px;
}
.clients-lk__text h2 { color: #009294; font-size: 32px; font-weight: 500; line-height: 34px; margin: 0; }
.clients-lk__text p { color: #809CAF; font-size: 18px; line-height: 24px; margin: 0; }
.clients-lk__image {
  flex: 1.4; border-radius: 24px;
  background: url(/assets/images/figma-new/lab_preview_3.jpg) center/cover;
  min-height: 400px;
}

/* STEPS */
.clients-steps {
  margin-bottom: 60px;
}
.section-title--center { color: #009294; font-size: 32px; font-weight: 500; text-align: center; margin: 0 0 32px; }
.clients-steps__grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px;
  position: relative;
}
.step-card {
  border: 1px solid #B3DFDF; background: #F3F7FA; border-radius: 24px;
  padding: 24px; display: flex; flex-direction: column; gap: 16px;
  min-height: 170px;
}
.step-card__num {
  width: 52px; height: 52px; background: #009294; border-radius: 8px;
  color: #fff; font-size: 36px; font-weight: 400;
  display: flex; align-items: center; justify-content: center;
  line-height: 1;
}
.step-card h3 { color: #009294; font-size: 20px; font-weight: 500; line-height: 22px; margin: 0; }
.step-card p { color: #5A6E7C; font-size: 16px; line-height: 18px; margin: 0; }

/* FAQ */
.clients-faq { margin-bottom: 60px; }
.section-title { color: #009294; font-size: 32px; font-weight: 500; margin: 0 0 32px; }
.faq-list { display: flex; flex-direction: column; gap: 8px; }
.faq-item {
  border: 1px solid #B3DFDF; background: #fff; border-radius: 24px; overflow: hidden;
}
.faq-item__header {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 24px; cursor: pointer;
}
.faq-item__header span { color: #5A6E7C; font-size: 20px; font-weight: 500; line-height: 22px; }
.faq-item__toggle {
  width: 48px; height: 48px; border-radius: 50%; border: none;
  background: #85BAAF; color: #fff; font-size: 24px; cursor: pointer;
  flex-shrink: 0;
}
.faq-item__body {
  max-height: 0; overflow: hidden; transition: max-height 0.3s ease;
  padding: 0 24px;
}
.faq-item__body p { color: #5A6E7C; font-size: 16px; line-height: 18px; margin: 0 0 24px; }
.faq-item.is-open .faq-item__toggle { background: #009294; }

/* CTA */

/* RESPONSIVE */
@media (max-width: 991px) {
  .clients-hero__title { font-size: 28px; line-height: 32px; }
  .clients-stats__grid, .clients-services__grid, .clients-steps__grid { grid-template-columns: repeat(2, 1fr); }
  .clients-stats__features { grid-template-columns: 1fr; }
  .clients-labs__layout, .clients-lk { flex-direction: column; }
  .clients-lk__image { min-height: 240px; }
}
@media (max-width: 600px) {
  .clients-hero { height: 420px; }
  .clients-hero__content { padding: 32px 24px; }
  .clients-hero__title { font-size: 22px; line-height: 26px; }
  .clients-stats__grid, .clients-services__grid, .clients-steps__grid { grid-template-columns: 1fr; }
  .clients-banner { height: auto; }
  .clients-banner__content { padding: 32px 24px; }
  .clients-banner__title { font-size: 24px; line-height: 28px; }
  .faq-item__header span { font-size: 16px; }
}
/* === UNIFIED WIDTH: all blocks match hero (1201px) === */
.content-section { max-width: 1201px !important; margin: 0 auto !important; padding: 0 20px !important; }
.article-detail { max-width: 1201px !important; margin: 0 auto !important; padding: 0 20px !important; }
.status-check { max-width: 1201px !important; margin: 0 auto !important; padding: 20px !important; }
.social-articles { max-width: 1201px !important; margin: 0 auto !important; padding: 0 20px !important; }
.clients-page { max-width: 1201px !important; margin: 0 auto !important; padding: 0 20px !important; }
.equip-page { max-width: 1201px !important; margin: 0 auto !important; padding: 0 20px !important; }
.advantages-grid { max-width: 1201px !important; margin: 32px auto !important; padding: 0 20px !important; }
.page-hero { max-width: 1201px !important; margin-left: auto !important; margin-right: auto !important; }

/* legal-footer (canon 2026-09-08 t_745bcc4b): 14/16 #A8B4BD in base.css; only underline offset kept */
.legal-footer a { text-underline-offset: 2px; }

/* Mobile footer cleanup (2026-08-31): hide maps and labs accordion in mobile footer */
@media(max-width:767px){
  #contacts .maps-grid { display: none !important; }
  #contacts .mobile-accordion { display: none !important; }
  #contacts .labs-card { display: block !important; }
}

/* FB2.Contacts per Figma (2026-09-01, canon fix 2026-09-08 t_745bcc4b: root values moved to base.css, override removed) */
.lab-label{margin:12px 0 2px;color:#8fa1ad;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.map-link{color:var(--teal);font-size:12px;text-decoration:underline;text-underline-offset:3px}
.foot-org{font-size:13px;line-height:1.45;letter-spacing:.01em}
@media(max-width:767px){.labs-grid{grid-template-columns:1fr}}

/* Legal index cards */
.legal-index{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}
.legal-card{display:flex;flex-direction:column;gap:8px;padding:22px 24px;background:#fff;border:1px solid var(--line,#dce8ee);border-radius:14px;text-decoration:none;transition:box-shadow .15s,border-color .15s}
.legal-card:hover{border-color:var(--teal);box-shadow:0 4px 18px rgba(0,60,80,.08)}
.legal-card strong{color:var(--teal);font-size:16px;font-weight:600}
.legal-card span{color:#5b6b76;font-size:13px;line-height:1.5}
.legal-page h1{margin-bottom:6px}
.legal-page p{color:#5b6b76}
@media(max-width:767px){.legal-index{grid-template-columns:1fr}}

/* Company form in account profile */
.account-company-form{margin-top:22px;padding:22px 24px;background:#fff;border:1px solid var(--line,#dce8ee);border-radius:14px;display:grid;gap:14px}
.account-company-form h4{margin:0;color:var(--teal);font-size:16px}
.account-company-form .account-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.account-company-form label{display:grid;gap:5px;font-size:12px;color:#5b6b76}
.account-company-form input{padding:9px 12px;border:1px solid #cfe1e6;border-radius:9px;font-size:14px;color:#22313b}
.account-company-form input:focus{outline:0;border-color:var(--teal)}
.account-company-form .form-actions{display:flex;align-items:center;gap:12px}
.account-company-form [data-company-message]{font-size:12px}
@media(max-width:767px){.account-company-form .account-form-row{grid-template-columns:1fr}}

/* Home hero background video */
.hero-box video.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}
.hero-box.video-ready video.hero-video{opacity:1}
.hero-box.video-ready > img{visibility:hidden}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,22,34,.55) 0%,rgba(0,22,34,.28) 55%,rgba(0,22,34,.05) 78%);pointer-events:none}
.hero-box .hero-copy{z-index:2}
@media(max-width:767px){.hero-box video.hero-video{display:none}.hero-box.video-ready > img{visibility:visible}}

/* News list cards with photos */
.news-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.news-card{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.news-card__media{height:200px;overflow:hidden;background:#eef4f7}
.news-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.news-card:hover .news-card__media img{transform:scale(1.04)}
.news-card__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px}
.news-card__date{color:#8aa0af;font-size:12px}
.news-card__title{margin:0;font-size:16px;line-height:1.35;color:#22313b}
.news-card__intro{margin:0;font-size:13px;color:#5b6b76;line-height:1.5}
.news-card__link{color:var(--teal);font-size:13px;margin-top:auto}
.news-card .news-date{color:#fff;font-size:10px;font-weight:700;background:#85BAAF}
.news-card h3{margin:0;font-size:15px;line-height:1.35}
.news-card .btn{margin-top:8px;align-self:flex-start}
@media(max-width:767px){.news-list{grid-template-columns:1fr}}

/* News detail photo */
.news-detail__photo{margin:0 0 20px;border-radius:12px;overflow:hidden}
.news-detail__photo img{width:100%;height:auto;display:block}

/* News pagination */
.news-more{display:flex;align-items:center;gap:14px;justify-content:center;margin-top:28px}

/* Awards without photo: text card */
.awards-stage--noimg .awards-doc{display:none}
.awards-stage--noimg{background:linear-gradient(135deg,#f4fafb,#e8f3f4);min-height:280px}

/* Header login button alignment: same height as circle-btn (34px) */
.header-actions .login{height:34px;padding:0 14px;border-radius:999px;align-items:center}
.header-actions .login .icon{flex:0 0 18px}
/* Logged-in state */
.header-actions .login.is-auth{background:var(--teal);color:#fff;border-color:var(--teal)}
.header-actions .login.is-auth:hover{background:#00807f;border-color:#00807f}
.header-actions .login.is-auth .login-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* History: compact year rail — 15 years fit without scroll-jump */
.history-rail{max-height:480px;padding:24px 26px}
.history-years{gap:0}
.history-year{font-size:17px;padding:6px 18px}
.history-year.active{transform:scale(1.18)}

/* History rail: narrow fade zones so last years stay readable */
.history-rail:before{background:linear-gradient(#fff 0%,transparent 3%,transparent 100%)!important}

/* History active year: no blur halo (it blurs neighbouring years) */
.history-year.active:after{display:none!important}
.history-year.active{background:rgba(213,240,235,.92)!important;box-shadow:inset 0 0 0 1px rgba(0,154,155,.14)!important}
