/* ============================================
   STARLUX Design System v3
   Light/Dark alternating + Rich imagery
   ============================================ */

:root {
  --sl-bg-dark: #121828;
  --sl-bg-dark-alt: #182030;
  --sl-tech-bg: url(/wp-content/uploads/tech-pattern.svg);
  --sl-bg-light: #F5F5F7;
  --sl-bg-light-alt: #EAECF0;
  --sl-bg-card-dark: #1E2845;
  --sl-bg-card-dark-hover: #283258;
  --sl-bg-card-light: #FFFFFF;
  --sl-bg-card-light-hover: #F0F2F8;
  --sl-gold: #D4AF5A;
  --sl-gold-light: #EAC96D;
  --sl-gold-dim: rgba(212,175,90,0.2);
  --sl-text-dark: #F5F5F7;
  --sl-text-dark-secondary: #C5C9D5;
  --sl-text-light: #1A1A2E;
  --sl-text-light-secondary: #555770;
  --sl-border-dark: rgba(255,255,255,0.15);
  --sl-border-light: rgba(0,0,0,0.08);
  --sl-radius: 8px;
  --sl-radius-lg: 16px;
  --sl-transition: 0.35s cubic-bezier(0.25,0.46,0.45,0.94);
  --sl-font: 'Inter','Noto Sans TC',sans-serif;
  --sl-max-w: 1200px;
}

/* === BASE === */
html { scroll-behavior: smooth; }
body, .ast-separate-container,
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.ast-plain-container {
  background: var(--sl-bg-dark) !important;
  color: var(--sl-text-dark) !important;
  font-family: var(--sl-font) !important;
  font-weight: 300;
  letter-spacing: 0.02em;
  line-height: 1.8;
}

.site-content .ast-container { max-width: 100% !important; padding: 0 !important; }
.ast-separate-container .ast-article-single .entry-content,
.ast-separate-container .ast-article-post .entry-content { padding: 0 !important; margin: 0 !important; }
.entry-content > * { max-width: var(--sl-max-w); margin-left: auto; margin-right: auto; padding-left: 24px; padding-right: 24px; }
.entry-content > .sl-full-width, .entry-content > .sl-hero { max-width: 100%; padding-left: 0; padding-right: 0; }

a { color: var(--sl-gold); text-decoration: none; transition: color var(--sl-transition); }
a:hover { color: var(--sl-gold-light); }
h1,h2,h3,h4,h5,h6 { font-family: var(--sl-font) !important; line-height: 1.3; }

/* === HEADER — STARLUX/Qatar style === */
.main-header-bar, .ast-primary-header-bar,
.ast-primary-header-bar.ast-primary-header {
  background: #112240 !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  position: sticky !important;
  top: 0;
  z-index: 999;
  box-shadow: 0 2px 20px rgba(0,0,0,0.3);
}
.site-primary-header-wrap {
  max-width: 1300px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 20px !important;
}
.main-header-bar .main-header-bar-navigation { padding: 0 !important; }
.ast-primary-header-bar .site-primary-header-wrap,
.ast-primary-header-bar { min-height: auto !important; max-height: none !important; padding-top: 0 !important; padding-bottom: 0 !important; }
.ast-header-break-point .main-header-bar { padding: 4px 0 !important; }
/* Force single-row compact header */
.ast-above-header-bar, .ast-below-header-bar,
.site-below-header-wrap, .ast-header-above-block { display: none !important; }
/* Put site title and menu on same line */
.ast-builder-grid-row { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; }
.ast-builder-grid-row .ast-grid-right-center-section { flex: 1 !important; }
.ast-builder-menu-1 .main-header-menu { flex-wrap: nowrap !important; justify-content: flex-start !important; gap: 0 !important; }
.ast-builder-menu-1 .main-header-menu .menu-item { flex-shrink: 0 !important; }
/* Collapse Astra header builder rows */
.ast-builder-grid-row { padding: 0 !important; }
.ast-builder-grid-row-container { min-height: 0 !important; }
/* Site identity: inline with menu */
.ast-site-identity { padding: 0 !important; margin: 0 !important; }
.site-title { font-size: 0.9rem !important; margin: 0 !important; }
/* Eliminate ALL gaps below header */
.main-header-bar, .ast-primary-header-bar { margin-bottom: 0 !important; }
#page > .site-content { margin-top: 0 !important; }
.ast-separate-container #primary, .ast-plain-container #primary { padding-top: 0 !important; margin-top: 0 !important; }
.ast-builder-menu-1 .main-header-menu {
  display: flex !important;
  gap: 0 !important;
}
.main-header-menu .menu-item > .menu-link,
.ast-builder-menu a {
  color: rgba(255,255,255,0.85) !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  font-size: 0.58rem !important;
  padding: 6px 6px !important;
  transition: all 0.3s !important;
  white-space: nowrap !important;
}
.main-header-menu .menu-item > .menu-link:hover {
  color: var(--sl-gold) !important;
  background: rgba(255,255,255,0.05) !important;
}
.main-header-menu .current-menu-item > .menu-link {
  color: var(--sl-gold) !important;
}
.site-title a {
  color: var(--sl-gold) !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  font-size: 1.15rem !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-shadow: 0 0 20px rgba(212,175,90,0.3) !important;
}
.site-title a::before {
  content: "" !important;
  display: inline-block !important;
  width: 54px !important;
  height: 54px !important;
  background: url("/wp-content/uploads/sae-logo.svg") no-repeat center / contain !important;
  flex-shrink: 0 !important;
}
/* Hide page title "Home" on homepage */
.home .entry-title, .page-id-40 .entry-title { display: none !important; }
/* Remove gap between header and content */
.site-content { padding-top: 0 !important; margin-top: 0 !important; }
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post,
.ast-separate-container .entry-content > *:first-child { margin-top: 0 !important; padding-top: 0 !important; }
.ast-separate-container .ast-article-single .entry-content { padding-top: 0 !important; }
.home .site-content .ast-container, .page-id-40 .site-content .ast-container { padding-top: 0 !important; }

/* === FOOTER === */
.site-footer, .ast-small-footer, footer.site-footer, .ast-footer-copyright,
.ast-builder-footer-grid-columns, .site-below-footer-wrap,
.site-below-footer-wrap[data-section="section-below-footer-builder"] {
  background: var(--sl-bg-dark) !important; color: var(--sl-text-dark-secondary) !important;
  border-top: none !important; border: none !important;
}
.site-footer a { color: var(--sl-text-dark-secondary) !important; }

/* === HERO — dark with image overlay === */
.sl-hero {
  min-height: 100vh; display: flex; flex-direction: column; justify-content: flex-start; align-items: center;
  text-align: center; position: relative; overflow: hidden; padding: 120px 24px;
  background: linear-gradient(180deg, rgba(18,24,40,0.75) 0%, rgba(18,24,40,0.45) 50%, rgba(18,24,40,0.75) 100%),
              url('/wp-content/uploads/aircraft/sr-71.jpg') center/cover no-repeat;
}
.sl-hero h1 { font-size: 3.2rem !important; font-weight: 200 !important; letter-spacing: 0.18em !important; text-transform: uppercase; margin-bottom: 20px; color: #fff !important; }
.sl-hero .sl-subtitle { font-size: 1.15rem; color: var(--sl-text-dark-secondary); font-weight: 300; letter-spacing: 0.1em; margin-bottom: 12px; }
.sl-hero .sl-highlight { color: var(--sl-gold); font-weight: 500; }
.sl-hero .sl-cta-group { margin-top: 48px; display: flex; gap: 20px; flex-wrap: wrap; justify-content: flex-start; }

/* === BUTTONS === */
.sl-btn { display: inline-block; padding: 14px 40px; border-radius: 50px; font-size: 0.8rem; font-weight: 500; letter-spacing: 0.15em; text-transform: uppercase; text-decoration: none !important; transition: all var(--sl-transition); }
.sl-btn-gold { background: linear-gradient(180deg, rgba(18,24,40,0.75) 0%, rgba(18,24,40,0.45) 50%, rgba(18,24,40,0.75) 100%), rgba(26,26,46,0.6); color: var(--sl-gold) !important; font-weight: 600; backdrop-filter: blur(8px); border: 1.5px solid var(--sl-gold); }
.sl-btn-gold:hover { background: linear-gradient(180deg, rgba(18,24,40,0.75) 0%, rgba(18,24,40,0.45) 50%, rgba(18,24,40,0.75) 100%), rgba(26,26,46,0.8); color: var(--sl-gold-light) !important; border-color: var(--sl-gold-light); box-shadow: 0 8px 32px rgba(212,175,90,0.3); transform: translateY(-2px); }
.sl-btn-outline { background: linear-gradient(180deg, rgba(18,24,40,0.75) 0%, rgba(18,24,40,0.45) 50%, rgba(18,24,40,0.75) 100%), rgba(26,26,46,0.6); color: var(--sl-gold) !important; border: 1.5px solid var(--sl-gold); backdrop-filter: blur(8px); }
.sl-btn-outline:hover { background: linear-gradient(180deg, rgba(18,24,40,0.75) 0%, rgba(18,24,40,0.45) 50%, rgba(18,24,40,0.75) 100%), rgba(26,26,46,0.8); color: var(--sl-gold-light) !important; border-color: var(--sl-gold-light); box-shadow: 0 8px 32px rgba(212,175,90,0.3); transform: translateY(-2px); }

/* === SECTION BASES === */
.sl-section-header { margin-bottom: 50px; }
.sl-section-header h2 { font-size: 2rem !important; font-weight: 300 !important; letter-spacing: 0.12em !important; text-transform: uppercase; margin-bottom: 16px !important; }
.sl-section-header p { font-size: 1.05rem; font-weight: 300; }
.sl-section-header .sl-line { width: 60px; height: 2px; margin: 20px 0; }

.sl-section-link { display: inline-block; margin-top: 40px; font-size: 0.85rem; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 500; transition: all var(--sl-transition); }
.sl-section-link::after { content: ' \2192'; }
.sl-section-link:hover { transform: translateX(4px); }

/* === DARK SECTIONS === */
.sl-dark { background: var(--sl-bg-dark); color: var(--sl-text-dark); padding: 100px 24px; max-width: 100%; }
.sl-dark .sl-section-inner { max-width: var(--sl-max-w); margin: 0 auto; }
.sl-dark h2 { color: #fff !important; }
.sl-dark p, .sl-dark .sl-desc { color: var(--sl-text-dark-secondary) !important; }
.sl-dark .sl-line { background: var(--sl-gold); }
.sl-dark .sl-section-link { color: var(--sl-gold) !important; }

/* === LIGHT SECTIONS === */
.sl-light { background: var(--sl-bg-light) !important; color: var(--sl-text-light) !important; padding: 100px 24px; max-width: 100%; }
.sl-light .sl-section-inner { max-width: var(--sl-max-w); margin: 0 auto; }
.sl-light h2, .sl-light .sl-section-header h2 { color: #1A1A2E !important; }
.sl-light h3, .sl-light .sl-card h3 { color: #1A1A2E !important; }
.sl-light p, .sl-light .sl-desc, .sl-light .sl-section-header p,
.sl-light .sl-card p, .sl-light .sl-card .sl-desc { color: #555770 !important; }
.sl-light .sl-line { background: var(--sl-gold); }
.sl-light .sl-section-link { color: #8B6914 !important; }
.sl-light .sl-speed, .sl-light .sl-card .sl-speed { color: #8B6914 !important; }
.sl-light .sl-card-link, .sl-light .sl-card .sl-card-link { color: #C4872A !important; }

/* Light cards */
.sl-light .sl-card {
  background: var(--sl-bg-card-light); border: 1px solid var(--sl-border-light);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.sl-light .sl-card:hover {
  background: var(--sl-bg-card-light-hover); transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(0,0,0,0.1);
}
.sl-light .sl-card h3 { color: var(--sl-text-light) !important; }
.sl-light .sl-card .sl-card-link { color: #8B6914 !important; }

/* Light quick links */
.sl-light .sl-quick-link {
  background: var(--sl-bg-card-light); border: 1px solid var(--sl-border-light);
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.sl-light .sl-quick-link:hover { border-color: var(--sl-gold); transform: translateY(-4px); box-shadow: 0 12px 36px rgba(0,0,0,0.1); }
.sl-light .sl-ql-title { color: var(--sl-text-light) !important; }
.sl-light .sl-ql-desc { color: var(--sl-text-light-secondary) !important; }

/* === DARK ALT (slightly lighter dark) === */
.sl-dark-alt { background: var(--sl-bg-dark-alt); color: var(--sl-text-dark); padding: 100px 24px; max-width: 100%; }
.sl-dark-alt .sl-section-inner { max-width: var(--sl-max-w); margin: 0 auto; }
.sl-dark-alt h2 { color: #fff !important; }
.sl-dark-alt p, .sl-dark-alt .sl-desc { color: var(--sl-text-dark-secondary) !important; }
.sl-dark-alt .sl-line { background: var(--sl-gold); }
.sl-dark-alt .sl-section-link { color: var(--sl-gold) !important; }

/* === CARD GRID === */
.sl-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
@media (max-width: 1024px) { .sl-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .sl-grid { grid-template-columns: 1fr; } }

/* Dark cards */
.sl-dark .sl-card, .sl-dark-alt .sl-card {
  display: block; background: var(--sl-bg-card-dark); border: 1px solid var(--sl-border-dark);
  border-radius: var(--sl-radius-lg); padding: 32px 28px; transition: all var(--sl-transition);
  text-decoration: none !important; overflow: hidden;
}
.sl-dark .sl-card:hover, .sl-dark-alt .sl-card:hover {
  background: var(--sl-bg-card-dark-hover); transform: translateY(-6px);
  box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}
.sl-dark .sl-card h3, .sl-dark-alt .sl-card h3 { color: #fff !important; font-size: 1.2rem !important; font-weight: 600 !important; margin-bottom: 10px !important; }
.sl-dark .sl-card .sl-card-link, .sl-dark-alt .sl-card .sl-card-link { color: var(--sl-gold) !important; font-size: 0.8rem; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500; }

/* General card */
.sl-card { display: block; border-radius: var(--sl-radius-lg); padding: 32px 28px; transition: all var(--sl-transition); text-decoration: none !important; overflow: hidden; }
.sl-card h3 { font-size: 1.2rem !important; font-weight: 600 !important; margin-bottom: 10px !important; }
.sl-card .sl-speed { font-size: 1.5rem; font-weight: 400; letter-spacing: 0.06em; margin-bottom: 14px; }
.sl-card .sl-desc { font-size: 0.92rem; line-height: 1.7; margin-bottom: 18px; }
.sl-card .sl-card-link { font-size: 0.8rem; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500; }

/* Card with image */
.sl-card-img { position: relative; padding: 0 !important; overflow: hidden; }
.sl-card-img img { width: 100%; height: 200px; object-fit: cover; display: block; }
.sl-card-img .sl-card-body { padding: 24px; }

/* === SECTION THEMES (color accents) === */
.sl-theme-fighter .sl-card { border-left: 3px solid #4A7CB5; }
.sl-theme-fighter .sl-line { background: #4A7CB5; }
.sl-theme-fighter .sl-speed { color: #4A7CB5 !important; }
.sl-theme-fighter .sl-section-link { color: #4A7CB5 !important; }

.sl-theme-stealth .sl-card { border-left: 3px solid #3A5A3A; }
.sl-theme-stealth .sl-line { background: #3A5A3A; }

.sl-theme-experimental .sl-card { border-left: 3px solid #D4872A; }
.sl-theme-experimental .sl-line { background: linear-gradient(90deg, #D4AF5A, #D4872A); width: 80px; }
.sl-theme-experimental .sl-speed { color: #D4872A !important; }

.sl-theme-bomber .sl-card { border-left: 3px solid #7B5EA7; }
.sl-theme-bomber .sl-line { background: #7B5EA7; }
.sl-theme-bomber .sl-speed { color: #7B5EA7 !important; }

.sl-theme-airliner .sl-card { border-left: 3px solid #2A9D8F; }
.sl-theme-airliner .sl-line { background: #2A9D8F; }
.sl-theme-airliner .sl-speed { color: #2A9D8F !important; }

/* === IMAGE BANNER between sections === */
.sl-banner {
  max-width: 100%; height: 350px; overflow: hidden; position: relative;
  background-size: cover; background-position: center; background-attachment: fixed;
}
.sl-banner::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(18,24,40,0.2) 0%, rgba(18,24,40,0.5) 100%);
}
.sl-banner-text {
  position: absolute; top: 55%; left: 50%; transform: translate(-50%, -50%);
  z-index: 1; text-align: center; color: #fff;
}
.sl-banner-text h3 { font-size: 1.8rem; font-weight: 200; letter-spacing: 0.15em; text-transform: uppercase; text-shadow: 0 2px 20px rgba(0,0,0,0.5); }
.sl-banner-text p { color: rgba(255,255,255,0.8); font-size: 1rem; margin-top: 8px; }

/* === QUICK LINKS === */
.sl-quick-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media (max-width: 900px) { .sl-quick-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 500px) { .sl-quick-grid { grid-template-columns: 1fr; } }
.sl-quick-link {
  display: flex; flex-direction: column; align-items: center; justify-content: flex-start;
  text-align: center; padding: 48px 24px; border-radius: var(--sl-radius-lg);
  text-decoration: none !important; transition: all 0.4s cubic-bezier(0.25,0.46,0.45,0.94);
  background: rgba(75,80,125,0.75) !important;
  border: 1px solid rgba(180,190,220,0.2) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.08);
  backdrop-filter: blur(6px);
  position: relative; overflow: hidden;
}
.sl-quick-link::before {
  content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(212,175,90,0.08), transparent);
  transition: left 0.6s;
}
.sl-quick-link:hover::before { left: 100%; }
.sl-quick-link:hover {
  background: rgba(95,100,145,0.85) !important;
  border-color: rgba(212,175,90,0.6) !important;
  outline: 1px solid rgba(212,175,90,0.6) !important; outline-offset: -1px;
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(50,50,120,0.3);
}
.sl-quick-link .sl-ql-icon { font-size: 2.8rem; margin-bottom: 18px; filter: drop-shadow(0 0 8px rgba(212,175,90,0.3)); }
.sl-ql-title { font-family: 'Inter',sans-serif; font-size: 1.05rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 10px; color: #fff !important; }
.sl-ql-desc { font-size: 0.9rem; letter-spacing: 0.04em; color: var(--sl-text-dark-secondary) !important; line-height: 1.5; }

/* === SCROLL REVEAL === */
.sl-reveal { opacity: 0; transform: translateY(30px); transition: opacity 0.8s ease, transform 0.8s ease; }
.sl-reveal.sl-visible { opacity: 1; transform: translateY(0); }

/* === RESPONSIVE === */
@media (max-width: 768px) {
  .sl-hero h1 { font-size: 2.2rem !important; letter-spacing: 0.1em !important; }
  .sl-hero { min-height: 70vh; padding: 80px 20px; }
  .sl-dark, .sl-light, .sl-dark-alt { padding: 60px 20px; }
  .sl-grid { grid-template-columns: 1fr; }
  .sl-quick-grid { grid-template-columns: repeat(2, 1fr); }
  .sl-card { padding: 24px 20px; }
  .sl-hero .sl-cta-group { flex-direction: column; align-items: center; }
  .sl-banner { height: 200px; background-attachment: scroll; }
}
@media (max-width: 480px) { .sl-quick-grid { grid-template-columns: 1fr; } }

/* === POST PAGES === */
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post { background: var(--sl-bg-dark) !important; padding: 60px 24px !important; }
.entry-title { font-weight: 300 !important; letter-spacing: 0.08em !important; color: #fff !important; }
.ast-breadcrumbs { color: var(--sl-text-dark-secondary) !important; }
.ast-breadcrumbs a { color: var(--sl-gold) !important; }
table { border-color: var(--sl-border-dark) !important; }
th { background: var(--sl-bg-card-dark) !important; color: #fff !important; }
td { background: var(--sl-bg-dark-alt) !important; color: var(--sl-text-dark) !important; border-color: var(--sl-border-dark) !important; }
.entry-content p { color: var(--sl-text-dark-secondary); }
.entry-content strong { color: #fff; }
.entry-content h2 { font-weight: 300 !important; letter-spacing: 0.06em !important; border-bottom: 1px solid var(--sl-border-dark); padding-bottom: 12px; color: #fff !important; }
.entry-content h3 { font-weight: 500 !important; color: var(--sl-gold) !important; }

/* Astra overrides */
.ast-separate-container .ast-article-inner, .ast-separate-container, .ast-plain-container, .ast-page-builder-template { background-color: var(--sl-bg-dark) !important; }
.ast-mobile-popup-drawer.active .ast-mobile-popup-inner, .ast-mobile-header-wrap .ast-mobile-header-content { background-color: var(--sl-bg-dark) !important; }
.ast-mobile-popup-drawer.active .menu-toggle-close { color: #fff !important; }
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg { fill: var(--sl-gold) !important; }
.ast-builder-menu-1 .sub-menu { background: var(--sl-bg-card-dark) !important; border-color: var(--sl-border-dark) !important; }
.main-header-menu .sub-menu .menu-link:hover { color: var(--sl-gold) !important; background: var(--sl-bg-card-dark-hover) !important; }
#ast-scroll-top { background-color: var(--sl-gold) !important; color: #0B0D17 !important; }
input, select, textarea { background: var(--sl-bg-card-dark) !important; color: var(--sl-text-dark) !important; border-color: var(--sl-border-dark) !important; }
.speed-chart-container { background: var(--sl-bg-dark-alt) !important; border-radius: var(--sl-radius-lg) !important; }

/* === FIX: Header color consistency === */
.ast-primary-header-bar,
.ast-mobile-header-wrap .ast-primary-header-bar,
.main-header-bar-wrap,
.ast-main-header-wrap {
  background: #112240 !important;
  border-bottom: 1px solid rgba(212,175,90,0.15) !important;
}







/* Remove any leftover Astra strips/borders */
.ast-primary-header-bar::after,
.ast-primary-header-bar::before,
.main-header-bar-wrap::after {
  display: none !important;
}
/* Make sticky header match */
.ast-primary-header-bar.ast-sticky-active,
.ast-header-sticked {
  background: var(--sl-bg-dark) !important;
}

/* === FIX: Mobile padding === */
@media (max-width: 921px) {
  /* Hero section */
  .sl-hero { padding: 60px 20px !important; }
  .sl-hero h1 { font-size: 2rem !important; padding: 0 10px !important; }
  .sl-hero p { padding: 0 10px !important; font-size: 0.95rem !important; }
  .sl-hero .sl-hero-cta { padding: 0 10px !important; }
  
  /* All sections */
  .sl-dark, .sl-light { padding: 60px 20px !important; }
  
  /* Cards grid */
  .sl-grid { padding: 0 !important; gap: 16px !important; }
  .sl-card { margin: 0 !important; }
  
  /* Header padding */
  .ast-header-break-point .site-primary-header-wrap,
  .ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  
  /* Site title on mobile */
  .site-title a {
    font-size: 0.85rem !important;
    gap: 8px !important;
  }
  .site-title a::before {
    width: 28px !important;
    height: 28px !important;
  }
  
  /* Subtitle text not clipped */
  .sl-hero p, .sl-section-header p {
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }
}

@media (max-width: 544px) {
  .sl-hero h1 { font-size: 1.6rem !important; }
  .sl-hero { padding: 40px 16px !important; }
  .sl-dark, .sl-light { padding: 40px 16px !important; }
}

/* === NUCLEAR FIX: Header color strip === */
#masthead,
#masthead *,
.site-header,
.ast-main-header-wrap,
.main-header-bar-wrap,
.ast-primary-header-bar,
.ast-primary-header-bar.ast-primary-header,
.ast-mobile-header-wrap .ast-primary-header-bar,
.ast-header-break-point .ast-primary-header-bar,
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar,
.site-primary-header-wrap,
.ast-builder-grid-row-container {
  background-color: #112240 !important;
  background: #112240 !important;
  border-color: rgba(212,175,90,0.15) !important;
}
/* Kill ALL borders that create the strip effect */
.ast-primary-header-bar,
.ast-header-break-point .ast-primary-header-bar,
.main-header-bar {
  border-bottom: 1px solid rgba(212,175,90,0.15) !important;
  border-top: none !important;
  box-shadow: none !important;
}
/* Ensure no gap/margin between header and hero */
#masthead {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.main-header-bar-wrap {
  margin-bottom: 0 !important;
}

/* === Transparent header overlay on hero === */
#masthead,
.site-header,
.ast-primary-header-bar,
.ast-primary-header-bar.ast-primary-header,
.main-header-bar-wrap,
.ast-main-header-wrap,
.ast-mobile-header-wrap .ast-primary-header-bar,
.ast-header-break-point .ast-primary-header-bar,
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar {
  background: #112240 !important;
  background-color: #112240 !important;
  border-bottom: none !important;
  box-shadow: none !important;
}
#masthead {
  position: absolute !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}
/* Push hero content down so it's not hidden behind header */
.sl-hero {
  padding-top: 260px !important;
}
@media (max-width: 921px) {
  .sl-hero {
    padding-top: 100px !important;
  }
}
/* Subtle gradient at top for readability */
.sl-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 120px;
  background: linear-gradient(to bottom, rgba(11,13,23,0.7), transparent) !important;
  z-index: 1;
  pointer-events: none;
}

/* === Remove section border lines === */
.sl-dark, .sl-light, .sl-dark-alt,
.sl-section-header,
.sl-section-header h2,
section, .entry-content > div {
  border-top: none !important;
  border-bottom: none !important;
}
/* Also kill any hr or border from Astra */
.entry-content hr,
.sl-section-header::after,
.sl-section-header::before,
.sl-section-header h2::after,
.sl-section-header h2::before {
  display: none !important;
  border: none !important;
}

/* === Fix: non-homepage pages need top padding for absolute header === */
body:not(.home) .site-content,
body:not(.page-id-40) .site-content {
  padding-top: 100px !important;
}
@media (max-width: 921px) {
  body:not(.home) .site-content,
  body:not(.page-id-40) .site-content {
    padding-top: 90px !important;
  }
}

/* === Remove ALL red underlines === */
a, a:hover, a:focus, a:visited,
.entry-content a,
.entry-content a:hover,
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a,
.sl-card a, .sl-hero a,
.site-title a, .site-title a:hover {
  text-decoration: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  background-image: none !important;
  -webkit-text-decoration: none !important;
}

/* === Fix: dark text on light backgrounds === */
.sl-light, .sl-light * {
  color: #1A1A2E !important;
}
.sl-light h1, .sl-light h2, .sl-light h3, .sl-light h4, .sl-light h5, .sl-light h6 {
  color: #1A1A2E !important;
}
.sl-light p, .sl-light span, .sl-light li, .sl-light td, .sl-light th, .sl-light div {
  color: #2A2A3E !important;
}
.sl-light a {
  color: var(--sl-gold) !important;
}
/* Catch pages that use white/light bg without .sl-light class */
.entry-content [style*="background"][style*="fff"],
.entry-content [style*="background"][style*="eee"],
.entry-content [style*="background"][style*="f5f"],
.entry-content [style*="background"][style*="dde"],
.entry-content [style*="background-color: rgb(2"] {
  color: #1A1A2E !important;
}

/* === Nuclear fix: ANY light-background section must have dark text === */
[style*="background-color: #e"][style*="f"] *,
[style*="background-color: #f"] *,
[style*="background-color: #d"] *,
[style*="background-color: rgb(2"] *,
[style*="background: linear-gradient"][style*="#e"] *,
[style*="background: linear-gradient"][style*="#d"] *,
[style*="background: linear-gradient"][style*="#f"] *,
.has-white-background-color *,
.has-pale-cyan-blue-background-color *,
.has-cyan-bluish-gray-background-color * {
  color: #1A1A2E !important;
}
/* Engine page specific — these use light bg sections */
.engine-section, .engine-card,
div[style*="background"][style*="linear-gradient"] {
  color: #1A1A2E !important;
}
.engine-section *, .engine-card * {
  color: #1A1A2E !important;
}

/* === Engine page dark theme override === */
.engine-page h1 {
  background: linear-gradient(135deg, #D4AF5A, #F5D78E) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.engine-page .subtitle { color: var(--sl-text-dark-secondary) !important; }
.engine-type {
  background: var(--sl-bg-dark-alt) !important;
  border-left-color: var(--sl-gold) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3) !important;
}
.engine-type:nth-child(even) { border-left-color: #5B8DEF !important; }
.engine-type:nth-child(3n) { border-left-color: #6BCB77 !important; }
.engine-type:nth-child(4n) { border-left-color: #BB86FC !important; }
.engine-type:nth-child(5n) { border-left-color: #FFB74D !important; }
.engine-header h2 { color: #F5F5F7 !important; }
.engine-header .en-name { color: rgba(255,255,255,0.5) !important; }
.engine-body h3 { color: var(--sl-gold) !important; }
.engine-body p, .engine-body li { color: rgba(255,255,255,0.8) !important; }
.engine-body strong { color: #F5F5F7 !important; }
.principle-diagram {
  background: linear-gradient(135deg, rgba(212,175,90,0.1), rgba(212,175,90,0.05)) !important;
  border: 1px solid rgba(212,175,90,0.2) !important;
  color: #F5F5F7 !important;
}
.principle-diagram p, .principle-diagram strong { color: #F5F5F7 !important; }
.principle-diagram .step {
  background: rgba(255,255,255,0.08) !important;
  color: #F5F5F7 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}
.principle-diagram .arrow { color: var(--sl-gold) !important; }
.spec-card {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
}
.spec-card .label { color: rgba(255,255,255,0.5) !important; }
.spec-card .value { color: #F5F5F7 !important; }
.comparison-table th { background: rgba(212,175,90,0.15) !important; color: var(--sl-gold) !important; }
.comparison-table td { color: rgba(255,255,255,0.8) !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
.comparison-table tr:hover { background: rgba(255,255,255,0.05) !important; }
.aircraft-tag {
  background: linear-gradient(135deg, rgba(212,175,90,0.2), rgba(212,175,90,0.1)) !important;
  border: 1px solid rgba(212,175,90,0.3) !important;
}

/* === Fix: CTA buttons gold border fully visible === */
.sl-hero {
  overflow: hidden;
  padding-bottom: 80px !important;
}
.sl-cta-group {
  display: flex !important;
  gap: 24px !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  padding: 16px !important;
  margin-bottom: 30px !important;
}
.sl-hero .sl-btn,
.sl-hero .sl-btn-gold,
.sl-hero .sl-btn-outline,
a.sl-btn.sl-btn-gold,
a.sl-btn.sl-btn-outline {
  border: 1px solid #D4AF5A !important;
  border-radius: 50px !important;
  padding: 18px 48px !important;
  display: inline-block !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  box-shadow: none !important;
}

/* Sean curator box - tight padding */
.sl-dark.sl-full-width:not(.sl-reveal):not(.sl-theme-stealth):not(.sl-theme-bomber) { padding: 35px 12px 35px !important; }
.sl-dark.sl-full-width:not(.sl-reveal):not(.sl-theme-stealth):not(.sl-theme-bomber) p { margin: 0 !important; }

/* Mobile: prevent section content from touching edges */
.sl-section-inner { padding-left: 20px; padding-right: 20px; }

/* Mobile banner: center text vertically */
@media (max-width: 768px) {
  .sl-banner { height: 280px; display: flex; align-items: center; justify-content: center; }
  .sl-banner-text { position: static; transform: none; text-align: center; width: 100%; padding: 0 20px; }
}

.sl-photo-credit { font-size: 0.8rem; color: #888; font-style: italic; margin: -10px 0 20px; }

/* Larger nav font */
.ast-builder-menu-1 { margin-left: 70px !important; }
.ast-builder-menu-1 .menu-item > .menu-link { font-size: 1.05rem !important; letter-spacing: 0.08em; }

/* Ensure mobile hamburger is visible */
@media (max-width: 921px) {
  .ast-button-wrap .menu-toggle { display: flex !important; align-items: center; }
  .ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon { display: inline-flex !important; }
  .ast-mobile-menu-trigger-minimal .ast-mobile-svg { width: 28px !important; height: 28px !important; }
}


/* Mobile: move lang switcher left so hamburger is accessible */
@media (max-width: 921px) {
  #sl-lang { right: 70px !important; top: 16px !important; }
}

/* Fix: kill the transparent strip between header and hero banner */
#content, #content > .ast-container, #primary, #main,
#primary > article, .entry-content,
.ast-plain-container.ast-no-sidebar #primary,
.ast-separate-container.ast-no-sidebar #primary,
body.page #primary, body.single #primary,
body.page #content, body.single #content,
body.page .ast-container, body.single .ast-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.entry-header.ast-no-thumbnail,
.home .entry-header, .page-id-40 .entry-header,
.page-id-234 .entry-header {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
}

/* Hero extends behind header - no gap, photo visible */
.sl-hero.sl-full-width {
  margin-top: -82px !important;
  padding-top: 260px !important;
}

/* About page hero subtitle: constrain width */
.sl-hero .sl-subtitle { max-width: 860px; margin-left: auto; margin-right: auto; padding: 0 24px; }

/* Footer: uniform dark background, no color banding */
footer.site-footer,
footer.site-footer *,
#colophon,
.site-below-footer-wrap,
.ast-builder-grid-row-container-inner,
.ast-builder-footer-grid-columns,
.site-footer-below-section-1 {
  background: var(--sl-bg-dark) !important;
  border: none !important;
  box-shadow: none !important;
}

/* Nuclear footer fix - catch everything */
.ast-footer-row-stack,
.ast-footer-row-tablet-stack,
.ast-footer-row-mobile-stack,
.ast-builder-grid-row-full,
.site-below-footer-inner-wrap,
.site-footer-section,
.ast-footer-copyright,
.ast-builder-layout-element,
body .site-footer {
  background: var(--sl-bg-dark) !important;
  border: none !important;
}
/* Also the page wrapper after content */
.site-content + *,
#page > footer {
  background: var(--sl-bg-dark) !important;
}

/* Override Astra inline footer border and container bg */
.site-below-footer-wrap[data-section="section-below-footer-builder"] {
  background-color: var(--sl-bg-dark) !important;
  border-top: none !important;
  border-width: 0 !important;
}
.ast-separate-container, .ast-plain-container, .ast-page-builder-template,
#page, .site-content, #content {
  background-color: var(--sl-bg-dark) !important;
}

/* Hide post meta (author/date) on aircraft CPT pages */
.single-aircraft .entry-meta,
.single-aircraft .posted-on,
.single-aircraft .byline {
  display: none !important;
}

/* Hide entry header on aircraft pages - title shown in specs */
.single-aircraft .entry-header {
  display: none !important;
}

/* Aircraft page: push content below fixed header */
.single-aircraft .entry-content,
.single-aircraft .ast-article-single {
  padding-top: 100px !important;
}

/* Aircraft page: specs box + section dividers with gold accent */
.single-aircraft .sl-specs-hero {
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 0 20px rgba(212,175,90,0.08) !important;
}
.single-aircraft .sl-specs-hero h2 {
  border-bottom: none !important;
  padding-bottom: 12px !important;
  margin-bottom: 16px !important;
}
.single-aircraft .entry-content h2 {
  border-bottom: none !important;
  padding-bottom: 10px !important;
  margin-top: 50px !important;
}
.single-aircraft .entry-content hr {
  border-color: rgba(212,175,90,0.3) !important;
  margin: 40px 0 !important;
}
.single-aircraft table {
  border: 1px solid rgba(212,175,90,0.2) !important;
}
.single-aircraft td, .single-aircraft th {
  border-color: rgba(212,175,90,0.15) !important;
}

/* Specs table: lighter tech blue-purple-gray */
.single-aircraft td { background: #1e2545 !important; }
.single-aircraft th { background: #252b50 !important; }
.sl-specs-hero > div > div { background: #1a1f35 !important; }

/* Center the specs hero layout */
.single-aircraft .sl-specs-hero {
  justify-content: flex-start !important;
  max-width: 1300px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Center article content on aircraft pages */
.single-aircraft .entry-content {
  max-width: 1300px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Aircraft pages: force full-width centered layout */
.single-aircraft .site-content > .ast-container {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  
}
.single-aircraft #primary {
  width: 100% !important;
  max-width: 100% !important;
}
.single-aircraft #secondary {
  display: none !important;
}

/* Aircraft: align list bullets with paragraph text */
.single-aircraft .entry-content ul,
.single-aircraft .entry-content ol {
  padding-left: 2em !important;
  list-style-position: outside !important;
}

/* Aircraft: center prev/next navigation */
.single-aircraft .post-navigation,
.single-aircraft .nav-links {
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 24px !important;
}

/* === Aircraft page: subtle tech grid texture === */

/* Tech texture on aircraft pages - applied to body */
.single-aircraft #page::after {
  content: '';
  position: fixed;
  top: 0; left: 0; width: 100%; height: 100%;
  pointer-events: none;
  z-index: 1;
  opacity: 0.07;
  background-image:
    linear-gradient(rgba(100,160,220,0.4) 1px, transparent 1px),
    linear-gradient(90deg, rgba(100,160,220,0.4) 1px, transparent 1px),
    linear-gradient(rgba(212,175,90,0.2) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,175,90,0.2) 1px, transparent 1px),
    radial-gradient(ellipse at 15% 20%, rgba(100,160,220,0.35) 0%, transparent 50%),
    radial-gradient(ellipse at 85% 80%, rgba(212,175,90,0.15) 0%, transparent 45%);
  background-size: 20px 20px, 20px 20px, 80px 80px, 80px 80px, 100% 100%, 100% 100%;
}


/* Radar sweep accent on h2 sections */
.single-aircraft .entry-content h2::after {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  margin-top: 8px;
  background: linear-gradient(90deg, rgba(212,175,90,1), rgba(100,140,200,0.6), rgba(212,175,90,0.5));
}

/* FAQ: tighter Q&A spacing + Q prefix */
.single-aircraft .entry-content h3 {
  margin-bottom: 4px !important;
  margin-top: 28px !important;
  color: var(--sl-gold) !important;
}
.single-aircraft .entry-content h3::before {
  content: 'Q. ';
  color: var(--sl-gold);
  font-weight: 700;
}
.single-aircraft .entry-content h3 + p {
  margin-top: 2px !important;
  margin-bottom: 8px !important;
}

/* Fix: middle footer band color mismatch */
.site-above-footer-wrap,
.ast-above-footer,
.site-footer-above-section-1,
.ast-builder-footer-grid-columns-inner,
.main-header-bar-wrap + *,
.site-primary-footer-wrap,
.ast-primary-footer,
.site-primary-footer-inner-wrap,
.ast-builder-footer-grid-row-container-inner {
  background: var(--sl-bg-dark) !important;
  border: none !important;
}

/* Unify all background bands to sl-bg-dark */
body, #page, .site, .ast-separate-container,
#content, .site-content,
.ast-separate-container .ast-article-inner,
footer.site-footer, #colophon,
.site-below-footer-wrap, .site-below-footer-wrap *,
.ast-builder-grid-row-container-inner,
.ast-builder-footer-grid-columns,
.site-footer-below-section-1,
.site-below-footer-inner-wrap,
.site-footer-section,
.ast-footer-copyright,
.ast-builder-layout-element,
.site-above-footer-wrap,
.site-primary-footer-wrap {
  background-color: var(--sl-bg-dark) !important;
  border-color: transparent !important;
}

/* Override Astra global color vars to match sl-bg-dark, eliminating footer band */
:root {
  --ast-global-color-4: #121828 !important;
  --ast-global-color-5: #121828 !important;
}
/* Header stays #112240 — DO NOT CHANGE */
.main-header-bar, .ast-primary-header-bar,
.ast-primary-header-bar.ast-primary-header {
  background: #112240 !important;
}

/* FORCE header bg even on transparent-header pages */
.ast-theme-transparent-header .main-header-bar,
.ast-theme-transparent-header .ast-primary-header-bar,
.ast-theme-transparent-header #masthead {
  background: #112240 !important;
}

/* ABSOLUTE FINAL header override — covers desktop, mobile, transparent, everything */
html body .main-header-bar,
html body .ast-primary-header-bar,
html body .ast-primary-header-bar.ast-primary-header,
html body .ast-theme-transparent-header .main-header-bar,
html body .ast-theme-transparent-header .ast-primary-header-bar,
html body .ast-theme-transparent-header #masthead,
html body .ast-theme-transparent-header .site-header,
html body .ast-mobile-header-wrap .ast-primary-header-bar,
html body .ast-header-break-point .ast-primary-header-bar,
html body #masthead .ast-mobile-header-wrap .ast-primary-header-bar,
html body .ast-mobile-header-wrap .ast-above-header-bar,
html body .ast-mobile-header-wrap .ast-below-header-bar {
  background: #112240 !important;
  background-color: #112240 !important;
}

/* Kill the color band between content and footer */
#page, body, html,
#content, .site-content,
#primary, .ast-container,
.ast-separate-container {
  background-color: var(--sl-bg-dark) !important;
}
/* Remove any padding/margin gap at bottom of content */
#content {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
footer.site-footer, #colophon {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Fix footer color band - html/body bg was transparent */
html, body, #page {
  background-color: #121828 !important;
}



/* === Tech Blueprint Background Pattern === */
body, .ast-separate-container, .ast-plain-container,
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-inner,
.sl-dark, .sl-dark-alt,
body.single-aircraft .site-content,
.site-content {
  background-color: var(--sl-bg-dark) !important;
  background-image: var(--sl-tech-bg) !important;
  background-repeat: repeat !important;
  background-size: 1920px 1080px !important;
}
.sl-dark-alt {
  background-color: var(--sl-bg-dark-alt) !important;
  background-image: var(--sl-tech-bg) !important;
  background-repeat: repeat !important;
  background-size: 1920px 1080px !important;
}
