:root{
  --bg0:#F6FBFA;
  --bg1:#FFFFFF;
  --card:#FFFFFF;
  --card2:#F6F8FF;
  --stroke:rgba(15,23,42,.10);
  --txt:#0B3B5E;
  --muted:#5B6475;
  --brand:#18B6A6;
  --brand2:#5B7CFF;
  --warm:#FFB37A;
  --warm2:#FFD6B6;
  --bad:#E11D48;
  --ok:#0F766E;
  --shadow: 0 10px 24px rgba(11,59,94,.08);
  --r:16px;
}

*{box-sizing:border-box}
html,body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--txt);
  background:
    radial-gradient(900px 500px at 15% 0%, rgba(91,124,255,.14), transparent 60%),
    radial-gradient(900px 500px at 85% 0%, rgba(24,182,166,.14), transparent 60%),
    radial-gradient(900px 520px at 50% 15%, rgba(255,179,122,.10), transparent 58%),
    linear-gradient(180deg, var(--bg0), var(--bg1));
}


a{color:var(--brand2);text-decoration:none}
a:hover{text-decoration:underline}

.container{max-width:1180px;margin:0 auto;padding:0 20px}
.bg{min-height:100vh;display:flex;flex-direction:column}

.topbar{
  position:sticky; top:0; z-index:30;
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(12px);
  border-bottom:1px solid var(--stroke);
}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:10px}
.brand__logo{
  width:34px;height:34px;border-radius:10px;
  object-fit:cover;
  border:1px solid var(--stroke);
  background:#fff;
}
.brand__mark{
  width:34px;height:34px;border-radius:10px;
  display:grid;place-items:center;
  background: linear-gradient(135deg, rgba(24,182,166,.95), rgba(91,124,255,.95));
  font-weight:800;color:#061016;
}
.brand__name{font-weight:800;letter-spacing:.2px}
.brand__tag{
  font-size:12px;color:var(--muted);
  border:1px solid var(--stroke);
  padding:4px 8px;border-radius:999px;
}

.nav{display:flex;align-items:center;gap:14px}
.nav__link{color:var(--muted);font-weight:600}
.nav__link:hover{color:var(--txt);text-decoration:none}

main{flex:1;padding:28px 0 40px}

.footer{border-top:1px solid var(--stroke);padding:18px 0;color:var(--muted)}
.footer__inner{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer__links{display:flex;gap:14px;flex-wrap:wrap}
.footer__links a:hover{color:var(--txt);text-decoration:none}
.muted{color:var(--muted)}
.strong{font-weight:700}
.small{font-size:13px}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:10px;
  padding:12px 16px;
  border-radius:14px;
  border:1px solid var(--stroke);
  background: transparent;
  color:var(--txt);
  font-weight:700;
  cursor:pointer;
  transition: transform .06s ease, background .12s ease, border-color .12s ease;
}
.btn:active{transform: translateY(1px)}
.btn--sm{padding:9px 12px;border-radius:12px;font-size:13px}
.btn--primary{
  background: linear-gradient(135deg, rgba(24,182,166,.95), rgba(91,124,255,.95));
  border-color: transparent;
  color:#061016;
  box-shadow: 0 14px 40px rgba(24,182,166,.18);
}
.btn--primary:hover{text-decoration:none;filter:brightness(1.03)}
.btn--ghost{background:rgba(255,255,255,.03)}
.btn--ghost:hover{text-decoration:none;background:rgba(255,255,255,.06)}
.btn--outline{
  border-color: rgba(91,124,255,.45);
  background: rgba(91,124,255,.08);
}
.btn--outline:hover{text-decoration:none;background: rgba(91,124,255,.12)}
.btn--danger{
  border-color: rgba(225,29,72,.35);
  background: rgba(225,29,72,.10);
  color: rgba(120, 16, 38, .98);
}
.btn--danger:hover{text-decoration:none;background: rgba(225,29,72,.14)}

.card{
  background: var(--card);
  border:1px solid var(--stroke);
  border-radius: var(--r);
  box-shadow: var(--shadow);
  padding:18px;
}

/* Card modifiers + structure helpers (used across templates) */
.card--soft{background:rgba(255,255,255,.60);border-color:rgba(18,24,38,.08);box-shadow:none}
.card--dark{background:#0B1220;border-color:#1F2A44;color:#E8EEF9;box-shadow:none}
.card__hd{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.card__title{margin:0;font-size:15px;font-weight:800;color:var(--txt)}
.card__meta{font-size:13px;color:var(--muted)}
.card--glass{
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
}

.pill{
  display:inline-flex;align-items:center;
  padding:6px 10px;border-radius:999px;
  border:1px solid var(--stroke);
  color:var(--muted);
  font-weight:700;
  font-size:12px;
}
.pill--soft{background:rgba(255,255,255,.55);border-color:rgba(18,24,38,.08);color:var(--muted)}
.pill--ok{border-color:rgba(45,226,197,.35);color:#bff8ef}
.pill--pending{border-color:rgba(255,255,255,.16);color:#fff}
.pill--bad{border-color:rgba(255,97,113,.35);color:#ffd5d9}

.alert{padding:10px 12px;border-radius:14px;border:1px solid var(--stroke);margin:10px 0}
.alert--err{border-color:rgba(255,97,113,.35);background:rgba(255,97,113,.08)}

.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center;margin-top:10px}
.hero h1{font-size:44px;line-height:1.07;margin:12px 0 10px}
.lead{font-size:18px;line-height:1.55;margin:0 0 16px}
.grad{
  background: linear-gradient(135deg, rgba(45,226,197,1), rgba(91,124,255,1));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero__cta{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 18px}
.hero__badges{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 0}
.hero__badges .pill{background:rgba(255,255,255,.70)}
.hero__forwho{margin:10px 0 0;max-width:60ch}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}

/* Hero – zentriert (Startseite) */
.hero--center{grid-template-columns:1fr;text-align:center}
.hero--center .hero__cta{justify-content:center}
.hero--center .lead{margin-left:auto;margin-right:auto;max-width:820px}
.stats--three{grid-template-columns:repeat(3,1fr)}
@media (max-width: 720px){
  .stats--three{grid-template-columns:1fr}
}

/* Page Header zentriert */
.pagehd--center{justify-content:center;text-align:center}
.pagehd--center .pagehd__actions{justify-content:center}

/* 2-Spalten Layout für Aktive/Abgeschlossene Projekte */
.cards--two{grid-template-columns:1fr 1fr;gap:18px}
@media (max-width: 980px){
  .cards--two{grid-template-columns:1fr}
}

/* So geht’s – Beispiele */
.lf-examples{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lf-example{border:1px solid var(--stroke);border-radius:14px;padding:12px;background:rgba(255,255,255,.03)}
.lf-example__title{font-weight:800;margin-top:8px}
@media (max-width: 720px){
  .lf-examples{grid-template-columns:1fr}
}
.lf-mini__row{display:flex;flex-direction:column;gap:4px;padding:10px 0;border-bottom:1px solid var(--stroke)}
.lf-mini__row:last-child{border-bottom:none}

.stat{background:rgba(255,255,255,.04);border:1px solid var(--stroke);border-radius:14px;padding:10px}
.stat__k{font-size:12px;color:var(--muted);font-weight:700}
.stat__v{font-size:13px;font-weight:800}

.mock{padding:12px;border-radius:14px;border:1px solid var(--stroke);background:rgba(0,0,0,.18)}
.mock__row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}
.mock__line{height:1px;background:rgba(255,255,255,.08);margin:12px 0}
.chip{font-size:12px;font-weight:800;padding:6px 10px;border-radius:999px;background:rgba(24,182,166,.12);border:1px solid rgba(24,182,166,.25)}
.chip--muted{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.10);color:var(--muted);font-weight:700}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.feature{background:rgba(255,255,255,.04);border:1px solid var(--stroke);border-radius:16px;padding:16px}
.feature .icon{font-size:20px}
.feature h3{margin:10px 0 6px;font-size:16px}
.feature p{margin:0;color:var(--muted);line-height:1.5}

.pagehd{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:6px 0 14px}
.pagehd h1{font-size:28px;margin:0 0 4px}
.pagehd__actions{display:flex;gap:10px;flex-wrap:wrap}

.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.search{display:flex;align-items:center;gap:10px;flex:1}
.search input{flex:1;min-width:220px}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.event{display:block}
.event__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.event__title{font-size:16px;font-weight:800}
.badge{
  font-size:12px;font-weight:800;
  padding:6px 10px;border-radius:999px;
  background:rgba(91,124,255,.12);border:1px solid rgba(91,124,255,.25);
  color:#cdd7ff;
}
.event__meta{display:flex;justify-content:space-between;margin-top:10px}
.event__bottom{display:flex;align-items:center;justify-content:space-between;margin-top:14px}

.form label{display:grid;gap:8px;color:var(--muted);font-size:13px;font-weight:600}
input, select{
  border:1px solid var(--stroke);
  border-radius:14px;
  padding:12px 12px;
  background: rgba(0,0,0,.18);
  color: var(--txt);
  outline:none;
}
input::placeholder{color:rgba(167,176,208,.65)}
input:focus,select:focus{border-color:rgba(24,182,166,.45)}

.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.row{display:flex;align-items:center;gap:10px}
.gap{gap:10px}
.between{justify-content:space-between}

.crumbs{color:var(--muted);font-size:13px;margin-bottom:6px}
.crumbs span{opacity:.8}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--txt);text-decoration:none}

.split{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}

.copyrow{display:flex;align-items:center;gap:10px;margin-top:10px}
code{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size:12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid var(--stroke);
  background: rgba(0,0,0,.18);
  color: #dbe5ff;
  display:block;
  overflow:auto;
}
.qr{margin-top:12px}
.qr__box{
  border-radius:16px;
  border:1px dashed rgba(255,255,255,.18);
  background: rgba(255,255,255,.03);
  padding:18px;
  text-align:center;
  color: var(--muted);
  font-weight:800;
}

.upload{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px}
.upload input[type=file]{padding:10px;background:rgba(0,0,0,.18)}

.list{margin-top:12px;display:grid;gap:10px}
.list__item{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px;border-radius:14px;border:1px solid var(--stroke);
  background: rgba(255,255,255,.03);
}
.list__item:hover{text-decoration:none;background:rgba(255,255,255,.05)}
.list__name{font-weight:800}

.table{margin-top:10px}
.trow{
  display:grid;
  grid-template-columns: 1.2fr 1.3fr .7fr 1.2fr 1.2fr;
  gap:10px;
  padding:12px 10px;
  border-top:1px solid rgba(255,255,255,.08);
  align-items:center;
}
.thead{border-top:none;color:var(--muted);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.trow .row{flex-wrap:wrap}

.public{display:flex;justify-content:center}
.public__card{max-width:560px;width:100%}
.is-hidden{display:none !important}

.public__title{margin:10px 0 6px}
.public__meta{margin:0}
.public__notice{margin-top:12px}
.public__form{margin-top:10px}
.public__hint{margin-top:10px}

/* --- Kiosk screen (public, tablet-first) --- */
.kiosk{width:min(1060px, 100%)}
.kiosk__top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.kiosk__hint{
  color:var(--muted);
  font-weight:800;
  letter-spacing:.02em;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.04);
}
.kiosk h1{margin:12px 0 6px;font-size:44px;line-height:1.02;letter-spacing:-.02em}
.kiosk__sub{margin:0}
.kiosk__steps{
  display:flex;gap:10px;flex-wrap:wrap;
  list-style:none;padding:0;margin:14px 0 0;
}
.kiosk__steps li{
  display:flex;gap:10px;align-items:center;
  padding:10px 12px;border-radius:16px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.04);
  font-weight:800;
}
.kiosk__stepNo{
  width:28px;height:28px;border-radius:12px;
  display:inline-grid;place-items:center;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.22);
}
.kiosk__grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:14px;
  margin-top:14px;
  align-items:start;
}
.kiosk__qr{padding:16px}
.kiosk__linkLabel{margin-top:10px}
.kiosk__copyRow{justify-content:center;margin-top:10px}
.kiosk__projectTitle{margin-top:6px}
.kiosk__projectMeta{margin-top:6px}
.kiosk__notice{margin-top:12px}
.kiosk__img{
  width:100%;
  height:auto;
  margin-top:10px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  padding:10px;
}
.kiosk__fallback{
  margin-top:10px;
  border-radius:16px;
  border:1px solid rgba(255,214,182,.28);
  background: rgba(255,214,182,.12);
  padding:12px;
}
.kiosk__actions{margin-top:14px;display:grid;gap:10px}
.kiosk__actions .btn{padding:14px 16px;font-size:16px;font-weight:900;border-radius:16px}

@media (max-width: 980px){
  .kiosk__grid{grid-template-columns:1fr}
  .kiosk h1{font-size:40px}
}
@media (max-width: 640px){
  .kiosk h1{font-size:34px}
}
.notice{
  background: rgba(91,124,255,.08);
  border: 1px solid rgba(91,124,255,.25);
  border-radius: 16px;
  padding: 12px;
  margin: 12px 0;
}
.notice__title{font-weight:900;margin-bottom:4px}

.fieldset{
  border:1px solid var(--stroke);
  border-radius:16px;
  padding:12px;margin:10px 0;
}
.fieldset legend{color:var(--muted);font-size:12px;font-weight:800;padding:0 6px}
.check{display:flex;align-items:center;gap:10px;color:var(--txt);margin:8px 0}
.check input{width:18px;height:18px}

.signbox{
  border:1px solid var(--stroke);
  border-radius:16px;
  background: rgba(0,0,0,.18);
  padding:14px;
}
.signbox__row{display:flex;justify-content:space-between;gap:10px;margin:10px 0}

.auth{display:flex;justify-content:center}
.auth__card{max-width:420px;width:100%}

.drop--active{outline:2px solid rgba(24,182,166,.35)}

@media (max-width: 980px){
  .hero{grid-template-columns:1fr}
  .cards{grid-template-columns:repeat(2,1fr)}
  .grid3{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .trow{grid-template-columns: 1.2fr 1.2fr .7fr 1.2fr; }
  .trow > div:nth-child(5){grid-column:1/-1}
}
@media (max-width: 640px){
  .cards{grid-template-columns:1fr}
  .hero h1{font-size:36px}
}




/* Inaktivitäts-Modal */
.lf-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.55);z-index:9999;padding:18px}
.lf-modal.is-open{display:flex}
.lf-modal__panel{max-width:520px;width:100%;background:rgba(10,18,34,.95);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px}
.lf-modal__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:12px}

/* --- Tooltips (clean, minimal) --- */
[data-tooltip]{position:relative}
[data-tooltip]::after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:calc(100% + 10px);
  transform:translateX(-50%) translateY(4px);
  background:rgba(10,18,34,.95);
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  padding:8px 10px;
  font-size:12px;
  line-height:1.3;
  width:max-content;
  max-width:260px;
  opacity:0;
  pointer-events:none;
  transition:opacity .15s ease, transform .15s ease;
  z-index:9998;
}
[data-tooltip]::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:calc(100% + 4px);
  transform:translateX(-50%);
  border:6px solid transparent;
  border-top-color:rgba(10,18,34,.95);
  opacity:0;
  transition:opacity .15s ease;
  pointer-events:none;
  z-index:9998;
}
[data-tooltip]:hover::after,[data-tooltip]:hover::before{opacity:1;transform:translateX(-50%) translateY(0)}

/* --- „So geht's“ Floating Help --- */
.lf-fab{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9997;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--brand),#0fb8c9);
  color:#fff;
  font-weight:800;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 16px 40px rgba(0,0,0,.25);
  cursor:pointer;
}
.lf-fab:hover{filter:brightness(.98)}
.lf-fab__icon{width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-weight:900}

.lf-drawer{
  position:fixed;
  right:18px;
  bottom:78px;
  width:min(420px, calc(100vw - 36px));
  max-height:min(520px, calc(100vh - 120px));
  background:rgba(255,255,255,.98);
  border:1px solid rgba(0,0,0,.08);
  border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.22);
  overflow:hidden;
  display:none;
}
.lf-drawer.is-open{display:block}
.lf-drawer__hd{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 14px 10px;background:linear-gradient(180deg,#f7fbff, #fff)}
.lf-drawer__title{font-weight:900}
.lf-drawer__sub{font-size:12px;color:var(--muted);margin-top:2px}
.lf-drawer__close{border:none;background:transparent;font-size:20px;line-height:1;padding:6px 10px;border-radius:10px;cursor:pointer}
.lf-drawer__close:hover{background:rgba(0,0,0,.06)}
.lf-drawer__tabs{display:flex;gap:8px;padding:0 14px 12px;border-bottom:1px solid rgba(0,0,0,.06)}
.lf-tab{font-weight:800;font-size:12px;padding:8px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.08);background:#fff;cursor:pointer}
.lf-tab.is-active{background:rgba(14,165,160,.12);border-color:rgba(14,165,160,.35)}
.lf-drawer__body{padding:12px 14px 14px;overflow:auto;max-height:420px}
.lf-steps{display:grid;gap:10px;margin:0}
.lf-step{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}
.lf-step b{display:block;color:var(--ink)}
.lf-step span{font-size:13px;color:var(--muted)}
.lf-kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;background:rgba(0,0,0,.06);padding:2px 6px;border-radius:6px}

@media (max-width: 640px){
  .lf-fab{right:14px;bottom:14px}
  .lf-drawer{right:14px}
}


/* V3.3 additions */
.eventcard__hd{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.eventcard__title{font-weight:700;font-size:16px;margin-bottom:2px}
.eventcard__link{color:inherit;text-decoration:none}
.eventcard__link:hover{text-decoration:underline}
.iconform{margin:0}
.iconbtn{
  width:34px;height:34px;border-radius:10px;border:1px solid var(--border);
  background:#fff;cursor:pointer;font-size:18px;line-height:1;
  display:flex;align-items:center;justify-content:center;
}
.iconbtn:hover{background:rgba(14,165,160,0.08);border-color:rgba(14,165,160,0.35)}
.chip--good{background:rgba(14,165,160,0.12);border-color:rgba(14,165,160,0.25);color:#0B3B5E}

/* Segmented filter */
.segment{display:flex;gap:6px;align-items:center}
.segment .segbtn{
  border:1px solid var(--border);background:#fff;border-radius:10px;padding:8px 10px;
  font-weight:600;font-size:14px;color:var(--text);cursor:pointer;
}
.segment .segbtn.is-active{border-color:rgba(14,165,160,0.45);background:rgba(14,165,160,0.08)}
.segment input{display:none}

/* Home columns headings tighter */
.cards__colhd h3{margin:0}

.lf-three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width: 980px){.lf-three{grid-template-columns:1fr}}

/* ---- Requested missing classes + UX polish (V3.4.x) ---- */

.card__hd{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}
.card__title{font-weight:800;font-size:16px;line-height:1.15;margin:0}
.card__meta{font-size:13px;color:var(--muted);margin:0}

.eventcard__left{display:flex;flex-direction:column;gap:6px}
.eventcard__right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.eventcard__bd{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.eventcard__actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.chips{display:flex;gap:6px;align-items:center;flex-wrap:wrap}

/* Tabs used in help drawer */
.lf-tabs{display:flex;gap:8px;align-items:center;margin:0 0 10px 0;flex-wrap:wrap}
.lf-tabs .lf-tab{border:1px solid var(--border);background:#fff;border-radius:10px;padding:8px 10px;font-weight:700;font-size:13px;cursor:pointer;color:var(--text)}
.lf-tabs .lf-tab.is-active{border-color:rgba(14,165,160,0.45);background:rgba(14,165,160,0.10)}
.lf-tabpanes{margin-top:10px}
.lf-pane{display:none}
.lf-pane.is-active{display:block}
.lf-tip{margin-top:12px;padding:12px;border-radius:12px;border:1px dashed rgba(18,24,38,.18);background:rgba(255,255,255,.55)}

/* Navigation: active state */
.nav__link.is-active{color:var(--brand);position:relative}
.nav__link.is-active::after{content:"";position:absolute;left:10px;right:10px;bottom:-8px;height:2px;border-radius:2px;background:rgba(14,165,160,.45)}

/* Layout rhythm + readability */
.container{max-width:1180px}
.lead, .pagelead{max-width:62ch}
.section{margin-top:18px}

/* Search/filter bar as clear block */
.toolbar{gap:10px}
.toolbar.card{padding:14px}

/* Status badge */
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(18,24,38,.12);background:rgba(255,255,255,.55);font-weight:700;font-size:12px;color:var(--muted)}
.badge--active{border-color:rgba(14,165,160,.25);background:rgba(14,165,160,.08);color:var(--ink)}
.badge--closed{border-color:rgba(27,78,140,.20);background:rgba(27,78,140,.08);color:var(--ink)}

/* Mobile: full width buttons and breathing room */
@media (max-width: 640px){
  .btn{width:100%}
  .eventcard__bd{gap:12px}
  .cards{gap:12px}
  .section{margin-top:16px}
}
/* 2-Spalten Layout für Aktive/Abgeschlossene Projekte */
.cards--two{grid-template-columns:1fr 1fr;gap:18px;max-width:1000px;margin:0 auto}

.check--strong{font-weight:700}

.signbox--wide{display:grid;gap:6px}
.signbox__actions{display:grid;gap:12px;margin-top:10px}

/* Segmented filter */
.segment .segbtn.is-active,
.segment .segbtn:has(input:checked){border-color:rgba(14,165,160,0.45);background:rgba(14,165,160,0.08)}

.toolbar--stack{flex-direction:column;align-items:stretch}
.toolbar--stack .search{width:100%}
.toolbar__hint{text-align:left}

/* Choice tiles */
.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.choice-grid--two{grid-template-columns:repeat(2,1fr)}
.choice-card{
  position:relative;
  border:1px solid var(--stroke);
  border-radius:14px;
  padding:12px;
  background:rgba(255,255,255,.55);
  display:flex;
  gap:10px;
  cursor:pointer;
  min-height:90px;
}
.choice-card input{margin-top:2px}
.choice-card__title{font-weight:800}
.choice-card:has(input:checked){border-color:rgba(14,165,160,0.35);box-shadow:0 0 0 1px rgba(14,165,160,0.08)}
@media (max-width: 980px){
  .choice-grid{grid-template-columns:1fr}
  .choice-grid--two{grid-template-columns:1fr}
}

/* Why LegitForm */
.why{max-width:960px;margin:0 auto;text-align:center;display:grid;gap:16px}
.why__intro p{margin:0}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.benefit-card{
  border:1px solid rgba(18,24,38,.08);
  border-radius:16px;
  padding:16px;
  background:rgba(255,255,255,.8);
  text-align:left;
}
.benefit-card__icon{font-size:22px}
.benefit-card__title{font-weight:800;margin-top:8px}
.benefit-card__text{color:var(--muted);font-size:14px;line-height:1.5;margin-top:6px}
@media (max-width: 980px){
  .benefit-grid{grid-template-columns:1fr}
  .benefit-card{text-align:center}
}

/* Share card */
.share{display:grid;grid-template-columns:1.4fr .6fr;gap:18px;align-items:center}
.share__link{display:grid;gap:8px;margin-top:10px}
.share__modes{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 6px}
.share__qr{display:grid;gap:8px;justify-items:center}
.share__qr img{border-radius:16px;border:1px solid rgba(18,24,38,.08);background:#fff;padding:10px}
.share__note{margin-top:8px}
@media (max-width: 980px){
  .share{grid-template-columns:1fr}
}

/* Public consent flow */
.public__grid{display:grid;grid-template-columns:1.1fr 1.4fr;gap:16px;margin-top:16px}
.public__summary{padding:16px}
.public__steps{margin:8px 0 12px 18px;color:var(--muted);line-height:1.6}
.public__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.public__meta .strong{font-size:13px}
@media (max-width: 980px){
  .public__grid{grid-template-columns:1fr}
  .public__meta{grid-template-columns:1fr}
}


/* v3_7 UI polish */
.hero--landing{padding-top:34px}
.hero--landing{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:center}
.hero__img{max-width:100%;border-radius:18px;border:1px solid rgba(18,24,38,.08);background:#fff}
@media (max-width: 980px){.hero--landing{grid-template-columns:1fr}}

.section{margin-top:22px}
.section--narrow{max-width:1100px;margin:22px auto 0;padding:0 18px}
.section__hd{max-width:760px;margin:0 auto 14px;text-align:center}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.step{display:flex;gap:12px;align-items:flex-start;padding:14px}
.step__n{font-weight:900;border:1px solid var(--stroke);border-radius:12px;width:34px;height:34px;display:grid;place-items:center;background:rgba(255,255,255,.8)}
@media (max-width:980px){.steps{grid-template-columns:1fr}}

/* Pricing (legacy block; keep consistent with current centered layout) */
.pricing{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 420px));
  justify-content:center;
  gap:18px;
  max-width:1100px;
  margin:14px auto 0;
}
.price{position:relative;padding:16px}
.price__badge{position:absolute;top:12px;right:12px;font-size:12px;padding:6px 10px;border-radius:999px;background:rgba(14,165,160,.12);border:1px solid rgba(14,165,160,.25)}
.price__name{font-weight:900}
.price__value{font-size:26px;font-weight:900;margin-top:6px}
.price__list{margin:10px 0 0 18px;color:var(--muted);line-height:1.6}
@media (max-width:980px){.pricing{grid-template-columns:1fr}}

/* Help FAB */
.help-fab{
  position:fixed;right:18px;bottom:18px;z-index:50;
  border:1px solid rgba(18,24,38,.12);border-radius:999px;
  padding:10px 14px;background:rgba(255,255,255,.92);
  box-shadow:0 10px 30px rgba(18,24,38,.10);
  font-weight:800;
}
.help-modal{position:fixed;inset:0;background:rgba(0,0,0,.35);display:none;z-index:60}
.help-modal.is-open{display:block}
.help-modal__panel{max-width:560px;margin:8vh auto 0;padding:14px}
.help-steps{display:grid;gap:10px;margin-top:10px}
.help-step{display:flex;gap:10px;align-items:flex-start}
.help-n{width:26px;height:26px;border-radius:9px;border:1px solid var(--stroke);display:grid;place-items:center;font-weight:900;background:rgba(255,255,255,.8)}


/* v3_7.1 Landing improvements */
.hero--landing{padding-top:34px;padding-bottom:18px}
.hero__art{display:grid;place-items:center}
.hero__img{max-width:100%;height:auto;border-radius:18px;filter:drop-shadow(0 18px 30px rgba(18,24,38,.12))}
.section{margin-top:26px}
.section--narrow{max-width:1100px;margin:26px auto 0}
.section__hd{max-width:820px;margin:0 auto 16px;text-align:center}
.section--tint{background:rgba(14,165,160,0.06);border:1px solid rgba(14,165,160,0.10);border-radius:22px;padding:18px}
.section--tint .grid3{margin-top:14px}

.steps--big{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.steps--big .step{padding:18px;display:grid;gap:10px}
.step__icon{font-size:26px}
.step__title{font-weight:900;font-size:16px}
@media (max-width: 980px){
  .section--tint{padding:14px}
  .steps--big{grid-template-columns:1fr}
}

.pricing--spaced{gap:16px;margin-top:16px}
.price{padding:18px}


/* ===== Landing v3_7_3 (professional + calm) ===== */
.hero--landing{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;padding-top:34px}
@media (max-width:980px){.hero--landing{grid-template-columns:1fr}}

.hero-illustration{display:grid;justify-items:center;gap:10px}
.hero-illustration img{max-width:100%;height:auto;border-radius:18px;background:transparent}
.hero-illustration__caption{font-size:13px;color:var(--muted)}

.proof-strip{margin-top:14px;border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:12px 14px;background:rgba(255,255,255,.75)}
.proof-strip__title{font-weight:800;margin-bottom:6px}
.proof-strip__list{margin:0;padding-left:18px;color:var(--muted);line-height:1.6}

.section--spaced{margin-top:34px}
.section--soft{background:rgba(14,165,160,0.04);border-top:1px solid rgba(18,24,38,.06);border-bottom:1px solid rgba(18,24,38,.06);padding:26px 0}
.section__hd{max-width:820px;margin:0 auto 14px;text-align:center}
.section__hd .muted{margin:8px auto 0;max-width:760px}

.card-grid{display:grid;gap:12px;max-width:1100px;margin:0 auto}
.card-grid--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.card-grid--3{grid-template-columns:1fr}}

.story{max-width:980px;margin:0 auto;display:grid;gap:14px}
.legal-hint{border-left:3px solid rgba(14,165,160,.35);padding-left:12px}

.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:1100px;margin:0 auto}
@media (max-width:980px){.flow{grid-template-columns:1fr}}
.flow__item{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:16px;background:rgba(255,255,255,.85)}
.flow__kicker{font-weight:900;width:34px;height:34px;border-radius:12px;border:1px solid rgba(18,24,38,.12);display:grid;place-items:center;margin-bottom:8px;background:rgba(255,255,255,.9)}

.pricing--stack{margin-top:12px;gap:14px}
.price-card{padding:16px}
.price-card__top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.price{font-weight:900;font-size:22px}
.price-card__list{margin:10px 0 0 18px;color:var(--muted);line-height:1.7}
.price-card--highlight{border:1px solid rgba(14,165,160,.35);box-shadow:0 0 0 1px rgba(14,165,160,.08)}
.price-card__badge{display:inline-block;font-size:12px;padding:6px 10px;border-radius:999px;background:rgba(14,165,160,.12);border:1px solid rgba(14,165,160,.25);margin-bottom:10px}

/* Checklist */
.checklist{max-width:820px;margin:14px auto 0;padding-left:18px;color:var(--muted);line-height:1.7}


/* ===== Landing v3_7_4 polish ===== */
.proof-strip{margin-top:18px;padding:10px 12px;max-width:520px}
.proof-strip__title{font-size:13px}
.proof-strip__list{font-size:13px}
.hero__cta{margin-top:14px}
.trust-note{margin-top:10px}
.hero-illustration{position:relative}
.hero-illustration img{border-radius:18px}
.hero-illustration__tag{
  position:absolute;
  right:14px;
  bottom:14px;
  font-size:12px;
  color:var(--muted);
  background:rgba(255,255,255,.82);
  border:1px solid rgba(18,24,38,.08);
  border-radius:999px;
  padding:6px 10px;
}

.section--spaced{margin-top:44px}
.section__hd{margin-bottom:18px}
.story__copy{max-width:900px;margin:0 auto}
.card-grid{gap:14px}
.flow{gap:14px;margin-top:14px}
.flow__item{padding:18px}
.price-card{padding:18px}
.price-card__list{margin-top:12px}


/* ===== Landing FINAL (v3_8) ===== */
.hero--landing{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center;padding:36px 0}
@media (max-width:980px){.hero--landing{grid-template-columns:1fr;gap:18px;padding:28px 0}}

.hero--alt{background:#f6f8fa}

/* Landing: “Kurz in Zahlen” trust row (premium, warm) */
.hero-proofline{
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
  width:100%;
  max-width:none;
  justify-content:center;
}
.hero-proofline__num{
  font-weight:900;
  letter-spacing:-.02em;
  font-size:28px;
  color: rgba(15,23,42,.92);
  line-height:1.05;
}
.hero-proofline__plus{opacity:.6;margin-left:2px}
.hero-proofline__label{
  font-size:13px;
  font-weight:800;
  color: rgba(15,23,42,.70);
}
.hero-proofline__sub{
  font-size:13px;
  font-weight:800;
  color: rgba(15,23,42,.62);
}
@media (max-width:520px){
  .hero-proofline__num{font-size:24px}
}

.hero-metrics{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
  margin-top:12px;
  max-width:560px;
}
.hero-metrics--proof{
  grid-template-columns:1fr;
  max-width:520px;
}
.metric{
  border:1px solid rgba(18,24,38,.08);
  border-radius:16px;
  padding:12px 12px;
  background:
    radial-gradient(520px 200px at 20% 0%, rgba(255,214,182,.28), transparent 60%),
    rgba(255,255,255,.70);
  box-shadow: 0 14px 34px rgba(11,59,94,.08);
}
.metric--proof{
  padding:14px 14px;
  border-radius:18px;
  background:
    radial-gradient(520px 240px at 18% 0%, rgba(255,214,182,.34), transparent 62%),
    radial-gradient(520px 240px at 82% 0%, rgba(24,182,166,.16), transparent 62%),
    rgba(255,255,255,.86);
  text-align:center;
  display:grid;
  justify-items:center;
}
.metric__live{
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(14,165,160,.26);
  background:rgba(14,165,160,.10);
  color:rgba(9,108,104,.92);
}
.metric__v{
  font-weight:900;
  letter-spacing:-.02em;
  font-size:18px;
  color: rgba(15,23,42,.92);
  line-height:1.1;
}
.metric--proof .metric__v{font-size:44px;margin-top:10px}
.metric__plus{opacity:.6;margin-left:2px}
.metric--proof .metric__k{margin-top:8px}
.metric__sub{margin-top:6px;font-size:13px;font-weight:800;color:rgba(15,23,42,.62);line-height:1.35}
.metric__k{
  margin-top:4px;
  font-size:12px;
  font-weight:800;
  color: rgba(15,23,42,.66);
}
@media (max-width: 520px){
  .hero-metrics{grid-template-columns:1fr;max-width:100%}
}
.section--alt{background:#fafbfc;border-top:1px solid rgba(18,24,38,.06);border-bottom:1px solid rgba(18,24,38,.06)}
.section{padding:38px 0}
.section__hd{max-width:900px;margin:0 auto 18px;text-align:center}
.section__body{max-width:1100px;margin:0 auto}

.hero__image{max-width:420px;width:100%;height:auto;border-radius:18px}
.hero__reason{font-weight:650;margin:12px 0 8px;max-width:720px}

.hero__cta{display:grid;gap:8px;margin-top:14px;max-width:420px}
.trust-note{margin-top:12px}

/* Landing: scanbare Bullets unter dem Hero-Lead (Fly-like, aber warm) */
.hero-bullets{
  list-style:none;
  padding:0;
  margin:0 0 14px;
  display:grid;
  gap:8px;
  max-width:56ch;
}
.hero-bullets li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:rgba(15,23,42,.84);
  line-height:1.55;
  font-weight:650;
}
.hero-bullets__ico{width:20px;flex:0 0 20px}

.proof-strip{
  margin-top:18px;
  padding:10px 12px;
  font-size:13px;
  background:#fff;
  border:1px solid rgba(18,24,38,.10);
  border-radius:12px;
  max-width:520px;
}
.xsmall{font-size:12px}

.copy{max-width:980px;margin:0 auto 14px;color:rgba(18,24,38,.86);line-height:1.65}

.card-grid{display:grid;gap:14px;max-width:1100px;margin:0 auto}
.card-grid--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.card-grid--3{grid-template-columns:1fr}}

.card{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:18px;background:rgba(255,255,255,.9)}
.card h3{margin:0 0 6px}

.legal-note{
  margin:18px auto 0;
  max-width:980px;
  font-size:13px;
  color:var(--muted);
  border-left:3px solid rgba(18,24,38,.14);
  padding-left:12px;
}

.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1100px;margin:0 auto}
@media (max-width:980px){.flow{grid-template-columns:1fr}}
.flow__item{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:18px;background:rgba(255,255,255,.9)}
.flow__item--focus{border:1px solid rgba(14,165,160,.35);box-shadow:0 0 0 1px rgba(14,165,160,.08)}
.flow__num{font-weight:900;width:34px;height:34px;border-radius:12px;border:1px solid rgba(18,24,38,.12);display:grid;place-items:center;margin-bottom:10px;background:rgba(255,255,255,.95)}

.pricing{
  display:grid;
  /* Center 2 cards nicely (Pro/Team), but still works if we add a 3rd later */
  grid-template-columns: repeat(auto-fit, minmax(320px, 420px));
  justify-content:center;
  gap:18px;
  max-width:1100px;
  margin:0 auto;
}
@media (max-width:980px){.pricing{grid-template-columns:1fr;justify-content:stretch}}
.price-card{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:20px;background:rgba(255,255,255,.95);width:100%}
.price-card--primary{border:1px solid rgba(14,165,160,.35);box-shadow:0 0 0 1px rgba(14,165,160,.08)}
.price{font-weight:900;font-size:22px;margin:6px 0 8px}
.badge{display:inline-block;font-size:12px;padding:6px 10px;border-radius:999px;background:rgba(14,165,160,.12);border:1px solid rgba(14,165,160,.22);margin-bottom:10px}


/* ===== Landing SIP v3.9 ===== */
.hero--alt{background:#f6f8fa}
.section{padding:38px 0}
.section--alt{background:#fafbfc;border-top:1px solid rgba(18,24,38,.06);border-bottom:1px solid rgba(18,24,38,.06)}
.section__kicker{margin-bottom:10px}

/* FAQ (Landing) */
#faq .faq{display:grid;gap:10px;max-width:980px;margin:0 auto}
.faq__item{
  border:1px solid rgba(18,24,38,.10);
  border-radius:16px;
  background:rgba(255,255,255,.92);
  box-shadow: 0 12px 34px rgba(11,59,94,.08);
  overflow:hidden;
}
.faq__q{
  list-style:none;
  cursor:pointer;
  padding:14px 14px;
  font-weight:900;
  color:rgba(18,24,38,.92);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.faq__q::-webkit-details-marker{display:none}
.faq__q::after{
  content:"+";
  font-weight:900;
  color:rgba(18,24,38,.55);
  border:1px solid rgba(18,24,38,.10);
  width:26px;height:26px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.75);
}
.faq__item[open] .faq__q::after{content:"–"}
.faq__a{
  padding:0 14px 14px;
  border-top:1px solid rgba(18,24,38,.08);
}
.faq__a .copy{margin:12px 0 8px}
.section__hd{max-width:900px;margin:0 auto 18px;text-align:center}
.section__body{max-width:1100px;margin:0 auto}

.hero--landing{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center;padding:36px 0}
@media (max-width:980px){.hero--landing{grid-template-columns:1fr;gap:18px;padding:28px 0}}

.hero__image{max-width:420px;width:100%;height:auto;border-radius:18px}
.hero__reason{font-weight:650;margin:12px 0 8px;max-width:760px}
.hero__cta{margin-top:14px}

.copy{max-width:980px;margin:0 auto 14px;color:rgba(18,24,38,.86);line-height:1.65}

.card-grid{display:grid;gap:14px;max-width:1100px;margin:0 auto}
.card-grid--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.card-grid--3{grid-template-columns:1fr}}
.card-grid--soft{background:#f3f5f7;padding:24px;border-radius:16px}

.card{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:18px;background:rgba(255,255,255,.9)}
.card h3{margin:0 0 6px}

.legal-note{
  margin:18px auto 0;
  max-width:980px;
  font-size:13px;
  color:var(--muted);
  border-left:3px solid rgba(18,24,38,.14);
  padding-left:12px;
}

.quote{
  max-width:820px;
  margin:14px auto;
  padding:14px 16px;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(18,24,38,.10);
  border-radius:14px;
  color:rgba(18,24,38,.88);
}

.h3{margin:18px auto 8px;max-width:980px}

.example-box{
  margin:16px auto 0;
  max-width:820px;
  padding:14px 16px;
  border:1px solid rgba(18,24,38,.12);
  border-radius:16px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
  box-shadow: 0 12px 30px rgba(11,59,94,.06);
  color: rgba(18,24,38,.88);
}
.example-box strong{color:rgba(18,24,38,.95)}
.example-box .small{display:inline-block;margin-top:6px}

/* Landing: Aha comparison (under IG chat) */
.aha{
  max-width:980px;
  margin:16px auto 0;
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  gap:12px;
  align-items:stretch;
}
.aha__card{
  border:1px solid rgba(18,24,38,.12);
  border-radius:18px;
  padding:14px 14px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 12px 30px rgba(11,59,94,.06);
}
.aha__card--good{
  background: linear-gradient(180deg, rgba(14,165,160,.08), rgba(91,124,255,.08));
  border-color: rgba(14,165,160,.22);
}
.aha__badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.70);
  font-weight:900;
  font-size:12px;
  color: rgba(18,24,38,.70);
}
.aha__badge--good{border-color:rgba(14,165,160,.22);color:rgba(14,165,160,.95)}
.aha__title{margin:10px 0 10px;font-weight:900;color:rgba(18,24,38,.92)}
.aha__row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.aha__meta{color:rgba(18,24,38,.60);font-size:13px;font-weight:700}
.aha__pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 10px;
  border-radius:999px;
  font-weight:900;
  font-size:12px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  color: rgba(18,24,38,.85);
}
.aha__pill--warn{
  border-color: rgba(234, 179, 8, .30);
  background: rgba(234, 179, 8, .10);
}
.aha__pill--ok{
  border-color: rgba(14,165,160,.28);
  background: rgba(14,165,160,.10);
}
.aha__arrow{
  width:42px;height:42px;
  border-radius:16px;
  display:grid;
  place-items:center;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  color: rgba(18,24,38,.55);
  font-weight:900;
}
@media (max-width: 980px){
  .aha{grid-template-columns:1fr;gap:10px}
  .aha__arrow{display:none}
}

/* Landing: Aha v2 (more visual, less texty) */
.aha2{max-width:980px;margin:16px auto 0}
.aha2__grid{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:12px;
  align-items:stretch;
}
.aha2__card{
  border:1px solid rgba(18,24,38,.12);
  border-radius:20px;
  padding:14px 14px;
  background: rgba(255,255,255,.90);
  box-shadow: 0 14px 34px rgba(11,59,94,.08);
}
.aha2__card--after{
  background: linear-gradient(180deg, rgba(14,165,160,.08), rgba(91,124,255,.08));
  border-color: rgba(14,165,160,.22);
}
.aha2__badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.70);
  font-weight:900;
  font-size:12px;
  color: rgba(18,24,38,.70);
}
.aha2__badge--good{border-color:rgba(14,165,160,.22);color:rgba(14,165,160,.95)}
.aha2__title{margin:10px 0 10px;font-weight:900;color:rgba(18,24,38,.92)}
.aha2__dm{
  border:1px solid rgba(18,24,38,.10);
  border-radius:16px;
  padding:12px;
  background: rgba(255,255,255,.75);
}
.aha2__bubble{
  display:inline-block;
  padding:10px 12px;
  border-radius:16px;
  font-weight:800;
  border:1px solid rgba(18,24,38,.10);
}
.aha2__bubble--out{
  float:right;
  background:linear-gradient(135deg, rgba(219,234,254,.95), rgba(233,213,255,.90));
  color:rgba(18,24,38,.92);
}
.aha2__dm::after{content:"";display:block;clear:both}
.aha2__list{
  margin:12px 0 0 18px;
  color:rgba(18,24,38,.72);
  line-height:1.6;
}
.aha2__proof{
  border:1px solid rgba(18,24,38,.10);
  border-radius:16px;
  padding:12px;
  background: rgba(255,255,255,.70);
}
.aha2__proofrow{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:8px 0;
  border-top:1px solid rgba(18,24,38,.08);
}
.aha2__proofrow:first-child{border-top:none;padding-top:0}
.aha2__value{font-weight:800;color:rgba(18,24,38,.80);font-size:13px}
.aha2__chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.aha2__chip{
  display:inline-flex;align-items:center;
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  font-weight:900;font-size:12px;
  color: rgba(18,24,38,.78);
}
.aha2__chip--ok{border-color:rgba(14,165,160,.22);background:rgba(14,165,160,.10)}
.aha2__arrow{
  width:42px;height:42px;
  border-radius:16px;
  display:grid;place-items:center;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  color: rgba(18,24,38,.55);
  font-weight:900;
  margin-top:38px;
}
.aha2__caption{margin-top:10px;text-align:center}
@media (max-width: 980px){
  .aha2__grid{grid-template-columns:1fr;gap:10px}
  .aha2__arrow{display:none}
  .aha2__caption{text-align:left}
}

/* Landing: Aha toggle (interactive) */
.ahaX{max-width:980px;margin:16px auto 0}
.ahaX__radio{position:absolute;opacity:0;pointer-events:none}
.ahaX__tabs{
  display:inline-flex;
  gap:8px;
  padding:6px;
  border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.70);
}
.ahaX__tab{
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  color: rgba(18,24,38,.75);
  font-weight:900;
  font-size:13px;
  padding:10px 14px;
  border-radius:999px;
  cursor:pointer;
  user-select:none;
}
#ahaBefore:checked ~ .ahaX__tabs label[for="ahaBefore"],
#ahaAfter:checked ~ .ahaX__tabs label[for="ahaAfter"]{
  border-color: rgba(14,165,160,.30);
  background: linear-gradient(135deg, rgba(14,165,160,.16), rgba(91,124,255,.14));
  color: rgba(18,24,38,.92);
}
.ahaX__stage{margin-top:12px;position:relative}
.ahaX__panel{display:none}
@keyframes ahaXIn{
  from{opacity:0;transform:translateY(10px) scale(.99)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
#ahaBefore:checked ~ .ahaX__stage .ahaX__panel--before,
#ahaAfter:checked ~ .ahaX__stage .ahaX__panel--after{
  display:block;
  animation: ahaXIn .18s ease;
}
.ahaX__card{
  border:1px solid rgba(18,24,38,.12);
  border-radius:22px;
  padding:14px 14px;
  background: rgba(255,255,255,.90);
  box-shadow: 0 16px 40px rgba(11,59,94,.10);
}
.ahaX__card--after{
  background: linear-gradient(180deg, rgba(14,165,160,.08), rgba(91,124,255,.08));
  border-color: rgba(14,165,160,.22);
}
.ahaX__cardTop{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ahaX__badge{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  font-weight:900;
  font-size:12px;
  color: rgba(18,24,38,.70);
}
.ahaX__badge--good{border-color:rgba(14,165,160,.22);color:rgba(14,165,160,.95)}
.ahaX__status{
  font-weight:900;
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  color: rgba(18,24,38,.70);
}
.ahaX__status--warn{border-color: rgba(234,179,8,.30); background: rgba(234,179,8,.10)}
.ahaX__status--ok{border-color: rgba(14,165,160,.22); background: rgba(14,165,160,.10); color: rgba(14,165,160,.95)}
.ahaX__ico{display:inline-flex;min-width:18px;justify-content:center}
.ahaX__bullets{margin-top:12px;display:grid;gap:10px}
.ahaX__bullet{
  display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;
  padding:10px 12px;
  border-radius:16px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.78);
  color: rgba(18,24,38,.78);
  font-weight:800;
}
.ahaX__bulletText{display:grid;gap:2px}
.ahaX__bulletTitle{font-weight:900;color:rgba(18,24,38,.86)}
.ahaX__bulletSub{font-weight:700;color:rgba(18,24,38,.62);font-size:13px;line-height:1.35}
.ahaX__bullet--warn{
  border-color: rgba(234,179,8,.22);
  background: rgba(234,179,8,.07);
}
.ahaX__proof{
  margin-top:12px;
  border:1px solid rgba(18,24,38,.10);
  border-radius:16px;
  padding:12px;
  background: rgba(255,255,255,.72);
}
.ahaX__proofTitle{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:900;
  color: rgba(18,24,38,.85);
  padding-bottom:10px;
  border-bottom:1px solid rgba(18,24,38,.08);
  margin-bottom:6px;
}
.ahaX__link{
  color: rgba(91,124,255,.95);
  font-weight:900;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.ahaX__link:hover{filter:brightness(0.95)}
.ahaX__row{
  display:flex;justify-content:space-between;gap:12px;
  padding:10px 0;border-top:1px solid rgba(18,24,38,.08);
  align-items:flex-start;
}
.ahaX__row:first-child{border-top:none;padding-top:0}
.ahaX__row span{color:rgba(18,24,38,.60);font-size:12px;font-weight:900}
.ahaX__row b{font-weight:900;color:rgba(18,24,38,.86);font-size:13px}
.ahaX__mono{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;}
.ahaX__chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.ahaX__chip{
  display:inline-flex;align-items:center;
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(18,24,38,.10);
  background: rgba(255,255,255,.75);
  font-weight:900;font-size:12px;
  color: rgba(18,24,38,.78);
}
.ahaX__chip--ok{border-color:rgba(14,165,160,.22);background:rgba(14,165,160,.10)}
.ahaX__aha{margin-top:10px}
/* no fixed heights -> prevents overlap into the next section */

.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1100px;margin:0 auto}
@media (max-width:980px){.flow{grid-template-columns:1fr}}
.flow__item{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:18px;background:rgba(255,255,255,.9)}
.flow__item--focus{border:1px solid rgba(14,165,160,.35);box-shadow:0 0 0 1px rgba(14,165,160,.08)}
.flow__num{font-weight:900;width:34px;height:34px;border-radius:12px;border:1px solid rgba(18,24,38,.12);display:grid;place-items:center;margin-bottom:10px;background:rgba(255,255,255,.95)}

/* Keep final override consistent (last definition wins) */
.pricing{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 420px));
  justify-content:center;
  gap:18px;
  max-width:1100px;
  margin:0 auto;
}
@media (max-width:980px){.pricing{grid-template-columns:1fr;justify-content:stretch}}
.price-card{border:1px solid rgba(18,24,38,.08);border-radius:16px;padding:20px;background:rgba(255,255,255,.95);width:100%}
.price-card--primary{
  border:1px solid rgba(14,165,160,.35);
  box-shadow:0 0 0 1px rgba(14,165,160,.08);
  background:rgba(14,165,160,.06); /* ~6% tint */
}
.price{font-weight:900;font-size:22px;margin:6px 0 8px}


/* v3.10 landing A-F */
.ig-chat{display:grid;gap:10px;max-width:560px;margin:14px auto 14px}
.ig-bubble{max-width:82%;padding:12px 14px;border-radius:18px;line-height:1.45;border:1px solid rgba(18,24,38,.10)}
.ig-bubble--in{justify-self:start;background:#f2f4f7;color:rgba(18,24,38,.92)}
.ig-bubble--out{justify-self:end;background:linear-gradient(135deg, rgba(219,234,254,.9), rgba(233,213,255,.85));color:rgba(18,24,38,.92)}
.ig__h3{max-width:980px;margin:16px auto 8px}

/* Landing polish: "Warum LegitForm" cards */
.why-grid .why-card{display:flex;flex-direction:column;gap:8px}
.why-card__lead{margin:0;color:rgba(18,24,38,.86)}
.why-card p{margin:0;color:var(--muted);line-height:1.55}
.why-card h3{margin:0 0 2px}

/* Landing polish: Instagram chat phone frame */
.ig-phone{
  max-width:560px;
  margin:14px auto;
  border-radius:22px;
  border:1px solid rgba(18,24,38,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.75));
  box-shadow: 0 18px 45px rgba(11,59,94,.10);
  overflow:hidden;
}
.ig-phone__top{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;
  border-bottom:1px solid rgba(18,24,38,.08);
  background: rgba(255,255,255,.75);
}
.ig-phone__title{font-weight:800;font-size:12px;letter-spacing:.06em;color:rgba(18,24,38,.70);text-transform:uppercase}
.ig-phone__dot{width:8px;height:8px;border-radius:999px;background:rgba(18,24,38,.18)}
.ig-phone .ig-chat{max-width:100%;margin:0;padding:14px}
.ig-phone .ig-bubble{border-color:rgba(18,24,38,.10)}

.ig-gap{height:18px}
.ig-gap--lg{height:30px}
.ig-phone--mini{max-width:100%;margin:0}
.ig-phone--mini .ig-chat{padding:12px}
.ig-phone--mini .ig-bubble{max-width:92%}
