/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 21 2026 | 13:26:49 */
*,*::before,*::after{
	box-sizing:border-box;
	margin:0;
	padding:0}
html{
	scroll-behavior:smooth;
	overflow-x:hidden}
body{
	font-family:'DM Sans',sans-serif;
	color:#1A1E5A;
	background:#fff;
	font-size:16px;
	line-height:1.65;
	-webkit-font-smoothing:antialiased;
	overflow-x:hidden;
	word-break:break-word;
	overflow-wrap:break-word}

.container{
	max-width:var(--max);
	margin:0 auto;
	padding:0 48px}
@media(max-width:768px){
	.container{
		padding:0 20px}
}
.label{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-size:11px;
	font-weight:700;
	letter-spacing:.15em;
	text-transform:uppercase;
	color:var(--nv-primary-accent);
	margin-bottom:14px}
.label::before{
	content:'';
	display:block;
	width:20px;
	height:2px;
	background:var(--nv-primary-accent)}
h1,h2,h3{
	font-family:'DM Serif Display',serif;
	line-height:1.1;
	letter-spacing:-.02em}
h1{
	font-size:clamp(28px,5vw,54px)}
h2{
	font-size:clamp(22px,3.5vw,38px)}
h3{
	font-size:clamp(16px,2.2vw,21px)}
em{
	font-style:italic;
	color:var(--nv-primary-accent);
	-webkit-text-fill-color:var(--nv-primary-accent)}
.lead{
	font-size:17px;
	color:var(--muted);
	line-height:1.75}
.btn{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-family:'DM Sans',sans-serif;
	font-weight:700;
	font-size:12px;
	letter-spacing:.1em;
	text-transform:uppercase;
	text-decoration:none;
	padding:14px 24px;
	border:none;
	cursor:pointer;
	transition:transform .15s,box-shadow .15s,background .15s,color .15s;
	white-space:nowrap}
.btn-primary{
	background:var(--nv-primary-accent);
	color:var(--navy);
	box-shadow:0 4px 18px rgba(0,217,176,.25)}
.btn-primary:hover{
	transform:translateY(-2px);
	box-shadow:0 8px 28px rgba(0,217,176,.4)}
.btn-outline{
	background:transparent;
	color:var(--navy);
	border:2px solid var(--navy)}
.btn-outline:hover{
	background:var(--navy);
	color:#fff}
.reveal{
	opacity:0;
	transform:translateY(16px);
	transition:opacity .6s ease,transform .6s ease}
.reveal.visible{
	opacity:1;
	transform:none}

/* HERO */
.hero{
	padding:72px 0 80px;
	background:#fff;
	position:relative;
	overflow:hidden}
.hero::after{
	content:'';
	position:absolute;
	inset:0;
	background:radial-gradient(ellipse 50% 70% at 100% 40%,#DFF7F2 0%,transparent 55%),radial-gradient(ellipse 25% 40% at 0% 90%,#EEF0FA 0%,transparent 50%);
	pointer-events:none;
	z-index:0}
.hero-inner{
	position:relative;
	z-index:2;
	display:grid;
	grid-template-columns:1fr 380px;
	gap:64px;
	align-items:center}
.hero h1{
	margin-bottom:18px}
.hero .lead{
	margin-bottom:28px;
	max-width:480px}
.trust-pills{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-bottom:28px}
.tp{
	display:flex;
	align-items:center;
	gap:6px;
	font-size:12px;
	font-weight:500;
	color:var(--muted);
	background:var(--offwhite);
	border:1px solid var(--border);
	padding:5px 12px}
.tp svg{
	stroke:var(--nv-primary-accent);
	flex-shrink:0;
	fill:none;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round}
.hero-cta{
	display:flex;
	gap:12px;
	flex-wrap:wrap;
	margin-bottom:32px}
.trust-bar{
	display:flex;
	flex-wrap:wrap;
	padding-top:24px;
	border-top:1px solid var(--border)}
.tb-item{
	display:flex;
	align-items:center;
	gap:7px;
	font-size:12px;
	font-weight:500;
	color:var(--muted);
	padding-right:20px;
	margin-right:20px;
	border-right:1px solid var(--border)}
.tb-item:last-child{
	border-right:none;
	padding-right:0;
	margin-right:0}
.tb-dot{
	width:5px;
	height:5px;
	border-radius:50%;
	background:var(--nv-primary-accent);
	flex-shrink:0}
.book-card{
	background:var(--navy);
	padding:32px;
	position:relative;
	overflow:hidden}
.book-card::before{
	content:'';
	position:absolute;
	right:-40px;
	top:-40px;
	width:180px;
	height:180px;
	border-radius:50%;
	border:1px solid rgba(0,217,176,.18)}
.bk-label{
	font-size:10px;
	font-weight:700;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:var(--nv-primary-accent);
	margin-bottom:8px;
	display:flex;
	align-items:center;
	gap:6px;
	position:relative;
	z-index:2}
.bk-label::before{
	content:'';
	display:block;
	width:12px;
	height:2px;
	background:var(--nv-primary-accent)}
.bk-title{
	font-family:'DM Serif Display',serif;
	font-size:20px;
	color:#fff;
	margin-bottom:8px;
	position:relative;
	z-index:2;
	line-height:1.2}
.bk-sub{
	font-size:13px;
	color:rgba(255,255,255,.55);
	margin-bottom:20px;
	position:relative;
	z-index:2;
	line-height:1.55}
.bk-list{
	list-style:none;
	display:flex;
	flex-direction:column;
	gap:8px;
	margin-bottom:24px;
	position:relative;
	z-index:2}
.bk-list li{
	display:flex;
	align-items:flex-start;
	gap:8px;
	font-size:13px;
	color:rgba(255,255,255,.75);
	line-height:1.45}
.bk-list li::before{
	content:'';
	flex-shrink:0;
	width:16px;
	height:16px;
	border-radius:50%;
	background:rgba(0,217,176,.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312ab88' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/9px no-repeat;
	margin-top:2px}
.bk-btns{
	display:flex;
	flex-direction:column;
	gap:10px;
	position:relative;
	z-index:2}
.bk-btns .btn{
	justify-content:center}
.bk-tel{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	font-size:13px;
	color:rgba(255,255,255,.4);
	text-decoration:none;
	transition:color .15s}
.bk-tel:hover{
	color:var(--nv-primary-accent)}
.bk-tel svg{
	stroke:var(--nv-primary-accent);
	fill:none;
	stroke-width:2;
	stroke-linecap:round}
@media(max-width:900px){
	.hero-inner{
		grid-template-columns:1fr;
		gap:36px}
	.hero{
		padding:48px 0 56px}
}
@media(max-width:600px){
	.hero-cta{
		flex-direction:column}
	.hero-cta .btn{
		justify-content:center}
	.trust-bar .tb-item{
		border-right:none;
		padding-right:0;
		margin-right:0}
}
/* SPARRING vs COACHING */
.diff-section{
	background:var(--offwhite);
	padding:72px 0}
.diff-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
	margin-top:44px}
.diff-card{
	background:#fff;
	border:1px solid var(--border);
	padding:36px;
	position:relative;
	overflow:hidden}
.diff-card::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:3px;
	background:var(--border)}
.diff-card.hl{
	background:var(--navy);
	border-color:var(--navy)}
.diff-card.hl::before{
	background:var(--nv-primary-accent)}
.diff-label{
	font-size:10px;
	font-weight:700;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:var(--nv-primary-accent);
	margin-bottom:10px;
	display:flex;
	align-items:center;
	gap:6px}
.diff-label::before{
	content:'';
	display:block;
	width:14px;
	height:2px;
	background:var(--nv-primary-accent)}
.diff-card h3{
	font-size:20px;
	margin-bottom:10px}
.diff-card.hl h3{
	color:#fff}
.diff-desc{
	font-size:14px;
	color:var(--muted);
	line-height:1.7;
	margin-bottom:20px}
.diff-card.hl .diff-desc{
	color:rgba(255,255,255,.6)}
.diff-when{
	padding-top:20px;
	border-top:1px solid var(--border)}
.diff-card.hl .diff-when{
	border-top-color:rgba(255,255,255,.12)}
.diff-when-title{
	font-size:11px;
	font-weight:700;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--muted);
	margin-bottom:10px}
.diff-card.hl .diff-when-title{
	color:rgba(255,255,255,.4)}
.diff-list{
	list-style:none;
	display:flex;
	flex-direction:column;
	gap:7px}
.diff-list li{
	display:flex;
	align-items:flex-start;
	gap:8px;
	font-size:13px;
	color:var(--muted);
	line-height:1.45}
.diff-card.hl .diff-list li{
	color:rgba(255,255,255,.7)}
.diff-list li::before{
	content:'→';
	color:var(--nv-primary-accent);
	font-weight:700;
	flex-shrink:0}
@media(max-width:680px){
	.diff-grid{
		grid-template-columns:1fr}
	.diff-section{
		padding:56px 0}
}
/* WANN SPARRING */
.wann-section{
	padding:72px 0}
.wann-grid{
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	gap:20px;
	margin-top:44px}
.wann-card{
	border:1px solid var(--border);
	padding:28px;
	position:relative;
	transition:border-color .2s,box-shadow .2s}
.wann-card:hover{
	border-color:var(--nv-primary-accent);
	box-shadow:0 4px 20px rgba(0,217,176,.1)}
.wann-card::before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:3px;
	background:var(--nv-primary-accent)}
.wann-icon{
	width:42px;
	height:42px;
	background:var(--nv-primary-accent-soft);
	border-radius:2px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-bottom:16px}
.wann-icon svg{
	stroke:var(--nv-primary-accent-dark);
	width:20px;
	height:20px;
	fill:none;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round}
.wann-card h3{
	font-size:17px;
	margin-bottom:8px}
.wann-card p{
	font-size:13px;
	color:var(--muted);
	line-height:1.65}
@media(max-width:820px){
	.wann-grid{
		grid-template-columns:1fr 1fr}
	.wann-section{
		padding:56px 0}
}
@media(max-width:520px){
	.wann-grid{
		grid-template-columns:1fr}
}
/* PAIN PAIRS */
.pain-section{
	padding:72px 0;
	background:var(--offwhite)}
.pain-header{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:0;
	margin-top:44px;
	margin-bottom:4px;
	padding:0 0 12px;
	border-bottom:2px solid var(--border)}
.pain-col-title{
	font-size:11px;
	font-weight:700;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:var(--muted)}
.pain-pairs{
	display:flex;
	flex-direction:column}
.pain-pair{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:0;
	border-bottom:1px solid var(--border)}
.pain-pair:last-child{
	border-bottom:none}
.pain-cell{
	display:flex;
	align-items:flex-start;
	gap:12px;
	padding:16px 12px 16px 0;
	font-size:14px;
	line-height:1.55;
	min-width:0;
	word-break:break-word}
.pain-cell.after{
	padding-left:20px;
	border-left:1px solid var(--border)}
.pi-icon{
	width:22px;
	height:22px;
	border-radius:50%;
	flex-shrink:0;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-top:1px}
.pi-x{
	background:#FEE8E8}
.pi-x svg{
	stroke:#C0392B;
	fill:none;
	stroke-width:2.5;
	stroke-linecap:round}
.pi-ok{
	background:var(--nv-primary-accent-soft)}
.pi-ok svg{
	stroke:var(--nv-primary-accent-dark);
	fill:none;
	stroke-width:2.5;
	stroke-linecap:round}
.pain-cell.before{
	color:var(--muted)}
.pain-cell.after{
	color:var(--navy);
	font-weight:500}
@media(max-width:640px){
	.pain-header{
		display:none}
	.pain-pair{
		grid-template-columns:1fr}
	.pain-cell{
		padding:12px 0;
		border-left:none !important;
		padding-left:0 !important}
}
@media(max-width:700px){
	.pain-section{
		padding:56px 0}
}
/* ABLAUF */
.ablauf{
	padding:72px 0}
.ablauf-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:24px;
	margin-top:44px;
	position:relative}
.ablauf-grid::before{
	content:'';
	position:absolute;
	top:19px;
	left:calc(12.5% + 4px);
	right:calc(12.5% + 4px);
	height:2px;
	background:var(--border);
	z-index:0}
.as-item{
	text-align:center;
	position:relative;
	z-index:1}
.as-num{
	width:40px;
	height:40px;
	border-radius:50%;
	background:#fff;
	border:2px solid var(--border);
	color:var(--muted);
	font-size:14px;
	font-weight:700;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 auto 16px}
.as-item.active .as-num{
	background:var(--nv-primary-accent);
	border-color:var(--nv-primary-accent);
	color:var(--navy)}
.as-title{
	font-size:14px;
	font-weight:700;
	color:var(--navy);
	margin-bottom:6px}
.as-desc{
	font-size:12px;
	color:var(--muted);
	line-height:1.55;
	padding:0 8px}
@media(max-width:700px){
	.ablauf-grid{
		grid-template-columns:1fr 1fr;
		gap:20px}
	.ablauf-grid::before{
		display:none}
	.ablauf{
		padding:56px 0}
}
/* MID CTA */
.mid-cta{
	background:var(--navy);
	padding:48px 0;
	position:relative;
	overflow:hidden}
.mid-cta::before{
	content:'';
	position:absolute;
	right:-60px;
	top:-60px;
	width:260px;
	height:260px;
	border-radius:50%;
	border:1px solid rgba(0,217,176,.15)}
.mid-cta-inner{
	position:relative;
	z-index:2;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:32px;
	flex-wrap:wrap}
.mid-cta h3{
	font-family:'DM Serif Display',serif;
	font-size:clamp(20px,3vw,28px);
	color:#fff;
	max-width:440px}
.mid-cta h3 em{
	color:var(--nv-primary-accent);
	-webkit-text-fill-color:var(--nv-primary-accent)}
.mid-cta-btns{
	display:flex;
	gap:12px;
	flex-wrap:wrap;
	flex-shrink:0}
@media(max-width:700px){
	.mid-cta-inner{
		flex-direction:column;
		align-items:flex-start}
	.mid-cta{
		padding:40px 0}
}
/* ÜBER MICH */
.about-strip{
	background:var(--offwhite);
	padding:72px 0}
.about-inner{
	display:grid;
	grid-template-columns:260px 1fr;
	gap:56px;
	align-items:start}
.about-photo{
	width:100%;
	aspect-ratio:3/4;
	object-fit:cover;
	object-position:center top;
	border-top:4px solid var(--nv-primary-accent)}
.about-text h2{
	margin-bottom:14px}
.about-text p{
	font-size:15px;
	color:var(--muted);
	line-height:1.75;
	margin-bottom:16px}
.about-text p strong{
	color:var(--navy)}
.cred-row{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-bottom:24px}
.cred-chip{
	display:flex;
	align-items:center;
	gap:6px;
	font-size:12px;
	font-weight:600;
	background:#fff;
	border:1px solid var(--border);
	padding:6px 12px;
	color:var(--navy)}
.cred-chip svg{
	stroke:var(--nv-primary-accent);
	fill:none;
	stroke-width:2;
	stroke-linecap:round;
	width:13px;
	height:13px}
@media(max-width:768px){
	.about-inner{
		grid-template-columns:1fr;
		gap:28px}
	.about-strip{
		padding:56px 0}
	.about-photo{
		max-width:220px}
}
/* TESTIMONIALS */
.testi-section{
	padding:72px 0}
.testi-inner{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
	margin-top:44px}
.testi-card{
	border:1px solid var(--border);
	padding:32px;
	transition:border-color .2s}
.testi-card:hover{
	border-color:var(--nv-primary-accent)}
.testi-card.featured{
	background:var(--navy);
	border-color:var(--navy);
	grid-column:span 2}
.quote-mark{
	font-family:'DM Serif Display',serif;
	font-size:52px;
	color:var(--nv-primary-accent);
	-webkit-text-fill-color:var(--nv-primary-accent);
	line-height:.7;
	display:block;
	margin-bottom:14px}
.testi-card.featured .quote-mark{
	font-size:64px}
.testi-text{
	font-family:'DM Serif Display',serif;
	font-style:italic;
	font-size:clamp(14px,1.8vw,17px);
	color:var(--navy);
	line-height:1.55;
	margin-bottom:20px}
.testi-card.featured .testi-text{
	color:#fff;
	font-size:clamp(15px,2vw,19px)}
.testi-person{
	display:flex;
	align-items:center;
	gap:12px}
.t-avatar{
	width:38px;
	height:38px;
	border-radius:50%;
	background:linear-gradient(135deg,var(--nv-primary-accent),#00B8E6);
	display:flex;
	align-items:center;
	justify-content:center;
	font-weight:700;
	font-size:13px;
	color:var(--navy);
	flex-shrink:0}
.t-name{
	font-size:13px;
	font-weight:700;
	color:var(--navy);
	margin-bottom:2px}
.testi-card.featured .t-name{
	color:#fff}
.t-role{
	font-size:11px;
	color:var(--muted)}
.testi-card.featured .t-role{
	color:rgba(255,255,255,.45)}
@media(max-width:700px){
	.testi-inner{
		grid-template-columns:1fr}
	.testi-card.featured{
		grid-column:span 1}
	.testi-section{
		padding:56px 0}
}
/* FAQ */
.faq-section{
	background:var(--offwhite);
	padding:72px 0}
.faq-list{
	margin-top:44px;
	border:1px solid var(--border);
	overflow:hidden;
	background:#fff}
.faq-item{
	border-bottom:1px solid var(--border)}
.faq-item:last-child{
	border-bottom:none}
.faq-q{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:16px;
	padding:18px 22px;
	cursor:pointer;
	transition:background .15s}
.faq-q:hover{
	background:var(--offwhite)}
.faq-item.open .faq-q{
	background:var(--nv-primary-accent-soft)}
.faq-q-text{
	font-size:15px;
	font-weight:600;
	color:var(--navy);
	line-height:1.4;
	flex:1}
.faq-icon{
	font-size:20px;
	color:var(--muted);
	flex-shrink:0;
	transition:transform .25s;
	line-height:1;
	margin-top:1px}
.faq-item.open .faq-icon{
	transform:rotate(45deg);
	color:var(--nv-primary-accent)}
.faq-a{
	display:none;
	padding:4px 22px 18px;
	font-size:14px;
	color:var(--muted);
	line-height:1.7}
.faq-item.open .faq-a{
	display:block}
@media(max-width:600px){
	.faq-q{
		padding:15px 18px}
	.faq-a{
		padding:4px 18px 15px}
	.faq-section{
		padding:56px 0}
}
/* CTA DARK */
.cta-dark{
	background:var(--navy);
	padding:80px 0;
	position:relative;
	overflow:hidden}
.cta-dark::before{
	content:'';
	position:absolute;
	right:-80px;
	top:-80px;
	width:400px;
	height:400px;
	border-radius:50%;
	border:1px solid rgba(0,217,176,.12)}
.cta-inner{
	position:relative;
	z-index:2;
	display:grid;
	grid-template-columns:1fr 280px;
	gap:56px;
	align-items:center}
.cta-dark h2{
	color:#fff;
	margin-bottom:10px}
.cta-dark .sub{
	font-size:15px;
	color:rgba(255,255,255,.5);
	margin-bottom:24px;
	line-height:1.7}
.cta-list{
	list-style:none;
	display:flex;
	flex-direction:column;
	gap:8px}
.cta-list li{
	display:flex;
	align-items:flex-start;
	gap:9px;
	font-size:14px;
	color:rgba(255,255,255,.7);
	line-height:1.45}
.cta-list li::before{
	content:'';
	flex-shrink:0;
	width:17px;
	height:17px;
	border-radius:50%;
	background:rgba(0,217,176,.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312ab88' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/9px no-repeat;
	margin-top:2px}
.cta-right{
	display:flex;
	flex-direction:column;
	gap:12px}
.cta-right .btn-primary{
	justify-content:center;
	padding:17px}
.cta-tel{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:9px;
	background:rgba(255,255,255,.06);
	border:1px solid rgba(255,255,255,.12);
	padding:14px;
	text-decoration:none;
	font-size:13px;
	font-weight:600;
	color:rgba(255,255,255,.6);
	transition:background .15s}
.cta-tel:hover{
	background:rgba(255,255,255,.1);
	color:#fff}
.cta-tel svg{
	stroke:var(--nv-primary-accent);
	fill:none;
	stroke-width:2;
	stroke-linecap:round}
@media(max-width:768px){
	.cta-inner{
		grid-template-columns:1fr;
		gap:36px}
	.cta-right .btn-primary,.cta-tel{
		width:100%}
	.cta-dark{
		padding:56px 0}
}
