/* AIVA Group — CSS страницы «about-us» (вынесено из инлайн-<style> при рефакторинге).
   Грузится после main.css + site-fixes.css (см. inc/enqueue.php, блок 4b). */
/* ===================================================================
   ABOUT PAGE: «О компании» — секции только этой страницы (.ab-*)
   Наследует токены/типографику дизайн-системы
   =================================================================== */
/* hero layout: текст слева + «карточка-визитка» справа */
.ab-hero-grid{grid-template-columns:1.05fr .95fr;gap:56px}
.ab-card{position:relative;z-index:2;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;overflow:hidden;opacity:0}
.ab-card-top{background:var(--ink);color:#fff;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ab-card-top .ac-logo img{height:34px;width:auto;display:block;filter:brightness(0) invert(1)}
.ab-card-top .ac-est{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#8da0ae;text-align:right;line-height:1.4}
.ab-card-top .ac-est b{display:block;font-family:var(--font-h);font-size:21px;color:#fff;letter-spacing:-.01em}
.ab-card-rows{padding:8px 28px 26px}
.ab-card-rows .acr{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.ab-card-rows .acr:last-child{border-bottom:0}
.ab-card-rows .acr-ic{width:44px;height:44px;flex-shrink:0;border-radius:var(--r-sm);background:var(--blue-tint);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:17px}
.ab-card-rows .acr-tx b{display:block;font-family:var(--font-h);font-weight:800;font-size:16px;letter-spacing:-.01em}
.ab-card-rows .acr-tx span{display:block;font-size:13.5px;color:var(--gray);margin-top:2px}
@media(max-width:980px){.ab-hero-grid{grid-template-columns:1fr;gap:40px}}

/* «о компании» — текстовый блок с фактами (на тёмном) */
.ab-intro{background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:120px 0}
.ab-intro::before{content:'';position:absolute;inset:0;opacity:.28;background-image:linear-gradient(#1e3140 1px,transparent 1px),linear-gradient(90deg,#1e3140 1px,transparent 1px);background-size:80px 80px}
.ab-intro .wrap{position:relative;z-index:2}
.ab-intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}
.ab-intro .tag{color:#fff}.ab-intro .tag::after{background:var(--coral)}
.ab-intro h2{font-family:var(--font-h);font-weight:800;font-size:clamp(30px,4.2vw,52px);line-height:1.08;letter-spacing:-.02em;text-transform:uppercase;margin-top:18px}
.ab-intro h2 em{font-style:normal;color:#7fb0d4}
.ab-intro-body p{color:#bcccd8;font-size:17px;margin-bottom:22px}
.ab-intro-body p:last-child{margin-bottom:0}
.ab-intro-body p b{color:#fff;font-weight:700}
.ab-intro-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.ab-intro-tags span{font-size:13px;font-weight:600;color:#cfe0ec;border:1px solid #2c4456;border-radius:999px;padding:9px 16px;display:inline-flex;align-items:center;gap:9px}
.ab-intro-tags span i{color:#7fb0d4;font-size:12px}
@media(max-width:900px){.ab-intro{padding:80px 0}.ab-intro-grid{grid-template-columns:1fr;gap:34px}}

/* «наши ценности» — сетка карточек (на светлом) */
.ab-values{padding:120px 0}
.ab-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:56px}
.ab-head h2{font-family:var(--font-h);font-weight:800;font-size:clamp(30px,4.2vw,56px);line-height:1.07;letter-spacing:-.02em;text-transform:uppercase;margin-top:16px}
.ab-head h2 em{font-style:normal;color:var(--blue)}
.ab-head .sec-note{max-width:400px;color:var(--gray);font-size:16px}
.ab-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ab-val{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:36px 32px 38px;transition:border-color .3s,transform .3s}
.ab-val:hover{border-color:var(--blue);transform:translateY(-5px)}
.ab-val .av-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}
.ab-val .av-ic{width:52px;height:52px;flex-shrink:0;background:var(--blue);color:#fff;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-size:20px;transition:background .3s}
.ab-val:hover .av-ic{background:var(--ink)}
.ab-val .av-num{font-family:var(--font-h);font-weight:800;font-size:14px;color:var(--line);letter-spacing:.05em}
.ab-val:hover .av-num{color:var(--blue)}
.ab-val h3{font-family:var(--font-h);font-weight:800;font-size:21px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.15;margin-bottom:14px;overflow-wrap:break-word;hyphens:auto}
.ab-val p{font-size:15px;color:var(--gray);line-height:1.55}
@media(max-width:980px){.ab-values-grid{grid-template-columns:1fr;gap:16px}.ab-values{padding:80px 0}}

/* «что мы делаем» — список услуг компании (светлый, на gray-bg) */
.ab-do{padding:120px 0;background:var(--gray-bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ab-do-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.ab-do-item{display:flex;gap:20px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 30px;transition:border-color .3s,transform .3s}
.ab-do-item:hover{border-color:var(--blue);transform:translateY(-4px)}
.ab-do-item .adi-ic{width:50px;height:50px;flex-shrink:0;border-radius:var(--r-sm);background:var(--blue-tint);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:19px;transition:all .3s}
.ab-do-item:hover .adi-ic{background:var(--blue);color:#fff}
.ab-do-item .adi-tx b{display:block;font-family:var(--font-h);font-weight:800;font-size:18px;text-transform:uppercase;letter-spacing:-.01em;margin-bottom:8px}
.ab-do-item .adi-tx p{font-size:14.5px;color:var(--gray);line-height:1.5}
@media(max-width:900px){.ab-do{padding:80px 0}.ab-do-grid{grid-template-columns:1fr;gap:14px}}

/* «за кадром» — кинополоса с видео (скролл-скраб + смена заголовков) */
.ab-film{position:relative;background:#0a131a;height:320vh}
.ab-film-pin{position:sticky;top:0;height:100vh;min-height:580px;overflow:hidden;display:flex;align-items:center}
.ab-film-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.ab-film-pin::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(8,17,24,.8) 0%,rgba(8,17,24,.54) 42%,rgba(8,17,24,.26) 72%,rgba(8,17,24,.54) 100%)}
.ab-film-inner{position:relative;z-index:2;width:100%;max-width:1440px;margin:0 auto;padding:0 48px}
/* локальная тёмная подложка ТОЛЬКО под текстом — видео остаётся ярким справа */
.ab-film-inner::before{content:'';position:absolute;left:-40px;top:-46px;bottom:-46px;width:min(1060px,82%);background:linear-gradient(90deg,rgba(8,17,24,.9) 0%,rgba(8,17,24,.82) 46%,rgba(8,17,24,.56) 70%,rgba(8,17,24,.18) 88%,rgba(8,17,24,0) 100%);z-index:-1;pointer-events:none}
.af-eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c3dcee;margin-bottom:30px;text-shadow:0 1px 10px rgba(0,0,0,.65)}
.af-eyebrow::before{content:'';width:36px;height:1px;background:var(--coral)}
.af-heads{position:relative;height:clamp(130px,20vh,220px)}
.af-h{position:absolute;left:0;top:0;margin:0;font-family:var(--font-h);font-weight:800;font-size:clamp(28px,4.4vw,58px);line-height:1.07;letter-spacing:-.02em;text-transform:uppercase;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.85),0 0 28px rgba(0,0,0,.5);opacity:0;transform:translateY(22px);transition:opacity .3s ease,transform .45s ease;will-change:opacity,transform}
.af-h em{font-style:normal;color:var(--coral)}
.af-h.on{opacity:1;transform:none}
.af-cap{margin-top:26px;font-size:17px;line-height:1.62;color:#e8eff5;max-width:500px;text-shadow:0 1px 10px rgba(0,0,0,.82)}
.af-prog{position:absolute;left:48px;right:48px;bottom:34px;z-index:2;height:2px;background:rgba(255,255,255,.16);border-radius:2px;overflow:hidden}
.af-prog-bar{height:100%;width:0;background:var(--coral);border-radius:2px}
@media(max-width:900px){
  .ab-film{height:auto}
  .ab-film-pin{position:static;height:auto;min-height:0;padding:78px 0}
  .ab-film-pin::before{background:linear-gradient(180deg,rgba(8,17,24,.6) 0%,rgba(8,17,24,.7) 55%,rgba(8,17,24,.8) 100%)}
  .ab-film-inner{padding:0 20px}
  .ab-film-inner::before{display:none}
  /* мобилка: заголовки сменяются ПО ОДНОМУ с вертикальным «перелистыванием» (анимация в JS); окно с обрезкой, высота фикс — без скачков */
  .af-heads{height:clamp(84px,22vw,112px);position:relative;overflow:hidden}
  .af-h{position:absolute;left:0;top:0;right:0;opacity:0;transition:none;font-size:clamp(26px,7.4vw,36px);line-height:1.08;margin:0;text-shadow:0 2px 12px rgba(0,0,0,.7)}
  .af-h.on{opacity:1}
  .af-cap{margin-top:18px}
  .af-prog{display:none}
}
