:root{
	--bg-0:#151517;
	--bg-1:#1B1B1D;
	--text-0:#F5F5F7;
	--text-1:rgba(196,196,198,.90);
	--text-2:rgba(154,154,160,.95);
	--orange:#F28C28;
	--orange-hover:#E0791D;
	--container:1060px;
	--radius:10px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
	margin:0;
	font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
	color:var(--text-0);
	background:#0f0f10;
	line-height:1.5;
}
a{color:inherit}
img{max-width:100%;height:auto;display:block}

.container{
	width:min(100% - 28px,var(--container));
	margin:0 auto;
}

/* Header */
header{
	position:sticky;
	top:0;
	z-index:10;
	backdrop-filter:blur(10px);
	background:rgba(15,15,16,.72);
	border-bottom:1px solid rgba(196,196,198,.10);
}
.nav{
	position:relative; /* wichtig für dropdown */
	display:flex;
	align-items:center;
	justify-content:space-between;
	height:60px;
	gap:16px;
}
.brand{
	display:inline-flex;
	align-items:center;
	gap:12px;
	text-decoration:none;
	white-space:nowrap;
}
.brand-logo{
	width:150px;
	max-height:38px;
	object-fit:contain;
	object-position:center;
}
.brand-name{display:none}

nav ul{
	list-style:none;
	display:flex;
	gap:14px;
	margin:0;
	padding:0;
	align-items:center;
}
nav a{
	text-decoration:none;
	color:rgba(245,245,247,.92);
	font-size:14px;
	padding:8px 10px;
	border-radius:8px;
}
nav a:hover{background:rgba(196,196,198,.08)}

.nav-cta{
	display:inline-flex;
	align-items:center;
	gap:10px;
}

/* Buttons */
.cta-primary{
	display:inline-block;
	background:var(--orange);
	color:#1B1B1D;
	padding:10px 12px;
	font-size:13px;
	font-weight:650;
	border-radius:10px;
	text-decoration:none;
	transition:all .2s ease;
	border:0;
	cursor:pointer;
	text-align:center;
}
.cta-primary:hover{background:var(--orange-hover)}
.cta-primary:focus{outline:2px solid rgba(242,140,40,.55);outline-offset:2px}

.cta-secondary{
	display:inline-block;
	padding:10px 12px;
	border-radius:10px;
	text-decoration:none;
	font-weight:600;
	font-size:13px;
	color:rgba(245,245,247,.92);
	border:1px solid rgba(196,196,198,.22);
	background:rgba(27,27,29,.35);
	text-align:center;
}
.cta-secondary:hover{background:rgba(196,196,198,.08)}

/* Burger (minimalistisch) */
.nav-burger{
	display:none; /* wird im Mobile-Query aktiviert */
	appearance:none;
	-webkit-appearance:none;
	border:0;
	background:transparent;
	padding:0;
	margin:0;
	cursor:pointer;
	width:28px;
	height:20px;
	flex-direction:column;
	justify-content:space-between;
	align-items:stretch;
}
.nav-burger span{
	display:block;
	height:2px;
	width:100%;
	background:rgba(245,245,247,.92);
	border-radius:2px;
}

/* Mobile menu dropdown */
.mobile-menu{
	position:absolute;
	left:0;
	right:0;
	top:60px;
	background:rgba(15,15,16,.98);
	border-bottom:1px solid rgba(196,196,198,.12);
	backdrop-filter:blur(10px);
}
.mobile-menu-inner{
	width:min(100% - 28px,var(--container));
	margin:0 auto;
	padding:14px 0 18px;
	display:grid;
	gap:10px;
}
.mobile-link{
	padding:12px 12px;
	border-radius:10px;
	text-decoration:none;
	color:rgba(245,245,247,.92);
	border:1px solid rgba(196,196,198,.10);
	background:rgba(27,27,29,.35);
}
.mobile-link:hover{background:rgba(196,196,198,.08)}
.mobile-menu-ctas{
	margin-top:6px;
	display:grid;
	gap:10px;
}
.mobile-menu-ctas .cta-primary,
.mobile-menu-ctas .cta-secondary{
	width:100%;
	text-align:center;
}

/* Mobile breakpoint */
@media (max-width:860px){
	nav ul{display:none}
	.nav-burger{display:inline-flex !important}
}

/* Generic sections */
section{padding:54px 0;background:#0f0f10}
.section-title{
	margin:0 0 12px;
	font-size:22px;
	letter-spacing:-.2px;
}
.section-lead{
	margin:0 0 18px;
	color:rgba(196,196,198,.92);
	max-width:75ch;
}

/* Hero (Startseite) */
.hero{
	position:relative;
	background:linear-gradient(180deg,var(--bg-0) 0%,var(--bg-1) 100%);
	padding:78px 0 88px;
	text-align:center;
	overflow:hidden;
	border-bottom:1px solid rgba(196,196,198,.10);
}
.hero::after{
	content:"";
	position:absolute;
	top:-140px;
	right:-160px;
	width:460px;
	height:460px;
	border-radius:50%;
	border:2px solid rgba(196,196,198,.08);
	pointer-events:none;
}
.hero-inner{max-width:740px;margin:0 auto}
.hero h1{
	margin:0 0 18px;
	font-size:30px;
	line-height:1.18;
	font-weight:700;
	letter-spacing:-.2px;
}
.hero-subline{
	margin:0 0 16px;
	font-size:17px;
	color:var(--text-1);
	line-height:1.5;
}
.hero-qualifier{
	margin:0 0 22px;
	font-size:15px;
	color:var(--text-2);
	line-height:1.45;
}
.hero .cta-primary{
	display:inline-block;
	padding:14px 16px;
	font-size:15px;
}
.hero-trust{
	margin:14px 0 0;
	font-size:13px;
	line-height:1.4;
	color:rgba(196,196,198,.88);
}

/* Page hero (Unterseiten) */
.page-hero{
	background:linear-gradient(180deg,var(--bg-0) 0%,var(--bg-1) 100%);
	padding:54px 0 46px;
	border-bottom:1px solid rgba(196,196,198,.10);
}
.page-hero h1{
	margin:0 0 10px;
	font-size:30px;
	line-height:1.14;
	letter-spacing:-.3px;
	text-align:center;
}
.page-hero p{
	margin:0 auto;
	color:rgba(196,196,198,.92);
	max-width:75ch;
	font-size:15.5px;
	text-align:center;
}
.pill{
	display:inline-block;
	font-size:12px;
	padding:6px 10px;
	border-radius:999px;
	background:rgba(242,140,40,.12);
	border:1px solid rgba(242,140,40,.22);
	color:rgba(245,245,247,.92);
	margin:0 auto 12px;
}

/* Cards / grids */
.grid{
	display:grid;
	gap:14px;
	grid-template-columns:1fr;
}
.card{
	background:rgba(27,27,29,.65);
	border:1px solid rgba(196,196,198,.14);
	border-radius:var(--radius);
	padding:18px;
}
.card h3{
	margin:0 0 8px;
	font-size:16px;
	letter-spacing:-.1px;
}
.card p{
	margin:0;
	color:rgba(196,196,198,.90);
	font-size:14px;
	line-height:1.45;
}

/* Panels / lists */
.panel{
	background:rgba(27,27,29,.65);
	border:1px solid rgba(196,196,198,.14);
	border-radius:var(--radius);
	padding:18px;
}
.list{
	margin:0;
	padding-left:18px;
	color:rgba(196,196,198,.92);
}
.list li{margin:8px 0}

/* Team blocks (Über uns) */
.team{
	display:grid;
	gap:14px;
	grid-template-columns:1fr;
}
.person{
	display:grid;
	grid-template-columns:72px 1fr;
	gap:14px;
	align-items:start;
	padding:16px;
	border-radius:var(--radius);
	border:1px solid rgba(196,196,198,.14);
	background:rgba(27,27,29,.65);
}
.person-photo{
	width:72px;
	height:72px;
	border-radius:999px;
	object-fit:cover;
	border:1px solid rgba(196,196,198,.14);
}
.person-name{
	font-weight:800;
	letter-spacing:-.2px;
	margin-bottom:2px;
}
.person-role{
	font-size:13px;
	color:rgba(196,196,198,.90);
	margin-bottom:10px;
}
.person-text{
	margin:0;
	color:rgba(245,245,247,.92);
	font-size:13.5px;
	line-height:1.45;
	max-width:78ch;
}

/* Proof KPIs */
.kpis{
	display:grid;
	gap:12px;
	grid-template-columns:1fr;
	margin-top:14px;
}
.kpi{
	padding:16px;
	border-radius:var(--radius);
	border:1px solid rgba(196,196,198,.14);
	background:rgba(27,27,29,.65);
}
.kpi-value{
	font-size:22px;
	font-weight:900;
	letter-spacing:-.3px;
	margin-bottom:4px;
	color:rgba(245,245,247,.96);
}
.kpi-text{
	margin:0;
	font-size:13.5px;
	line-height:1.35;
	color:rgba(196,196,198,.92);
}

/* Steps (Gründungshilfe) */
.steps{
	display:grid;
	gap:12px;
	grid-template-columns:1fr;
	margin-top:8px;
}
.step{
	border-radius:var(--radius);
	border:1px solid rgba(196,196,198,.14);
	background:rgba(27,27,29,.65);
	padding:16px;
}
.step-head{
	display:flex;
	gap:10px;
	align-items:baseline;
	margin-bottom:8px;
}
.step-nr{font-weight:900;color:rgba(245,245,247,.96)}
.step-title{font-weight:750;letter-spacing:-.1px}
.step p{
	margin:0;
	color:rgba(196,196,198,.90);
	font-size:13.5px;
	line-height:1.45;
}

/* CTA band (Kontaktbereiche) */
.cta-band{
	background:linear-gradient(180deg,rgba(27,27,29,.75) 0%,rgba(15,15,16,1) 100%);
	border-top:1px solid rgba(196,196,198,.10);
	border-bottom:1px solid rgba(196,196,198,.10);
}
.cta-band .wrap{
	padding:44px 0;
	text-align:center;
	max-width:820px;
	margin:0 auto;
}
.cta-band h2{margin:0 0 10px;font-size:22px}
.cta-band p{margin:0 auto 18px;color:rgba(196,196,198,.92);max-width:70ch}

.contact-facts{
	margin:18px auto 18px;
	display:grid;
	gap:10px;
	grid-template-columns:1fr;
	max-width:520px;
}
.fact{
	padding:12px 12px;
	border-radius:12px;
	border:1px solid rgba(196,196,198,.14);
	background:rgba(27,27,29,.55);
	color:rgba(245,245,247,.92);
	font-size:14px;
}
.fact strong{color:rgba(245,245,247,.98);font-weight:700}
.contact-note{
	margin:14px 0 0;
	font-size:13px;
	color:rgba(196,196,198,.88);
	line-height:1.45;
}

/* Divider */
.divider{
	border:0;
	height:1px;
	background:rgba(196,196,198,.10);
	margin:0;
}

/* Footer */
footer{
	padding:34px 0;
	color:rgba(196,196,198,.88);
	font-size:13px;
}
footer a{color:rgba(196,196,198,.92);text-decoration:none}
footer a:hover{text-decoration:underline}
.footer-row{
	display:flex;
	flex-direction:column;
	gap:10px;
	align-items:flex-start;
	justify-content:space-between;
}
.footer-links{
	display:flex;
	gap:14px;
	flex-wrap:wrap;
}
/* Proof block (Startseite) */
.proof{
	display:grid;
	gap:16px;
	align-items:stretch;
}

.proof-person{
	display:grid;
	grid-template-columns:72px 1fr;
	gap:14px;
	padding:16px;
	border-radius:var(--radius);
	border:1px solid rgba(196,196,198,.14);
	background:rgba(27,27,29,.65);
}

.proof-photo{
	width:72px;
	height:72px;
	border-radius:999px;
	object-fit:cover;
	border:1px solid rgba(196,196,198,.14);
}

.proof-name{
	font-weight:800;
	letter-spacing:-.2px;
	margin-bottom:2px;
}

.proof-role{
	font-size:13px;
	color:rgba(196,196,198,.90);
	margin-bottom:10px;
}

.proof-quote{
	margin:0;
	font-size:13.5px;
	line-height:1.45;
	color:rgba(245,245,247,.92);
}

.proof-kpis{
	display:grid;
	gap:12px;
	grid-template-columns:1fr;
}

.proof-disclaimer{
	margin:14px 0 0;
	font-size:12.5px;
	color:rgba(196,196,198,.82);
	line-height:1.45;
}
/* Legal pages: einheitliche Typo */
.legal{
  font-size: 14px;
  line-height: 1.65;
  color: rgba(196,196,198,.92);
}

.legal h2{
  margin: 22px 0 10px;
  font-size: 16px;
  letter-spacing: -0.1px;
  color: rgba(245,245,247,.95);
}

.legal h3{
  margin: 14px 0 8px;
  font-size: 14px;
  color: rgba(245,245,247,.94);
}

.legal p, .legal ul{
  margin: 0 0 12px;
}

.legal a{
  color: rgba(245,245,247,.95);
}

/* Desktop: Foto links, KPIs rechts */
@media (min-width:768px){
	.proof{
		grid-template-columns:1fr 1.6fr;
		gap:18px;
	}
	.proof-kpis{
		grid-template-columns:repeat(3,1fr);
	}
}

/* Desktop enhancements */
@media (min-width:768px){
	.hero{padding:130px 0 150px}
	.hero h1{font-size:50px}
	.hero-subline{font-size:20px}
	.hero-qualifier{font-size:16px;margin-bottom:34px}

	.page-hero{padding:76px 0 60px}
	.page-hero h1{font-size:44px}

	.grid{grid-template-columns:repeat(3,1fr)}
	.kpis{grid-template-columns:repeat(3,1fr)}
	.steps{grid-template-columns:repeat(3,1fr)}
	.team{grid-template-columns:1fr 1fr}

	.contact-facts{grid-template-columns:repeat(3,1fr)}
	.footer-row{flex-direction:row;align-items:center}
}