/* =========================================================
   AINEXO AI — Master Prompt V10
   Global layout restore + light mode visibility + chrome
   Additive only. Dark mode identity preserved.
   Does NOT redesign hero/3D/brand.
   ========================================================= */

/* ---------- PRIORITY 1: Original premium spacing ---------- */
.section {
  padding: 110px 0;
}
.section-head {
  max-width: 680px;
  margin: 0 auto 60px;
}
.page-hero {
  padding: calc(var(--nav-h, 76px) + 60px) 0 50px !important;
  min-height: unset;
  text-align: center;
}
.page-hero h1 {
  font-size: clamp(2.4rem, 6vw, 4rem) !important;
  line-height: 1.12 !important;
}
.page-hero p,
.page-hero .section-sub,
.page-hero .hero-desc {
  font-size: 1.05rem !important;
  line-height: 1.55 !important;
}
.section-title {
  font-size: clamp(2rem, 5vw, 3.2rem);
}
.section-sub {
  margin-top: 14px;
  font-size: 1.05rem;
}

/* Home hero — undo CWV compact typography (original style.css) */
#home.hero,
#home,
.hero.ainexo-3d-hero {
  min-height: 100vh;
  min-height: 100svh;
  padding-top: var(--nav-h, 76px);
}
#home .hero-name,
.hero .hero-name {
  font-size: clamp(2.8rem, 9vw, 6rem) !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  min-height: 1.15em !important;
}
#home .hero-desc,
.hero .hero-desc {
  font-size: 1.05rem !important;
  line-height: 1.55 !important;
  min-height: 4.2em !important;
  max-width: none !important;
}
#home .hero-greet,
.hero .hero-greet {
  font-size: 0.9rem !important;
  letter-spacing: 0.2em;
  margin-bottom: 14px;
}
#home .hero-seo-line,
.hero .hero-seo-line {
  font-size: clamp(1.05rem, 2.4vw, 1.35rem) !important;
  line-height: 1.45 !important;
}
#home .hero-typed-wrap,
.hero .hero-typed-wrap {
  font-size: clamp(1.3rem, 4vw, 2.1rem) !important;
  min-height: 2.4em !important;
  margin-top: 14px;
}
#home .hero-inner,
.hero .hero-inner {
  max-width: 680px;
  min-height: 28rem;
}
#home .hero-badges {
  font-size: inherit !important;
  min-height: 36px;
}
#home .hero-actions {
  min-height: 52px;
  gap: 12px;
  margin-top: 18px;
}

/* ---------- PRIORITY 2: Premium header (original padding) ---------- */
.site-header,
#site-header.site-header {
  padding: 16px 0 !important;
  min-height: 88px;
}
.site-header.scrolled,
#site-header.site-header.scrolled {
  padding: 8px 0 !important;
}
.site-header .nav {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) auto minmax(120px, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 10px 18px;
}
.site-header .nav-actions {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: nowrap;
  min-height: 48px;
  visibility: visible !important;
  opacity: 1 !important;
}
.site-header .icon-btn,
.site-header .nav-toggle,
.site-header .nav-chrome-dd,
.site-header #navSearchBtn,
.site-header #themeToggle,
.site-header #ainexoLangSwitch,
.site-header .ainexo-lang-switch,
.site-header .nav-quote-btn,
.site-header .nav-portal-btn,
.site-header .nav-contact-btn {
  visibility: visible !important;
  opacity: 1 !important;
}

/* V10 live fix: Get Quote must never disappear on laptop/desktop */
@media (min-width: 761px) {
  .site-header .nav-quote-btn,
  .nav-actions .nav-quote-btn {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* Laptop 901–1480: if center links hide, hamburger must show */
@media (min-width: 901px) and (max-width: 1480px) {
  .site-header .nav-links {
    display: none !important;
  }
  .site-header #navToggle,
  .site-header .nav-toggle {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    place-items: center;
  }
}
.site-header .nav-chrome-dd {
  display: inline-flex !important;
}
.site-header .brand-name {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ---------- PRIORITY 3: Light mode — full visibility ---------- */
[data-theme="light"] {
  --text: #1f1f1f;
  --muted: #3a3a3a;
  --faint: rgba(31, 31, 31, 0.72);
  --bg: #faf8f5;
  --bg-2: #f4efe8;
  --bg-3: #ffffff;
  --card: #ffffff;
  --card-strong: #ffffff;
  --border: rgba(36, 36, 36, 0.12);
  --border-strong: rgba(200, 155, 60, 0.4);
  --input-bg: #ffffff;
  color-scheme: light;
}

[data-theme="light"] body,
[data-theme="light"] main,
[data-theme="light"] .section,
[data-theme="light"] .page-hero,
[data-theme="light"] .hero-desc,
[data-theme="light"] .section-sub,
[data-theme="light"] .card,
[data-theme="light"] .card p,
[data-theme="light"] label,
[data-theme="light"] .breadcrumb,
[data-theme="light"] .faq-list,
[data-theme="light"] .site-footer,
[data-theme="light"] .footer-grid {
  color: var(--text);
}

[data-theme="light"] .site-header {
  background: rgba(250, 248, 245, 0.88);
  border-bottom: 1px solid rgba(36, 36, 36, 0.08);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

[data-theme="light"] .site-header.scrolled .nav {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: rgba(36, 36, 36, 0.1);
  box-shadow: 0 8px 28px -10px rgba(36, 36, 36, 0.18);
}

/* Brand name: keep gold/crimson gradient readable on light */
[data-theme="light"] .site-header .brand-name {
  background: linear-gradient(120deg, #7a2323 0%, #c89b3c 55%, #9f2d2d 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #9f2d2d;
}
[data-theme="light"] .site-header .brand-dot {
  -webkit-text-fill-color: #c89b3c;
  color: #c89b3c;
}

[data-theme="light"] .site-header .nav-links a,
[data-theme="light"] .site-header .nav-trigger,
[data-theme="light"] .site-header .nav-item > .nav-trigger {
  color: #1f1f1f !important;
}
[data-theme="light"] .site-header .nav-links a:hover,
[data-theme="light"] .site-header .nav-links a.active {
  color: #9f2d2d !important;
  background: rgba(200, 155, 60, 0.12);
}

/* Header icons — never cream-on-cream */
[data-theme="light"] .site-header .icon-btn,
[data-theme="light"] .site-header .nav-toggle,
[data-theme="light"] .site-header .nav-chrome-dd > .icon-btn.nav-trigger,
[data-theme="light"] .drawer-theme-btn,
[data-theme="light"] .drawer-close {
  color: #1f1f1f !important;
  border-color: rgba(200, 155, 60, 0.55) !important;
  background: linear-gradient(145deg, #ffffff, #f6f1e8) !important;
  box-shadow: 0 6px 16px rgba(36, 36, 36, 0.1);
}
[data-theme="light"] .site-header .icon-btn i,
[data-theme="light"] .site-header .nav-toggle i,
[data-theme="light"] .site-header .nav-chrome-dd > .icon-btn.nav-trigger i {
  color: #1f1f1f !important;
}
[data-theme="light"] .site-header .icon-btn:hover,
[data-theme="light"] .site-header .nav-toggle:hover,
[data-theme="light"] .site-header .nav-chrome-dd > .icon-btn.nav-trigger:hover {
  color: #9f2d2d !important;
  border-color: rgba(159, 45, 45, 0.5) !important;
}
[data-theme="light"] .site-header .icon-btn:hover i,
[data-theme="light"] .site-header .nav-chrome-dd > .icon-btn.nav-trigger:hover i {
  color: #9f2d2d !important;
}

[data-theme="light"] .btn-ghost,
[data-theme="light"] .nav-portal-btn,
[data-theme="light"] .nav-contact-btn {
  color: #1f1f1f !important;
  border-color: rgba(36, 36, 36, 0.16);
  background: rgba(255, 255, 255, 0.85);
}
[data-theme="light"] .btn-ghost:hover,
[data-theme="light"] .nav-portal-btn:hover,
[data-theme="light"] .nav-contact-btn:hover {
  color: #9f2d2d !important;
  border-color: rgba(200, 155, 60, 0.55);
}
[data-theme="light"] .btn-primary,
[data-theme="light"] .nav-quote-btn {
  color: #ffffff !important;
}

[data-theme="light"] .glass,
[data-theme="light"] .card.glass,
[data-theme="light"] .stat.glass,
[data-theme="light"] .faq-list details,
[data-theme="light"] .video-frame.glass,
[data-theme="light"] .quote-form.glass,
[data-theme="light"] .service-card.glass,
[data-theme="light"] .project-card.glass {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(36, 36, 36, 0.1);
  color: var(--text);
  box-shadow: 0 18px 40px -28px rgba(36, 36, 36, 0.28);
}

[data-theme="light"] .page-hero h1,
[data-theme="light"] .section-title {
  color: #1f1f1f;
  -webkit-text-fill-color: unset;
}
[data-theme="light"] .gradient-text {
  background: linear-gradient(120deg, #7a2323 0%, #c89b3c 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
[data-theme="light"] .eyebrow,
[data-theme="light"] .hero-greet {
  color: #9f2d2d;
}

/* Home hero on light: keep white name over dark 3D veil */
[data-theme="light"] #home .hero-name {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: none !important;
}
[data-theme="light"] #home .hero-desc,
[data-theme="light"] #home .hero-seo-line,
[data-theme="light"] #home .hero-typed-wrap {
  color: rgba(255, 255, 255, 0.92) !important;
  -webkit-text-fill-color: unset;
}

[data-theme="light"] .nav-dropdown,
[data-theme="light"] .site-header .nav-chrome-menu {
  background: #ffffff !important;
  border-color: rgba(36, 36, 36, 0.1);
  color: #1f1f1f;
  box-shadow: 0 18px 48px -20px rgba(36, 36, 36, 0.28);
}
[data-theme="light"] .nav-dropdown a,
[data-theme="light"] .site-header .nav-chrome-menu a {
  color: #1f1f1f !important;
}
[data-theme="light"] .nav-dropdown a:hover,
[data-theme="light"] .site-header .nav-chrome-menu a:hover {
  color: #9f2d2d !important;
  background: rgba(200, 155, 60, 0.1);
}

[data-theme="light"] .filter-btn {
  color: #1f1f1f;
  border-color: rgba(36, 36, 36, 0.14);
  background: #fff;
}
[data-theme="light"] .filter-btn.active,
[data-theme="light"] .filter-btn[aria-pressed="true"] {
  color: #fff;
  background: linear-gradient(135deg, #9f2d2d, #7a2323);
  border-color: transparent;
}

[data-theme="light"] .fa-solid,
[data-theme="light"] .fa-brands,
[data-theme="light"] .fa-regular,
[data-theme="light"] .float-icon {
  color: inherit;
}

[data-theme="light"] .site-footer,
[data-theme="light"] .site-footer a,
[data-theme="light"] .footer a {
  color: #1f1f1f;
}
[data-theme="light"] .site-footer a:hover,
[data-theme="light"] .footer a:hover {
  color: #9f2d2d;
}

[data-theme="light"] input,
[data-theme="light"] select,
[data-theme="light"] textarea,
[data-theme="light"] .form-field input,
[data-theme="light"] .form-field textarea,
[data-theme="light"] .form-field select {
  color: #1f1f1f !important;
  background: #ffffff !important;
  border-color: rgba(36, 36, 36, 0.16);
}
[data-theme="light"] ::placeholder {
  color: rgba(31, 31, 31, 0.45);
}

[data-theme="light"] .mobile-drawer .drawer-panel,
[data-theme="light"] .drawer-panel {
  background: rgba(255, 255, 255, 0.98) !important;
  color: #1f1f1f !important;
  border-left-color: rgba(200, 155, 60, 0.28);
}
[data-theme="light"] .mobile-drawer .drawer-links a,
[data-theme="light"] .mobile-drawer a,
[data-theme="light"] .drawer-title,
[data-theme="light"] .drawer-section-title {
  color: #1f1f1f !important;
}
[data-theme="light"] .mobile-drawer .drawer-links a:hover,
[data-theme="light"] .mobile-drawer .drawer-links a.active,
[data-theme="light"] .mobile-drawer a:hover,
[data-theme="light"] .mobile-drawer a.active {
  color: #9f2d2d !important;
  border-color: rgba(200, 155, 60, 0.45);
  background: rgba(200, 155, 60, 0.08);
}

[data-theme="light"] .bottom-nav {
  background: rgba(255, 255, 255, 0.94);
  border-top: 1px solid rgba(36, 36, 36, 0.1);
}
[data-theme="light"] .bottom-nav-item {
  color: #3a3a3a;
}
[data-theme="light"] .bottom-nav-item.active {
  color: #9f2d2d;
}

[data-theme="light"] .search-modal,
[data-theme="light"] .ainexo-search,
[data-theme="light"] [class*="search-panel"],
[data-theme="light"] .cmdk,
[data-theme="light"] .global-search {
  color: #1f1f1f;
  background: #ffffff;
  border-color: rgba(36, 36, 36, 0.12);
}
[data-theme="light"] .search-modal a,
[data-theme="light"] .ainexo-search a {
  color: #1f1f1f;
}

/* Cinematic cards stay light-on-dark art */
[data-theme="light"] .ainexo-cine-body,
[data-theme="light"] .ainexo-cine-body h3,
[data-theme="light"] .ainexo-cine-cat {
  color: #f5f5f5;
}

/* Lang switch visible on light */
[data-theme="light"] .ainexo-lang-switch,
[data-theme="light"] .ainexo-lang-switch button,
[data-theme="light"] .ainexo-lang-switch select {
  color: #1f1f1f !important;
  border-color: rgba(200, 155, 60, 0.45);
}

/* ---------- PRIORITY 4: Mobile nav reliability ---------- */
@media (max-width: 900px) {
  .site-header .nav-links {
    display: none !important;
  }
  .site-header .nav-chrome-dd {
    display: none !important;
  }
  .site-header #navToggle,
  .site-header .nav-toggle {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .site-header .nav-actions {
    gap: 6px;
    min-width: 0;
  }
  .site-header #navSearchBtn,
  .site-header #themeToggle,
  .site-header .ainexo-lang-switch,
  .site-header .nav-quote-btn {
    display: inline-flex !important;
    visibility: visible !important;
  }
  .site-header .nav-portal-btn .nav-portal-label,
  .site-header .nav-quote-label {
    display: none;
  }
  .mobile-drawer {
    z-index: 1300;
  }
  .mobile-drawer.open {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
  }
  .mobile-drawer .drawer-panel {
    width: min(400px, 92vw);
  }
  .drawer-links a {
    min-height: 48px;
  }
}

@media (min-width: 901px) {
  /* Menu stays visible on desktop (All Pages drawer) — do not hide #navToggle */
  .bottom-nav {
    display: none !important;
  }
  .site-header .nav-chrome-dd {
    display: inline-flex !important;
  }
  .site-header #navToggle.nav-menu-btn,
  .site-header .nav-menu-btn {
    display: inline-flex !important;
  }
}

@media (max-width: 640px) {
  .section {
    padding: 72px 0;
  }
  #home .hero-name,
  .hero .hero-name {
    font-size: clamp(2.2rem, 11vw, 3.4rem) !important;
  }
  #home .hero-desc,
  .hero .hero-desc {
    font-size: 0.98rem !important;
  }
}

/* Icons never collapse */
.fa-solid,
.fa-brands,
.fa-regular {
  display: inline-block;
  min-width: 1em;
  text-align: center;
}
.icon-btn i,
.nav-toggle i {
  pointer-events: none;
}
