

  :root{
    --ink: #1F2022;
    --ink-2: #292A2C;
    --ink-3: #35363A;
    --amber: #C1592A;
    --amber-dim: #9C4A24;
    --green: #4CAF7D;
    --paper: #EDEDED;
    --paper-2: #E1E2E3;
    --ink-text: #ABADB0;
    --white: #F5F5F5;
  }

  *{ box-sizing:border-box; margin:0; padding:0; }
  html{ scroll-behavior:smooth; }
  body{ font-family:'Inter', -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; background:var(--paper); color:#1C2126; line-height:1.5; overflow-x:hidden; }
  h1,h2,h3,.display{ font-family:'Barlow Condensed', 'Arial Narrow', Arial, sans-serif; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; line-height:1.02; }
  .mono{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; }
  a{ color:inherit; text-decoration:none; }
  img,svg{ display:block; max-width:100%; }
  .wrap{ max-width:1180px; margin:0 auto; padding:0 32px; }
  section{ position:relative; }

  .eyebrow{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--ink-text); display:flex; align-items:center; gap:10px; margin-bottom:18px; }
  .eyebrow::before{ content:''; width:18px; height:1px; background:var(--amber-dim); }
  .section-light .eyebrow, .section-light-alt .eyebrow, .audience.a2 .eyebrow{ color:#6E7074; }
  .btn{ display:inline-flex; align-items:center; gap:10px; font-family:'Barlow Condensed', 'Arial Narrow', Arial, sans-serif; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; font-size:17px; padding:15px 30px; border-radius:14px; cursor:pointer; border:1px solid transparent; transition:transform .15s ease, background .15s ease, border-color .15s ease; }
  .btn:hover{ transform:translateY(-2px); }
  .btn-neutral{ background:#D9D9D9; color:var(--ink); }
  .btn-neutral:hover{ background:#C7C7C7; transform:translateY(-2px); }
  .btn-ghost{ border-color:rgba(255,255,255,0.28); color:var(--white); }
  .btn-ghost:hover{ border-color:var(--amber); color:var(--amber); }
  .btn-ghost-dark{ border-color:rgba(28,33,38,0.3); color:#1C2126; }
  .btn-ghost-dark:hover{ border-color:var(--ink); background:rgba(28,33,38,0.05); }
  .btn-small{ font-size:14px; padding:11px 22px; }

  /* nav */
  nav{ position:sticky; top:0; z-index:50; background:rgba(28,33,38,0.92); backdrop-filter:blur(8px); border-bottom:1px solid rgba(255,255,255,0.08); }
  nav .wrap{ display:flex; align-items:center; justify-content:space-between; height:76px; }
  .logo{ display:flex; align-items:center; gap:10px; }
  .logo-sub{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:10.5px; color:#84868A; letter-spacing:0.08em; margin-top:-2px; }
  .navlinks{ display:flex; gap:36px; align-items:center; }
  .navlinks a{ color:var(--ink-text); font-size:15px; font-weight:500; }
  .navlinks a:hover{ color:var(--white); }
  .navlinks .btn{ font-size:14px; padding:10px 22px; }

  /* HERO — company, not product */
  .hero{ background: radial-gradient(circle at 15% 0%, rgba(255,255,255,0.05), transparent 45%), linear-gradient(160deg, #2A2B2E 0%, #1A1B1D 100%); color:var(--white); padding:110px 0 100px; overflow:hidden; }
  .hero .wrap{ max-width:820px; }
  .hero h1{ font-size:clamp(40px,5.4vw,66px); color:var(--white); margin-bottom:22px; }
  .hero h1 span{ color:var(--amber); }
  .hero p.lede{ font-size:19px; color:var(--ink-text); max-width:600px; margin-bottom:36px; }
  .hero-ctas{ display:flex; gap:16px; flex-wrap:wrap; margin-bottom:30px; }
  .hero-note{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12.5px; color:#84868A; letter-spacing:0.02em; }

  .section-dark{ background:linear-gradient(180deg, #232427 0%, #1D1E20 100%); color:var(--white); padding:110px 0; }
  .section-light{ background:var(--paper); padding:110px 0; }
  .section-light-alt{ background:var(--paper-2); padding:110px 0; }
  .section-head{ max-width:640px; margin-bottom:56px; }
  .section-head h2{ font-size:clamp(30px,3.4vw,44px); margin-bottom:16px; }
  .section-light .section-head h2, .section-light-alt .section-head h2{ color:var(--ink); }
  .section-dark .section-head h2{ color:var(--white); }
  .section-head p{ font-size:17px; color:#5C5E62; max-width:560px; }
  .section-dark .section-head p{ color:var(--ink-text); }

  /* PRODUCT SHOWCASE */
  .product-panel{ display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; margin-top:10px; }
  .product-copy h3{ font-size:30px; color:var(--white); margin-bottom:14px; }
  .product-copy .tag{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:13px; color:var(--amber); letter-spacing:0.06em; margin-bottom:14px; text-transform:uppercase; }
  .product-copy p{ font-size:15.5px; color:var(--ink-text); margin-bottom:26px; }
  .product-feats{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px; }
  .product-feats span{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12px; color:#8A8C8F; border:1px solid rgba(255,255,255,0.14); padding:7px 13px; border-radius:20px; }

  /* screenshot stack — real product, framed in Auto Enlighten's own chrome */
  .screen-stack{ position:relative; padding:20px 10px 44px 44px; }
  .browser-frame{
    background:#0F1215; border-radius:18px; overflow:hidden;
    border:1px solid rgba(193,89,42,0.22);
    box-shadow:0 40px 70px -25px rgba(0,0,0,0.65);
  }
  .browser-frame .chrome{
    display:flex; align-items:center; gap:8px; padding:10px 14px;
    background:#171B1F; border-bottom:1px solid rgba(255,255,255,0.06);
  }
  .browser-frame .chrome .dot{ width:9px; height:9px; border-radius:50%; background:#3A414A; }
  .browser-frame .chrome .url{
    font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:11px; color:#74767A;
    background:#0F1215; border-radius:10px; padding:4px 12px; margin-left:10px; flex:1;
  }
  .browser-frame img{ width:100%; display:block; }

  .screen-primary{ position:relative; z-index:3; }
  .screen-secondary{
    position:absolute; width:78%; z-index:2;
    top:-26px; right:-30px;
    transform:rotate(3deg);
    opacity:0.92;
  }
  .screen-tertiary{
    position:absolute; width:60%; z-index:1;
    bottom:-34px; left:-34px;
    transform:rotate(-4deg);
    opacity:0.85;
  }
  .screen-caption{
    font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12px; color:#84868A;
    margin-top:20px; text-align:right; padding-right:10px;
  }
  @media(max-width:900px){ .screen-secondary, .screen-tertiary{ display:none; } .screen-stack{ padding:0; } }

  @media(max-width:900px){ .product-panel{ grid-template-columns:1fr; } }

  /* Autodata innovation callout */
  .innovation-row{ display:grid; grid-template-columns:0.85fr 1.15fr; gap:44px; align-items:center; margin-top:70px; padding-top:60px; border-top:1px solid rgba(255,255,255,0.08); }
  .innovation-row .browser-frame{ border-color:rgba(255,255,255,0.1); }
  .innovation-copy .tag{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12px; color:var(--green); letter-spacing:0.06em; margin-bottom:12px; text-transform:uppercase; }
  .innovation-copy h4{ font-size:24px; color:var(--white); margin-bottom:12px; font-family:'Barlow Condensed', 'Arial Narrow', Arial, sans-serif; font-weight:700; text-transform:uppercase; }
  .innovation-copy p{ font-size:14.5px; color:var(--ink-text); }
  @media(max-width:860px){ .innovation-row{ grid-template-columns:1fr; } }

  .product-cta{ margin-top:46px; display:flex; align-items:center; gap:22px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,0.08); padding-top:34px; }
  .product-cta p{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:13px; color:#8A8C8F; }
  .ad-banner{ display:block; margin-top:38px; border-radius:12px; overflow:hidden; transition:transform .15s ease, box-shadow .15s ease; box-shadow:0 20px 40px -20px rgba(0,0,0,0.5); }
  .ad-banner:hover{ transform:translateY(-2px); box-shadow:0 25px 50px -18px rgba(0,0,0,0.6); }
  .ad-banner img{ width:100%; display:block; }

  /* ABOUT */
  .about-grid{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:60px; align-items:start; }
  .about-grid p{ font-size:16px; color:#3C3D40; margin-bottom:18px; max-width:520px; }
  p.mantra{ font-style:italic; font-size:17px; color:#26272A; border-left:3px solid var(--amber); padding-left:18px; margin:26px 0; max-width:480px; }
  .fact-list{ display:flex; flex-direction:column; gap:0; border-top:1px solid rgba(28,33,38,0.12); }
  .fact-row{ display:flex; justify-content:space-between; padding:18px 0; border-bottom:1px solid rgba(28,33,38,0.12); }
  .fact-row .k{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12.5px; color:#5C5E62; letter-spacing:0.04em; text-transform:uppercase; }
  .fact-row .v{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:13.5px; color:var(--ink); text-align:right; }
  @media(max-width:900px){ .about-grid{ grid-template-columns:1fr; } }

  /* BLOG */
  .blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
  .blog-card{ background:var(--paper); border:1px solid rgba(28,33,38,0.1); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; transition:transform .15s ease, box-shadow .15s ease; }
  .blog-card:hover{ transform:translateY(-3px); box-shadow:0 20px 40px -20px rgba(28,33,38,0.25); }
  .blog-card .blog-tag{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--amber-dim); padding:20px 22px 0; }
  .blog-card .blog-date{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:11.5px; color:#8A8C8F; padding:8px 22px 0; }
  .blog-card h3{ font-size:23px; color:var(--ink); padding:14px 22px 8px; }
  .blog-card p{ font-size:14px; color:#5C5E62; padding:0 22px; flex:1; }
  .blog-card .blog-read{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12px; color:var(--amber-dim); padding:18px 22px 22px; text-decoration:none; display:block; }
  @media(max-width:900px){ .blog-grid{ grid-template-columns:1fr; } }

  /* PARTNERS / audiences */
  .audience-split{ display:grid; grid-template-columns:1fr 1fr; }
  .audience{ padding:78px 56px; }
  .audience.a1{ background:var(--ink); color:var(--white); }
  .audience.a2{ background:var(--paper-2); color:var(--ink); }
  .audience h3{ font-size:32px; margin-bottom:16px; }
  .audience.a1 h3{ color:var(--white); }
  .audience p{ font-size:15px; margin-bottom:24px; max-width:420px; }
  .audience.a1 p{ color:var(--ink-text); }
  .audience.a2 p{ color:#4C4E52; }
  @media(max-width:860px){ .audience-split{ grid-template-columns:1fr; } .audience{ padding:56px 32px; } }

  /* trust */
  .trust-row{ display:flex; gap:16px; flex-wrap:wrap; margin-top:28px; }
  .chip{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12.5px; padding:9px 16px; border-radius:20px; border:1px solid rgba(28,33,38,0.15); color:#3C3D40; }
  .stat-row{ display:flex; gap:60px; margin-top:46px; flex-wrap:wrap; }
  .stat .num{ font-family:'Barlow Condensed', 'Arial Narrow', Arial, sans-serif; font-weight:700; font-size:42px; color:var(--ink); }
  .stat .lbl{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:12px; color:#5C5E62; letter-spacing:0.04em; }

  /* contact / cta band */
  .cta-band{ background: linear-gradient(160deg, #2A2B2E 0%, #1A1B1D 100%); color:var(--white); padding:90px 0; position:relative; overflow:hidden; }
  .cta-band::before{ content:''; position:absolute; inset:0; background:radial-gradient(circle at 85% 20%, rgba(255,255,255,0.05), transparent 50%); }
  .cta-inner{ display:flex; align-items:center; justify-content:space-between; gap:40px; flex-wrap:wrap; position:relative; }
  .cta-inner h2{ font-size:36px; margin-bottom:10px; color:var(--white); }
  .cta-inner .lede{ color:var(--ink-text); font-size:15px; max-width:440px; }
  .cta-actions{ display:flex; gap:16px; flex-wrap:wrap; }

  footer{ background:#15181C; color:#74767A; padding:56px 0 40px; }
  .foot-top{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:30px; margin-bottom:40px; }
  .foot-cols{ display:flex; gap:70px; flex-wrap:wrap; }
  .foot-col h5{ font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; font-size:11.5px; color:#8A8C8F; letter-spacing:0.1em; text-transform:uppercase; margin-bottom:16px; }
  .foot-col a{ display:block; font-size:14px; color:#96989C; margin-bottom:10px; }
  .foot-col a:hover{ color:var(--amber); }
  .foot-addr{ font-size:13.5px; color:#96989C; line-height:1.7; }
  .foot-bottom{ border-top:1px solid rgba(255,255,255,0.08); padding-top:24px; font-size:12.5px; font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; }

  ::selection{ background:var(--amber); color:#1C2126; }
  @media (prefers-reduced-motion: reduce){ .pulse{ animation:none; } .btn{ transition:none; } }

  /* OpenDyslexic — embedded, no external download required */
  @font-face {
    font-family: 'OpenDyslexic';
    src: url(../fonts/OpenDyslexic-Regular.otf) format('opentype');
    font-weight: 400; font-style: normal; font-display: swap;
  }
  @font-face {
    font-family: 'OpenDyslexic';
    src: url(../fonts/OpenDyslexic-Bold.otf) format('opentype');
    font-weight: 700; font-style: normal; font-display: swap;
  }
  @font-face {
    font-family: 'OpenDyslexic';
    src: url(../fonts/OpenDyslexic-Italic.otf) format('opentype');
    font-weight: 400; font-style: italic; font-display: swap;
  }
  @font-face {
    font-family: 'OpenDyslexic';
    src: url(../fonts/OpenDyslexic-BoldItalic.otf) format('opentype');
    font-weight: 700; font-style: italic; font-display: swap;
  }

  /* Dyslexia-friendly mode — paragraph/body text only; headers and section titles keep the display font */
  body.dyslexia-mode p,
  body.dyslexia-mode li,
  body.dyslexia-mode td,
  body.dyslexia-mode label,
  body.dyslexia-mode blockquote,
  body.dyslexia-mode input,
  body.dyslexia-mode textarea {
    font-family: 'OpenDyslexic', 'Comic Sans MS', sans-serif !important;
    letter-spacing: 0.01em !important;
  }

  /* Accessibility toggle button */
  .a11y-toggle{
    display:inline-flex; align-items:center; gap:8px;
    font-family:'IBM Plex Mono', 'SF Mono', Consolas, 'Courier New', monospace;
    font-size:12px; letter-spacing:0.04em; text-transform:uppercase;
    color:var(--ink-text); background:transparent;
    border:1px solid rgba(255,255,255,0.22); border-radius:20px;
    padding:8px 16px; cursor:pointer; transition:all .15s ease;
  }
  .a11y-toggle:hover{ border-color:var(--amber); color:var(--white); }
  .a11y-toggle.active{ background:var(--amber); border-color:var(--amber); color:#FFFFFF; }
  .a11y-toggle .dot{ width:6px; height:6px; border-radius:50%; background:currentColor; opacity:0.6; }
  @media(max-width:960px){ .a11y-toggle span.label-full{ display:none; } }

/* ===== Mobile navigation (hamburger) ===== */
.hamburger{
  display:none; background:transparent; border:none; cursor:pointer;
  width:34px; height:34px; flex-direction:column; justify-content:center; align-items:center; gap:5px;
}
.hamburger span{ display:block; width:22px; height:2px; background:var(--white); border-radius:2px; transition:all .2s ease; }
.hamburger.open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2){ opacity:0; }
.hamburger.open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.mobile-menu{
  display:none; flex-direction:column; gap:0;
  background:#1A1B1D; border-top:1px solid rgba(255,255,255,0.08);
  padding:8px 32px 24px;
}
.mobile-menu.open{ display:flex; }
.mobile-menu a{
  color:var(--ink-text); font-size:16px; padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.mobile-menu a:last-of-type{ border-bottom:none; }
.mobile-menu .btn{ margin-top:16px; justify-content:center; }
.mobile-menu .a11y-toggle{ margin-top:10px; justify-content:center; }

@media(max-width:900px){
  .navlinks > a, .navlinks > .a11y-toggle{ display:none; }
  .hamburger{ display:flex; }
}

/* Footer social icons */
.foot-social{ display:flex; gap:12px; margin-top:16px; }
.foot-social a{ color:#8A8C8F; transition:color .15s ease; }
.foot-social a:hover{ color:var(--amber); }

/* ===== Products dropdown ===== */
.nav-dropdown{ position:relative; }
.nav-dropdown-toggle{
  background:none; border:none; cursor:pointer;
  font-family:'Inter', -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  color:var(--ink-text); font-size:15px; font-weight:500;
  display:inline-flex; align-items:center; gap:5px;
}
.nav-dropdown-toggle:hover{ color:var(--white); }
.nav-dropdown-toggle .caret{ font-size:11px; transition:transform .15s ease; }
.nav-dropdown.open .nav-dropdown-toggle .caret{ transform:rotate(180deg); }

.nav-dropdown-menu{
  display:none; position:absolute; top:calc(100% + 16px); left:50%; transform:translateX(-50%);
  width:280px; background:#1A1B1D; border:1px solid rgba(255,255,255,0.1);
  border-radius:14px; padding:10px; box-shadow:0 25px 50px -15px rgba(0,0,0,0.6);
  z-index:60;
}
.nav-dropdown-menu.open{ display:block; }
.nav-dropdown-menu a, .nav-dropdown-menu .pd-disabled{
  display:flex; flex-direction:column; gap:2px;
  padding:12px 14px; border-radius:10px; color:var(--white);
}
.nav-dropdown-menu a:hover{ background:rgba(255,255,255,0.06); }
.pd-name{ font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif; font-weight:700; font-size:16px; text-transform:uppercase; letter-spacing:0.02em; }
.pd-desc{ font-family:'IBM Plex Mono','SF Mono',Consolas,'Courier New',monospace; font-size:11.5px; color:#8A8C8F; }
.pd-badge{
  display:inline-block; font-family:'IBM Plex Mono',monospace; font-size:10px; letter-spacing:0.05em;
  background:var(--amber); color:#fff; padding:2px 8px; border-radius:10px; margin-left:8px; text-transform:uppercase;
}
.pd-disabled{ opacity:0.42; cursor:not-allowed; }
.pd-disabled .pd-name{ color:var(--ink-text); }

/* Mobile menu product entries */
.mm-badge{
  display:inline-block; font-family:'IBM Plex Mono',monospace; font-size:9.5px; letter-spacing:0.05em;
  background:var(--amber); color:#fff; padding:2px 7px; border-radius:9px; margin-left:8px; text-transform:uppercase; vertical-align:middle;
}
.mm-disabled{ display:block; padding:14px 0; color:#5C5E62; border-bottom:1px solid rgba(255,255,255,0.06); font-size:16px; }

/* ===== Logo lockup: icon image + real text (no more raster wordmark issues) ===== */
.logo-lockup{ display:flex; align-items:center; gap:10px; text-decoration:none; }
.logo-lockup img{ height:32px; width:auto; display:block; }
.logo-lockup .logo-word{
  font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  font-weight:800; font-size:22px; text-transform:uppercase; letter-spacing:0.01em;
  color:var(--white); line-height:1;
}
footer .logo-lockup .logo-word{ font-size:19px; }

/* Dimmed footer link (Autodata — coming soon, not yet clickable) */
.foot-disabled{ display:block; font-size:14px; color:#4A4C4F; margin-bottom:10px; cursor:not-allowed; }

/* Products page: quick-access card grid */
.products-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:10px; }
.product-card{
  background:var(--paper); border:1px solid rgba(28,33,38,0.1); border-radius:16px;
  padding:28px 26px; display:flex; flex-direction:column; gap:16px;
}
.product-card h3{ font-size:24px; color:var(--ink); }
.product-card p{ font-size:14.5px; color:#5A6570; flex:1; }
@media(max-width:860px){ .products-grid{ grid-template-columns:1fr; } }
