
:root{
  --bg:#0b0e14; --panel:#101725; --text:#eaf1ff; --muted:#a7b3cc;
  --brand:#2563eb; --brand-2:#22d3ee; --ok:#10b981; --err:#ef4444;
  --radius:14px; --shadow:0 18px 40px rgba(0,0,0,.25);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:#f7fbff}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:24px}
header{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:36px}
nav a{color:#0b1533}
.cta{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:white;font-weight:700;padding:12px 16px;cursor:pointer;box-shadow:var(--shadow)}
.cta.ghost{background:transparent;color:#0b1533;border:1px solid #d2d9ef;box-shadow:none}
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center;padding:40px 0 10px}
.hero h1{color:#0b1533;font-size:clamp(34px,5vw,56px);line-height:1.06;margin:0 0 10px}
.lead{color:#2b3a5f;margin:0 0 20px;font-size:clamp(16px,2.2vw,19px)}
.card{background:white;border:1px solid #e5ecff;border-radius:var(--radius);box-shadow:0 8px 30px rgba(2,14,49,.05)}
.panel{padding:18px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.stat{background:linear-gradient(180deg,#f3f7ff,#f8fbff);border:1px solid #e1e9ff;border-radius:12px;padding:12px}
.stat h4{margin:0;color:#4a5a7f;font-size:14px}
.stat .big{font-size:26px;font-weight:800;color:#0b1533;margin-top:2px}
.pitch{border-radius:12px;border:1px dashed #d6e0ff;display:grid;place-items:center;background:#f3f8ff;min-height:260px}
.pitch img{max-width:100%;height:auto;display:block;border-radius:10px;box-shadow:0 6px 24px rgba(2,14,49,.08)}
.section{margin-top:28px}
h2{color:#0b1533;font-size:clamp(24px,3.6vw,32px);margin:8px 0 12px}
.muted{color:#4a5a7f}
.row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.item{background:white;border:1px solid #e5ecff;border-radius:12px;padding:16px}
.list{margin:0;padding-left:18px}
form{display:grid;gap:12px}
.field{display:grid;gap:6px}
input[type="text"], input[type="email"]{background:#f7fbff;border:1px solid #ced9f6;border-radius:10px;padding:12px 14px;color:#0b1533}
.hint{font-size:12px;color:#4a5a7f}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#0b1533}
.bad{color:var(--err);font-size:14px}
.ok{color:var(--ok);font-size:14px}
.footer{padding:32px 0 64px;color:#4a5a7f;font-size:14px;display:grid;gap:10px}
.footer .links{display:flex;gap:14px;flex-wrap:wrap}
@media (max-width: 960px){
  .hero{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:repeat(2,1fr)}
  .row{grid-template-columns:1fr}
}

/* MailerLite styling harmonisation */
#mlb2-29507634 .ml-form-embedContent h4{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif!important;color:#0b1533!important;font-weight:800!important;font-size:24px!important;margin-bottom:6px!important}
#mlb2-29507634 .ml-form-embedContent p{color:#4a5a7f!important}
#mlb2-29507634 input.form-control{background:#f7fbff!important;border:1px solid #ced9f6!important;border-radius:10px!important;padding:12px 14px!important;color:#0b1533!important}
#mlb2-29507634 .ml-form-embedSubmit button.primary{background:linear-gradient(135deg,var(--brand),var(--brand-2))!important;border:0!important;border-radius:999px!important;font-weight:800!important;padding:12px 16px!important;width:auto!important}
#mlb2-29507634 .ml-form-embedPermissionsContent h4{color:#0b1533!important}
#mlb2-29507634 .ml-form-embedPermissionsContent p,#mlb2-29507634 .ml-form-embedPermissionsOptions .description,#mlb2-29507634 .ml-form-embedMailerLite-GDPR p{color:#4a5a7f!important}
#beta .ml-form-embedContainer{display:block;margin:0 auto}


/* Make MailerLite GDPR tickbox labels bolder */
#mlb2-29507634 .ml-form-embedPermissionsOptionsCheckbox .label-description {
    font-weight: 700 !important;
}


/* Accessibility: increase text contrast to black on forms and general content */
body, .lead, .muted, p, label, .label-description, .description, .hint { color: #000 !important; }
input[type="text"], input[type="email"] { color: #000 !important; }
#mlb2-29507634 input.form-control { color: #000 !important; }
#mlb2-29507634 .ml-form-embedPermissionsContent p,
#mlb2-29507634 .ml-form-embedContent p,
#mlb2-29507634 .ml-form-embedMailerLite-GDPR p,
#mlb2-29507634 .ml-form-embedPermissionsOptions .description,
#mlb2-29507634 .ml-form-embedPermissionsOptionsCheckbox .label-description { color: #000 !important; font-weight: 700; }


/* Make logo more prominent */
header img.logo {
    max-height: 120px !important;
    height: auto !important;
}


/* === Accessibility & GDPR tweaks === */
#mlb2-29507634 .ml-form-embedPermissionsOptionsCheckbox .label-description { 
  font-weight: 800 !important; color: #000 !important;
}
#mlb2-29507634 .ml-form-embedPermissionsContent p,
#mlb2-29507634 .ml-form-embedContent p,
#mlb2-29507634 .ml-form-embedMailerLite-GDPR p { color:#000 !important; }
#mlb2-29507634 input.form-control { color:#000 !important; }

/* Larger logo */
header img.logo { max-height: 150px !important; height: auto !important; }





/* Floating Join the Beta button (homepage only) - top right */
#floating-beta-btn{
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 10000;
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
}
@media (max-width: 600px){
  #floating-beta-btn{ top: 12px; right: 12px; padding: 10px 14px; font-size: 14px; }
}


/* --- Cookie banner (shared) --- */
.cookie-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 9999;
  padding: 10px;
  background: transparent;
  display: none;
}
.cookie-banner.is-visible { display: block; }

.cookie-content {
  width: min(1100px, 92%);
  margin: 0 auto;
  background: #fff;
  border: 1px solid #e5ecff;
  box-shadow: 0 10px 30px rgba(2,14,49,.12);
  border-radius: 14px;
  padding: 14px;
  display: grid; gap: 10px;
}
.cookie-title { margin: 0; font-size: 16px; color:#0b1533; }
.cookie-copy { margin: 0; color:#4a5a7f; font-size:14px; }
.cookie-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.cookie-actions .btn {
  appearance:none; border-radius:10px; padding:10px 14px; border:1px solid #d2d9ef; cursor:pointer; font-weight:700;
}
.cookie-actions .btn-primary {
  background: linear-gradient(135deg, var(--brand), var(--brand-2));
  color: #fff; border-color: transparent;
}
.cookie-actions .btn-secondary { background: #f7fbff; color:#0b1533; }
@media (max-width: 600px){
  .cookie-content { padding: 12px; }
}

