:root{
      --bg: #ffffff;
      --fg: #0f172a; /* slate-900 */
      --muted: #6b7280; /* gray-500 */
      --card: #f8fafc; /* slate-50 */
      --border: #e5e7eb; /* gray-200 */
      --accent: #111827; /* gray-900 */
      --ring: rgba(17,24,39,.12);
      --radius: 16px;
    }
    @media (prefers-color-scheme: dark){
      :root{
        --bg: #0b0f1a;
        --fg: #e5e7eb;
        --muted: #9ca3af;
        --card: #0f172a;
        --border: #1f2937;
        --accent: #e5e7eb;
        --ring: rgba(148,163,184,.15);
      }
    }
    /* Theme override when toggled */
    html[data-theme="light"]{ --bg:#ffffff; --fg:#0f172a; --muted:#6b7280; --card:#f8fafc; --border:#e5e7eb; --accent:#111827; --ring:rgba(17,24,39,.12);} 
    html[data-theme="dark"]{ --bg:#0b0f1a; --fg:#e5e7eb; --muted:#9ca3af; --card:#0f172a; --border:#1f2937; --accent:#e5e7eb; --ring:rgba(148,163,184,.15);} 

    *{ box-sizing: border-box; }
    html, body{ height:100%; }
    body{
      margin:0; font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji";
      background: var(--bg); color: var(--fg);
      line-height:1.6;
    }
    a{ color: inherit; text-decoration: none; }
    .container{ width: min(1100px, 92%); margin: 0 auto; }
    .shadow-soft{ box-shadow: 0 1px 2px var(--ring), 0 8px 24px var(--ring); }
    .card{ background:var(--card); border:1px solid var(--border); border-radius: var(--radius); }
    .btn{
      display:inline-flex; align-items:center; gap:.5rem; padding:.9rem 1.15rem; border-radius: calc(var(--radius) - 8px);
      border:1px solid var(--border); background: transparent; cursor:pointer; font-weight:600;
      transition: transform .1s ease, background .2s ease, border-color .2s ease;
    }
    .btn:hover{ transform: translateY(-1px); border-color: var(--fg); }
    .btn.primary{ background: var(--fg); color: var(--bg); border-color: var(--fg); }
    .btn.primary:hover{ filter: brightness(0.95); }
    .btn.ghost{ background: transparent; }
    header{
      position: sticky; top:0; z-index:10; backdrop-filter: blur(10px);
      border-bottom:1px solid var(--border); background: color-mix(in oklab, var(--bg) 80%, transparent);
    }
    .nav{ display:flex; align-items:center; justify-content:space-between; padding: .9rem 0; }
    .brand{ display:flex; align-items:center; gap:.6rem; font-weight:700; letter-spacing:.2px; }
    .dot{ width:10px; height:10px; border-radius:999px; background: var(--fg); display:inline-block; }
    .menu{ display:flex; align-items:center; gap:1rem; }
    .menu a{ opacity:.8; padding:.4rem .6rem; border-radius: 8px; }
    .menu a:hover{ background: var(--card); opacity:1; }
    .theme-toggle{ border-radius:10px; padding:.5rem .6rem; }

    .hero{ padding: 8rem 0 5rem; text-align:center; }
    .eyebrow{ font-size:.85rem; letter-spacing:.12em; text-transform:uppercase; color: var(--muted); }
    h1{
      font-size: clamp(2rem, 4.5vw, 3.5rem);
      line-height:1.1; margin:.6rem 0 1rem; letter-spacing:-.02em;
    }
    .lead{ font-size: clamp(1rem, 2.1vw, 1.25rem); color: var(--muted); margin: 0 auto 1.8rem; width:min(70ch, 92%); }
    .cta{ display:flex; justify-content:center; gap:.6rem; flex-wrap:wrap; margin-top:1rem; }

    .logos{ display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 1.2rem; align-items:center; opacity:.75; margin: 3rem auto 0; max-width: 900px; }
    .logo{ height: 22px; border:1px dashed var(--border); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:.8rem; color: var(--muted); padding:.6rem; }

    section{ padding: 5rem 0; }
    .grid{ display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:1.2rem; }
    .feature{ padding: 1.4rem; }
    .feature h3{ margin:.6rem 0 .4rem; }
    .feature p{ color: var(--muted); margin:0; }

    .about{ display:grid; grid-template-columns: 1.2fr 1fr; gap:1.8rem; align-items:center; }
    .about .panel{ padding:1.6rem; }

    .footer{ border-top:1px solid var(--border); padding:2.2rem 0; color: var(--muted); font-size:.95rem; }

    /* Utilities */
    .center{ text-align:center; }
    .hidden{ display:none; }

    @media (max-width: 900px){
      .grid{ grid-template-columns: 1fr; }
      .about{ grid-template-columns: 1fr; }
      .logos{ grid-template-columns: repeat(3, minmax(0,1fr)); }
    }
  .seed-table tbody tr:hover { background: color-mix(in oklab, var(--card) 70%, transparent); }
  .seed-table th { font-weight:600; color:var(--fg); }
  @media (max-width:900px){
    .seed-table { min-width:600px; }
  }
  iframe{ width:100%; height:300px; border:0; border-radius:12px; }
    .gallery{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:1rem; margin-top:1.5rem; }
    .gallery img{ width:100%; border-radius:10px; border:1px solid #e5e7eb; object-fit:cover; transition:transform .3s; }
    .gallery img:hover{ transform:scale(1.05); }
    @media(max-width:768px){ .contact-grid{ grid-template-columns:1fr; }