/* Base styles, animations, responsive breakpoints */
  * { box-sizing: border-box; }
  html, body { margin: 0; padding: 0; background: #1b1a3a; }
  body { font-family: 'Heebo', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
  a { color: #a9dbf0; text-decoration: none; }
  a:hover { color: #bfe6f5; }
  ::selection { background: rgba(123,198,232,0.35); color: #fff; }
  @keyframes wr-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-16px); } }
  @keyframes wr-glow { 0%,100% { opacity: .55; } 50% { opacity: .9; } }
  @keyframes wr-spin { to { transform: rotate(360deg); } }
  @keyframes wr-pulse { 0% { transform: scale(1); opacity: .6; } 100% { transform: scale(2.1); opacity: 0; } }
  @keyframes wr-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
  @media (max-width: 1000px) {
    [data-hero] { grid-template-columns: 1fr !important; gap: 40px !important; }
    [data-hero-visual] { height: 420px !important; }
    [data-benefit-grid] { grid-template-columns: repeat(2,1fr) !important; }
    [data-cat-grid] { grid-template-columns: repeat(2,1fr) !important; }
    [data-ai-grid] { grid-template-columns: 1fr !important; gap: 36px !important; }
    [data-you-grid] { grid-template-columns: 1fr !important; gap: 36px !important; }
    [data-timeline] { grid-template-columns: repeat(3,1fr) !important; row-gap: 34px !important; }
    [data-two-models] { grid-template-columns: 1fr !important; }
    [data-testi-grid] { grid-template-columns: repeat(2,1fr) !important; }
    [data-tl-line] { display: none !important; }
    [data-logos] { grid-template-columns: repeat(3,1fr) !important; }
    [data-nav-links] { display: none !important; }
    [data-burger] { display: inline-flex !important; }
    [data-nav-cta] { display: none !important; }
  }
  @media (max-width: 640px) {
    [data-benefit-grid] { grid-template-columns: 1fr !important; }
    [data-cat-grid] { grid-template-columns: 1fr !important; }
    [data-ai-features] { grid-template-columns: 1fr !important; }
    [data-you-cards] { grid-template-columns: 1fr !important; }
    [data-timeline] { grid-template-columns: repeat(2,1fr) !important; }
    [data-stats] { grid-template-columns: repeat(2,1fr) !important; }
    [data-testi-grid] { grid-template-columns: 1fr !important; }
    [data-logos] { grid-template-columns: repeat(2,1fr) !important; }
    [data-hero] { padding-top: 64px !important; }
    [data-hero-visual] { height: 380px !important; }
    [data-wa-label] { display: none !important; }
    [data-wa-fab] { bottom: 18px !important; left: 18px !important; padding: 14px !important; }
  }
/* Hover states (converted from design-canvas style-hover attributes) */
.hv1:hover { color:#fff; }
.hv2:hover { color:#fff; }
.hv3:hover { color:#fff; }
.hv4:hover { color:#fff; }
.hv5:hover { color:#fff; }
.hv6:hover { color:#fff; }
.hv7:hover { transform:translateY(-2px);box-shadow:0 14px 34px rgba(123,198,232,0.5); }
.hv8:hover { color:#fff; }
.hv9:hover { color:#fff; }
.hv10:hover { color:#fff; }
.hv11:hover { color:#fff; }
.hv12:hover { color:#fff; }
.hv13:hover { color:#fff; }
.hv14:hover { transform:translateY(-2px);box-shadow:0 18px 44px rgba(123,198,232,0.55); }
.hv15:hover { background:rgba(255,255,255,0.07);border-color:rgba(255,255,255,0.3); }
.hv16:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv17:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv18:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv19:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv20:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv21:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv22:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv23:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.4); }
.hv24:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.35); }
.hv25:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.35); }
.hv26:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.35); }
.hv27:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.55); }
.hv28:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.35); }
.hv29:hover { transform:translateY(-6px);border-color:rgba(123,198,232,0.35); }
.hv30:hover { transform:translateY(-2px); }
.hv31:hover { transform:translateY(-2px); }
.hv32:hover { background:rgba(255,255,255,0.14); }
.hv33:hover { color:#fff; }
.hv34:hover { color:#fff; }
.hv35:hover { color:#fff; }
.hv36:hover { color:#fff; }
.hv37:hover { color:#fff; }
.hv38:hover { color:#fff; }
.hv39:hover { color:#fff; }
.hv40:hover { transform:translateY(-3px);box-shadow:0 18px 44px rgba(37,211,102,0.6); }

/* Interactive states driven by js/script.js */
.burger-line { transform: none; opacity: 1; }
[data-header].is-scrolled { background: rgba(20,19,44,0.92); box-shadow: 0 12px 34px rgba(0,0,0,0.38); border-bottom-color: rgba(123,198,232,0.18); }
[data-header].is-scrolled [data-nav] { padding: 9px 28px; }
[data-header].menu-open .burger-top { transform: translateY(6px) rotate(45deg); }
[data-header].menu-open .burger-mid { opacity: 0; }
[data-header].menu-open .burger-bot { transform: translateY(-6px) rotate(-45deg); }
[data-header].menu-open [data-mobile-menu] { max-height: 420px !important; }

.faq-panel { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
.faq-item.is-open .faq-panel { max-height: 320px; }
.faq-item.is-open .faq-icon { transform: rotate(45deg); }

[data-reveal] { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }
.no-js [data-reveal] { opacity: 1; transform: none; }