/*
  PD-8 LANDING — ОСНОВНЫЕ СТИЛИ
  Быстрый ориентир:
  1. :root / body — базовые параметры страницы
  2. .header / .nav / .menu — шапка и меню
  3. .hero — первый экран PD-8
  4. .section и тематические классы — основные разделы
  5. @media — мобильная адаптация
  Примечание: CSS-комментарии оформляются через косую черту и звёздочку.
*/

/* =========================================================
   UEC PD-8 landing / official-source rebuild
   Colors and spacing are intentionally restrained.
   ========================================================= */

:root{
  --ink:#030b11;
  --ink2:#061722;
  --blue:#082338;
  --blue2:#0d3149;
  --green:#102e2a;
  --paper:#eef3f5;
  --paper2:#f7f9fa;
  --text:#f7fafb;
  --dark:#09131a;
  --muted:#8fa3af;
  --line:rgba(214,232,241,.15);
  --line-dark:rgba(9,28,40,.13);
  --red:#cf352f;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  overflow-x:hidden;
  background:var(--ink);
  color:var(--text);
  font-family:Inter,"Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit}
h1,h2,h3,p{margin-top:0}

.header{
  position:fixed;
  z-index:100;
  top:0;left:0;right:0;
  height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 4.5vw;
  background:rgba(239,244,246,.96);
  border-bottom:1px solid rgba(8,25,35,.09);
  backdrop-filter:blur(15px);
}
.brand img{
  width:96px;
  max-height:43px;
  object-fit:contain;
  object-position:left center;
}
.nav{
  display:flex;
  gap:30px;
  color:#354650;
  font-size:12px;
}
.nav a:hover{color:#000}
.menu{
  display:none;
  border:0;
  background:transparent;
  width:42px;
  height:42px;
  padding:8px;
}
.menu span{
  display:block;
  height:1px;
  margin:8px 0;
  background:#0a1820;
}

.eyebrow{
  margin:0 0 18px;
  color:#91a7b4;
  font-size:10px;
  font-weight:700;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.eyebrow.dark{color:#697b85}

.hero{
  position:relative;
  min-height:100svh;
  display:grid;
  grid-template-columns:minmax(330px,.82fr) minmax(520px,1.18fr);
  align-items:center;
  padding:128px 5vw 58px;
  overflow:hidden;
  background:
    radial-gradient(circle at 74% 44%,rgba(38,91,126,.30),transparent 28%),
    linear-gradient(135deg,#02090e 0%,#051722 52%,#09283e 100%);
}
.grid-bg,.tv7-grid{
  position:absolute;
  inset:0;
  opacity:.35;
  background-image:
    linear-gradient(rgba(177,211,231,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(177,211,231,.055) 1px,transparent 1px);
  background-size:66px 66px;
  pointer-events:none;
}
.hero-copy{position:relative;z-index:5;max-width:690px}
.hero h1{
  margin:0;
  font-size:clamp(118px,16vw,232px);
  line-height:.72;
  letter-spacing:-.085em;
}
.hero-lead{
  max-width:650px;
  margin:46px 0 46px;
  color:#d9e3e8;
  font-size:clamp(20px,2vw,28px);
  line-height:1.42;
  letter-spacing:-.018em;
}
.hero-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:720px;
  border-top:1px solid var(--line);
}
.hero-facts div{padding:18px 18px 0 0}
.hero-facts strong{
  display:block;
  margin-bottom:6px;
  font-size:30px;
  font-weight:600;
  letter-spacing:-.04em;
}
.hero-facts span{
  color:#8196a3;
  font-size:9px;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.hero-product{
  position:relative;
  z-index:3;
  min-height:650px;
  display:grid;
  place-items:center;
}
.hero-product img{
  position:relative;
  z-index:3;
  width:min(760px,59vw);
  filter:drop-shadow(0 42px 38px rgba(0,0,0,.38));
}
.orbit{
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  border:1px solid rgba(164,203,225,.13);
  border-radius:50%;
}
.orbit-1{width:560px;height:560px}
.orbit-2{width:690px;height:690px}

.section{padding:145px 6vw}
.section-head{
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:4vw;
  margin-bottom:94px;
}
.section-no{
  padding-top:4px;
  color:#758994;
  font-size:10px;
  letter-spacing:.15em;
}
.section h2,.rotation h2,.containment h2,.flight h2,.inspection h2,.tv7 h2,.uec h2{
  margin:0;
  font-size:clamp(48px,5.8vw,90px);
  line-height:.99;
  letter-spacing:-.055em;
}
.light{
  color:var(--dark);
  background:var(--paper);
}
.engineering-grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:11vw;
  padding-left:calc(70px + 4vw);
}
.intro{
  margin:0;
  font-size:clamp(22px,2.35vw,35px);
  line-height:1.45;
  letter-spacing:-.025em;
}
.engineering-detail{
  align-self:end;
  padding-top:24px;
  border-top:1px solid var(--line-dark);
}
.engineering-detail strong{
  display:block;
  font-size:clamp(70px,8vw,118px);
  line-height:.9;
  letter-spacing:-.07em;
}
.engineering-detail p{
  margin:25px 0 0;
  color:#536672;
  font-size:15px;
  line-height:1.65;
}

.rotation{
  display:grid;
  grid-template-columns:.5fr 1.5fr;
  gap:7vw;
  align-items:center;
  padding:130px 6vw;
  background:var(--ink);
}
.rotation-copy p:last-child{
  max-width:390px;
  margin-top:30px;
  color:#8fa3ae;
  line-height:1.65;
}
.video-shell{
  position:relative;
  min-height:520px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#000;
}
.video-shell video{
  width:100%;
  height:100%;
  object-fit:contain;
  background:#000;
}
.video-fade{
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 80px 40px #030b11;
}

.photo-feature{
  position:relative;
  height:min(80vh,850px);
  min-height:540px;
  overflow:hidden;
  background:#08131a;
}
.photo-feature>img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.photo-shade{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(2,9,14,.52),transparent 50%);
}
.photo-note{
  position:absolute;
  left:5vw;
  bottom:5vw;
  max-width:380px;
  padding:22px 24px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(3,13,20,.80);
  backdrop-filter:blur(12px);
}
.photo-note span{
  color:#91a6b2;
  font-size:9px;
  letter-spacing:.16em;
}
.photo-note p{margin:10px 0 0;font-size:17px;line-height:1.45}

.dark-section{
  background:
    radial-gradient(circle at 85% 12%,rgba(26,76,108,.25),transparent 32%),
    var(--ink2);
}
.test-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-left:calc(70px + 4vw);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.test-metrics article{
  min-height:235px;
  padding:28px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.test-metrics strong{
  display:block;
  margin-bottom:70px;
  font-size:clamp(50px,6vw,92px);
  line-height:.85;
  letter-spacing:-.065em;
}
.test-metrics span{
  color:#8da1ad;
  font-size:11px;
  line-height:1.5;
}
.extreme-head{
  margin:120px 0 50px calc(70px + 4vw);
}
.extreme-head h3{
  margin:0;
  font-size:clamp(38px,4.5vw,66px);
  letter-spacing:-.045em;
}
.extreme-grid{
  margin-left:calc(70px + 4vw);
  display:grid;
  grid-template-columns:repeat(2,1fr);
  border-top:1px solid var(--line);
  border-left:1px solid var(--line);
}
.extreme-grid article{
  min-height:310px;
  padding:30px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.test-label{
  color:#6f8795;
  font-size:9px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.extreme-grid strong{
  display:block;
  margin:68px 0 17px;
  font-size:clamp(42px,5vw,72px);
  letter-spacing:-.055em;
}
.extreme-grid p{
  max-width:470px;
  margin:0;
  color:#92a6b1;
  font-size:14px;
  line-height:1.58;
}

.containment{
  min-height:720px;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  align-items:center;
  overflow:hidden;
  background:linear-gradient(130deg,#071724,#0a2a3e);
}
.containment-media{
  position:relative;
  min-height:720px;
  display:grid;
  place-items:center;
}
.containment-media::before{
  content:"";
  position:absolute;
  width:68%;
  aspect-ratio:1;
  border:1px solid rgba(157,195,216,.12);
  border-radius:50%;
}
.containment-media img{
  position:relative;
  width:88%;
  filter:drop-shadow(0 44px 38px rgba(0,0,0,.40));
}
.containment-copy{padding:90px 7vw 90px 2vw}
.containment-copy p:last-child{
  max-width:560px;
  margin-top:35px;
  color:#9cafba;
  font-size:18px;
  line-height:1.65;
}

.endurance{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:8vw;
  align-items:end;
  background:var(--green);
}
.endurance-number{
  font-size:clamp(170px,25vw,390px);
  line-height:.68;
  font-weight:800;
  letter-spacing:-.1em;
  color:#1a4942;
}
.endurance-copy p:not(.eyebrow){
  max-width:650px;
  margin:35px 0;
  color:#adc0ba;
  font-size:18px;
  line-height:1.65;
}
.limit-list{
  border-top:1px solid rgba(255,255,255,.15);
}
.limit-list span{
  display:block;
  padding:15px 0;
  border-bottom:1px solid rgba(255,255,255,.15);
  color:#d1ddda;
  font-size:13px;
}

.flight{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  min-height:780px;
  background:#06141e;
}
.flight-image{
  position:relative;
  min-height:780px;
}
.flight-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.flight-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 65%,rgba(6,20,30,.55));
}
.flight-copy{
  align-self:center;
  padding:100px 6vw;
}
.flight-facts{
  margin:55px 0;
  border-top:1px solid var(--line);
}
.flight-facts div{
  display:grid;
  grid-template-columns:150px 1fr;
  gap:20px;
  padding:18px 0;
  border-bottom:1px solid var(--line);
}
.flight-facts strong{font-size:25px;font-weight:500}
.flight-facts span{color:#8da1ad;font-size:12px;align-self:center}
.india-note{
  max-width:600px;
  margin:0;
  color:#c7d3d9;
  font-size:18px;
  line-height:1.55;
}

.inspection{
  display:grid;
  grid-template-columns:1fr 1fr;
  background:var(--paper);
  color:var(--dark);
}
.inspection-photo{
  min-height:720px;
  overflow:hidden;
}
.inspection-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.inspection-copy{
  align-self:center;
  padding:100px 7vw;
}
.big-number{
  display:block;
  margin-bottom:55px;
  color:#173e58;
  font-size:clamp(100px,14vw,210px);
  line-height:.7;
  font-weight:800;
  letter-spacing:-.08em;
}
.inspection-copy p:last-child{
  max-width:610px;
  margin-top:35px;
  color:#52646e;
  font-size:17px;
  line-height:1.7;
}

.tv7{
  min-height:730px;
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  background:
    radial-gradient(circle at 70% 50%,rgba(28,75,104,.28),transparent 31%),
    #06141f;
  overflow:hidden;
}
.tv7-copy{
  z-index:3;
  align-self:center;
  padding:100px 0 100px 6vw;
}
.tv7 h2{font-size:clamp(62px,7vw,108px)}
.aircraft-tag{
  display:inline-block;
  margin-top:45px;
  padding:13px 17px;
  border:1px solid var(--line);
  color:#a9bac4;
  font-size:11px;
  letter-spacing:.15em;
}
.tv7-product{
  position:relative;
  min-height:730px;
  display:grid;
  place-items:center;
}
.tv7-product img{
  position:relative;
  z-index:2;
  width:min(88%,880px);
  max-height:590px;
  object-fit:contain;
  filter:drop-shadow(0 40px 32px rgba(0,0,0,.42));
}

.uec{
  display:grid;
  grid-template-columns:.4fr 1.6fr;
  gap:8vw;
  padding:140px 6vw;
  background:var(--paper2);
  color:var(--dark);
}
.uec-brand img{
  width:150px;
  max-height:75px;
  object-fit:contain;
  object-position:left top;
}
.uec-copy p:last-child{
  max-width:790px;
  margin-top:40px;
  color:#53656f;
  font-size:19px;
  line-height:1.65;
}
.footer{
  min-height:135px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:30px 6vw;
  background:var(--paper2);
  color:#657781;
  border-top:1px solid var(--line-dark);
  font-size:11px;
}
.footer img{
  width:96px;
  max-height:45px;
  object-fit:contain;
}

/* reveal */
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .65s ease,transform .65s ease;
}
.reveal.visible{opacity:1;transform:none}

/* =========================================================
   MOBILE: отдельная композиция.
   ========================================================= */
@media(max-width:900px){
  .header{height:68px;padding:0 18px}
  .brand img{width:82px}
  .nav{
    position:absolute;
    top:68px;left:0;right:0;
    display:none;
    flex-direction:column;
    gap:0;
    padding:8px 18px 18px;
    background:rgba(239,244,246,.99);
    border-bottom:1px solid var(--line-dark);
  }
  .nav.open{display:flex}
  .nav a{padding:13px 0;border-bottom:1px solid var(--line-dark)}
  .menu{display:block}

  .hero{
    min-height:100svh;
    display:flex;
    flex-direction:column;
    padding:105px 20px 38px;
  }
  .hero h1{font-size:35vw}
  .hero-lead{margin:28px 0 30px;font-size:18px}
  .hero-facts{grid-template-columns:1fr 1fr}
  .hero-facts div:nth-child(3){display:none}
  .hero-product{
    flex:1;
    width:100%;
    min-height:330px;
    margin-top:20px;
  }
  .hero-product img{
    width:112%;
    max-width:none;
  }
  .orbit-1{width:320px;height:320px}
  .orbit-2{width:390px;height:390px}

  .section{padding:92px 20px}
  .section-head{grid-template-columns:1fr;margin-bottom:54px}
  .section-no{display:none}
  .section h2,.rotation h2,.containment h2,.flight h2,.inspection h2,.tv7 h2,.uec h2{
    font-size:clamp(43px,12vw,64px);
  }
  .engineering-grid{
    grid-template-columns:1fr;
    gap:55px;
    padding-left:0;
  }
  .intro{font-size:21px}
  .engineering-detail strong{font-size:80px}

  .rotation{
    grid-template-columns:1fr;
    gap:46px;
    padding:92px 20px;
  }
  .video-shell{min-height:0;aspect-ratio:16/9}
  .video-fade{box-shadow:inset 0 0 35px 16px #030b11}

  .photo-feature{
    height:auto;
    min-height:0;
    background:#08131a;
  }
  .photo-feature>img{
    width:100%;
    height:auto;
    object-fit:contain;
  }
  .photo-note{
    left:20px;right:20px;bottom:20px;
    max-width:none;
  }

  .test-metrics{
    margin-left:0;
    grid-template-columns:1fr;
  }
  .test-metrics article{min-height:175px;padding:22px}
  .test-metrics strong{margin-bottom:38px;font-size:62px}
  .extreme-head{margin:90px 0 42px}
  .extreme-grid{
    margin-left:0;
    grid-template-columns:1fr;
  }
  .extreme-grid article{min-height:230px;padding:22px}
  .extreme-grid strong{margin-top:48px}

  .containment{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .containment-media{min-height:410px}
  .containment-media img{width:104%;max-width:none}
  .containment-copy{padding:72px 20px 92px}

  .endurance{
    grid-template-columns:1fr;
    gap:45px;
  }
  .endurance-number{font-size:52vw}
  .endurance-copy p:not(.eyebrow){font-size:16px}

  .flight{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .flight-image{min-height:0}
  .flight-image img{height:auto}
  .flight-copy{padding:82px 20px}
  .flight-facts div{grid-template-columns:115px 1fr}

  .inspection{
    grid-template-columns:1fr;
  }
  .inspection-photo{min-height:0}
  .inspection-photo img{height:auto}
  .inspection-copy{padding:82px 20px}
  .big-number{font-size:34vw;margin-bottom:48px}

  .tv7{
    min-height:auto;
    grid-template-columns:1fr;
  }
  .tv7-copy{padding:82px 20px 30px}
  .tv7 h2{font-size:12vw}
  .tv7-product{min-height:390px;padding:20px}
  .tv7-product img{
    width:100%;
    max-width:none;
    max-height:340px;
  }

  .uec{
    grid-template-columns:1fr;
    gap:55px;
    padding:92px 20px;
  }
  .uec-brand img{width:112px}
  .footer{
    align-items:flex-start;
    flex-direction:column;
    gap:22px;
    padding:30px 20px;
  }
}

@media(max-width:520px){
  .hero h1{font-size:36vw}
  .hero-product img{width:118%}
  .hero-facts strong{font-size:25px}
  .photo-note p{font-size:15px}
  .flight-facts div{grid-template-columns:1fr;gap:5px}
  .tv7-product{min-height:350px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}


/* =========================================================
   V8 — three requested fixes
   ========================================================= */

/* Photo caption: show the photograph instead of hiding half of it. */
.photo-note{
  background:rgba(3,13,20,.42);
  border-color:rgba(255,255,255,.20);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

/* Returned YouTube chapter. */
.youtube-chapter{
  display:grid;
  grid-template-columns:.55fr 1.45fr;
  gap:7vw;
  align-items:center;
  padding:130px 6vw;
  background:#06141f;
}
.youtube-copy p:last-child{
  max-width:430px;
  margin-top:30px;
  color:#8fa3ae;
  line-height:1.65;
}
.youtube-copy h2{
  margin:0;
  font-size:clamp(48px,5.8vw,90px);
  line-height:.99;
  letter-spacing:-.055em;
}
.youtube-poster{
  position:relative;
  min-height:480px;
  overflow:hidden;
  border:1px solid rgba(214,232,241,.14);
  background:
    radial-gradient(circle at 50% 50%,rgba(31,82,115,.35),transparent 35%),
    #02090e;
  color:#fff;
  cursor:pointer;
}
.youtube-poster>img{
  position:absolute;
  width:78%;
  max-height:390px;
  left:50%;top:50%;
  transform:translate(-50%,-50%);
  object-fit:contain;
  filter:drop-shadow(0 32px 30px rgba(0,0,0,.45));
}
.youtube-play{
  position:absolute;
  left:50%;top:50%;
  width:82px;height:82px;
  transform:translate(-50%,-50%);
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.5);
  border-radius:50%;
  background:rgba(2,10,15,.48);
  backdrop-filter:blur(7px);
}
.youtube-play i{
  width:0;height:0;
  margin-left:5px;
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
  border-left:16px solid #fff;
}
.youtube-label{
  position:absolute;
  left:24px;bottom:22px;
  color:#c7d3d9;
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.youtube-poster iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}

/* Original TV7 file: no synthetic circular mask / halo. */
.tv7-product::before,
.tv7-product::after{
  display:none !important;
}
.tv7-product img{
  filter:none;
  mix-blend-mode:screen;
}

@media(max-width:900px){
  .photo-note{
    left:20px;
    right:20px;
    bottom:20px;
    padding:18px 20px;
    background:rgba(3,13,20,.34);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
  }

  .youtube-chapter{
    grid-template-columns:1fr;
    gap:44px;
    padding:86px 20px;
  }
  .youtube-copy h2{font-size:clamp(43px,12vw,64px)}
  .youtube-poster{
    min-height:0;
    aspect-ratio:16/9;
  }
  .youtube-play{width:68px;height:68px}
  .youtube-poster>img{width:86%}

  .tv7-product img{
    mix-blend-mode:screen;
    filter:none;
  }
}


/* =========================================================
   V10 FINAL FIXES
   Exact user-supplied transparent TV7 PNG + lighter photo caption.
   ========================================================= */

/* TV7: use the supplied alpha-transparent PNG exactly as-is. */
.tv7-product img{
  background:transparent !important;
  mix-blend-mode:normal !important;
  filter:drop-shadow(0 28px 26px rgba(0,0,0,.28)) !important;
  object-fit:contain !important;
}
.tv7-product::before,
.tv7-product::after{
  display:none !important;
}

/* PD-8 photo caption: no heavy opaque card. */
.photo-note{
  background:rgba(3,13,20,.20) !important;
  border-color:rgba(255,255,255,.16) !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
  box-shadow:none !important;
}

@media(max-width:900px){
  .photo-note{
    background:rgba(3,13,20,.16) !important;
    padding:16px 18px !important;
  }

  .tv7-product img{
    width:min(88vw,456px) !important;
    max-width:456px !important;
    max-height:none !important;
  }
}


/* =========================================================
   V12 — mobile hero fix + TV7 removed
   ========================================================= */

/* Hero engine is always centered inside its own viewport-safe container. */
@media (max-width: 900px) {
  .hero {
    overflow: hidden !important;
  }

  .hero-product {
    position: relative !important;
    width: 100% !important;
    min-height: clamp(300px, 48vh, 430px) !important;
    margin-top: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  .hero-product img {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: clamp(290px, 88vw, 430px) !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
  }

  .orbit {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }

  .orbit-1 {
    width: min(78vw, 340px) !important;
    height: min(78vw, 340px) !important;
  }

  .orbit-2 {
    width: min(96vw, 410px) !important;
    height: min(96vw, 410px) !important;
  }
}

@media (max-width: 520px) {
  .hero-product {
    min-height: clamp(280px, 44vh, 380px) !important;
  }

  .hero-product img {
    width: clamp(270px, 86vw, 390px) !important;
  }
}

/* =========================================================
   V13 — robust mobile hero + aircraft applications
   ========================================================= */
.applications{
  padding:130px 5vw 145px;
  background:#061722;
  color:#f4f7f8;
}
.applications-head{
  max-width:760px;
  margin-bottom:58px;
}
.applications-head h2{
  margin:10px 0 22px;
  font-size:clamp(52px,6vw,94px);
  line-height:.94;
  letter-spacing:-.055em;
  font-weight:500;
}
.applications-head>p:last-child{
  max-width:690px;
  margin:0;
  color:#a9bac4;
  font-size:18px;
  line-height:1.55;
}
.applications-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:18px;
  align-items:start;
}
.application-card{margin:0;background:#091d2a;border:1px solid rgba(178,208,225,.13)}
.application-image{overflow:hidden;background:#07141d}
.application-image img{display:block;width:100%;height:auto}
.application-card figcaption{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:22px 24px 25px}
.application-card figcaption span{color:#8298a5;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.application-card figcaption strong{font-size:23px;font-weight:500;letter-spacing:-.025em}

/* Safari-safe mobile hero. No viewport-height dependency, no flex growth. */
@media(max-width:900px){
  .hero{
    min-height:0 !important;
    height:auto !important;
    display:block !important;
    padding:104px 20px 42px !important;
    overflow:hidden !important;
  }
  .hero-copy{width:100%;max-width:none}
  .hero h1{font-size:clamp(118px,35vw,180px) !important;line-height:.76}
  .hero-product{
    position:relative !important;
    width:calc(100vw - 40px) !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:1 / .78 !important;
    margin:26px auto 0 !important;
    display:grid !important;
    place-items:center !important;
    overflow:hidden !important;
    flex:none !important;
  }
  .hero-product img{
    display:block !important;
    position:static !important;
    width:min(88vw,430px) !important;
    max-width:100% !important;
    height:auto !important;
    margin:0 auto !important;
    transform:none !important;
    object-fit:contain !important;
  }
  .orbit-1{width:min(76vw,330px) !important;height:min(76vw,330px) !important}
  .orbit-2{width:min(92vw,400px) !important;height:min(92vw,400px) !important}

  .applications{padding:88px 20px 96px}
  .applications-head{margin-bottom:42px}
  .applications-head h2{font-size:clamp(44px,12vw,64px)}
  .applications-head>p:last-child{font-size:16px}
  .applications-grid{grid-template-columns:1fr;gap:26px}
  .application-card figcaption{padding:18px 18px 20px}
  .application-card figcaption strong{font-size:20px}
  .application-image img{width:100%;height:auto;object-fit:contain}
}
@media(max-width:520px){
  .hero-product{aspect-ratio:1 / .74 !important}
  .hero-product img{width:86vw !important}
  .application-card figcaption{align-items:start;flex-direction:column;gap:7px}
}


/* =========================================================
   V14 — cache-proof mobile layout
   ========================================================= */

/* Prevent intrinsic media width from expanding CSS Grid on Safari. */
.rotation,
.rotation-copy,
.video-shell,
.youtube-chapter,
.youtube-copy,
.youtube-poster{
  min-width:0 !important;
  max-width:100% !important;
}

@media(max-width:900px){

  /* 3D rotation block: fixed by container geometry, not video intrinsic size. */
  .rotation{
    display:block !important;
    width:100% !important;
    max-width:100vw !important;
    overflow:hidden !important;
    padding:82px 20px 72px !important;
  }

  .rotation-copy{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 34px !important;
    overflow:hidden !important;
  }

  .rotation-copy h2{
    max-width:100% !important;
    margin:0 !important;
    font-size:clamp(38px,10.5vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:-.04em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .rotation-copy p:last-child{
    max-width:100% !important;
    margin:22px 0 0 !important;
    font-size:16px !important;
    line-height:1.5 !important;
  }

  .video-shell{
    position:relative !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16/9 !important;
    overflow:hidden !important;
    background:#000 !important;
  }

  .video-shell video{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    margin:0 !important;
    transform:none !important;
  }

  .video-fade{
    inset:0 !important;
    box-shadow:inset 0 0 24px 8px #030b11 !important;
  }

  /* YouTube block: native-looking dark panel, no browser-button appearance. */
  .youtube-chapter{
    display:block !important;
    width:100% !important;
    max-width:100vw !important;
    overflow:hidden !important;
    padding:76px 20px 82px !important;
    background:#06141f !important;
  }

  .youtube-copy{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 30px !important;
  }

  .youtube-copy h2{
    margin:0 !important;
    font-size:clamp(38px,10.5vw,48px) !important;
    line-height:1.02 !important;
    letter-spacing:-.04em !important;
  }

  .youtube-poster{
    -webkit-appearance:none !important;
    appearance:none !important;
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    height:auto !important;
    aspect-ratio:16/9 !important;
    padding:0 !important;
    margin:0 !important;
    border:1px solid rgba(214,232,241,.16) !important;
    border-radius:18px !important;
    overflow:hidden !important;
    background:
      radial-gradient(circle at 50% 48%, rgba(26,76,108,.30), transparent 38%),
      #02090e !important;
    color:#fff !important;
    text-align:left !important;
  }

  .youtube-poster>img{
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    width:82% !important;
    max-width:82% !important;
    max-height:82% !important;
    height:auto !important;
    transform:translate(-50%,-50%) !important;
    object-fit:contain !important;
    background:transparent !important;
  }

  .youtube-play{
    width:66px !important;
    height:66px !important;
    background:rgba(2,10,15,.64) !important;
  }

  .youtube-label{
    left:18px !important;
    bottom:16px !important;
    color:#d7e0e5 !important;
    font-size:9px !important;
  }

  /* Photo caption remains light, but readable. */
  .photo-note{
    background:rgba(3,13,20,.20) !important;
    backdrop-filter:blur(3px) !important;
    -webkit-backdrop-filter:blur(3px) !important;
  }
}

/* Extra guard for narrow iPhones. */
@media(max-width:430px){
  .rotation,
  .youtube-chapter{
    padding-left:16px !important;
    padding-right:16px !important;
  }
}


/* =========================================================
   V15 — editorial motion + clearer information hierarchy
   ========================================================= */

/* Equal visual weight for aircraft applications on desktop. */
.applications-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
}
.application-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.application-image{
  aspect-ratio:16 / 10;
  display:flex;
  align-items:center;
  justify-content:center;
}
.application-image img{
  width:100%;
  height:100% !important;
  object-fit:contain !important;
}
.application-card figcaption{
  min-height:82px;
}

/* "For the first time" is a statement, not a mystery metric. */
.engineering-detail .first-time{
  max-width:520px;
  font-size:clamp(42px,5.1vw,78px) !important;
  line-height:.92 !important;
  letter-spacing:-.055em !important;
}

/* Explicit units for endurance and inspections. */
.endurance-number span{
  display:block;
  margin-top:20px;
  font-size:clamp(20px,2.4vw,38px);
  line-height:1;
  letter-spacing:.12em;
}
.big-number small{
  display:block;
  margin-top:24px;
  font-size:clamp(15px,1.6vw,24px);
  letter-spacing:.12em;
}

/* Extreme-condition cards: meaning first, numbers in context. */
.extreme-grid article{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.test-kicker{
  margin:0;
  color:#6f8795 !important;
  font-size:9px !important;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.extreme-grid h4{
  margin:58px 0 28px;
  max-width:95%;
  font-size:clamp(42px,5vw,74px);
  line-height:.92;
  letter-spacing:-.055em;
  font-weight:600;
}
.extreme-grid article>p:last-child{
  max-width:520px;
  margin:0;
  color:#9aadb8;
  font-size:15px;
  line-height:1.62;
}
.extreme-grid article>p:last-child strong{
  display:inline;
  margin:0;
  color:#f7fafb;
  font-size:inherit;
  font-weight:600;
  letter-spacing:0;
}

/* YouTube is now part of the certification chapter. */
.dark-section .youtube-chapter{
  margin:92px 0 105px calc(70px + 4vw);
  padding:0 !important;
  background:transparent !important;
}
.dark-section .youtube-chapter .youtube-copy{
  max-width:760px;
}
.dark-section .youtube-poster{
  margin-top:42px;
}

/* More expressive but restrained scroll reveals. */
.motion-title,
.motion-copy,
.motion-stat,
.motion-media{
  will-change:transform,opacity,clip-path;
}

.motion-title{
  opacity:0;
  transform:translateY(38px);
  clip-path:inset(0 0 100% 0);
  transition:
    opacity .72s ease,
    transform .82s cubic-bezier(.22,1,.36,1),
    clip-path .82s cubic-bezier(.22,1,.36,1);
}
.motion-title.is-visible{
  opacity:1;
  transform:translateY(0);
  clip-path:inset(0 0 0 0);
}

.motion-copy{
  opacity:0;
  transform:translateY(20px);
  transition:
    opacity .62s ease,
    transform .72s cubic-bezier(.22,1,.36,1);
}
.motion-copy.is-visible{
  opacity:1;
  transform:translateY(0);
}

.motion-stat{
  opacity:0;
  transform:translateY(18px) scale(.965);
  transition:
    opacity .58s ease,
    transform .68s cubic-bezier(.22,1,.36,1);
}
.motion-stat.is-visible{
  opacity:1;
  transform:translateY(0) scale(1);
}

.motion-media{
  opacity:0;
  transform:translateY(24px);
  transition:
    opacity .72s ease,
    transform .82s cubic-bezier(.22,1,.36,1);
}
.motion-media.is-visible{
  opacity:1;
  transform:translateY(0);
}

/* Stagger groups. */
.motion-delay-1{transition-delay:.08s}
.motion-delay-2{transition-delay:.16s}
.motion-delay-3{transition-delay:.24s}
.motion-delay-4{transition-delay:.32s}

@media(max-width:900px){
  .applications-grid{
    grid-template-columns:1fr !important;
    gap:26px !important;
  }
  .application-image{
    aspect-ratio:auto;
  }
  .application-image img{
    height:auto !important;
  }
  .engineering-detail .first-time{
    font-size:clamp(40px,11vw,58px) !important;
  }
  .extreme-grid h4{
    margin-top:44px;
    font-size:clamp(38px,11vw,56px);
  }
  .dark-section .youtube-chapter{
    margin:70px 0 86px !important;
  }
  .endurance-number span{
    margin-top:16px;
    font-size:20px;
  }
  .big-number small{
    margin-top:18px;
    font-size:16px;
  }
}

@media(prefers-reduced-motion:reduce){
  .motion-title,.motion-copy,.motion-stat,.motion-media{
    opacity:1 !important;
    transform:none !important;
    clip-path:none !important;
    transition:none !important;
  }
}


/* =========================================================
   V16 — fail-safe titles
   Заголовок не должен исчезать, даже если IntersectionObserver
   на конкретном браузере сработал капризно.
   ========================================================= */

.motion-title{
  opacity:1 !important;
  clip-path:none !important;
  transform:translateY(28px);
  transition:transform .78s cubic-bezier(.22,1,.36,1) !important;
}

.motion-title.is-visible{
  opacity:1 !important;
  clip-path:none !important;
  transform:translateY(0);
}

/* В карточках испытаний не анимируем весь article как единый
   полупрозрачный контейнер: заголовок и текст появляются независимо. */
.extreme-grid > article.motion-stat{
  opacity:1 !important;
  transform:none !important;
}

.extreme-grid > article.motion-stat .test-kicker,
.extreme-grid > article.motion-stat > p:last-child{
  opacity:1;
}

/* Дополнительная страховка для всех ключевых заголовков лендинга. */
.rotation-copy h2,
.youtube-copy h2,
.extreme-head h3,
.extreme-grid h4,
.containment-copy h2,
.endurance-copy h2,
.flight-copy h2,
.applications-head h2,
.inspection-copy h2,
.uec-copy h2,
.section-head h2{
  visibility:visible !important;
}

/* На мобильном заголовок тоже не может быть обрезан reveal-маской. */
@media(max-width:900px){
  .motion-title{
    opacity:1 !important;
    clip-path:none !important;
    transform:translateY(20px);
  }
  .motion-title.is-visible{
    transform:translateY(0);
  }
}


/* =========================================================
   V17 — desktop test-programme geometry + product-view copy
   ========================================================= */

/* Keep the large title, but give it a real column that never overlaps the media. */
@media (min-width: 901px){
  .dark-section .youtube-chapter{
    display:grid !important;
    grid-template-columns:minmax(0, 44%) minmax(0, 56%) !important;
    gap:clamp(28px,3.4vw,58px) !important;
    align-items:stretch !important;
    width:auto !important;
    max-width:none !important;
  }

  .dark-section .youtube-copy{
    min-width:0 !important;
    max-width:100% !important;
    align-self:center !important;
    padding-right:clamp(8px,1.2vw,20px) !important;
    overflow:hidden !important;
  }

  .dark-section .youtube-poster{
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:0 !important;
    align-self:stretch !important;
  }

  .test-programme-title{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    font-size:clamp(64px,6.2vw,106px) !important;
    line-height:.92 !important;
    letter-spacing:-.055em !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  .test-programme-title span{
    display:block !important;
    width:100% !important;
  }
}

/* Mobile keeps the compact composition; spans still form a clean title. */
@media (max-width:900px){
  .test-programme-title{
    font-size:clamp(38px,10.5vw,48px) !important;
    line-height:1.02 !important;
  }
  .test-programme-title span{
    display:inline !important;
  }
  .test-programme-title span + span::before{
    content:" ";
  }
}


/* External UEC links */
.inline-link{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.inline-link:hover{opacity:.72}
.footer-link{color:inherit;text-decoration:none;letter-spacing:.04em;text-transform:uppercase}
.footer-link:hover{text-decoration:underline;text-underline-offset:4px}
