/* =========================================================
   CAPTIV ABOUT PAGE
   DESIGN 1 — CORPORATE / GLOBAL
========================================================= */

.captiv-about-page{
  background:#fff;
  color:#10243e;
}


/* =========================================================
   HEADER
========================================================= */

.about-header{
  background:#fff;
  border-bottom:1px solid #edf1f5;
  position:relative;
  z-index:100;
}

.about-header-inner{
  width:min(1400px,90%);
  min-height:72px;
  margin:auto;

  display:flex;
  align-items:center;
  justify-content:space-between;
}

.about-brand img{
  width:150px;
  display:block;
}

.about-nav{
  display:flex;
  align-items:center;
  gap:25px;
}

.about-nav a{
  color:#10243e;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  transition:.2s ease;
}

.about-nav a:hover,
.about-nav a.active{
  color:#087cff;
}

.about-nav .about-contact-btn{
  color:#fff;
  background:#087cff;
  padding:13px 20px;
  border-radius:8px;
  box-shadow:0 8px 20px rgba(8,124,255,.18);
}


/* =========================================================
   HERO
========================================================= */

.about-hero{
  position:relative;
  min-height:390px;

  background-image:url("assets/about/about-hero.webp");
  background-size:cover;
  background-position:center;

  overflow:hidden;
}

.about-hero-overlay{
  position:absolute;
  inset:0;

  background:
    linear-gradient(
      90deg,
      rgba(3,24,45,.98) 0%,
      rgba(3,24,45,.93) 30%,
      rgba(3,24,45,.65) 52%,
      rgba(3,24,45,.08) 82%,
      rgba(3,24,45,0) 100%
    );
}

.about-hero-inner{
  position:relative;
  z-index:2;

  width:min(1400px,90%);
  margin:auto;

  padding:42px 0 60px;
}

.about-breadcrumb{
  display:flex;
  gap:9px;

  margin-bottom:38px;

  color:rgba(255,255,255,.72);
  font-size:12px;
}

.about-breadcrumb a{
  color:#fff;
  text-decoration:none;
}

.about-eyebrow,
.section-eyebrow{
  color:#087cff;

  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
}

.about-hero .about-eyebrow{
  color:#18c8ef;
}

.about-hero h1{
  max-width:720px;

  margin:12px 0 16px;

  color:#fff;

  font-size:clamp(42px,5vw,66px);
  line-height:1;
  letter-spacing:-.045em;
}

.about-hero h1 span{
  color:#18c8ef;
}

.about-hero p{
  max-width:600px;

  margin:0 0 22px;

  color:rgba(255,255,255,.84);

  font-size:14px;
  line-height:1.7;
}

.about-hero-btn{
  display:inline-flex;

  padding:12px 18px;

  background:#fff;
  color:#10243e;

  border-radius:7px;

  text-decoration:none;

  font-size:12px;
  font-weight:700;
}

.about-hero-side{
  position:absolute;
  z-index:3;

  right:7%;
  top:72px;

  display:flex;
  flex-direction:column;
  gap:7px;

  color:#fff;

  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
}

.about-hero-side:after{
  content:"";

  width:42px;
  height:2px;

  margin-top:7px;

  background:#18c8ef;
}


/* =========================================================
   STATS
========================================================= */

.about-stats{
  position:relative;
  z-index:10;

  width:min(1250px,90%);
  margin:-25px auto 0;

  display:grid;
  grid-template-columns:repeat(4,1fr);

  background:#fff;

  border:1px solid #e5edf5;
  border-radius:14px;

  box-shadow:0 18px 45px rgba(20,45,70,.12);
}

.about-stat{
  min-height:85px;

  display:flex;
  align-items:center;
  gap:12px;

  padding:16px 24px;

  border-right:1px solid #e7edf4;
}

.about-stat:last-child{
  border-right:0;
}

.about-stat strong{
  color:#087cff;

  font-size:29px;
  line-height:1;
}

.about-stat span{
  color:#667b91;
  font-size:11px;
}


/* =========================================================
   COMMON SECTION
========================================================= */

.about-section{
  width:min(1200px,90%);
  margin:auto;
}

.about-who{
  padding:85px 0;

  display:grid;
  grid-template-columns:1fr 1fr;

  gap:60px;

  align-items:center;
}

.about-who-copy h2,
.about-section-heading h2,
.about-approach h2,
.global-copy h2,
.about-why h2{
  margin:10px 0 18px;

  color:#10243e;

  font-size:clamp(32px,4vw,48px);
  line-height:1.05;

  letter-spacing:-.04em;
}

.about-who-copy h2 span,
.about-section-heading h2 span,
.about-approach h2 span,
.global-copy h2 span,
.about-why h2 span{
  color:#087cff;
}

.about-who-copy p,
.global-copy p,
.about-why p{
  color:#61758b;

  font-size:13px;
  line-height:1.8;

  max-width:580px;
}

.outline-btn{
  display:inline-flex;

  margin-top:10px;
  padding:11px 17px;

  border:1px solid #087cff;
  border-radius:7px;

  color:#087cff;

  text-decoration:none;

  font-size:12px;
  font-weight:700;
}

.about-who-visual{
  position:relative;
  min-height:330px;

  overflow:hidden;

  border-radius:12px;

  background:#071e35;
}

.about-who-visual img{
  width:100%;
  height:100%;

  min-height:330px;

  display:block;

  object-fit:cover;
}

.visual-caption{
  position:absolute;
  bottom:22px;
  left:22px;

  display:flex;
  flex-direction:column;

  color:#fff;
}

.visual-caption strong{
  font-size:14px;
}

.visual-caption span{
  color:#18c8ef;

  font-size:10px;
  letter-spacing:.1em;
}


/* =========================================================
   ENGINES
========================================================= */

.about-engines{
  padding:70px 5%;

  background:#f7faff;
}

.about-section-heading{
  width:min(1200px,100%);
  margin:0 auto 32px;

  display:flex;
  align-items:end;
  justify-content:space-between;

  gap:40px;
}

.about-section-heading p{
  max-width:390px;

  color:#718398;

  font-size:12px;
  line-height:1.7;
}

.engine-grid{
  width:min(1200px,100%);
  margin:auto;

  display:grid;
  grid-template-columns:repeat(6,1fr);

  gap:12px;
}

.engine-card{
  min-height:150px;

  padding:22px 14px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  text-align:center;

  background:#fff;

  border:1px solid #e3ebf3;
  border-radius:10px;

  text-decoration:none;

  transition:.25s ease;
}

.engine-card:hover{
  transform:translateY(-5px);

  border-color:#b9d8ff;

  box-shadow:0 15px 30px rgba(15,55,95,.08);
}

.engine-icon{
  width:43px;
  height:43px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-bottom:13px;

  border-radius:50%;

  background:#eaf4ff;
  color:#087cff;

  font-size:20px;
}

.engine-card h3{
  margin:0 0 7px;

  color:#122740;

  font-size:13px;
}

.engine-card span{
  color:#74879b;
  font-size:10px;
}


/* =========================================================
   APPROACH
========================================================= */

.about-approach{
  padding:75px 5%;

  background:
    linear-gradient(
      120deg,
      #061a31,
      #0a3356
    );

  color:#fff;
}

.approach-inner{
  width:min(1200px,100%);
  margin:auto;
}

.about-approach .section-eyebrow{
  color:#18c8ef;
}

.about-approach h2{
  color:#fff;
}

.about-approach h2 span{
  color:#18c8ef;
}

.approach-flow{
  margin-top:48px;

  display:flex;
  align-items:center;
  justify-content:space-between;
}

.approach-step{
  width:150px;
  text-align:center;
}

.approach-number{
  width:58px;
  height:58px;

  margin:0 auto 13px;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(24,200,239,.5);
  border-radius:50%;

  background:rgba(13,146,220,.12);

  color:#18c8ef;

  font-size:13px;
  font-weight:800;
}

.approach-step h3{
  margin:0 0 6px;

  color:#fff;

  font-size:14px;
}

.approach-step p{
  margin:0;

  color:#91a9bd;

  font-size:10px;
  line-height:1.5;
}

.approach-line{
  flex:1;

  height:1px;

  margin:0 12px;

  background:linear-gradient(
    90deg,
    transparent,
    #168fd0,
    transparent
  );
}


/* =========================================================
   GLOBAL
========================================================= */

.about-global{
  width:min(1200px,90%);
  margin:auto;

  padding:80px 0;

  display:grid;
  grid-template-columns:.85fr 1.15fr;

  gap:55px;

  align-items:center;
}

.region-list{
  margin-top:24px;

  display:flex;
  flex-wrap:wrap;

  gap:9px;
}

.region-list div{
  padding:8px 11px;

  border:1px solid #e5edf4;
  border-radius:6px;

  color:#4e657d;

  font-size:11px;

  background:#fff;
}

.region-list span{
  margin-right:5px;
}

.global-map{
  position:relative;

  min-height:270px;

  overflow:hidden;

  border-radius:12px;

  background:
    radial-gradient(
      circle at center,
      rgba(8,124,255,.10),
      transparent 60%
    ),
    #f5f9fd;
}

.map-grid{
  position:absolute;
  inset:0;

  background-image:
    linear-gradient(
      rgba(8,124,255,.06) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(8,124,255,.06) 1px,
      transparent 1px
    );

  background-size:28px 28px;
}

.map-title{
  position:absolute;

  left:50%;
  top:50%;

  transform:translate(-50%,-50%);

  color:rgba(8,124,255,.12);

  font-size:60px;
  font-weight:900;
  letter-spacing:.08em;
}

.point{
  position:absolute;

  width:9px;
  height:9px;

  border-radius:50%;

  background:#087cff;

  box-shadow:
    0 0 0 7px rgba(8,124,255,.12),
    0 0 18px rgba(8,124,255,.4);
}

.p1{left:30%;top:42%}
.p2{left:48%;top:52%}
.p3{left:57%;top:38%}
.p4{left:70%;top:47%}
.p5{left:78%;top:65%}


/* =========================================================
   LEADERSHIP
========================================================= */

.about-leadership{
  padding:75px 5%;

  background:#f7faff;
}

.leadership-grid{
  width:min(1200px,100%);
  margin:auto;

  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:16px;
}

.leader-card{
  padding:30px 20px;

  text-align:center;

  background:#fff;

  border:1px solid #e2ebf3;
  border-radius:10px;

  transition:.25s ease;
}

.leader-card:hover{
  transform:translateY(-4px);

  box-shadow:0 15px 35px rgba(20,55,90,.08);
}

.leader-initial{
  width:75px;
  height:75px;

  margin:0 auto 18px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:linear-gradient(
    145deg,
    #eaf5ff,
    #d8efff
  );

  color:#087cff;

  font-size:11px;
  font-weight:800;
}

.leader-card h3{
  margin:0 0 7px;

  color:#142a43;

  font-size:14px;
}

.leader-card span{
  color:#74879a;

  font-size:11px;
}


/* =========================================================
   WHY CAPTIV
========================================================= */

.about-why{
  width:min(1200px,90%);
  margin:auto;

  padding:85px 0;

  display:grid;
  grid-template-columns:.75fr 1.25fr;

  gap:70px;
}

.why-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:12px;
}

.why-item{
  padding:20px;

  border:1px solid #e3ebf3;
  border-radius:9px;

  background:#fff;
}

.why-item:last-child{
  grid-column:1/-1;
}

.why-item strong{
  color:#087cff;

  font-size:11px;
}

.why-item h3{
  margin:8px 0;

  color:#122740;

  font-size:14px;
}

.why-item p{
  margin:0;

  color:#73869a;

  font-size:11px;
  line-height:1.6;
}


/* =========================================================
   CTA
========================================================= */

.about-cta{
  position:relative;

  padding:80px 5%;

  overflow:hidden;

  background:
    linear-gradient(
      90deg,
      #061b32,
      #0b416a
    );

  text-align:center;
}

.cta-overlay{
  position:absolute;
  inset:0;

  background:
    radial-gradient(
      circle at 20% 50%,
      rgba(24,200,239,.16),
      transparent 35%
    ),
    radial-gradient(
      circle at 80% 40%,
      rgba(8,124,255,.2),
      transparent 35%
    );
}

.cta-inner{
  position:relative;
  z-index:2;

  max-width:750px;
  margin:auto;
}

.about-cta .section-eyebrow{
  color:#18c8ef;
}

.about-cta h2{
  margin:10px 0 15px;

  color:#fff;

  font-size:clamp(34px,4vw,52px);

  letter-spacing:-.04em;
}

.about-cta h2 span{
  color:#18c8ef;
}

.about-cta p{
  margin:0 auto 25px;

  max-width:560px;

  color:#a5bacb;

  font-size:13px;
  line-height:1.7;
}

.about-cta a{
  display:inline-flex;

  padding:13px 20px;

  background:#087cff;
  color:#fff;

  border-radius:7px;

  text-decoration:none;

  font-size:12px;
  font-weight:700;
}


/* =========================================================
   FOOTER
========================================================= */

.about-footer{
  background:#061522 !important;
}

.about-footer .footer-grid{
  max-width:1400px !important;
  margin:auto !important;
  padding:60px 5% 35px !important;

  display:grid !important;
  grid-template-columns:1.2fr 1fr 1fr 1fr 1.25fr !important;
  gap:45px !important;
}

.about-footer .footer-logo{
  width:175px !important;
  height:auto !important;
  padding:10px 14px !important;
  background:#fff !important;
  margin-bottom:15px !important;
}

.about-footer .footer-grid h4{
  margin:0 0 17px;

  color:#fff;

  font-size:14px;
}

.about-footer .footer-grid p{
  color:#8ea3b6;

  font-size:12px;
  line-height:1.75;
}

.about-footer .footer-grid a{
  display:block;

  margin-bottom:10px;

  color:#8ea3b6;

  font-size:12px;

  text-decoration:none;
}

.about-footer .footer-grid a:hover{
  color:#fff;
}

.about-footer .footer-bottom{
  max-width:1400px !important;
  margin:auto !important;

  padding:20px 5% !important;

  border-top:1px solid rgba(255,255,255,.1);

  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;

  align-items:center;

  color:#71869a;

  font-size:11px;
}

.about-footer .footer-bottom > span:first-child{
  text-align:left;
}

.about-footer .footer-bottom > span:nth-child(2){
  display:flex !important;
  justify-content:center;
  gap:6px;
  white-space:nowrap;
}

.about-footer .footer-bottom > span:last-child{
  text-align:right;
}

.about-footer .footer-legal{
  display:inline-flex !important;
  gap:6px;
}

.about-footer .footer-legal a{
  display:inline !important;
  margin:0 !important;
}

.about-footer .footer-region{
  white-space:nowrap;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1050px){

  .about-nav{
    gap:14px;
  }

  .engine-grid{
    grid-template-columns:repeat(3,1fr);
  }

  .about-section-heading{
    display:block;
  }

  .about-section-heading p{
    margin-top:10px;
  }

  .about-footer .footer-grid{
    grid-template-columns:repeat(2,1fr) !important;
  }
}


@media(max-width:800px){

  .about-nav{
    display:none;
  }

  .about-hero{
    min-height:420px;
  }

  .about-hero-side{
    display:none;
  }

  .about-stats{
    grid-template-columns:repeat(2,1fr);
  }

  .about-stat:nth-child(2){
    border-right:0;
  }

  .about-stat:nth-child(-n+2){
    border-bottom:1px solid #e7edf4;
  }

  .about-who,
  .about-global,
  .about-why{
    grid-template-columns:1fr;
    gap:35px;
  }

  .approach-flow{
    flex-direction:column;
    gap:15px;
  }

  .approach-line{
    width:1px;
    height:25px;
    flex:none;
  }

  .leadership-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .why-grid{
    grid-template-columns:1fr;
  }

  .why-item:last-child{
    grid-column:auto;
  }

}


@media(max-width:600px){

  .about-hero h1{
    font-size:42px;
  }

  .about-stats{
    width:92%;
  }

  .about-stat{
    padding:15px;
  }

  .engine-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .leadership-grid{
    grid-template-columns:1fr;
  }

  .about-footer .footer-grid{
    grid-template-columns:1fr !important;
  }

  .about-footer .footer-bottom{
    grid-template-columns:1fr !important;
    gap:12px;
    text-align:center;
  }

  .about-footer .footer-bottom > span{
    text-align:center !important;
  }

  .about-footer .footer-region{
    white-space:normal;
  }

}

/* ABOUT HERO - ORIGINAL CAPTIV GLOBAL IMAGE */
.captiv-about-page .about-hero{
  min-height:420px !important;
  height:420px !important;
  background-image:url("assets/about/about-hero.webp") !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  overflow:hidden !important;
}

.captiv-about-page .about-hero{
  min-height:420px !important;
  height:420px !important;
  background-color:#061c32 !important;
  background-image:url("assets/about/about-hero.webp") !important;
  background-repeat:no-repeat !important;
  background-size:62% auto !important;
  background-position:right center !important;
  overflow:hidden !important;
}

.captiv-about-page .about-hero-overlay{
  background:linear-gradient(90deg,#061c32 0%,rgba(6,28,50,.98) 28%,rgba(6,28,50,.88) 40%,rgba(6,28,50,.35) 58%,rgba(6,28,50,0) 72%) !important;
}

.captiv-about-page .about-hero-inner{
  width:min(1400px,90%) !important;
  padding-top:42px !important;
}

.captiv-about-page .about-hero h1{
  max-width:620px !important;
  font-size:clamp(40px,4.5vw,62px) !important;
}

.captiv-about-page .about-hero p{
  max-width:520px !important;
}

.captiv-about-page .about-hero-side{
  right:4% !important;
}

@media(max-width:800px){
  .captiv-about-page .about-hero{
    background-size:cover !important;
    background-position:center !important;
  }
}


/* =========================================================
   ABOUT HERO — FINAL CLEAN LAYOUT
   Use only the visual/right side of about-hero.png
========================================================= */

.captiv-about-page .about-hero{
  min-height:420px !important;
  height:420px !important;

  background-image:url("assets/about/about-hero.webp") !important;
  background-repeat:no-repeat !important;

  /* Keep image natural and crop its left text */
  background-size:auto 100% !important;
  background-position:right center !important;

  background-color:#061c32 !important;
  overflow:hidden !important;
}

.captiv-about-page .about-hero-overlay{
  background:
    linear-gradient(
      90deg,
      #061c32 0%,
      #061c32 31%,
      rgba(6,28,50,.96) 43%,
      rgba(6,28,50,.45) 58%,
      rgba(6,28,50,0) 78%
    ) !important;
}

.captiv-about-page .about-hero-inner{
  position:relative !important;
  z-index:5 !important;
}

.captiv-about-page .about-hero h1,
.captiv-about-page .about-hero p,
.captiv-about-page .about-eyebrow,
.captiv-about-page .about-hero-btn{
  position:relative !important;
  z-index:10 !important;
}

.captiv-about-page .about-hero-side{
  display:none !important;
}

@media(max-width:800px){
  .captiv-about-page .about-hero{
    background-size:auto 100% !important;
    background-position:72% center !important;
  }
}


/* ABOUT HERO - KEEP OUR STORY ABOVE STATS */
.captiv-about-page .about-hero-inner{
  z-index:20 !important;
}

.captiv-about-page .about-hero-btn{
  position:relative !important;
  z-index:30 !important;
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
}

.captiv-about-page .about-stats{
  z-index:10 !important;
}

.captiv-about-page .about-hero{
  padding-bottom:35px !important;
}


/* FINAL FIX - OUR STORY BUTTON POSITION */
.captiv-about-page .about-hero-inner{
  position:relative !important;
}

.captiv-about-page .about-hero-btn{
  position:absolute !important;
  left:0 !important;
  top:320px !important;
  z-index:999 !important;
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
}

.captiv-about-page .about-hero{
  overflow:visible !important;
}

.captiv-about-page .about-stats{
  position:relative !important;
  z-index:20 !important;
}

@media(max-width:800px){
  .captiv-about-page .about-hero-btn{
    top:335px !important;
  }
}


/* FINAL FIX - OUR STORY BUTTON POSITION */
.captiv-about-page .about-hero-inner{
  position:relative !important;
}

.captiv-about-page .about-hero-btn{
  position:absolute !important;
  left:0 !important;
  top:320px !important;
  z-index:999 !important;
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
}

.captiv-about-page .about-hero{
  overflow:visible !important;
}

.captiv-about-page .about-stats{
  position:relative !important;
  z-index:20 !important;
}

@media(max-width:800px){
  .captiv-about-page .about-hero-btn{
    top:335px !important;
  }
}


/* ABOUT HERO - FINAL BUTTON / CONTENT ALIGNMENT */
.captiv-about-page .about-hero{
  min-height:455px !important;
  height:455px !important;
  overflow:hidden !important;
}

.captiv-about-page .about-hero-inner{
  padding-top:42px !important;
}

.captiv-about-page .about-hero-btn{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  display:inline-flex !important;
  margin-top:14px !important;
  z-index:50 !important;
}

.captiv-about-page .about-hero p{
  margin-bottom:0 !important;
}

.captiv-about-page .about-stats{
  margin-top:-25px !important;
}


/* ABOUT HERO - FINAL VERTICAL ALIGNMENT */
.captiv-about-page .about-hero{
  min-height:440px !important;
  height:440px !important;
}

.captiv-about-page .about-hero-inner{
  padding-top:38px !important;
}

.captiv-about-page .about-hero-btn{
  margin-top:12px !important;
  transform:translateY(-2px) !important;
}

.captiv-about-page .about-stats{
  margin-top:-18px !important;
}


/* =========================================================
   GLOBAL PRESENCE — APPROVED MAP DESIGN
========================================================= */

.captiv-about-page .global-presence{
  padding:90px 0 !important;
  background:#fff !important;
}

.captiv-about-page .global-container{
  width:min(1400px,90%) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:0.82fr 1.35fr !important;
  gap:70px !important;
  align-items:center !important;
}

.captiv-about-page .global-content{
  padding:0 !important;
}

.captiv-about-page .global-kicker{
  color:#0878e8 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:2px !important;
  margin-bottom:18px !important;
}

.captiv-about-page .global-content h2{
  max-width:620px !important;
  margin:0 0 24px !important;
  font-size:clamp(38px,4vw,58px) !important;
  line-height:1.05 !important;
  letter-spacing:-2px !important;
  color:#07182f !important;
}

.captiv-about-page .global-content h2 span{
  color:#0878e8 !important;
}

.captiv-about-page .global-content > p{
  max-width:600px !important;
  color:#627691 !important;
  font-size:16px !important;
  line-height:1.75 !important;
}

/* Clean country pills */
.captiv-about-page .global-locations{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:28px 0 0 !important;
}

.captiv-about-page .global-locations p{
  margin:0 !important;
  padding:10px 16px !important;
  border:1px solid #dce8f5 !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#49627e !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-shadow:0 4px 14px rgba(7,24,47,.04) !important;
}

.captiv-about-page .global-locations b{
  color:#132b47 !important;
}

/* Remove the old statistics block from Global Presence */
.captiv-about-page .global-presence .global-stats{
  display:none !important;
}

/* Map card */
.captiv-about-page .global-map{
  min-height:500px !important;
  height:500px !important;
  border-radius:22px !important;
  border:1px solid #d9e8f7 !important;
  background:
    radial-gradient(circle at 50% 45%,rgba(8,120,232,.10),transparent 58%),
    linear-gradient(135deg,#f5fbff,#eaf5ff) !important;
  box-shadow:0 18px 50px rgba(7,40,80,.08) !important;
}

/* World map */
.captiv-about-page .world-map-image{
  width:92% !important;
  max-height:460px !important;
  opacity:.88 !important;
  filter:
    brightness(0)
    saturate(100%)
    invert(32%)
    sepia(78%)
    saturate(1085%)
    hue-rotate(175deg)
    brightness(91%)
    contrast(95%) !important;
}

/* Glowing markers */
.captiv-about-page .map-location{
  transform:scale(1.05) !important;
}

.captiv-about-page .map-dot{
  background:#0878e8 !important;
  box-shadow:
    0 0 0 7px rgba(8,120,232,.13),
    0 0 24px rgba(8,120,232,.65) !important;
}

.captiv-about-page .map-location:hover .map-dot{
  transform:scale(1.35) !important;
}

/* Map labels */
.captiv-about-page .map-label{
  background:#fff !important;
  color:#132b47 !important;
  border:1px solid #dce8f5 !important;
  box-shadow:0 8px 24px rgba(7,24,47,.10) !important;
  border-radius:9px !important;
}

/* CTA */
.captiv-about-page .global-button{
  margin-top:28px !important;
  padding:13px 20px !important;
  border-radius:9px !important;
}

/* Responsive */
@media(max-width:900px){
  .captiv-about-page .global-container{
    grid-template-columns:1fr !important;
    gap:45px !important;
  }

  .captiv-about-page .global-map{
    min-height:390px !important;
    height:390px !important;
  }
}

@media(max-width:600px){
  .captiv-about-page .global-presence{
    padding:65px 0 !important;
  }

  .captiv-about-page .global-content h2{
    font-size:38px !important;
  }

  .captiv-about-page .global-map{
    min-height:300px !important;
    height:300px !important;
    border-radius:16px !important;
  }
}


/* GLOBAL PRESENCE — PREMIUM WORLD MAP */
.captiv-about-page .global-map{
  position:relative !important;
  height:500px !important;
  min-height:500px !important;
  overflow:hidden !important;
  border-radius:22px !important;
  border:1px solid #d7e8f8 !important;
  background:
    radial-gradient(circle at 52% 48%,rgba(0,136,255,.14),transparent 42%),
    linear-gradient(135deg,#f8fcff,#eaf6ff) !important;
  box-shadow:0 20px 55px rgba(7,45,85,.10) !important;
}

.captiv-about-page .world-map-stage{
  position:relative !important;
  width:100% !important;
  height:100% !important;
}

.captiv-about-page .map-grid{
  position:absolute !important;
  inset:0 !important;
  background-image:
    linear-gradient(rgba(30,125,210,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(30,125,210,.08) 1px,transparent 1px) !important;
  background-size:28px 28px !important;
}

.captiv-about-page .map-glow{
  position:absolute !important;
  width:330px !important;
  height:330px !important;
  left:50% !important;
  top:48% !important;
  transform:translate(-50%,-50%) !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(0,150,255,.18),transparent 68%) !important;
  filter:blur(8px) !important;
}

.captiv-about-page .map-orbit{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  border:1px solid rgba(0,130,230,.22) !important;
  border-radius:50% !important;
  transform:translate(-50%,-50%) rotate(-12deg) !important;
}

.captiv-about-page .orbit-1{
  width:78% !important;
  height:38% !important;
}

.captiv-about-page .orbit-2{
  width:62% !important;
  height:70% !important;
  transform:translate(-50%,-50%) rotate(35deg) !important;
}

/* Continent silhouettes */
.captiv-about-page .map-continent{
  position:absolute !important;
  background:rgba(22,126,205,.15) !important;
  filter:blur(.2px) !important;
  border:1px solid rgba(22,126,205,.10) !important;
}

.captiv-about-page .continent-na{
  width:150px !important;
  height:105px !important;
  left:12% !important;
  top:23% !important;
  border-radius:55% 40% 48% 35% !important;
  transform:rotate(-20deg) !important;
}

.captiv-about-page .continent-sa{
  width:75px !important;
  height:145px !important;
  left:27% !important;
  top:48% !important;
  border-radius:45% 55% 55% 40% !important;
  transform:rotate(18deg) !important;
}

.captiv-about-page .continent-eu{
  width:115px !important;
  height:65px !important;
  left:45% !important;
  top:25% !important;
  border-radius:50% !important;
}

.captiv-about-page .continent-africa{
  width:105px !important;
  height:160px !important;
  left:48% !important;
  top:38% !important;
  border-radius:48% 42% 55% 50% !important;
  transform:rotate(8deg) !important;
}

.captiv-about-page .continent-asia{
  width:250px !important;
  height:120px !important;
  right:12% !important;
  top:29% !important;
  border-radius:60% 45% 50% 55% !important;
  transform:rotate(8deg) !important;
}

.captiv-about-page .continent-australia{
  width:85px !important;
  height:55px !important;
  right:15% !important;
  bottom:21% !important;
  border-radius:55% !important;
}

/* Location markers */
.captiv-about-page .map-point{
  position:absolute !important;
  z-index:10 !important;
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
}

.captiv-about-page .map-point span{
  display:block !important;
  width:12px !important;
  height:12px !important;
  border-radius:50% !important;
  background:#087ff0 !important;
  border:3px solid #fff !important;
  box-shadow:0 0 0 5px rgba(8,127,240,.16),0 0 22px rgba(8,127,240,.55) !important;
}

.captiv-about-page .map-point label{
  padding:7px 11px !important;
  border-radius:8px !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid #d9e7f5 !important;
  color:#17324e !important;
  font-size:11px !important;
  font-weight:700 !important;
  box-shadow:0 6px 18px rgba(10,45,80,.10) !important;
  white-space:nowrap !important;
}

.captiv-about-page .map-point.india{
  left:62% !important;
  top:48% !important;
}

.captiv-about-page .map-point.africa{
  left:48% !important;
  top:58% !important;
}

.captiv-about-page .map-point.middle-east{
  left:57% !important;
  top:39% !important;
}

.captiv-about-page .map-point.usa{
  left:24% !important;
  top:33% !important;
}

.captiv-about-page .map-point.singapore{
  left:68% !important;
  top:65% !important;
}

.captiv-about-page .map-point.zambia{
  left:51% !important;
  top:62% !important;
}

.captiv-about-page .map-title{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  text-align:center !important;
  z-index:5 !important;
}

.captiv-about-page .map-title strong{
  display:block !important;
  font-size:54px !important;
  letter-spacing:7px !important;
  color:rgba(8,120,232,.16) !important;
}

.captiv-about-page .map-title span{
  display:block !important;
  margin-top:4px !important;
  font-size:11px !important;
  letter-spacing:2px !important;
  color:#7b9ab6 !important;
  text-transform:uppercase !important;
}

@media(max-width:700px){
  .captiv-about-page .global-map{
    height:360px !important;
    min-height:360px !important;
  }

  .captiv-about-page .map-point label{
    display:none !important;
  }

  .captiv-about-page .map-title strong{
    font-size:38px !important;
  }
}

/* =========================================================
   CAPTIV LIVE WORLD MAP
========================================================= */

.captiv-about-page .global-map{
  position:relative !important;
  height:500px !important;
  min-height:500px !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:22px !important;
  border:1px solid #d9e7f5 !important;
  background:#eef7ff !important;
  box-shadow:0 18px 50px rgba(7,45,85,.10) !important;
}

#captiv-global-map{
  width:100% !important;
  height:100% !important;
  min-height:500px !important;
  border-radius:22px !important;
}

.captiv-about-page .leaflet-container{
  font-family:inherit !important;
  background:#eaf5ff !important;
}

.captiv-about-page .leaflet-control-zoom{
  border:0 !important;
  box-shadow:0 5px 18px rgba(7,45,85,.15) !important;
}

.captiv-about-page .leaflet-control-zoom a{
  color:#0878e8 !important;
}

.captiv-about-page .captiv-map-marker{
  background:transparent !important;
  border:0 !important;
}

.captiv-about-page .captiv-map-marker span{
  display:block !important;
  width:14px !important;
  height:14px !important;
  border-radius:50% !important;
  background:#087ff0 !important;
  border:3px solid #fff !important;
  box-shadow:
    0 0 0 6px rgba(8,127,240,.18),
    0 0 22px rgba(8,127,240,.65) !important;
  animation:captivMapPulse 2s infinite !important;
}

@keyframes captivMapPulse{
  0%,100%{
    box-shadow:
      0 0 0 5px rgba(8,127,240,.16),
      0 0 18px rgba(8,127,240,.50);
  }
  50%{
    box-shadow:
      0 0 0 11px rgba(8,127,240,.05),
      0 0 28px rgba(8,127,240,.75);
  }
}

.captiv-about-page .captiv-map-popup{
  min-width:170px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}

.captiv-about-page .captiv-map-popup strong{
  color:#071d35 !important;
  font-size:15px !important;
}

.captiv-about-page .captiv-map-popup span{
  color:#0878e8 !important;
  font-size:12px !important;
  font-weight:700 !important;
}

.captiv-about-page .captiv-map-popup small{
  color:#637a91 !important;
  line-height:1.4 !important;
}

@media(max-width:700px){
  .captiv-about-page .global-map{
    height:380px !important;
    min-height:380px !important;
  }

  #captiv-global-map{
    min-height:380px !important;
  }
}


/* =========================================================
   GLOBAL PRESENCE — FINAL APPROVED DESIGN
========================================================= */

.captiv-about-page .global-presence{
  padding:90px 0 !important;
  background:#fff !important;
}

.captiv-about-page .global-container{
  width:min(1400px,90%) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:0.82fr 1.35fr !important;
  gap:70px !important;
  align-items:center !important;
}

.captiv-about-page .global-copy{
  max-width:620px !important;
}

.captiv-about-page .global-copy .section-eyebrow{
  color:#087ff0 !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:2px !important;
  margin-bottom:18px !important;
}

.captiv-about-page .global-copy h2{
  margin:0 0 24px !important;
  color:#06233f !important;
  font-size:52px !important;
  line-height:1.02 !important;
  letter-spacing:-2px !important;
  font-weight:800 !important;
}

.captiv-about-page .global-copy h2 span{
  display:block !important;
  color:#087ff0 !important;
}

.captiv-about-page .global-copy p{
  max-width:620px !important;
  color:#60758a !important;
  font-size:15px !important;
  line-height:1.75 !important;
  margin-bottom:28px !important;
}

.captiv-about-page .global-regions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.captiv-about-page .global-region{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  padding:11px 16px !important;
  background:#fff !important;
  border:1px solid #d9e6f2 !important;
  border-radius:7px !important;
  color:#29445e !important;
  font-size:13px !important;
  font-weight:500 !important;
  box-shadow:0 3px 12px rgba(7,45,85,.03) !important;
}

.captiv-about-page .global-region img{
  width:21px !important;
  height:14px !important;
  object-fit:cover !important;
  border-radius:2px !important;
}

/* MAP PANEL */
.captiv-about-page .global-map{
  position:relative !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:16px !important;
  background:#eef8ff !important;
  box-shadow:0 18px 45px rgba(7,45,85,.08) !important;
}

.captiv-about-page .global-map img,
.captiv-about-page .global-map .global-map-design{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  object-fit:cover !important;
  border-radius:16px !important;
}

/* Remove old fake-map / Leaflet elements */
.captiv-about-page #captiv-global-map,
.captiv-about-page .world-map-image,
.captiv-about-page .map-location,
.captiv-about-page .map-title,
.captiv-about-page .map-pulse,
.captiv-about-page .map-dot,
.captiv-about-page .map-tooltip{
  display:none !important;
}

@media(max-width:1000px){
  .captiv-about-page .global-container{
    grid-template-columns:1fr !important;
    gap:45px !important;
  }

  .captiv-about-page .global-copy{
    max-width:760px !important;
  }

  .captiv-about-page .global-copy h2{
    font-size:46px !important;
  }
}

@media(max-width:600px){
  .captiv-about-page .global-presence{
    padding:65px 0 !important;
  }

  .captiv-about-page .global-container{
    width:90% !important;
  }

  .captiv-about-page .global-copy h2{
    font-size:38px !important;
    letter-spacing:-1px !important;
  }

  .captiv-about-page .global-regions{
    gap:8px !important;
  }

  .captiv-about-page .global-region{
    padding:9px 12px !important;
    font-size:12px !important;
  }
}


/* =========================================================
   ABOUT HERO - REMOVE OLD MAP / DUPLICATE CONTENT LAYERS
========================================================= */

/* Old global-map markers accidentally appearing over hero */
.captiv-about-page .about-hero .map-location,
.captiv-about-page .about-hero .map-pulse,
.captiv-about-page .about-hero .region-label,
.captiv-about-page .about-hero .map-tooltip,
.captiv-about-page .about-hero .map-title,
.captiv-about-page .about-hero .map-continent,
.captiv-about-page .about-hero .map-orbit,
.captiv-about-page .about-hero .map-glow,
.captiv-about-page .about-hero .map-grid{
  display:none !important;
}

/* Remove any old floating map layer */
.captiv-about-page .about-hero .global-map{
  display:none !important;
}

/* Keep only the real hero content */
.captiv-about-page .about-hero-content{
  position:relative !important;
  z-index:20 !important;
}

/* Prevent hidden/old visual layers from appearing */
.captiv-about-page .about-hero-visual{
  z-index:1 !important;
}

/* Clean hero overlay */
.captiv-about-page .about-hero::before{
  z-index:2 !important;
}

.captiv-about-page .about-hero::after{
  z-index:3 !important;
}

/* Hero text must remain above image */
.captiv-about-page .about-hero-inner{
  position:relative !important;
  z-index:10 !important;
}


/* =========================================================
   FINAL ABOUT HERO CLEANUP
   Keep ONLY clean globe background + real HTML content
========================================================= */

.captiv-about-page .captiv-hero{
  position:relative !important;
  overflow:hidden !important;
  background-image:url("assets/captiv-global-hero.webp") !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

/* Remove duplicate/old hero visual layers */
.captiv-about-page .captiv-hero > img,
.captiv-about-page .captiv-hero .hero-image,
.captiv-about-page .captiv-hero .hero-visual,
.captiv-about-page .captiv-hero .captiv-hero-visual,
.captiv-about-page .captiv-hero .global-map,
.captiv-about-page .captiv-hero .map-location,
.captiv-about-page .captiv-hero .map-pulse,
.captiv-about-page .captiv-hero .region-label,
.captiv-about-page .captiv-hero .map-tooltip,
.captiv-about-page .captiv-hero .map-title{
  display:none !important;
}

/* Keep only actual About hero content */
.captiv-about-page .captiv-hero-inner{
  position:relative !important;
  z-index:10 !important;
}

.captiv-about-page .captiv-hero-content{
  position:relative !important;
  z-index:20 !important;
}

/* Clean dark overlay only */
.captiv-about-page .captiv-hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(
    90deg,
    rgba(3,29,49,.96) 0%,
    rgba(3,29,49,.82) 34%,
    rgba(3,29,49,.28) 63%,
    rgba(3,29,49,.05) 100%
  ) !important;
  z-index:1 !important;
  pointer-events:none !important;
}

.captiv-about-page .captiv-hero::after{
  display:none !important;
}

.captiv-about-page .captiv-hero-inner,
.captiv-about-page .captiv-hero-content{
  z-index:10 !important;
}


/* =========================================================
   FINAL FIX — STOP GLOBAL MAP FROM BLEEDING INTO HERO
========================================================= */

.captiv-about-page .captiv-hero{
  position:relative !important;
  z-index:20 !important;
  overflow:hidden !important;
}

.captiv-about-page .global-presence{
  position:relative !important;
  z-index:1 !important;
  overflow:hidden !important;
  isolation:isolate !important;
}

.captiv-about-page .global-container{
  position:relative !important;
  z-index:2 !important;
}

.captiv-about-page .global-map,
.captiv-about-page .map-card,
.captiv-about-page .map-visual{
  position:relative !important;
  z-index:2 !important;
}

/* Never allow Global Presence decorative elements above its section */
.captiv-about-page .global-presence [class*="map-"],
.captiv-about-page .global-presence [class*="location"],
.captiv-about-page .global-presence [class*="pulse"],
.captiv-about-page .global-presence [class*="marker"]{
  max-height:none !important;
}

/* Keep hero completely above the Global Presence layer */
.captiv-about-page .captiv-hero-inner,
.captiv-about-page .captiv-hero-content{
  position:relative !important;
  z-index:30 !important;
}


/* FINAL: old map layer must never appear outside Global Presence */
body.captiv-about-page .old-global-map,
body.captiv-about-page .hero-map,
body.captiv-about-page .hero-map-layer,
body.captiv-about-page .hero-map-overlay,
body.captiv-about-page .map-overlay{
  display:none !important;
}
