.ai-header-shell {
  position: fixed;
  top: 0;
  width: 100%;
  background: rgba(2, 6, 23, 0.95);
  backdrop-filter: blur(6px);
  border-bottom: 1px solid #1e293b;
  z-index: 50;
}
.ai-header-row { display: flex; align-items: center; justify-content: space-between; height: 4rem; }
.ai-header-logo-wrap, .ai-header-logo-inner { display: flex; align-items: center; }
.ai-header-logo-inner { flex-shrink: 0; }
.ai-header-logo { font-size: 1.5rem; font-weight: 700; }
.ai-header-nav-desktop { display: none; }
.ai-header-nav-list { margin-left: 2.5rem; display: flex; align-items: baseline; }
.ai-header-nav-list > * + * { margin-left: 2rem; }
.ai-header-nav-btn {
  color: #94a3b8; padding: 0.5rem 0.75rem; font-size: 1.25rem; font-weight: 500;
  transition: color .3s;
}
.ai-header-nav-btn:hover { color: #60a5fa; }
.ai-header-cta-desktop { display: none; }
.ai-header-mobile-toggle-wrap { display: block; }
.ai-header-mobile-toggle { color: #94a3b8; }
.ai-header-mobile-toggle:hover { color: #60a5fa; }
.ai-header-mobile-toggle-icon { width: 1.5rem; height: 1.5rem; }
.ai-header-mobile-nav-wrap { display: block; }
.ai-header-mobile-nav {
  padding: .5rem .5rem .75rem;
  display: flex;
  flex-direction: column;
  background: #0f172a;
  border-radius: .5rem;
  margin-top: .5rem;
}
.ai-header-mobile-nav > * + * { margin-top: .25rem; }
.ai-header-mobile-nav-btn {
  color: #94a3b8; display: block; padding: .5rem .75rem; font-size: 1.25rem; font-weight: 500;
  width: 100%; text-align: left;
}
.ai-header-mobile-nav-btn:hover { color: #60a5fa; }
.ai-header-mobile-cta { width: 100%; margin-top: .5rem; }

.ai-footer-shell { border-top: 1px solid #1e293b; }
.ai-footer-main { padding: 3rem 0; }
.ai-footer-grid { display: grid; grid-template-columns: 1fr; }
.ai-footer-grid > * + * { margin-top: 2rem; }
.ai-footer-brand-col {}
.ai-footer-brand-row { display: flex; align-items: center; margin-bottom: 1rem; }
.ai-footer-brand-title { font-size: 1.5rem; font-weight: 700; }
.ai-footer-brand-copy { color: #94a3b8; margin-bottom: 1.5rem; line-height: 1.6; }
.ai-footer-socials { display: flex; }
.ai-footer-socials > * + * { margin-left: 1rem; }
.ai-footer-social-link { color: #94a3b8; transition: color .2s; }
.ai-footer-social-link:hover { color: #60a5fa; }
.ai-footer-social-icon { width: 1.5rem; height: 1.5rem; }
.ai-footer-col-title { color: #fff; font-weight: 600; margin-bottom: 1rem; }
.ai-footer-link-list { display: flex; flex-direction: column; }
.ai-footer-link-list > * + * { margin-top: .5rem; }
.ai-footer-link { color: #94a3b8; transition: color .2s; }
.ai-footer-link:hover { color: #60a5fa; }
.ai-footer-bottom {
  border-top: 1px solid #1e293b;
  padding: 1.5rem 0;
}
.ai-footer-bottom-row {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
.ai-footer-copyright { color: #94a3b8; font-size: 1.25rem; margin-bottom: 1rem; }
.ai-footer-actions { display: flex; align-items: center; }
.ai-footer-actions > * + * { margin-left: 1.5rem; }
.ai-footer-backtop {
  color: #94a3b8; transition: color .2s; font-size: 1.25rem;
  display: flex; align-items: center;
}
.ai-footer-backtop:hover { color: #60a5fa; }
.ai-footer-backtop-icon { width: 1rem; height: 1rem; margin-right: .25rem; }
.ai-footer-madewith { color: #64748b; font-size: 1.25rem; }
.ai-footer-heart { width: 1rem; height: 1rem; display: inline; margin: 0 .25rem; }

.ai-obsidian-bonus-inner { margin-bottom: 3rem; }
.ai-obsidian-bonus-title {
  font-size: clamp(1.875rem, 4vw, 3rem);
  font-weight: 700;
  color: #fff;
  margin-bottom: 2rem;
  line-height: 1.3;
  text-align: center;
}
.ai-obsidian-bonus-grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
}
.ai-obsidian-bonus-grid > * + * { margin-top: 3rem; }
.ai-obsidian-bonus-image-col { display: flex; align-items: center; justify-content: center; }
.ai-obsidian-bonus-image { border-radius: .5rem; }
.ai-obsidian-bonus-copy-col { max-width: 42rem; margin: 0 auto; display: flex; align-items: center; }
.ai-obsidian-bonus-copy {
  font-size: 1.25rem;
  color: #e2e8f0;
  line-height: 1.6;
  display: flex;
  flex-direction: column;
}
.ai-obsidian-bonus-copy > * + * { margin-top: 1.5rem; }

.ai-hero-headline-lead,
.ai-hero-headline-line {
  display: block;
}

/* Mobile: let the headline wrap naturally (no forced single-line phrases).
   Desktop/tablet: keep each phrase on its own clean line. */
@media (min-width: 768px) {
  .ai-hero-headline-lead,
  .ai-hero-headline-line {
    white-space: nowrap;
  }
}

@media (min-width: 768px) {
  .ai-header-nav-desktop, .ai-header-cta-desktop { display: block; }
  .ai-header-mobile-toggle-wrap, .ai-header-mobile-nav-wrap { display: none; }
  .ai-footer-grid { grid-template-columns: repeat(2, 1fr); }
  .ai-footer-grid > * + * { margin-top: 0; }
  .ai-footer-grid > :nth-child(even) { margin-left: 2rem; }
  .ai-footer-grid > :nth-child(n+3) { margin-top: 2rem; margin-left: 0; }
  .ai-footer-bottom-row { flex-direction: row; }
  .ai-footer-copyright { margin-bottom: 0; }
}

@media (min-width: 1024px) {
  .ai-footer-grid { grid-template-columns: 1fr repeat(4, minmax(0, 1fr)); }
  .ai-footer-grid > * { margin-top: 0; margin-left: 0; }
  .ai-footer-grid > *:not(:first-child) { margin-left: 2rem; }
  .ai-obsidian-bonus-grid { grid-template-columns: repeat(2, 1fr); }
  .ai-obsidian-bonus-grid > * + * { margin-top: 0; margin-left: 3rem; }
  .ai-obsidian-bonus-image-col { justify-content: flex-start; }
  .ai-obsidian-bonus-copy-col { margin: 0; }
}
