/* V25 — targeted About page changes only */
.about-page .about-ai-mosaic.v25-mv {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
  margin-top:44px;
}
.about-page .v25-mv-card {
  width:min(1120px,100%);
  min-height:290px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 72px;
  align-items:start;
  gap:34px;
  padding:42px 44px;
  border:1px solid rgba(0,119,255,.62);
  border-radius:18px;
  background:linear-gradient(145deg,#08294f 0%,#041a33 56%,#031326 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  position:relative;
  z-index:2;
}
.about-page .v25-mv-kicker {
  display:block;
  margin-bottom:10px;
  color:#6fb8ff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.about-page .v25-mv-card h3 {
  margin:0 0 14px;
  max-width:760px;
  color:#fff;
  font-size:30px;
  line-height:1.08;
  letter-spacing:-.025em;
}
.about-page .v25-mv-card p {
  margin:0;
  max-width:820px;
  color:#a7b4c8;
  font-size:15px;
  line-height:1.72;
}
.about-page .v25-mv-icon {
  width:64px;
  height:64px;
  border:1px solid rgba(0,132,255,.75);
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(180deg,#0962b9,#07345f);
  box-shadow:inset 0 0 20px rgba(0,119,255,.24),0 12px 30px rgba(0,0,0,.18);
}
.about-page .v25-mv-icon svg {
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round
}
/* Use the supplied video's own lines. No custom connector lines are drawn. */
.about-page .v25-video-wrap {
  position:relative;
  width:100vw;
  max-width:none;
  height:330px;
  margin-left:calc(50% - 50vw);
  overflow:hidden;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.about-page .v25-about-video {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  mix-blend-mode:screen;
  opacity:.94;
  filter:saturate(1.1) contrast(1.06);
}
.about-page .v25-video-toggle {
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:58px;
  height:58px;
  border-radius:50%;
  border:1px solid rgba(90,181,255,.78);
  background:rgba(3,22,43,.72);
  color:#fff;
  display:grid;
  place-items:center;
  font:600 18px/1 "Rethink Sans",sans-serif;
  cursor:pointer;
  box-shadow:0 0 28px rgba(0,119,255,.28),inset 0 0 18px rgba(0,119,255,.15);
  backdrop-filter:blur(7px);
  transition:transform .24s ease,background .24s ease,border-color .24s ease;
}
.about-page .v25-video-toggle:hover {
  transform:translate(-50%,-50%) scale(1.06);
  background:rgba(4,55,104,.85);
  border-color:#45aaff
}
/* Reveal cards when the video's line field enters the viewport. */
html.v25-js .about-page .v25-mv-card {
  opacity:0;
  transform:translateY(26px) scale(.985);
  transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)
}
html.v25-js .about-page .v25-mv-card.is-visible {
  opacity:1;
  transform:none
}
html.v25-js .about-page .mv-mission {
  transition-delay:.12s
}
/* Keep the three existing metrics, but align them like the home cards. */
.about-page .stats-grid {
  align-items:stretch
}
.about-page .v25-stat-card {
  position:relative;
  min-height:285px;
  height:100%;
  padding:28px!important;
  overflow:hidden
}
.about-page .v25-stat-card .v25-stat-icon {
  position:absolute;
  right:20px;
  top:20px;
  width:42px;
  height:42px;
  border:1px solid rgba(0,132,255,.7);
  border-radius:9px;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(180deg,#0a5eaf,#07335e)
}
.about-page .v25-stat-card .v25-stat-icon svg {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round
}
.about-page .v25-stat-card .stat-logo {
  max-width:175px;
  max-height:58px;
  object-fit:contain;
  object-position:left center
}
.about-page .v25-stat-card p {
  font-size:14px;
  line-height:1.65;
  margin-top:auto
}
/* Unique section 1: process rail */
.v25-journey-section {
  padding:105px 0 115px;
  background:linear-gradient(180deg,#020307,#03101e 62%,#020307)
}
.v25-journey-wrap {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:70px;
  align-items:start
}
.v25-journey-intro {
  position:sticky;
  top:110px
}
.v25-journey-track {
  position:relative;
  display:grid;
  gap:0;
  border-left:1px solid rgba(0,119,255,.34);
  padding-left:44px
}
.v25-journey-step {
  position:relative;
  padding:0 0 38px 0;
  display:grid;
  grid-template-columns:54px 150px 1fr;
  gap:18px;
  align-items:start
}
.v25-journey-step:last-child {
  padding-bottom:0
}
.v25-journey-step:before {
  content:"";
  position:absolute;
  left:-50px;
  top:5px;
  width:11px;
  height:11px;
  border-radius:50%;
  background:#0585ff;
  box-shadow:0 0 16px rgba(0,132,255,.9)
}
.v25-journey-step>span {
  color:#5baeff;
  font-size:12px;
  letter-spacing:.12em
}
.v25-journey-step strong {
  color:#fff;
  font-size:18px
}
.v25-journey-step p {
  margin:0;
  color:#93a2b8;
  font-size:14px;
  line-height:1.65
}
/* Unique section 2: editorial principles rows */
.v25-principles-section {
  padding:110px 0;
  background:radial-gradient(circle at 85% 45%,rgba(0,94,181,.19),transparent 33%),#020307
}
.v25-principles-grid {
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:76px;
  align-items:start
}
.v25-principles-list {
  border-top:1px solid rgba(255,255,255,.12)
}
.v25-principles-list article {
  display:grid;
  grid-template-columns:58px 1fr;
  gap:22px;
  padding:28px 0;
  border-bottom:1px solid rgba(255,255,255,.12)
}
.v25-principle-num {
  width:40px;
  height:40px;
  border:1px solid rgba(0,119,255,.55);
  border-radius:8px;
  display:grid;
  place-items:center;
  color:#5eafff;
  background:rgba(0,119,255,.08);
  font-size:12px
}
.v25-principles-list h3 {
  margin:0 0 8px;
  color:#fff;
  font-size:19px
}
.v25-principles-list p {
  margin:0;
  color:#94a2b7;
  font-size:14px;
  line-height:1.65
}
@media(max-width:1024px) {
  .about-page .v25-mv-card {
    width:min(940px,100%)
  }
  .about-page .v25-video-wrap {
    height:280px
  }
  .v25-journey-wrap,.v25-principles-grid {
    grid-template-columns:1fr;
    gap:42px
  }
  .v25-journey-intro {
    position:static
  }
}
@media(max-width:767px) {
  .about-page .v25-mv-card {
    grid-template-columns:1fr;
    padding:28px 24px;
    min-height:0
  }
  .about-page .v25-mv-card h3 {
    font-size:24px
  }
  .about-page .v25-mv-icon {
    position:absolute;
    right:20px;
    top:20px;
    width:48px;
    height:48px
  }
  .about-page .v25-mv-copy {
    padding-right:42px
  }
  .about-page .v25-video-wrap {
    height:210px
  }
  .about-page .v25-video-toggle {
    width:50px;
    height:50px
  }
  .v25-journey-section,.v25-principles-section {
    padding:78px 0
  }
  .v25-journey-track {
    padding-left:28px
  }
  .v25-journey-step {
    grid-template-columns:42px 1fr;
    gap:12px;
    padding-bottom:30px
  }
  .v25-journey-step p {
    grid-column:2
  }
  .v25-journey-step:before {
    left:-34px
  }
}
@media(prefers-reduced-motion:reduce) {
  html.v25-js .about-page .v25-mv-card {
    opacity:1!important;
    transform:none!important;
    transition:none!important
  }
}
/* V26 — About video background removed only. */
.about-page .v25-video-wrap {
  background:transparent!important;
}
.about-page .v25-about-video {
  object-fit:contain!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
  background:transparent!important;
  filter:none!important;
}
