
:root{
  --bg:#050814;--panel:#101831;--border:rgba(170,180,220,.18);--text:#f8f9ff;
  --muted:#aeb6cc;--accent:#765cff;--accent2:#9c6cff;--green:#6add8b;
  --radius:24px;--max:1380px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 52% 20%,rgba(79,124,255,.13),transparent 34%),
    radial-gradient(circle at 30% 44%,rgba(113,92,255,.16),transparent 27%),
    linear-gradient(180deg,#060915,#03050d);
}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.site-header{
  position:sticky;top:0;z-index:20;max-width:var(--max);margin:auto;min-height:84px;padding:0 32px;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;
  background:rgba(5,8,20,.82);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.05)
}
.brand{display:flex;align-items:center;gap:12px;font-size:26px;font-weight:800}
.brand-mark{
  width:48px;height:48px;border-radius:50% 50% 50% 18%;display:grid;place-items:center;font-size:29px;
  background:linear-gradient(135deg,#4d65ff,#8b49f5);box-shadow:0 0 34px rgba(113,92,255,.34)
}
.brand-mark.small{width:38px;height:38px;font-size:22px}
.nav{display:flex;justify-content:center;gap:38px}.nav a:hover,footer a:hover{color:#a998ff}
.beta-button,.primary-button,.beta-form button{
  border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#356dff,#6d38f4);
  border-radius:13px;font-weight:700
}
.beta-button{padding:13px 18px}.menu-toggle{display:none}
main{width:min(var(--max),calc(100% - 48px));margin:auto}
.hero{min-height:650px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:56px;padding:48px 24px 28px}
.eyebrow,.development-label{color:var(--muted);display:inline-flex;align-items:center;gap:9px}
.status-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 18px rgba(106,221,139,.55)}
.hero h1{margin:0;font-size:clamp(54px,6vw,88px);line-height:.98;letter-spacing:-.055em}
.hero h1 span{background:linear-gradient(90deg,#6f5dff,#ad74ff,#5c87ff);background-clip:text;color:transparent}
.hero-subline{margin:24px 0 0;font-size:clamp(24px,2.6vw,34px);color:#c9cfdf}
.hero-text{max-width:620px;margin:28px 0;color:var(--muted);font-size:18px;line-height:1.7}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.primary-button{padding:15px 22px;display:inline-flex;gap:16px}
.hero-visual{position:relative;min-height:590px;display:flex;align-items:center;justify-content:center}
.glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(83,84,255,.25),rgba(83,84,255,.07) 38%,transparent 70%)}
.phone{
  width:328px;height:650px;position:relative;z-index:2;border-radius:42px;padding:12px;
  background:linear-gradient(145deg,#232a3c,#080b12);border:1px solid rgba(255,255,255,.2);
  box-shadow:0 32px 120px rgba(0,0,0,.68);overflow:hidden
}
.phone::before{content:"";position:absolute;top:8px;left:50%;width:84px;height:20px;border-radius:12px;transform:translateX(-50%);background:#030407;z-index:4}
.phone-topbar{height:58px;border-radius:31px 31px 0 0;background:#101521;display:grid;grid-template-columns:32px 38px 1fr 24px;gap:7px;align-items:center;padding:12px 10px 6px}
.phone-back{font-size:28px}.phone-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#8f63ff,#4064ff);font-weight:800}
.phone-contact{display:flex;flex-direction:column}.phone-contact small{color:#8991a4;font-size:10px}.phone-more{font-size:24px}
.phone-chat{height:520px;padding:14px 10px;display:flex;flex-direction:column;gap:10px;background:#090d16}
.bubble{max-width:84%;border-radius:12px;padding:9px 11px;font-size:12px;line-height:1.35;display:flex;flex-direction:column;gap:5px}
.bubble small{align-self:flex-end;color:#8991a4;font-size:9px}.bubble-right{align-self:flex-end;background:linear-gradient(135deg,#664dff,#4f37d8)}
.bubble-left{align-self:flex-start;background:#171d2a}.bubble-left strong{color:#a896ff}
.photo-grid{display:grid;grid-template-columns:1.3fr .75fr .75fr;gap:3px;height:72px}.fake-photo{border-radius:8px}
.mountain{background:linear-gradient(160deg,#82b5d3 0 35%,#26324c 36% 53%,#506a55 54%)}
.coast{background:linear-gradient(160deg,#71afe2 0 48%,#f2bd71 49% 65%,#3c5f83 66%)}
.forest{background:linear-gradient(160deg,#93a7c4 0 40%,#354a36 41%)}
.voice{flex-direction:row;align-items:center}.voice button{width:32px;height:32px;border:0;border-radius:50%;background:#6955e8;color:white}
.waveform{color:#929bb0;letter-spacing:-2px}
.phone-input{height:48px;border-radius:0 0 30px 30px;background:#101521;display:grid;grid-template-columns:32px 1fr 32px;align-items:center;padding:0 10px;color:#b0b7c8}.placeholder{font-size:11px}
.hero-points{position:absolute;right:0;top:145px;z-index:3;display:grid;gap:30px}
.hero-points>div{display:flex;gap:14px;align-items:center;font-size:19px}
.point-icon{width:56px;height:56px;display:grid;place-items:center;border:1px solid rgba(123,96,255,.4);border-radius:16px;background:rgba(21,17,49,.72);color:#8a6cff;font-size:27px}
.cards-section{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:12px 0}
.feature-card,.counter-card,.roadmap-card,.statement-card,.beta-section,.principles{border:1px solid var(--border);background:linear-gradient(145deg,rgba(19,28,55,.84),rgba(9,14,31,.76))}
.feature-card{min-height:210px;padding:26px;border-radius:var(--radius);display:grid;grid-template-columns:64px 1fr;gap:18px}
.feature-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:rgba(113,92,255,.15);font-size:28px}
.feature-card h2{margin:0;font-size:24px}.feature-card h3{margin:5px 0 12px;color:#ad91ff;font-size:16px}.feature-card p{color:var(--muted);line-height:1.6}
.dashboard-section{display:grid;grid-template-columns:260px 1fr 350px;gap:18px;margin:18px 0}
.counter-card,.roadmap-card,.statement-card{border-radius:var(--radius);padding:28px}
.counter-number{font-size:56px;font-weight:800;background:linear-gradient(90deg,#9a75ff,#5c8bff);background-clip:text;color:transparent}
.counter-card p,.statement-card p{color:var(--muted)}
.roadmap{display:grid;gap:15px}.roadmap-step{display:grid;grid-template-columns:34px 1fr;gap:12px}.roadmap-step>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2)}
.roadmap-step.done>span{color:var(--green)}.roadmap-step.current>span{color:#a98eff;border-color:#8b6cff}.roadmap-step small{display:block;color:var(--muted)}
.principles{margin:18px 0;border-radius:var(--radius);padding:26px;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.principles span{color:#8972ff;font-size:30px}.principles p{color:var(--muted);line-height:1.55}
.beta-section{margin:18px 0 54px;padding:36px;border-radius:var(--radius);display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.beta-copy h2{font-size:38px;margin:0 0 12px}.beta-copy p{color:var(--muted);line-height:1.65}
.beta-form-row{display:grid;grid-template-columns:1fr auto;gap:10px}.beta-form input{min-width:0;padding:14px 16px;color:white;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:12px}.beta-form button{padding:14px 20px;color:white}.beta-form small{display:block;margin-top:10px;color:#8991a4}
footer{width:min(var(--max),calc(100% - 48px));margin:auto;padding:26px 24px 34px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;border-top:1px solid rgba(255,255,255,.06);color:var(--muted);font-size:13px}
.footer-brand{display:flex;align-items:center;gap:10px;color:white;font-size:20px}footer nav{display:flex;gap:22px}
@media(max-width:1100px){.hero{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-text{margin-inline:auto}.hero-actions{justify-content:center}.cards-section{grid-template-columns:1fr}.dashboard-section{grid-template-columns:1fr 1fr}.roadmap-card{grid-column:1/-1}.principles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.site-header{grid-template-columns:auto auto;padding:0 18px}.menu-toggle{display:block;justify-self:end;background:none;border:0;color:white}.nav{display:none;grid-column:1/-1;flex-direction:column;padding-bottom:20px}.nav.open{display:flex}.beta-button{display:none}.dashboard-section,.principles,.beta-section{grid-template-columns:1fr}.hero-points{display:none}footer{grid-template-columns:1fr;text-align:center}footer nav,.footer-brand{justify-content:center}}


/* v2 – authentischere Chat-Medien */
.phone-avatar-img{
  width:34px;
  height:34px;
  object-fit:cover;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.14);
}
.photo-grid img{
  width:100%;
  height:72px;
  object-fit:cover;
  display:block;
  border-radius:8px;
  filter:saturate(.92) contrast(1.03);
}
.photo-grid img:first-child{height:72px}
.counter-number.loading{
  opacity:.65;
}


/* v3: offizielles Logo */
.official-logo{width:54px;height:44px;object-fit:contain;filter:drop-shadow(0 0 14px rgba(92,93,255,.22))}
.footer-logo{width:43px;height:35px}

/* v3: Smartphone-Vorschau näher am aktuellen DHalo-Stand */
.real-dhalo-phone{width:350px;height:690px;padding:10px;border-radius:44px;background:linear-gradient(145deg,#2c3445,#07090f);overflow:hidden}
.real-dhalo-phone::before{width:84px;height:19px;top:9px}
.status-bar{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 15px;color:#f6f7fb;font-size:11px;position:relative;z-index:5}
.dhalo-app{position:relative;height:636px;overflow:hidden;border-radius:31px;background:#fff8fb}
.dhalo-wallpaper{position:absolute;inset:0;opacity:.72;background:radial-gradient(circle at 15% 20%,rgba(151,116,255,.16) 0 5px,transparent 6px),radial-gradient(circle at 82% 28%,rgba(236,120,196,.14) 0 6px,transparent 7px),radial-gradient(circle at 30% 50%,rgba(95,157,255,.14) 0 5px,transparent 6px),radial-gradient(circle at 72% 73%,rgba(163,115,255,.16) 0 6px,transparent 7px),linear-gradient(135deg,rgba(129,164,255,.05),rgba(255,173,219,.06))}
.dhalo-header{position:relative;z-index:2;height:76px;margin:6px 10px 0;padding:0 12px;display:grid;grid-template-columns:40px 54px 1fr 32px;gap:7px;align-items:center;background:#f7f7fa;border:1px solid #86878d;border-radius:16px}
.back-arrow{color:#3d83ef;font-size:34px;line-height:1}.chat-avatar{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;background:linear-gradient(135deg,#4b8cff,#765cff)}
.chat-name{color:#11141b;font-size:19px;white-space:nowrap}.chat-menu{color:#3d83ef;font-size:30px;transform:translateY(-3px);justify-self:end}
.chat-area{position:relative;z-index:2;height:495px;padding:4px 10px 8px;overflow:hidden}.msg{position:relative;margin:8px 0;border-radius:16px;background:#cfdbf8;color:#33435e;font-size:13px}.msg.outgoing{margin-left:auto}.msg.small{width:122px}.msg.wide{width:272px}
.image-msg{width:250px;margin-left:auto;padding:0 0 22px;overflow:hidden}.image-msg img{width:100%;height:172px;display:block;object-fit:cover}.msg-meta{position:absolute;right:10px;bottom:5px;font-size:9px;color:#4f6282}.heart-mini{position:absolute;left:9px;bottom:4px;color:#dc4d78;font-size:11px}
.text-msg{width:max-content;max-width:230px;min-width:115px;padding:10px 12px 22px}.msg-text{font-size:15px;line-height:1.35}.reply-msg{padding:8px 8px 25px}.reply-card{height:86px;display:grid;grid-template-columns:4px 1fr 74px;gap:8px;align-items:center;background:#c5d0ed;border-radius:12px;overflow:hidden}.reply-line{width:4px;height:72px;margin-left:2px;border-radius:4px;background:#3d83ef}.reply-copy{display:flex;flex-direction:column;gap:8px}.reply-copy strong{color:#3d83ef;font-size:14px}.reply-copy span{color:#35425b;font-size:14px}.reply-card img{width:74px;height:86px;object-fit:cover}.reply-text{padding:8px 4px 0}
.composer-wrap{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:10px 10px 12px;background:rgba(250,247,251,.95)}
.composer{height:58px;padding:0 14px;display:grid;grid-template-columns:38px 1fr 38px;gap:10px;align-items:center;background:#f7f7fa;border:1.5px solid #7d7e84;border-radius:16px;color:#111}
.composer-placeholder{font-size:16px;color:#17191f;white-space:nowrap}
.gallery-icon{position:relative;display:block;width:28px;height:28px}
.gallery-back,.gallery-front{position:absolute;border:2.2px solid #11141b;border-radius:4px;background:transparent}
.gallery-back{width:18px;height:18px;left:1px;top:7px}
.gallery-front{width:18px;height:18px;left:7px;top:3px;overflow:hidden}
.gallery-sun{position:absolute;width:4px;height:4px;border-radius:50%;background:#11141b;right:3px;top:3px}
.gallery-mountain{position:absolute;left:2px;right:2px;bottom:3px;height:7px;background:#11141b;clip-path:polygon(0 100%, 35% 35%, 58% 68%, 76% 46%, 100% 100%)}
.mic-glyph{position:relative;display:block;justify-self:end;width:22px;height:28px;opacity:.65}
.mic-head{position:absolute;left:5px;top:1px;width:12px;height:15px;border:2px solid #83858d;border-bottom:none;border-radius:8px 8px 6px 6px;background:transparent}
.mic-stem{position:absolute;left:10px;top:17px;width:2px;height:7px;background:#83858d;border-radius:2px}
.mic-base{position:absolute;left:5px;bottom:1px;width:12px;height:8px;border:2px solid #83858d;border-top:none;border-radius:0 0 10px 10px}



/* v7 – Nachricht vom Chatpartner links in DHalo-Grau */
.msg.incoming{
  margin-left:0;
  margin-right:auto;
  background:#E5E5E8;
  color:#343842;
}
.msg.incoming .msg-meta{
  color:#686D77;
}


/* v8 – Partner-Antwort komplett links und grau */
.reply-msg.incoming{
  margin-left:0;
  margin-right:auto;
  background:#E5E5E8;
  color:#343842;
}
.reply-msg.incoming .reply-card{
  background:#D6D7DC;
}
.reply-msg.incoming .reply-copy span{
  color:#4A4E57;
}
.reply-msg.incoming .msg-meta{
  color:#686D77;
}


/* v9 – kompaktere Handyvorschau + sichtbare DHalo-Modi */
.hero-visual{
  min-height:560px;
  gap:28px;
  justify-content:center;
}

.real-dhalo-phone{
  width:305px;
  height:600px;
  border-radius:39px;
  padding:9px;
}

.real-dhalo-phone::before{
  width:76px;
  height:17px;
  top:8px;
}

.real-dhalo-phone .status-bar{
  height:30px;
  padding:0 15px 0 13px;
  font-size:9.5px;
}

.real-dhalo-phone .dhalo-app{
  height:552px;
  border-radius:27px;
}

.real-dhalo-phone .dhalo-header{
  height:66px;
  margin:5px 8px 0;
  padding:0 10px;
  grid-template-columns:34px 46px 1fr 28px;
  gap:6px;
  border-radius:15px;
}

.real-dhalo-phone .phone-avatar-img{
  width:43px;
  height:43px;
}

.real-dhalo-phone .back-arrow{
  font-size:29px;
}

.real-dhalo-phone .chat-name{
  font-size:17px;
}

.real-dhalo-phone .chat-menu{
  font-size:27px;
}

.real-dhalo-phone .chat-area{
  height:425px;
  padding:3px 9px 7px;
}

.real-dhalo-phone .image-msg{
  width:216px;
  padding-bottom:19px;
}
.real-dhalo-phone .image-msg img{
  height:148px;
}

.real-dhalo-phone .msg{
  margin:7px 0;
  border-radius:14px;
}

.real-dhalo-phone .msg.wide{
  width:238px;
}

.real-dhalo-phone .text-msg{
  max-width:200px;
  min-width:100px;
  padding:8px 10px 19px;
}

.real-dhalo-phone .msg-text{
  font-size:13px;
}

.real-dhalo-phone .reply-msg{
  padding:7px 7px 22px;
}

.real-dhalo-phone .reply-card{
  height:74px;
  grid-template-columns:4px 1fr 64px;
  gap:7px;
  border-radius:11px;
}

.real-dhalo-phone .reply-line{
  height:61px;
}

.real-dhalo-phone .reply-card img{
  width:64px;
  height:74px;
}

.real-dhalo-phone .reply-copy strong,
.real-dhalo-phone .reply-copy span{
  font-size:12px;
}

.real-dhalo-phone .msg-meta{
  font-size:8px;
  right:8px;
  bottom:4px;
}

.real-dhalo-phone .composer-wrap{
  padding:8px 8px 10px;
}

.real-dhalo-phone .composer{
  height:50px;
  padding:0 12px;
  grid-template-columns:32px 1fr 32px;
  gap:8px;
  border-radius:15px;
}

.real-dhalo-phone .composer-placeholder{
  font-size:14px;
}

.real-dhalo-phone .gallery-icon{
  transform:scale(.88);
  transform-origin:center;
}

.real-dhalo-phone .mic-glyph{
  transform:scale(.88);
  transform-origin:center;
}

.hero-mode-stack{
  position:relative;
  z-index:3;
  width:210px;
  display:grid;
  gap:14px;
}

.mode-preview{
  min-height:86px;
  display:grid;
  grid-template-columns:52px 1fr;
  gap:12px;
  align-items:center;
  padding:14px;
  border:1px solid rgba(139,111,255,.30);
  border-radius:18px;
  background:
    linear-gradient(145deg,rgba(21,29,58,.96),rgba(11,15,32,.92));
  box-shadow:0 18px 50px rgba(0,0,0,.24);
}

.mode-preview::before{
  content:"";
  position:absolute;
}

.mode-preview-icon{
  width:48px;
  height:48px;
  border-radius:15px;
  display:grid;
  place-items:center;
  font-size:24px;
  background:rgba(116,91,255,.14);
  border:1px solid rgba(122,95,255,.18);
}

.mode-preview strong{
  display:block;
  font-size:15px;
  line-height:1.15;
}

.mode-preview span{
  display:block;
  margin-top:5px;
  color:#aeb6cc;
  font-size:11px;
  line-height:1.25;
}

.mode-preview.secure{
  border-color:rgba(142,99,255,.42);
}

.mode-preview.crisis{
  border-color:rgba(87,132,255,.38);
}

@media(max-width:1100px){
  .hero-visual{
    min-height:610px;
  }
  .hero-mode-stack{
    width:190px;
  }
}

@media(max-width:820px){
  .hero-visual{
    flex-direction:column;
    min-height:auto;
    padding-bottom:30px;
  }
  .hero-mode-stack{
    width:min(100%,420px);
    grid-template-columns:1fr;
  }
}


/* v11 – Header-Branding: mehr Luft, kein optisches Abschneiden */
.site-header{
  overflow:visible;
  padding-left:22px;
  padding-right:22px;
}
.brand{
  min-width:max-content;
  overflow:visible;
  gap:8px;
  padding:0 6px 0 0;
  align-items:center;
}
.brand-name{
  display:block;
  font-size:26px;
  font-weight:800;
  line-height:1;
  letter-spacing:-.025em;
  white-space:nowrap;
}
.official-logo{
  width:66px;
  height:54px;
  object-fit:contain;
  object-position:center;
  overflow:visible;
  flex:0 0 auto;
  filter:drop-shadow(0 0 14px rgba(92,93,255,.24));
}
.footer-brand{
  overflow:visible;
  gap:7px;
}
.footer-logo{
  width:52px;
  height:43px;
}
@media(max-width:820px){
  .site-header{padding-left:12px;padding-right:12px}
  .official-logo{width:58px;height:48px}
  .brand-name{font-size:23px}
}
