/* AIIA public v41: index menu on all public pages, slimmer titles, desktop plane up */
:root{
  --aiia-v41-header-bg:rgba(3,10,24,.88);
  --aiia-v41-header-bg-2:rgba(3,10,24,.66);
  --aiia-v41-border:rgba(255,255,255,.13);
}

/* One canonical readable menu on every root public page. Journey pages are not touched by this patch. */
.site-header.aiia-v41-canonical-header,
body:not(.aiia-journey-page) .site-header{
  position:sticky !important;
  top:0 !important;
  z-index:9999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  padding:12px clamp(16px,2.8vw,42px) !important;
  background:linear-gradient(180deg,var(--aiia-v41-header-bg),var(--aiia-v41-header-bg-2)) !important;
  border:1px solid var(--aiia-v41-border) !important;
  border-radius:0 0 24px 24px !important;
  box-shadow:0 20px 58px rgba(0,0,0,.30) !important;
  backdrop-filter:blur(18px) saturate(1.15) !important;
  -webkit-backdrop-filter:blur(18px) saturate(1.15) !important;
  overflow:visible !important;
}
.site-header.aiia-v41-canonical-header .brand img,
body:not(.aiia-journey-page) .site-header .brand img,
.site-header .aiia-logo-img{
  width:42px !important;
  height:42px !important;
  object-fit:contain !important;
}
@media(min-width:981px){
  .site-header.aiia-v41-canonical-header .nav,
  body:not(.aiia-journey-page) .site-header .nav{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px 12px !important;
    min-width:0 !important;
    max-width:760px !important;
    padding:7px 10px !important;
    border-radius:18px !important;
    background:rgba(2,8,23,.55) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;
  }
  .site-header.aiia-v41-canonical-header .nav a,
  body:not(.aiia-journey-page) .site-header .nav a{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:8px 9px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.035) !important;
    color:rgba(255,255,255,.88) !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-shadow:0 2px 14px rgba(0,0,0,.42) !important;
  }
  .site-header.aiia-v41-canonical-header .nav a:hover,
  body:not(.aiia-journey-page) .site-header .nav a:hover{
    color:#fff !important;
    background:rgba(34,211,238,.14) !important;
  }
  .site-header .customer-club-cta.aiia-v41-request-cta,
  .site-header .customer-club-cta,
  .site-header .header-cta{
    flex:0 0 auto !important;
    white-space:nowrap !important;
    font-size:12px !important;
    padding:10px 13px !important;
  }
}

/* Keep content from sliding under the wrapped/sticky header */
body:not(.aiia-home-page):not(.aiia-journey-page) main,
body.inner-page:not(.aiia-journey-page) main{
  padding-top:clamp(42px,6vw,78px) !important;
}
body.aiia-home-page main{padding-top:0 !important;}

/* Section titles: more elegant / slimmer, not oversized */
.section-title h2,
.section-title.centered h2,
.proof h2,
.final-cta h2,
.team-plain-head h2,
.aiia-home-team-section .section-title h2,
.aiia-v36-page h1,
.aiia-v36-hero h1,
.inner-page .section-title h2{
  font-family:Sora,Inter,system-ui,sans-serif !important;
  font-size:clamp(26px,2.75vw,42px) !important;
  line-height:1.13 !important;
  letter-spacing:-.032em !important;
  font-weight:600 !important;
}
.section-title small,
.proof-copy small,
.final-cta small{
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.18em !important;
}
.section-title p,
.aiia-v36-hero p,
.inner-page .section-title p{
  font-size:clamp(14px,1.3vw,17px) !important;
  line-height:1.72 !important;
  max-width:760px !important;
}
@media(max-width:760px){
  .section-title h2,
  .section-title.centered h2,
  .proof h2,
  .final-cta h2,
  .team-plain-head h2,
  .aiia-v36-page h1,
  .aiia-v36-hero h1,
  .inner-page .section-title h2{
    font-size:clamp(25px,7.5vw,34px) !important;
    line-height:1.14 !important;
    letter-spacing:-.026em !important;
    font-weight:600 !important;
  }
  body:not(.aiia-home-page):not(.aiia-journey-page) main,
  body.inner-page:not(.aiia-journey-page) main{
    padding-top:96px !important;
  }
}

/* Homepage hero exact content remains from the review/user request */
.aiia-home-page .hero-copy h1{
  max-width:980px !important;
  line-height:.98 !important;
  letter-spacing:-.055em !important;
  font-weight:700 !important;
}
.aiia-home-page .hero-copy > p{
  max-width:760px !important;
  font-weight:520 !important;
}

/* Desktop: bring the airplane a bit higher on index only */
@media(min-width:981px){
  body.aiia-home-page .hero{
    align-items:center !important;
  }
  body.aiia-home-page .hero .hero-art.aiia-plane-stage,
  body.aiia-home-page .hero .aiia-plane-stage{
    margin-top:-34px !important;
    transform:translateY(-34px) !important;
    overflow:visible !important;
  }
  body.aiia-home-page .hero .home-plane-stage{
    inset:-30px 0 0 0 !important;
    overflow:visible !important;
  }
  body.aiia-home-page .hero .home-plane-canvas{
    top:-8px !important;
  }
}
@media(min-width:1200px){
  body.aiia-home-page .hero .hero-art.aiia-plane-stage,
  body.aiia-home-page .hero .aiia-plane-stage{
    margin-top:-44px !important;
    transform:translateY(-44px) !important;
  }
  body.aiia-home-page .hero .home-plane-canvas{top:-18px !important;}
}

/* Mobile hamburger/menu cleanup */
.aiia-mobile-menu-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  width:42px;
  height:42px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
}
.aiia-mobile-menu-toggle span{display:block;width:19px;height:2px;border-radius:999px;background:#fff;}
@media(max-width:980px){
  .aiia-mobile-menu-toggle{display:inline-flex !important;}
  body:not(.aiia-journey-page) .site-header{
    flex-wrap:wrap !important;
    border-radius:0 0 20px 20px !important;
    padding:12px 14px !important;
  }
  body:not(.aiia-journey-page) .site-header .nav{
    order:10 !important;
    width:100% !important;
    display:none !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:12px !important;
    border-radius:18px !important;
    background:rgba(3,10,24,.96) !important;
    border:1px solid rgba(255,255,255,.12) !important;
  }
  body.aiia-mobile-nav-open:not(.aiia-journey-page) .site-header .nav{display:grid !important;}
  body:not(.aiia-journey-page) .site-header .nav a{
    display:flex !important;
    padding:12px 14px !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.055) !important;
    text-decoration:none !important;
  }
  body:not(.aiia-journey-page) .site-header .customer-club-cta,
  body:not(.aiia-journey-page) .site-header .header-cta{
    font-size:11px !important;
    padding:9px 10px !important;
  }
}


/* v42: clear active/current page state in menu */
body:not(.aiia-journey-page) .site-header .nav a.aiia-current-page,
body:not(.aiia-journey-page) .site-header .nav a.is-active,
body:not(.aiia-journey-page) .site-header .nav a[aria-current="page"]{
  color:#ffffff !important;
  background:linear-gradient(135deg, rgba(34,211,238,.28), rgba(255,255,255,.12)) !important;
  border:1px solid rgba(34,211,238,.62) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.05) inset, 0 10px 30px rgba(34,211,238,.14) !important;
  text-shadow:none !important;
}
body:not(.aiia-journey-page) .site-header .nav a.aiia-current-page::before,
body:not(.aiia-journey-page) .site-header .nav a.is-active::before,
body:not(.aiia-journey-page) .site-header .nav a[aria-current="page"]::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  margin-right:7px;
  background:#22d3ee;
  box-shadow:0 0 14px rgba(34,211,238,.95);
  flex:0 0 auto;
}
body:not(.aiia-journey-page) .site-header .customer-club-cta.aiia-current-page,
body:not(.aiia-journey-page) .site-header .customer-club-cta[aria-current="page"],
body:not(.aiia-journey-page) .site-header .header-cta.aiia-current-page,
body:not(.aiia-journey-page) .site-header .header-cta[aria-current="page"]{
  background:linear-gradient(135deg, #22d3ee, #60a5fa) !important;
  color:#06111f !important;
  border-color:rgba(255,255,255,.35) !important;
  box-shadow:0 16px 38px rgba(34,211,238,.25), inset 0 1px 0 rgba(255,255,255,.45) !important;
}
@media(max-width:980px){
  body:not(.aiia-journey-page) .site-header .nav a.aiia-current-page,
  body:not(.aiia-journey-page) .site-header .nav a.is-active,
  body:not(.aiia-journey-page) .site-header .nav a[aria-current="page"]{
    border-radius:14px !important;
    justify-content:flex-start !important;
  }
}


/* v43: fit hero/section content back inside cards, keep headers readable */
:root{
  --aiia-v43-header-h:76px;
}

/* Prevent sticky header from stealing visual space while keeping content clear */
body:not(.aiia-journey-page) .site-header{
  min-height:auto !important;
}
body:not(.aiia-home-page):not(.aiia-journey-page) main,
body.inner-page:not(.aiia-journey-page) main{
  padding-top:clamp(30px,4.2vw,56px) !important;
}

/* HOME: pull the whole hero card up and keep all text/buttons inside the frame */
body.aiia-home-page main{
  padding-top:0 !important;
}
body.aiia-home-page .hero{
  margin-top:clamp(14px,2.1vh,24px) !important;
  min-height:min(720px, calc(100svh - 98px)) !important;
  height:auto !important;
  padding-top:clamp(34px,4.6vh,64px) !important;
  padding-bottom:clamp(26px,3.8vh,52px) !important;
  overflow:hidden !important;
  align-items:center !important;
}
body.aiia-home-page .hero-copy{
  align-self:center !important;
  margin-top:0 !important;
  padding-top:0 !important;
  transform:translateY(-18px) !important;
  max-width:min(760px,52vw) !important;
  position:relative !important;
  z-index:4 !important;
}
body.aiia-home-page .hero-copy .eyebrow{
  margin-bottom:12px !important;
  font-size:clamp(11px,.85vw,13px) !important;
}
body.aiia-home-page .hero-copy h1{
  font-size:clamp(42px,4.55vw,74px) !important;
  line-height:1.01 !important;
  letter-spacing:-.052em !important;
  margin:0 0 16px !important;
  max-width:880px !important;
}
body.aiia-home-page .hero-copy > p{
  font-size:clamp(15px,1.08vw,18px) !important;
  line-height:1.52 !important;
  margin:0 0 18px !important;
  max-width:720px !important;
}
body.aiia-home-page .hero-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:12px !important;
  margin-bottom:12px !important;
}
body.aiia-home-page .hero-actions .btn,
body.aiia-home-page .hero .btn{
  min-height:0 !important;
  padding:11px 16px !important;
  line-height:1.15 !important;
}
body.aiia-home-page .journey-bridge{
  margin-top:14px !important;
  padding:12px 14px !important;
  gap:12px !important;
  max-width:720px !important;
}
body.aiia-home-page .journey-bridge p{
  margin:3px 0 0 !important;
  line-height:1.45 !important;
  font-size:13px !important;
}
body.aiia-home-page .hero-badges{
  margin-top:14px !important;
  gap:9px !important;
}
body.aiia-home-page .hero-badges > div{
  min-height:0 !important;
  padding:9px 11px !important;
}

/* HOME plane: raise it slightly, but do not let it push text/buttons out of the card */
@media(min-width:981px){
  body.aiia-home-page .hero .hero-art.aiia-plane-stage,
  body.aiia-home-page .hero .aiia-plane-stage{
    transform:translateY(-58px) !important;
    margin-top:-58px !important;
    max-height:560px !important;
  }
  body.aiia-home-page .hero .home-plane-stage{
    inset:-62px 0 0 0 !important;
  }
  body.aiia-home-page .hero .home-plane-canvas{
    top:-34px !important;
  }
}
@media(min-width:1400px){
  body.aiia-home-page .hero .hero-art.aiia-plane-stage,
  body.aiia-home-page .hero .aiia-plane-stage{
    transform:translateY(-72px) !important;
    margin-top:-72px !important;
  }
  body.aiia-home-page .hero .home-plane-canvas{top:-46px !important;}
}

/* Inner page hero cards: stop title/buttons from dropping outside the glass frame */
body:not(.aiia-journey-page) .page-shell{
  padding-top:clamp(24px,3.2vw,46px) !important;
}
body:not(.aiia-journey-page) .inner-glb-hero{
  min-height:auto !important;
  height:auto !important;
  padding:clamp(34px,4.2vw,58px) clamp(22px,4vw,56px) !important;
  align-items:center !important;
  overflow:hidden !important;
  gap:clamp(18px,3vw,38px) !important;
}
body:not(.aiia-journey-page) .inner-glb-hero__copy{
  margin-top:0 !important;
  padding-top:0 !important;
  transform:translateY(-8px) !important;
  min-width:0 !important;
}
body:not(.aiia-journey-page) .inner-glb-hero__copy h1,
body:not(.aiia-journey-page) .page-shell h1{
  font-size:clamp(34px,4vw,60px) !important;
  line-height:1.05 !important;
  letter-spacing:-.044em !important;
  margin:0 0 14px !important;
  max-width:860px !important;
}
body:not(.aiia-journey-page) .inner-glb-hero__copy p,
body:not(.aiia-journey-page) .page-shell .inner-glb-hero__copy p{
  font-size:clamp(14px,1.15vw,17px) !important;
  line-height:1.62 !important;
  margin-bottom:16px !important;
  max-width:760px !important;
}
body:not(.aiia-journey-page) .page-cta-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:14px !important;
}
body:not(.aiia-journey-page) .page-cta-row .btn{
  padding:11px 16px !important;
  line-height:1.15 !important;
}

/* Make cards/frames contain their own copy instead of clipping it */
body:not(.aiia-journey-page) .page-panel,
body:not(.aiia-journey-page) .service-card,
body:not(.aiia-journey-page) .metric-card,
body:not(.aiia-journey-page) .highlight-panel,
body:not(.aiia-journey-page) .page-block,
body:not(.aiia-journey-page) .page-band,
body:not(.aiia-journey-page) .aiia-v36-panel{
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}
body:not(.aiia-journey-page) .service-card,
body:not(.aiia-journey-page) .metric-card,
body:not(.aiia-journey-page) .page-panel,
body:not(.aiia-journey-page) .highlight-panel{
  padding-top:clamp(18px,2vw,26px) !important;
  padding-bottom:clamp(18px,2vw,28px) !important;
}
body:not(.aiia-journey-page) .section,
body:not(.aiia-journey-page) .section-spacer,
body:not(.aiia-journey-page) .page-block{
  margin-top:clamp(34px,5vw,70px) !important;
  margin-bottom:clamp(34px,5vw,70px) !important;
}
body:not(.aiia-journey-page) .section-title{
  margin-bottom:clamp(20px,3vw,34px) !important;
}

/* Consultation / Club pages: enough room under menu, but not pushed too far down */
body.aiia-v36-page .aiia-v36-main{
  padding-top:clamp(72px,8vw,104px) !important;
  padding-bottom:clamp(52px,6vw,86px) !important;
}
body.aiia-v36-page .aiia-v36-hero{
  margin-top:0 !important;
  padding-top:0 !important;
}
body.aiia-v36-page .aiia-v36-hero h1{
  font-size:clamp(34px,4vw,58px) !important;
  line-height:1.06 !important;
  margin-bottom:14px !important;
}
body.aiia-v36-page .aiia-v36-panel{
  margin-top:0 !important;
}

@media(max-width:980px){
  body:not(.aiia-home-page):not(.aiia-journey-page) main,
  body.inner-page:not(.aiia-journey-page) main{
    padding-top:78px !important;
  }
  body:not(.aiia-journey-page) .inner-glb-hero{
    padding:34px 18px 30px !important;
    gap:18px !important;
  }
  body:not(.aiia-journey-page) .inner-glb-hero__copy{
    transform:none !important;
  }
  body:not(.aiia-journey-page) .inner-glb-hero__copy h1,
  body:not(.aiia-journey-page) .page-shell h1{
    font-size:clamp(30px,9vw,42px) !important;
    line-height:1.08 !important;
  }
  body.aiia-v36-page .aiia-v36-main{
    padding-top:86px !important;
  }
}
@media(max-width:760px){
  body.aiia-home-page .hero{
    margin-top:10px !important;
    min-height:auto !important;
    padding:94px 18px 30px !important;
  }
  body.aiia-home-page .hero-copy{
    transform:translateY(-8px) !important;
    max-width:100% !important;
  }
  body.aiia-home-page .hero-copy h1{
    font-size:clamp(31px,9.2vw,44px) !important;
    line-height:1.06 !important;
    margin-bottom:12px !important;
  }
  body.aiia-home-page .hero-copy > p{
    font-size:14px !important;
    line-height:1.55 !important;
    margin-bottom:12px !important;
  }
  body.aiia-home-page .hero-actions .btn,
  body.aiia-home-page .hero .btn{
    width:100% !important;
    justify-content:center !important;
  }
  body.aiia-home-page .journey-bridge{
    margin-top:12px !important;
  }
  body.aiia-home-page .hero-badges{
    margin-top:12px !important;
  }
  body.aiia-home-page .hero .hero-art.aiia-plane-stage,
  body.aiia-home-page .hero .aiia-plane-stage{
    transform:translateY(-18px) !important;
    margin-top:-18px !important;
  }
}
