/* V23 targeted polish: typography reveal, shared eyebrow treatment, About vision/mission composition,
   header normalization and CTA parity. No home section layout changes beyond restoring the original hero. */
/* ---------- Shared section eyebrow / subtitle treatment ---------- */
.v6-eyebrow, .fp-section-kicker, .elementor-12 .elementor-widget-heading.fp-kicker .elementor-heading-title {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 12px;
  margin-bottom: 14px;
  border: 1px solid rgba(60, 143, 226, .34);
  border-radius: 999px;
  background: radial-gradient(circle at 50% 10%, rgba(0,119,255,.13), rgba(4,19,36,.22) 70%);
  color: #9fb7d3;
  letter-spacing: .02em;
  line-height: 1;
}
.v6-center .v6-eyebrow, .team-intro .v6-eyebrow {
  margin-left: auto;
  margin-right: auto;
}
/* ---------- Typography reveal ---------- */
.fp-type-reveal {
  --fp-reveal-delay: 0ms;
  overflow: hidden;
  clip-path: inset(0 0 100% 0);
  opacity: 0;
  transform: translateY(24px);
  filter: blur(7px);
  transition:     clip-path .82s cubic-bezier(.2,.74,.22,1) var(--fp-reveal-delay),     opacity .55s ease var(--fp-reveal-delay),     transform .82s cubic-bezier(.2,.74,.22,1) var(--fp-reveal-delay),     filter .82s ease var(--fp-reveal-delay),     letter-spacing .82s ease var(--fp-reveal-delay);
  letter-spacing: .015em;
}
.fp-type-reveal.fp-type-visible {
  clip-path: inset(0 0 0 0);
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
  letter-spacing: inherit;
}
/* ---------- About page header: lock to same inner-page navigation geometry ---------- */
.about-page .v6-header {
  height: 86px;
}
.about-page .v6-nav {
  width: min(1290px, calc(100% - 40px));
  grid-template-columns: 220px minmax(0, 1fr) 220px;
  gap: 20px;
}
.about-page .v6-logo img {
  max-width: 166px;
  height: auto;
}
.about-page .v6-links {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:42px;
}
.about-page .v6-phone {
  justify-self:end;
}
.about-page .nav-item.has-mega {
  position: static;
}
.about-page .mega-menu {
  top: calc(100% + 14px);
}
/* ---------- About story / mission / vision composition ---------- */
.about-page .about-story {
  padding-bottom: 104px;
}
.about-page .story-wrap {
  max-width: 1040px;
  margin-inline: auto;
  text-align:center;
}
.about-page .story-main {
  max-width: 930px;
  margin-inline:auto;
}
.about-ai-mosaic {
  position: relative;
  width: min(920px, 100%);
  margin: 58px auto 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 420px) minmax(0, 1fr);
  grid-template-rows: auto 260px auto;
  gap: 0 28px;
  align-items: center;
  isolation: isolate;
}
.about-ai-mosaic::before {
  content:"";
  position:absolute;
  left:50%;
  top:88px;
  bottom:88px;
  width:1px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, transparent, rgba(0,119,255,.18) 12%, #168eff 50%, rgba(0,119,255,.18) 88%, transparent);
  box-shadow:0 0 18px rgba(0,119,255,.45);
  z-index:-1;
}
.about-mv-card {
  position: relative;
  width: 100%;
  padding: 24px 26px;
  border: 1px solid rgba(0,119,255,.38);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(4,28,55,.94), rgba(2,12,25,.98));
  box-shadow: inset 0 1px rgba(255,255,255,.035), 0 18px 46px rgba(0,0,0,.2);
  text-align:left;
}
.about-mv-card h3 {
  margin:0 0 9px;
  color:#fff;
  font-size:20px;
  font-weight:600;
}
.about-mv-card p {
  margin:0;
  color:#99a8bd;
  font-size:14px;
  line-height:1.65;
}
.about-mv-card .mv-number {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  margin-bottom:16px;
  border:1px solid rgba(0,119,255,.55);
  border-radius:9px;
  background:linear-gradient(180deg,#063c75,#041e3d);
  color:#fff;
  font-size:12px;
}
.about-mv-card.mv-vision {
  grid-column:1 / 3;
  grid-row:1;
  width:62%;
  justify-self:start;
}
.about-mv-card.mv-mission {
  grid-column:2 / 4;
  grid-row:3;
  width:62%;
  justify-self:end;
}
.about-mv-card.mv-vision::after, .about-mv-card.mv-mission::before {
  content:"";
  position:absolute;
  left:50%;
  width:1px;
  height:56px;
  transform:translateX(-50%);
  background:linear-gradient(#1b8eff, rgba(27,142,255,.08));
  box-shadow:0 0 12px rgba(0,119,255,.55);
}
.about-mv-card.mv-vision::after {
  top:100%;
}
.about-mv-card.mv-mission::before {
  bottom:100%;
  transform:translateX(-50%) rotate(180deg);
}
.about-ai-video-wrap {
  grid-column:1 / 4;
  grid-row:2;
  position:relative;
  width:min(660px, 86%);
  height:260px;
  justify-self:center;
  overflow:hidden;
  border:0;
  background:transparent;
}
.about-ai-video-wrap::before, .about-ai-video-wrap::after {
  content:"";
  position:absolute;
  left:50%;
  width:120px;
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,#238fff,transparent);
  z-index:3;
  box-shadow:0 0 14px rgba(0,119,255,.7);
}
.about-ai-video-wrap::before {
  top:0;
}
.about-ai-video-wrap::after {
  bottom:0;
}
.about-ai-video {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  mix-blend-mode:screen;
  opacity:.82;
  filter:saturate(.72) hue-rotate(-11deg) contrast(1.05) brightness(.78);
  -webkit-mask-image:radial-gradient(ellipse at center, #000 42%, rgba(0,0,0,.8) 62%, transparent 86%);
  mask-image:radial-gradient(ellipse at center, #000 42%, rgba(0,0,0,.8) 62%, transparent 86%);
}
.about-page .stats-grid {
  margin-top: 48px;
}
.about-page .stat-card {
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.about-page .stat-card:hover {
  transform:translateY(-6px);
  border-color:rgba(0,119,255,.62);
  box-shadow:0 18px 42px rgba(0,90,190,.13);
}
/* ---------- Final CTA buttons: same visual system as the site's original/home buttons ---------- */
.fp-final-cta .fp-btn {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:0 22px !important;
  border-radius:7px !important;
  font-size:14px !important;
  font-weight:600 !important;
  color:#fff !important;
  box-shadow:inset 0 0 18px rgba(0,119,255,.18) !important;
  transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease !important;
}
.fp-final-cta .fp-btn-primary {
  border:1px solid #0077ff !important;
  background:linear-gradient(180deg,#064b91,#052d59) !important;
}
.fp-final-cta .fp-btn-secondary {
  border:1px solid rgba(255,255,255,.22) !important;
  background:transparent !important;
}
.fp-final-cta .fp-btn:hover {
  transform:translateY(-2px) !important;
  border-color:#1689ff !important;
  box-shadow:0 10px 24px rgba(0,119,255,.18),inset 0 0 18px rgba(0,119,255,.18)!important;
}
/* ---------- Restore original Home hero appearance: no V16-V22 video-inspired lighting ---------- */
.elementor-12 [data-id="452d0091"] .fp-v21-hero-visual, .elementor-12 [data-id="5328f086"] .fp-next-motion {
  display:none !important;
}
.elementor-12 [data-id="452d0091"].fp-motion-hero {
  min-height:initial !important;
  background-color:transparent !important;
  background-image:radial-gradient(at top center,var(--e-global-color-7d769f6) 0%,var(--e-global-color-secondary) 75%) !important;
  isolation:auto !important;
}
.elementor-12 [data-id="452d0091"].fp-motion-hero>.e-con-inner {
  z-index:auto !important;
}
@media(max-width:1024px) {
  .about-page .v6-nav {
    grid-template-columns:180px minmax(0,1fr) 180px
  }
  .about-page .v6-links {
    gap:24px
  }
  .about-ai-mosaic {
    grid-template-columns:1fr;
    grid-template-rows:auto 230px auto;
    gap:0
  }
  .about-mv-card.mv-vision,.about-mv-card.mv-mission {
    grid-column:1;
    width:min(620px,92%);
    justify-self:center
  }
  .about-mv-card.mv-vision {
    grid-row:1
  }
  .about-ai-video-wrap {
    grid-column:1;
    grid-row:2;
    width:min(620px,96%);
    height:230px
  }
  .about-mv-card.mv-mission {
    grid-row:3
  }
}
@media(max-width:767px) {
  .about-page .v6-header {
    height:72px
  }
  .about-page .v6-nav {
    grid-template-columns:1fr auto;
    width:min(100% - 28px,1290px)
  }
  .about-page .v6-links,.about-page .v6-phone {
    display:none
  }
  .about-ai-mosaic {
    margin-top:38px
  }
  .about-mv-card {
    padding:21px 20px;
    text-align:left
  }
  .about-mv-card.mv-vision,.about-mv-card.mv-mission {
    width:100%
  }
  .about-ai-video-wrap {
    height:190px;
    width:110%;
    margin-left:-5%
  }
  .about-page .stats-grid {
    margin-top:36px
  }
}
@media(prefers-reduced-motion:reduce) {
  .fp-type-reveal {
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    clip-path:none!important;
    transition:none!important
  }
}
