
    :root{
      --bg:#ffffff; --panel:#ffffff; --muted:#6b7280; --text:#0f172a; --border:#e5e7eb;
      --brand:#16a34a; --brand-ink:#0b6b2d; --link:#2563eb; --hero:#f8fafc;
      --radius:12px; --shadow:0 10px 20px rgba(0,0,0,.04);
      --rt-nav-bg:#ffffff; --rt-nav-text:#111827; --rt-input:#ffffff; --rt-lead:#374151;
      --rt-foot-text:#555; --rt-notice-bg:#eff6ff; --rt-notice-border:#dbeafe;
      --rt-current:#eef2ff; --rt-status-bg:#f1f5f9; --rt-status-text:#334155;
      --rt-switch-bg:#e8edf5; --rt-switch-border:#c6d0dd; --rt-switch-text:#344158;
      --rt-switch-selected-bg:#ffffff; --rt-switch-selected-text:#172236; --rt-switch-focus:#166534;
    }
    :root[data-theme="dark"]{
      --bg:#0e1726;--panel:#172235;--muted:#afbdd0;--text:#e6edf7;
      --border:#34445b;--brand:#1a8c4c;--brand-ink:#a2e8b9;--link:#8acbff;
      --hero:#132033;--shadow:0 6px 18px rgba(0,0,0,.2);
      --rt-nav-bg:#121d2d;--rt-nav-text:#e6edf7;--rt-input:#101b2d;--rt-lead:#c5d0e0;
      --rt-foot-text:#a8b9cd;--rt-notice-bg:#142e48;--rt-notice-border:#2c5872;
      --rt-current:#253e57;--rt-status-bg:#27354b;--rt-status-text:#dee7f2;
      --rt-switch-bg:#24334a;--rt-switch-border:#415877;--rt-switch-text:#deebfd;
      --rt-switch-selected-bg:#e1edff;--rt-switch-selected-text:#14243a;--rt-switch-focus:#a2e8b9;
    }
    *{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 system-ui,Segoe UI,Inter,Roboto,Arial}
    a{color:var(--link);text-decoration:none} a:hover{text-decoration:underline}
 
 
 
 
 
header{
  position:sticky;
  top:0;
  z-index:20;
  background:var(--rt-nav-bg);
  border-bottom:1px solid var(--border);
}
.nav{
  max-width:1100px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:18px;
  padding:12px 16px;
}
.brand{
  font-weight:700;
  font-size:18px;
  color:var(--rt-nav-text);
  white-space:nowrap;
}

/* main nav links */
.nav-links{
  display:flex;
  align-items:center;
  gap:18px;
}
.nav-links a{
  color:var(--rt-nav-text);
  padding:6px 8px;
  border-radius:8px;
  white-space:nowrap;
}
.nav-links a.active{
  background:var(--rt-current);
}

/* login button on the right */
.nav-login{
  margin-left:auto;
}

/* hamburger button (hidden on desktop) */
.nav-toggle{
  display:none;
  margin-left:auto;
  background:none;
  border:0;
  padding:6px;
  cursor:pointer;
  border-radius:8px;
}
.nav-toggle span{
  display:block;
  width:18px;
  height:2px;
  background:var(--rt-nav-text);
  border-radius:999px;
  margin:3px 0;
}

/* generic button styling */
.btn{
  display:inline-block;
  background:var(--brand);
  color:#fff;
  border-radius:10px;
  padding:10px 16px;
  font-weight:600;
  border:0;
}
.btn:hover{
  filter:brightness(.98);
  text-decoration:none;
}


 @media (max-width: 720px){
  .nav{
    flex-wrap:wrap;
    gap:10px;
  }
  .nav-toggle{
    display:block;
  }
  .nav-links{
    display:none;
    flex-direction:column;
    align-items:flex-start;
    width:100%;
    margin-top:4px;
    padding-top:4px;
    border-top:1px solid var(--border);
  }
  .nav-links.open{
    display:flex;
  }

  .nav-login{
    margin-left:0;
    padding:8px 12px;
    font-size:14px;
  }

  .nav-links a{
    font-size:14px;
    padding:6px 4px;
  }
}

 
    main{padding:26px 16px}
    .wrap{max-width:1100px;margin:0 auto}
    .hero{background:var(--hero);border:1px solid var(--border);border-radius:var(--radius);padding:36px 28px;box-shadow:var(--shadow)}
    h1{margin:0 0 10px;font-size:34px;line-height:1.2}
    h2{margin:24px 0 10px;font-size:22px}
    p.lead{color:var(--rt-lead)}
    .card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);margin:14px 0}
    ul{margin:8px 0 8px 20px}
    input,textarea,select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--rt-input);color:var(--text)}
    label{display:block;margin:12px 0 6px;color:var(--rt-nav-text);font-weight:600}
    .grid{display:grid;gap:16px}
    @media(min-width:900px){ .col-2{grid-template-columns:1fr 1fr} .col-3{grid-template-columns:repeat(3,1fr)} }
    .muted{color:var(--muted)}
    .notice{padding:10px 12px;border:1px solid var(--rt-notice-border);background:var(--rt-notice-bg);border-radius:8px;margin-bottom:14px}
    .err{border-color:#fecaca;background:#fef2f2}
    footer{border-top:1px solid var(--border);margin-top:36px}
    .foot{max-width:1100px;margin:0 auto;padding:20px 16px;color:var(--rt-foot-text);display:flex;gap:14px;flex-wrap:wrap}
    .small{font-size:13px}
    .plan{position:relative;padding-top:22px;}
    .plan-meta{margin-top:2px;margin-bottom:8px;font-size:14px;}
    .plan-price{margin:6px 0 14px;}
    .plan-amount{display:block;font-size:22px;font-weight:700;}
    .plan-unit{display:block;font-size:13px;color:var(--muted);}
    .plan-tag{position:absolute;top:14px;right:14px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:#ecfdf3;color:#166534;border:1px solid #bbf7d0;}
    .card.featured{border-color:rgba(22,163,74,.45);box-shadow:0 14px 30px rgba(22,163,74,.08);transform:translateY(-4px);}
    .pricing-grid .card ul{margin-top:6px;margin-bottom:14px;}
/* Mobile header cleanups */
@media (max-width: 600px){
  .site-header{padding:10px 12px}
  .site-header .brand{font-size:18px}
  .site-header nav{display:none}              /* hide wide menu on tiny screens */
  .site-header .cta-login{
    padding:8px 12px; font-size:14px; border-radius:10px;
    white-space:nowrap; width:auto; max-width:100%;
  }
}


/* Pass 1: compact public pages and readable principles. */
h1{font-size:28px;line-height:1.3} h2{font-size:20px}
.hero{padding:24px}
button,input,select,textarea{font:inherit}
.nav-toggle{min-width:44px;min-height:44px}
.nav-links a{min-height:44px;display:inline-flex;align-items:center}
a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--brand-ink);outline-offset:3px}
.principles{list-style:none;padding:0;margin:20px 0;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.principles li{margin:0}.principles h2,.roadmap-item h2{margin:0 0 8px}
.principles p{margin:0}.eyebrow{font-size:13px;color:var(--brand-ink);font-weight:600}
.roadmap-item{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px}
.roadmap-item p{margin:4px 0}.status{font-size:13px;font-weight:600;display:inline-block;padding:4px 9px;border-radius:6px;background:var(--rt-status-bg);color:var(--rt-status-text);align-self:start;justify-self:start}
.status.available{background:#dcfce7;color:#166534}.status.partial{background:#fef3c7;color:#92400e}
@media(max-width:900px){.nav{flex-wrap:wrap;gap:10px}.nav-toggle{display:block}.nav-links{display:none;order:4;flex-direction:column;align-items:stretch;width:100%}.nav-links.open{display:flex;gap:2px}.nav-login{margin-left:0}}
@media(max-width:600px){h1{font-size:24px}h2{font-size:19px}.hero{padding:20px}.principles{grid-template-columns:minmax(0,1fr)}.roadmap-item{grid-template-columns:minmax(0,1fr);gap:8px}input,select,textarea{font-size:16px}}

/* P2D: consistent modes on sign-in, pricing, and all prospect pages. */
:root[data-theme="dark"] input,
:root[data-theme="dark"] select,
:root[data-theme="dark"] textarea {background:var(--rt-input);color:var(--text)}
:root[data-theme="dark"] .status.available {background:#17452e;color:#b2efc9}
:root[data-theme="dark"] .status.partial {background:#4a3714;color:#ffde92}
:root[data-theme="dark"] .plan-tag {background:#183f2c;color:#beebcb;border-color:#32714c}
:root[data-theme="dark"] .card.featured {box-shadow:0 9px 23px rgba(8,19,34,.35)}
:root[data-theme="dark"] .err{background:#45252a;border-color:#a74d57}
:root[data-theme="dark"] .nav-toggle span {background:var(--rt-nav-text)}
.nav-links .rt-appearance{margin-left:3px}
@media(max-width:900px) { .nav-links .rt-appearance{align-self:flex-start;margin:8px 0} }
