/*
  AITB HEALTH — PRODUCTION GLOBAL STYLES
  Upload to: public_html/assets/css/styles.css

  Required main page hero image:
  public_html/assets/images/facility/aitb-building-front-elevation.png

  Optional rotating hero image set:
  public_html/assets/images/facility/aitb-facility-detail.png
  public_html/assets/images/facility/aitb-facility-workflow.png
  public_html/assets/images/facility/aitb-manufacturing-floor.png
*/

:root{
  --bg:#071426;
  --bg2:#0b1b31;
  --bg3:#102642;
  --ink:#ffffff;
  --text:#dbeafe;
  --muted:#b8c7d9;
  --soft:#8fa6bd;
  --blue:#0b68b8;
  --cyan:#38bdf8;
  --gold:#d6b36a;
  --line:rgba(255,255,255,.16);
  --line2:rgba(255,255,255,.28);
  --panel:rgba(255,255,255,.075);
  --panel2:rgba(255,255,255,.105);
  --shadow:0 28px 90px rgba(0,0,0,.36);
  --radius:26px;
  --max:1480px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  min-width:320px;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 15% 0%,rgba(56,189,248,.13),transparent 32%),
    linear-gradient(180deg,#061120 0%,#071426 48%,#030a13 100%);
  color:var(--ink);
  font-family:Inter,Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.58;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
p{margin-top:0}
img{display:block;max-width:100%;height:auto}

/* HARD LOGO CONTROL */
img[src*="aitb-official-logo"],
img[alt*="AITB official"],
img[alt*="AITB Adaptive"]{
  width:auto!important;
  height:auto!important;
  max-width:230px!important;
  max-height:74px!important;
  object-fit:contain!important;
}

/* HEADER */
.site-header{
  position:sticky;
  top:0;
  z-index:10000;
  min-height:82px;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  padding:14px clamp(18px,5vw,72px);
  background:linear-gradient(180deg,rgba(3,10,19,.98),rgba(3,10,19,.84));
  border-bottom:1px solid var(--line);
  box-shadow:0 18px 44px rgba(0,0,0,.24);
  backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;flex:0 0 auto;min-width:0;max-width:260px}
.brand-logo,.site-header .brand-logo,.site-header img,.header-logo,.inquiry-logo{
  width:auto!important;
  height:54px!important;
  max-width:230px!important;
  max-height:54px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.45));
}
.site-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:clamp(12px,1.45vw,22px);
  color:#e6f1ff;
  font-size:.91rem;
  font-weight:800;
  white-space:nowrap;
}
.site-nav a{color:#e6f1ff;opacity:.94;transition:color .18s ease,opacity .18s ease,transform .18s ease}
.site-nav a:hover{color:var(--cyan);opacity:1}
.menu-toggle{
  display:none;
  appearance:none;
  background:rgba(255,255,255,.08);
  border:1px solid var(--line);
  color:#fff;
  width:46px;
  height:42px;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  font-size:1.25rem;
  cursor:pointer;
}

/* BUTTONS */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  border-radius:999px;
  padding:12px 22px;
  border:1px solid transparent;
  font-weight:900;
  letter-spacing:.01em;
  line-height:1;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{color:#fff!important;background:linear-gradient(135deg,var(--blue),var(--cyan));box-shadow:0 14px 38px rgba(56,189,248,.24)}
.btn-primary:hover{box-shadow:0 20px 54px rgba(56,189,248,.36)}
.btn-secondary,.btn-outline{color:#fff!important;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22)}

/* MAIN HERO — FRONT ELEVATION MUST BE VISIBLE */
.hero{
  position:relative;
  min-height:min(860px,92vh);
  overflow:hidden;
  display:grid;
  align-items:center;
  padding:132px clamp(18px,5vw,72px) 72px;
  background:#050e1b;
}
.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-bg img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:saturate(1.08) contrast(1.06) brightness(.9);
  animation:aitbHeroImageBreath 16s ease-in-out infinite alternate;
}
.hero-bg::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    url("../images/facility/aitb-building-front-elevation.png") center/cover no-repeat;
  opacity:1;
  transform:scale(1.015);
  animation:aitbHeroFade 18s ease-in-out infinite;
}
.hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:
    linear-gradient(90deg,rgba(3,10,19,.97) 0%,rgba(3,10,19,.88) 30%,rgba(3,10,19,.44) 60%,rgba(3,10,19,.08) 100%),
    linear-gradient(180deg,rgba(3,10,19,.02) 0%,rgba(3,10,19,.18) 48%,rgba(3,10,19,.72) 84%,var(--bg) 100%),
    radial-gradient(circle at bottom right,rgba(7,20,38,.02) 0%,rgba(7,20,38,.62) 56%,var(--bg) 100%);
}
.hero-content{
  position:relative;
  z-index:3;
  max-width:850px;
  padding-bottom:34px;
}
.hero-logo{display:none!important}

/* Optional rotating image panels when HTML has .rotating-showcase */
.rotating-showcase{
  position:relative;
  overflow:hidden;
  min-height:420px;
  border-radius:32px;
  border:1px solid var(--line);
  background:#071426;
  box-shadow:var(--shadow);
}
.rotating-showcase::before,
.rotating-showcase::after{
  content:"";
  position:absolute;
  inset:0;
  background-position:center;
  background-size:cover;
  opacity:0;
  transform:scale(1.04);
}
.rotating-showcase::before{
  background-image:url("../images/facility/aitb-building-front-elevation.png");
  animation:showcaseFadeA 16s infinite;
}
.rotating-showcase::after{
  background-image:url("../images/facility/aitb-facility-detail.png");
  animation:showcaseFadeB 16s infinite;
}

/* PAGE HERO */
.page-hero,.subpage-hero{
  position:relative;
  overflow:hidden;
  padding:96px clamp(18px,5vw,72px) 72px;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(3,10,19,.97),rgba(7,20,38,.84)),
    url("../images/facility/aitb-building-front-elevation.png") center/cover no-repeat;
  border-bottom:1px solid var(--line);
}
.page-hero::after,.subpage-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 84% 15%,rgba(56,189,248,.16),transparent 36%),
    linear-gradient(180deg,transparent 0%,rgba(7,20,38,.9) 100%);
}
.page-hero > *,.subpage-hero > *{position:relative;z-index:2;max-width:980px}

.breadcrumb{margin:0 0 18px;color:var(--muted);font-size:.92rem;font-weight:800}
.breadcrumb a{color:#eaf6ff}
.eyebrow{
  margin:0 0 14px;
  color:var(--cyan);
  font-size:.78rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.18em;
}
h1,.h1{
  margin:0 0 24px;
  max-width:980px;
  color:#fff;
  font-size:clamp(2.75rem,5.9vw,6.2rem);
  line-height:.92;
  letter-spacing:-.058em;
}
h2,.h2{
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(2rem,3.45vw,3.75rem);
  line-height:1;
  letter-spacing:-.04em;
}
h3{color:#fff;line-height:1.15}
.lead{max-width:850px;margin:0;color:#dbeafe;font-size:clamp(1.07rem,1.48vw,1.27rem)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:42px;max-width:740px}
.metric,.stat-card{
  padding:20px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(12px);
}
.metric strong,.stat-card strong{display:block;color:#fff;font-size:1.55rem;line-height:1.1}
.metric span,.stat-card span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}

/* SECTIONS */
.section{padding:clamp(58px,6.6vw,88px) clamp(18px,5vw,72px)}
.section > *,.container{max-width:var(--max);margin-left:auto;margin-right:auto}
.section-head{max-width:1050px;margin:0 auto 44px 0}
.section-head p,.split p,.cta p{color:#c6d5e8;font-size:1.05rem}
.facility-band,.dark-band,.band{
  background:
    radial-gradient(circle at 20% 0%,rgba(56,189,248,.14),transparent 34%),
    linear-gradient(135deg,var(--bg2),var(--bg));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

/* DYNAMIC PRESENCE */
.card,.feature-card,.download-card,.tech-card,.flow-step,.platform-grid div,.capability-grid div,.image-card,.gallery a,.form-panel,.side-panel{
  transform:translateY(0);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.card:hover,.feature-card:hover,.download-card:hover,.tech-card:hover,.flow-step:hover,.platform-grid div:hover,.capability-grid div:hover,.image-card:hover,.gallery a:hover{
  transform:translateY(-5px);
  border-color:rgba(56,189,248,.38);
  box-shadow:0 24px 70px rgba(0,0,0,.28),0 0 0 1px rgba(56,189,248,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.045));
}
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .65s ease,transform .65s ease;
}
.reveal.is-visible{opacity:1;transform:none}

/* CARDS */
.cards,.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card,.feature-card,.download-card,.tech-card{
  padding:28px;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
  box-shadow:0 18px 60px rgba(0,0,0,.22);
}
.card h3,.feature-card h3,.download-card h3,.tech-card h3{margin:0 0 12px;font-size:1.22rem}
.card p,.feature-card p,.download-card p,.tech-card p{margin:0;color:var(--muted)}

/* WORKFLOW / PLATFORM */
.workflow,.flow-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;counter-reset:flow}
.flow-step{
  counter-increment:flow;
  padding:24px;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,255,255,.07);
}
.flow-step::before{
  content:counter(flow,decimal-leading-zero);
  display:block;
  color:var(--cyan);
  font-weight:900;
  margin-bottom:12px;
}
.flow-step h3{margin:0 0 10px}
.flow-step p{margin:0;color:var(--muted);font-size:.94rem}
.platform-grid,.capability-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.platform-grid div,.capability-grid div{
  min-height:138px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:1.14rem;
  font-weight:900;
}
.platform-grid span,.capability-grid span{display:block;margin-top:8px;color:var(--muted);font-size:.84rem;font-weight:700}

/* MEDIA / IMAGES */
.split,.media-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:center}
.split img,.media-split img,.feature-image,.schema-image,.facility-image{
  width:100%;
  max-height:650px;
  object-fit:cover;
  border-radius:30px;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.schema-image,img[src*="schema"],img[src*="transport"],img[src*="capacity"],img[src*="floor"],img[src*="blueprint"]{
  object-fit:contain!important;
  background:#eef4fb;
  padding:10px;
}
.checklist{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}
.checklist li{position:relative;padding-left:30px;color:#dbeafe}
.checklist li::before{content:"✓";position:absolute;left:0;color:var(--cyan);font-weight:900}

/* GALLERY */
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery a,.gallery-card,.image-card{
  overflow:hidden;
  border-radius:var(--radius);
  border:1px solid var(--line);
  background:rgba(255,255,255,.06);
}
.gallery img,.image-card img{width:100%;height:250px;max-height:250px;object-fit:cover}
.gallery span,.gallery-card span,.image-card span{display:block;padding:18px;font-weight:900;color:#fff}

/* FORMS */
.form-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:28px;max-width:var(--max);margin:0 auto;align-items:start}
.form-panel,.side-panel,.panel{
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,255,255,.075);
  box-shadow:var(--shadow);
  backdrop-filter:blur(14px);
}
.form-panel{padding:34px}
.side-panel{padding:30px;position:sticky;top:106px}
.side-logo,.footer-logo{
  width:auto!important;
  height:62px!important;
  max-width:240px!important;
  max-height:62px!important;
  object-fit:contain!important;
  margin-bottom:20px;
}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.field{display:grid;gap:8px}
.field.full{grid-column:1/-1}
label{color:#eaf6ff;font-weight:800;font-size:.92rem}
input,select,textarea{
  width:100%;
  min-height:48px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(3,10,19,.58);
  color:#fff;
  padding:12px 14px;
  outline:none;
}
textarea{min-height:150px;resize:vertical}
select option{color:#071426;background:#fff}
input:focus,select:focus,textarea:focus{border-color:rgba(56,189,248,.88);box-shadow:0 0 0 4px rgba(56,189,248,.13)}
.checkbox-label{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.055);color:#dbeafe}
.checkbox-label input{width:auto;min-height:auto;margin-top:5px}

/* CTA / FOOTER */
.cta{
  max-width:1400px;
  margin:60px auto 90px;
  padding:48px;
  border-radius:34px;
  background:
    linear-gradient(135deg,rgba(11,104,184,.95),rgba(3,10,19,.96)),
    radial-gradient(circle at right,rgba(56,189,248,.32),transparent 44%);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:30px;
  box-shadow:var(--shadow);
}
.site-footer{
  display:grid;
  grid-template-columns:1fr 1fr 2fr;
  gap:34px;
  padding:50px clamp(18px,5vw,72px);
  background:#030a13;
  border-top:1px solid var(--line);
  color:#b7c7db;
}
.site-footer a{color:#eaf6ff}
.site-footer p{margin-bottom:0}

/* KEYFRAMES */
@keyframes aitbHeroImageBreath{
  0%{transform:scale(1)}
  100%{transform:scale(1.045)}
}
@keyframes aitbHeroFade{
  0%,38%{opacity:1;transform:scale(1.015)}
  48%,88%{opacity:.12;transform:scale(1.055)}
  100%{opacity:1;transform:scale(1.015)}
}
@keyframes showcaseFadeA{
  0%,42%{opacity:1;transform:scale(1)}
  50%,92%{opacity:0;transform:scale(1.05)}
  100%{opacity:1;transform:scale(1)}
}
@keyframes showcaseFadeB{
  0%,42%{opacity:0;transform:scale(1.05)}
  50%,92%{opacity:1;transform:scale(1)}
  100%{opacity:0;transform:scale(1.05)}
}

/* RESPONSIVE */
@media(max-width:1200px){
  .site-nav{gap:12px;font-size:.84rem}
  .platform-grid,.capability-grid{grid-template-columns:repeat(3,1fr)}
  .workflow,.flow-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:980px){
  .cards,.card-grid,.gallery,.split,.media-split,.form-shell,.site-footer{grid-template-columns:1fr}
  .side-panel{position:static}
  .hero-metrics{grid-template-columns:1fr 1fr}
  .cta{margin-inline:18px;flex-direction:column;align-items:flex-start}
}
@media(max-width:820px){
  .site-header{min-height:76px}
  .brand-logo,.site-header .brand-logo,.site-header img[src*="aitb-official-logo"]{height:44px!important;max-height:44px!important;max-width:185px!important}
  .menu-toggle{display:flex}
  .site-nav{
    display:none;
    position:absolute;
    top:76px;
    left:18px;
    right:18px;
    flex-direction:column;
    align-items:stretch;
    padding:18px;
    border-radius:20px;
    background:#061120;
    border:1px solid var(--line);
    box-shadow:var(--shadow);
    white-space:normal;
  }
  .site-nav.open,.site-nav.is-open{display:flex;}
  .hero{min-height:760px;padding:108px 18px 58px}
  .page-hero,.subpage-hero{padding:64px 18px 54px}
  h1,.h1{font-size:clamp(2.45rem,11vw,3.8rem)}
  h2,.h2{font-size:clamp(1.9rem,8.5vw,2.8rem)}
  .section{padding:58px 18px}
  .form-panel,.side-panel{padding:24px}
  .form-grid{grid-template-columns:1fr}
  .platform-grid,.capability-grid,.workflow,.flow-grid,.hero-metrics{grid-template-columns:1fr}
  .cta{padding:32px 24px}
}
@media(max-width:520px){
  .btn{width:100%;white-space:normal;text-align:center}
  .hero-actions{width:100%}
  .gallery img,.image-card img{height:210px;max-height:210px}
  .card,.feature-card,.download-card,.tech-card{padding:22px}
}
/* =========================================================
   AITB AIRCRAFT INTEGRATION SCHEMATIC SIZE FIX
   ========================================================= */

.transport-capacity-wrapper{
  width:100%;
  max-width:var(--max);
  margin:0 auto;
  padding:2rem 0;
  display:flex;
  justify-content:center;
  align-items:center;
}

.transport-capacity-img{
  width:50% !important;
  max-width:1000px !important;
  height:auto !important;
  display:block;

  object-fit:contain !important;

  background:#eef4fb;
  padding:12px;

  border-radius:20px;
  border:1px solid var(--line);

  box-shadow:var(--shadow);
}

@media(max-width:1200px){

  .transport-capacity-img{
    width:65% !important;
  }

}

@media(max-width:1024px){

  .transport-capacity-img{
    width:80% !important;
  }

}

@media(max-width:768px){

  .transport-capacity-img{
    width:95% !important;
  }

}

/* =========================================================
   AITB PRODUCTION HARDENING EXTENSIONS
   Accessibility, print, theme hooks, 360 viewer, aircraft page
   ========================================================= */

/* ---------- Theme hooks ---------- */

:root{
  color-scheme:dark;
  --theme-focus:#7dd3fc;
  --theme-print-ink:#111827;
  --theme-print-muted:#4b5563;
}

[data-theme="light"]{
  color-scheme:light;
  --bg:#f5f8fc;
  --bg2:#eaf1f8;
  --bg3:#d9e7f3;
  --ink:#0a1220;
  --text:#1f334a;
  --muted:#52667a;
  --soft:#667c91;
  --line:rgba(10,25,45,.16);
  --line2:rgba(10,25,45,.28);
  --panel:rgba(255,255,255,.82);
  --panel2:rgba(255,255,255,.92);
  --shadow:0 24px 70px rgba(20,48,78,.16);
}

[data-theme="light"] body{
  background:
    radial-gradient(circle at 15% 0%,rgba(56,189,248,.15),transparent 32%),
    linear-gradient(180deg,#f6f9fd 0%,#eaf2fb 48%,#dce8f5 100%);
  color:var(--ink);
}

/* ---------- Keyboard accessibility ---------- */

:focus{outline:none}

:focus-visible,
a:focus-visible,
button:focus-visible,
.btn:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible{
  outline:3px solid var(--theme-focus);
  outline-offset:4px;
  border-radius:12px;
  box-shadow:
    0 0 0 2px rgba(3,10,19,.92),
    0 0 0 7px rgba(125,211,252,.34);
}

.site-nav a:focus-visible{
  color:#fff;
  background:rgba(56,189,248,.16);
  padding:8px 10px;
  margin:-8px -10px;
  border-radius:999px;
}

.skip-link{
  position:absolute;
  top:12px;
  left:12px;
  z-index:20000;
  transform:translateY(-140%);
  background:#fff;
  color:#071426;
  padding:12px 16px;
  border-radius:999px;
  font-weight:900;
  box-shadow:var(--shadow);
}

.skip-link:focus,
.skip-link:focus-visible{
  transform:translateY(0);
}

/* ---------- Lazy image polish ---------- */

img[loading="lazy"],
.lazy-image,
[data-lazy-image]{
  opacity:.001;
  transform:translateY(8px);
  transition:opacity .45s ease,transform .45s ease,filter .45s ease;
}

img[loading="lazy"].is-loaded,
.lazy-image.is-loaded,
[data-lazy-image].is-loaded,
img[loading="lazy"]:not([src=""]){
  opacity:1;
  transform:none;
}

.image-loading-shell{
  position:relative;
  overflow:hidden;
  border-radius:var(--radius);
  background:
    linear-gradient(110deg,rgba(255,255,255,.06),rgba(255,255,255,.12),rgba(255,255,255,.06));
  background-size:220% 100%;
  animation:aitbSkeleton 1.5s ease-in-out infinite;
}

@keyframes aitbSkeleton{
  0%{background-position:100% 0}
  100%{background-position:-100% 0}
}

/* ---------- AITB 360 viewer ---------- */

.aitb-360-section{
  width:100%;
  max-width:var(--max);
  margin:34px auto;
  padding:clamp(28px,4vw,56px);
  border:1px solid var(--line);
  border-radius:34px;
  background:
    radial-gradient(circle at 30% 0%,rgba(56,189,248,.18),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
  box-shadow:var(--shadow);
}

.aitb-360-wrap{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);
  gap:clamp(24px,4vw,52px);
  align-items:center;
}

.aitb-360-copy{max-width:620px}

.aitb-360-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:14px;
  padding:8px 12px;
  border:1px solid rgba(56,189,248,.34);
  border-radius:999px;
  color:#c7f2ff;
  background:rgba(56,189,248,.1);
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.aitb-360-viewer{
  position:relative;
  min-height:380px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  border-radius:30px;
  background:
    radial-gradient(circle at center,rgba(56,189,248,.16),transparent 46%),
    linear-gradient(180deg,rgba(3,10,19,.72),rgba(3,10,19,.32));
  cursor:grab;
  user-select:none;
  touch-action:none;
}

.aitb-360-viewer.is-dragging{cursor:grabbing}

.aitb-360-viewer img{
  width:min(100%,980px);
  max-height:520px;
  object-fit:contain;
  padding:18px;
  filter:
    drop-shadow(0 26px 56px rgba(0,0,0,.45))
    drop-shadow(0 0 34px rgba(56,189,248,.14));
}

.aitb-360-controls{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  pointer-events:auto;
}

.aitb-360-controls button,
.aitb-360-status{
  min-height:40px;
  padding:9px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(3,10,19,.74);
  color:#fff;
  font-weight:900;
  backdrop-filter:blur(12px);
}

.aitb-360-controls button{cursor:pointer}

.aitb-360-status{
  min-width:104px;
  text-align:center;
  color:#c7f2ff;
}

/* ---------- Tables / technical specs ---------- */

.table-wrap{
  width:100%;
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,255,255,.055);
  box-shadow:0 18px 58px rgba(0,0,0,.2);
}

table{
  width:100%;
  border-collapse:collapse;
  min-width:720px;
}

caption{
  padding:16px 18px;
  text-align:left;
  color:#fff;
  font-weight:900;
  background:rgba(56,189,248,.1);
}

thead th{
  position:sticky;
  top:0;
  z-index:1;
  color:#fff;
  background:linear-gradient(180deg,rgba(16,38,66,.98),rgba(7,20,38,.98));
  border-bottom:1px solid var(--line2);
}

th,td{
  padding:16px 18px;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid rgba(255,255,255,.11);
}

tbody tr:nth-child(even){background:rgba(255,255,255,.035)}
tbody tr:hover{background:rgba(56,189,248,.07)}
td{color:#d7e6f6}
td:first-child{color:#fff;font-weight:850}

.spec-table,
.technical-spec-table{font-size:.96rem}

.spec-table td:last-child,
.technical-spec-table td:last-child{color:#eaf6ff}

/* ---------- Investor / downloads / comparison components ---------- */

.investor-hero,
.investor-panel{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:34px;
  background:
    radial-gradient(circle at right top,rgba(214,179,106,.16),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.04));
  box-shadow:var(--shadow);
}

.investor-hero{
  max-width:var(--max);
  margin:0 auto;
  padding:clamp(30px,5vw,64px);
}

.investor-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:clamp(24px,4vw,52px);
  align-items:center;
}

.investor-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:28px;
}

.investor-metric,
.funding-card,
.risk-card,
.milestone-card,
.download-tile{
  padding:22px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.065);
  box-shadow:0 18px 52px rgba(0,0,0,.18);
}

.investor-metric strong{
  display:block;
  color:#fff;
  font-size:clamp(1.4rem,2.2vw,2.1rem);
  line-height:1;
}

.investor-metric span,
.download-tile small{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.comparison-dashboard,
.civil-military-dashboard{
  max-width:var(--max);
  margin:0 auto;
  display:grid;
  gap:20px;
}

.comparison-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.comparison-column{
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,255,255,.065);
  box-shadow:var(--shadow);
  overflow:hidden;
}

.comparison-column header{
  padding:24px 26px;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(circle at right top,rgba(56,189,248,.16),transparent 34%),
    rgba(255,255,255,.055);
}

.comparison-column h3{margin:0 0 8px}
.comparison-column p{margin:0;color:var(--muted)}
.comparison-list{display:grid;gap:0}

.comparison-list div{
  padding:18px 24px;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.comparison-list div:last-child{border-bottom:0}

.comparison-list strong{
  display:block;
  color:#fff;
  margin-bottom:4px;
}

.comparison-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(56,189,248,.34);
  color:#c7f2ff;
  background:rgba(56,189,248,.09);
  font-size:.74rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.civil-card{border-color:rgba(56,189,248,.22)}
.military-card{border-color:rgba(214,179,106,.28)}
.military-card .comparison-badge{
  border-color:rgba(214,179,106,.42);
  color:#ffe8ad;
  background:rgba(214,179,106,.09);
}

.download-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

/* ---------- Aircraft Integration page ---------- */

.aircraft-transition-section{
  background:
    radial-gradient(circle at 20% 0%,rgba(56,189,248,.14),transparent 34%),
    linear-gradient(135deg,var(--bg2),var(--bg));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.aircraft-transition-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:start !important;
  width:100% !important;
  max-width:var(--max) !important;
  margin:40px auto 0 !important;
}

.aircraft-transition-card{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
  border-radius:28px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.035)) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.28) !important;
  transform:none !important;
}

.aircraft-transition-card:hover{
  transform:translateY(-4px) !important;
  border-color:rgba(56,189,248,.38) !important;
}

.aircraft-transition-media{
  width:100% !important;
  height:270px !important;
  overflow:hidden !important;
  background:#071426 !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
}

.aircraft-transition-media img,
.aircraft-transition-card > img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center top !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#071426 !important;
  box-shadow:none !important;
}

.aircraft-transition-card > img{
  height:270px !important;
}

.aircraft-transition-card-body{
  padding:22px !important;
}

.aircraft-transition-card-body h3{
  margin:0 0 10px !important;
  color:#fff !important;
  font-size:1.22rem !important;
  line-height:1.15 !important;
}

.aircraft-transition-card-body p{
  margin:0 !important;
  color:#c6d5e8 !important;
  font-size:.98rem !important;
}

.spec-sheet-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px !important;
  margin-top:32px !important;
  width:100% !important;
  max-width:var(--max) !important;
}

.spec-card{
  overflow:hidden !important;
  border-radius:28px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.035)) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.22) !important;
}

.spec-card-header{
  padding:24px 26px !important;
  border-bottom:1px solid rgba(255,255,255,.14) !important;
  background:rgba(56,189,248,.08) !important;
}

.spec-card-header h3{margin:0 0 8px !important}
.spec-card-header p{margin:0 !important;color:#c6d5e8 !important}

.spec-table{
  width:100% !important;
  min-width:0 !important;
  border-collapse:collapse !important;
}

.spec-table th,
.spec-table td{
  padding:14px 16px !important;
  border-bottom:1px solid rgba(255,255,255,.11) !important;
  text-align:left !important;
  vertical-align:top !important;
}

.spec-table th{
  width:36% !important;
  color:#fff !important;
  background:rgba(255,255,255,.035) !important;
  font-weight:900 !important;
}

.spec-table td{color:#dbeafe !important}

.fit-rationale{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
  width:100% !important;
  max-width:var(--max) !important;
  margin:40px auto 0 !important;
}

.fit-rationale article{
  padding:24px !important;
  border-radius:24px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.06) !important;
  box-shadow:0 18px 56px rgba(0,0,0,.18) !important;
}

.fit-rationale h3{margin:0 0 10px !important}
.fit-rationale p{margin:0 !important;color:#c6d5e8 !important}

.aircraft-note{
  max-width:var(--max);
  margin:28px auto 0;
  padding:18px 20px;
  border-radius:20px;
  border:1px solid rgba(214,179,106,.34);
  background:rgba(214,179,106,.08);
  color:#f7e9c3;
}

/* ---------- Responsive extensions ---------- */

@media(max-width:1200px){
  .aircraft-transition-grid,
  .fit-rationale{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:900px){
  .aircraft-transition-grid,
  .spec-sheet-grid,
  .fit-rationale,
  .aitb-360-wrap,
  .investor-grid,
  .comparison-grid{
    grid-template-columns:1fr !important;
  }

  .aircraft-transition-media,
  .aircraft-transition-card > img{
    height:250px !important;
  }

  .investor-metrics,
  .download-grid{
    grid-template-columns:1fr;
  }

  .aitb-360-section{
    padding:24px 16px;
  }

  .aitb-360-viewer{
    min-height:300px;
  }

  .aitb-360-viewer img{
    max-height:360px;
  }
}

/* ---------- Reduced-motion / mobile performance ---------- */

@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.001ms !important;
  }

  .hero-bg img,
  .hero-bg::before,
  .rotating-showcase::before,
  .rotating-showcase::after{
    animation:none !important;
    transform:none !important;
  }
}

@media(max-width:820px){
  .hero-bg img,
  .hero-bg::before,
  .rotating-showcase::before,
  .rotating-showcase::after{
    animation-duration:40s !important;
  }

  .card:hover,
  .feature-card:hover,
  .download-card:hover,
  .tech-card:hover,
  .flow-step:hover,
  .platform-grid div:hover,
  .capability-grid div:hover,
  .image-card:hover,
  .gallery a:hover,
  .aircraft-transition-card:hover{
    transform:none !important;
  }
}

/* ---------- Print styles ---------- */

@media print{
  :root{
    --bg:#ffffff;
    --ink:#111827;
    --text:#111827;
    --muted:#4b5563;
    --line:rgba(17,24,39,.22);
    --shadow:none;
  }

  *{
    box-shadow:none !important;
    text-shadow:none !important;
    animation:none !important;
    transition:none !important;
  }

  html,
  body{
    background:#fff !important;
    color:#111827 !important;
    font-size:11pt;
    line-height:1.35;
  }

  .site-header,
  .menu-toggle,
  .site-nav,
  .hero-actions,
  .btn,
  .aitb-360-controls,
  .site-footer,
  script{
    display:none !important;
  }

  .hero,
  .page-hero,
  .subpage-hero,
  .section,
  .facility-band,
  .dark-band,
  .band,
  .aircraft-transition-section{
    background:#fff !important;
    color:#111827 !important;
    padding:18pt 0 !important;
    border:0 !important;
  }

  .hero-bg,
  .hero-bg::before,
  .hero-bg::after,
  .page-hero::after,
  .subpage-hero::after{
    display:none !important;
  }

  .hero-content,
  .page-hero > *,
  .subpage-hero > *,
  .section > *,
  .container{
    max-width:none !important;
    width:100% !important;
    color:#111827 !important;
  }

  h1,h2,h3,p,li,td,th,strong,span{
    color:#111827 !important;
  }

  h1{
    font-size:28pt !important;
    line-height:1.05 !important;
  }

  h2{
    font-size:20pt !important;
    line-height:1.12 !important;
    break-after:avoid;
  }

  h3{
    font-size:14pt !important;
    break-after:avoid;
  }

  .cards,
  .card-grid,
  .gallery,
  .workflow,
  .flow-grid,
  .platform-grid,
  .capability-grid,
  .comparison-grid,
  .investor-grid,
  .download-grid,
  .aircraft-transition-grid,
  .spec-sheet-grid,
  .fit-rationale{
    display:block !important;
  }

  .card,
  .feature-card,
  .download-card,
  .tech-card,
  .flow-step,
  .platform-grid div,
  .capability-grid div,
  .comparison-column,
  .download-tile,
  .investor-panel,
  .funding-card,
  .risk-card,
  .milestone-card,
  .aircraft-transition-card,
  .spec-card,
  .fit-rationale article{
    page-break-inside:avoid;
    break-inside:avoid;
    margin:0 0 12pt !important;
    padding:12pt !important;
    border:1px solid rgba(17,24,39,.24) !important;
    background:#fff !important;
  }

  img{
    max-width:100% !important;
    height:auto !important;
    page-break-inside:avoid;
    break-inside:avoid;
  }

  a{
    color:#111827 !important;
    text-decoration:underline;
  }

  a[href]::after{
    content:" (" attr(href) ")";
    font-size:9pt;
    color:#4b5563;
    word-break:break-all;
  }

  .brand a[href]::after,
  .gallery a[href]::after{
    content:"";
  }

  table{
    min-width:0 !important;
    font-size:9.5pt;
  }

  th,td{
    padding:7pt 8pt !important;
    border:1px solid rgba(17,24,39,.24) !important;
    color:#111827 !important;
  }

  thead th{
    background:#e5e7eb !important;
  }
}
