@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;500;600;700&family=Inter:wght@400;500;600&display=swap');

#lv-fpv{
	--g:#d4af37; --gl:#f0d879; --w:#f5f0e8; --grey:#ab9c98;
	position:relative; box-sizing:border-box;
	width:auto; max-width:100vw;
	margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
	padding:clamp(52px,6.5vw,96px) 20px clamp(56px,7vw,96px);
	font-family:var(--lvt-schrift-text); color:var(--grey);
	overflow:hidden;
}
#lv-fpv *{ box-sizing:border-box; }
#lv-fpv .lv-fpv-inner{ max-width:1200px; margin:0 auto; }

/* == Gemeinsame Buehne: Goldkante, Beschnitt, Reflex, Vignette == */
#lv-fpv .lv-fpv-stage{
	--cut:18px; position:relative; padding:1px; border:0;
	background:linear-gradient(150deg, rgba(212,175,55,.55), rgba(212,175,55,.12) 45%, rgba(212,175,55,.42));
	clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));
	transition:background .45s ease;
}
#lv-fpv .lv-fpv-frame{
	position:relative; overflow:hidden; background:var(--lvt-karte-tief);
	clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));
}
#lv-fpv .lv-fpv-frame::before{
	content:''; position:absolute; top:-30%; left:0; width:36%; height:160%; z-index:4;
	pointer-events:none;
	background:linear-gradient(90deg, transparent, rgba(255,246,220,.22), transparent);
	transform:translateX(-190%) skewX(-18deg);
}
#lv-fpv.is-in .lv-fpv-frame::before{ animation:lvFpvSheen 1.25s var(--lvt-weich) both .3s; }
@keyframes lvFpvSheen{ to{ transform:translateX(330%) skewX(-18deg); } }

/* == Titelbuehne == */
#lv-fpv .lv-fpv-hero{ --cut:22px; }
#lv-fpv .lv-fpv-hero .lv-fpv-frame{
	display:flex; align-items:center; justify-content:center;
	min-height:clamp(420px,64vh,700px);
	padding:clamp(38px,6vw,76px) clamp(20px,5vw,64px);
	text-align:center;
}
#lv-fpv .lv-fpv-hero img{
	position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
	object-position:51% 64%;
	filter:brightness(.52) contrast(1.06) saturate(.92);
	z-index:0;
}
#lv-fpv .lv-fpv-hero .lv-fpv-veil{
	position:absolute; inset:0; z-index:1; pointer-events:none;
	background:
		radial-gradient(ellipse at 50% 50%, rgba(0,0,0,.10) 0%, rgba(0,0,0,.55) 62%, rgba(0,0,0,.88) 100%),
		repeating-linear-gradient(45deg, rgba(212,175,55,.05) 0px, rgba(212,175,55,.05) 1px, transparent 1px, transparent 15px);
}
#lv-fpv .lv-fpv-hero .lv-fpv-hbox{ position:relative; z-index:2; max-width:840px; }

#lv-fpv .lv-fpv-kicker{
	display:inline-block; font:600 11px/1 var(--lvt-schrift-titel);
	letter-spacing:.28em; text-transform:uppercase; color:var(--g); margin-bottom:18px;
}
#lv-fpv .lv-fpv-title{
	font-family:var(--lvt-schrift-titel); font-weight:600;
	font-size:clamp(1.9rem,5.2vw,3.6rem); line-height:1.02; letter-spacing:-.02em;
	color:var(--w); margin:0;
}
#lv-fpv .lv-fpv-title span{
	background-image:linear-gradient(120deg,var(--lvt-gold-tief) 0%,var(--lvt-gold-licht) 22%,var(--lvt-gold-mittel) 48%,var(--lvt-gold-weiss) 72%,var(--lvt-gold-tief) 100%);
	-webkit-background-clip:text; background-clip:text; color:transparent;
}
#lv-fpv .lv-fpv-hlead{
	margin:22px auto 0; max-width:660px;
	font-size:clamp(1rem,1.6vw,1.11rem); line-height:1.66; color:#cfc7c2;
}
#lv-fpv .lv-fpv-hlead strong{ color:var(--w); font-weight:500; }
#lv-fpv .lv-fpv-rule{
	width:1px; height:46px; margin:26px auto 0;
	background:linear-gradient(180deg, var(--g), transparent);
}

/* == Abschnittskopf == */
#lv-fpv .lv-fpv-head{ text-align:center; margin:clamp(54px,6.4vw,92px) 0 clamp(26px,3.2vw,38px); }
#lv-fpv .lv-fpv-h2{
	font-family:var(--lvt-schrift-titel); font-weight:600;
	font-size:clamp(1.5rem,3.6vw,2.5rem); line-height:1.06; letter-spacing:-.015em;
	color:var(--w); margin:0;
}
#lv-fpv .lv-fpv-h2 span{
	background-image:linear-gradient(120deg,var(--lvt-gold-tief) 0%,var(--lvt-gold-licht) 22%,var(--lvt-gold-mittel) 48%,var(--lvt-gold-weiss) 72%,var(--lvt-gold-tief) 100%);
	-webkit-background-clip:text; background-clip:text; color:transparent;
}
#lv-fpv .lv-fpv-sub{
	max-width:720px; margin:16px auto 0;
	font-size:clamp(.98rem,1.4vw,1.05rem); line-height:1.65;
}

/* == Showreel == */
#lv-fpv .lv-fpv-reel{ --cut:16px; }
#lv-fpv .lv-fpv-reel .lv-fpv-frame{ aspect-ratio:16 / 9; }
#lv-fpv .lv-fpv-reel iframe{
	position:absolute; inset:0; width:100%; height:100%; border:0; z-index:2;
}
#lv-fpv .lv-fpv-cap{
	margin:14px 2px 0; text-align:center;
	font-size:.82rem; line-height:1.55; color:var(--lvt-grau-tief);
}

/* == Staerken-Raster == */
#lv-fpv .lv-fpv-grid{
	display:grid; grid-template-columns:repeat(auto-fit, minmax(272px, 1fr));
	gap:clamp(14px,1.7vw,20px);
}
#lv-fpv .lv-fpv-card{
	--cut:14px; position:relative; padding:1px; border:0;
	background:linear-gradient(150deg, rgba(212,175,55,.34), rgba(212,175,55,.08) 45%, rgba(212,175,55,.26));
	clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));
	transition:background .4s ease, opacity .4s ease, transform .5s var(--lvt-weich);
}
#lv-fpv .lv-fpv-cbody{
	position:relative; overflow:hidden; height:100%;
	padding:26px 24px 28px;
	background:
		repeating-linear-gradient(45deg, rgba(212,175,55,.06) 0px, rgba(212,175,55,.06) 1px, transparent 1px, transparent 14px),
		linear-gradient(180deg, var(--lvt-karte-hell) 0%, var(--lvt-karte) 60%, var(--lvt-karte-tief) 100%);
	clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));
}
#lv-fpv .lv-fpv-cbody::before{
	content:''; position:absolute; top:-30%; left:0; width:38%; height:160%; pointer-events:none;
	background:linear-gradient(90deg, transparent, rgba(255,246,220,.20), transparent);
	transform:translateX(-190%) skewX(-18deg);
	transition:transform .95s var(--lvt-weich);
}
#lv-fpv .lv-fpv-num{
	display:block; font:600 10px/1 var(--lvt-schrift-titel);
	letter-spacing:.24em; color:var(--g); margin-bottom:14px;
}
#lv-fpv .lv-fpv-ct{
	font-family:var(--lvt-schrift-titel); font-weight:600;
	font-size:1.03rem; line-height:1.22; letter-spacing:-.005em;
	color:var(--w); margin:0 0 10px;
}
#lv-fpv .lv-fpv-cx{ font-size:.93rem; line-height:1.6; margin:0; }
#lv-fpv .lv-fpv-cx strong{ color:var(--w); font-weight:500; }

@media (hover: hover){
	#lv-fpv .lv-fpv-grid:hover .lv-fpv-card{ opacity:.42; }
	#lv-fpv .lv-fpv-grid:hover .lv-fpv-card:hover{ opacity:1; }
	#lv-fpv .lv-fpv-card:hover{
		transform:translateY(-4px);
		background:linear-gradient(150deg, rgba(212,175,55,1), rgba(240,216,121,.5) 45%, rgba(212,175,55,.9));
	}
	#lv-fpv .lv-fpv-card:hover .lv-fpv-cbody::before{ transform:translateX(330%) skewX(-18deg); }
	#lv-fpv .lv-fpv-stage:hover{
		background:linear-gradient(150deg, rgba(212,175,55,.9), rgba(240,216,121,.45) 45%, rgba(212,175,55,.8));
	}
}

/* == Bildabschnitt mit Text == */
#lv-fpv .lv-fpv-split{
	display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
	gap:clamp(24px,3vw,44px); align-items:center;
}
#lv-fpv .lv-fpv-shot{ --cut:16px; }
#lv-fpv .lv-fpv-shot .lv-fpv-frame{ aspect-ratio:16 / 9; }
#lv-fpv .lv-fpv-shot img{
	position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
	object-position:51% 51%;
	filter:grayscale(.28) brightness(.8) contrast(1.05);
	transform:scale(1.01);
	transition:filter .6s ease, transform .9s var(--lvt-weich);
	z-index:0;
}
@media (hover: hover){
	#lv-fpv .lv-fpv-shot:hover img{ filter:grayscale(0) brightness(1) contrast(1); transform:scale(1.06); }
}
#lv-fpv .lv-fpv-shot .lv-fpv-frame::after{
	content:''; position:absolute; inset:0; z-index:2; pointer-events:none;
	background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 62%, rgba(6,6,6,.5) 100%);
}
#lv-fpv .lv-fpv-quote{
	position:relative; padding-left:22px;
	border-left:1px solid rgba(212,175,55,.4);
}
#lv-fpv .lv-fpv-qk{
	display:block; font:600 10px/1 var(--lvt-schrift-titel);
	letter-spacing:.24em; text-transform:uppercase; color:var(--g); margin-bottom:14px;
}
#lv-fpv .lv-fpv-quote p{
	font-size:clamp(.98rem,1.4vw,1.06rem); line-height:1.68; margin:0 0 14px;
}
#lv-fpv .lv-fpv-quote p:last-child{ margin-bottom:0; }
#lv-fpv .lv-fpv-quote strong{ color:var(--w); font-weight:500; }

/* == Abschluss == */
#lv-fpv .lv-fpv-outro{
	max-width:800px; margin:clamp(44px,5.2vw,68px) auto 0; text-align:center;
	font-size:clamp(1rem,1.5vw,1.08rem); line-height:1.68; color:var(--w);
}
#lv-fpv .lv-fpv-cta-row{ display:flex; justify-content:center; margin-top:28px; }
#lv-fpv .lv-fpv-cta{
	--cut:9px;
	position:relative; z-index:0; isolation:isolate;
	display:inline-flex; align-items:center; justify-content:center; gap:10px;
	padding:14px 30px; border:0; border-radius:0;
	font:600 10px/1 var(--lvt-schrift-titel); letter-spacing:.2em;
	text-transform:uppercase; text-decoration:none; white-space:nowrap; color:var(--lvt-schwarz);
	background:linear-gradient(135deg, rgba(255,246,214,.9), rgba(212,175,55,.5) 55%, rgba(255,246,214,.75));
	clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));
	transition:transform .4s var(--lvt-weich), background .35s ease;
}
#lv-fpv .lv-fpv-cta::before{
	content:''; position:absolute; inset:1px; z-index:-1;
	background:linear-gradient(120deg,var(--lvt-gold-mittel) 0%,var(--lvt-gold-licht) 24%,var(--lvt-gold) 50%,var(--lvt-gold-weiss) 74%,var(--lvt-gold-mittel) 100%);
	clip-path:polygon(calc(var(--cut) - 1px) 0, 100% 0, 100% calc(100% - var(--cut) + 1px), calc(100% - var(--cut) + 1px) 100%, 0 100%, 0 calc(var(--cut) - 1px));
	transition:background .35s ease;
}
#lv-fpv .lv-fpv-cta::after{
	content:''; position:absolute; top:0; bottom:0; left:0; width:40%; pointer-events:none;
	background:linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
	transform:translateX(-180%) skewX(-18deg);
	transition:transform .8s var(--lvt-weich);
}
#lv-fpv .lv-fpv-cta:hover{ transform:translateY(-2px); background:linear-gradient(135deg,var(--lvt-gold-creme), rgba(240,216,121,.9) 55%, var(--lvt-gold-creme)); }
#lv-fpv .lv-fpv-cta:hover::after{ transform:translateX(340%) skewX(-18deg); }
#lv-fpv .lv-fpv-cta:focus{ outline:none; }
#lv-fpv .lv-fpv-cta:focus-visible{ outline:1px dashed rgba(212,175,55,.75); outline-offset:5px; }

/* == Gestaffeltes Einblenden == */
#lv-fpv .lv-fpv-rv{
	opacity:0; transform:translateY(26px);
	transition:opacity .7s ease, transform .8s var(--lvt-weich);
}
#lv-fpv.is-in .lv-fpv-rv{ opacity:1; transform:none; }
#lv-fpv.is-in .lv-fpv-rv[data-d="2"]{ transition-delay:.08s; }
#lv-fpv.is-in .lv-fpv-rv[data-d="3"]{ transition-delay:.16s; }
#lv-fpv.is-in .lv-fpv-rv[data-d="4"]{ transition-delay:.24s; }
#lv-fpv.is-in .lv-fpv-rv[data-d="5"]{ transition-delay:.32s; }
#lv-fpv.is-in .lv-fpv-rv[data-d="6"]{ transition-delay:.40s; }

@media (max-width:900px){
	#lv-fpv .lv-fpv-split{ grid-template-columns:1fr; }
	#lv-fpv .lv-fpv-quote{ padding-left:0; padding-top:18px; border-left:0; border-top:1px solid rgba(212,175,55,.4); }
}
@media (max-width:860px){
	#lv-fpv{ padding-left:16px; padding-right:16px; }
	#lv-fpv .lv-fpv-hero{ --cut:14px; }
	#lv-fpv .lv-fpv-reel, #lv-fpv .lv-fpv-shot{ --cut:12px; }
	#lv-fpv .lv-fpv-card{ --cut:11px; }
	#lv-fpv .lv-fpv-hero .lv-fpv-frame{ min-height:clamp(340px,58vh,520px); }
	#lv-fpv .lv-fpv-shot img{ filter:grayscale(0) brightness(.9) contrast(1.02); }
	#lv-fpv .lv-fpv-cta{ --cut:7px; padding:13px 22px; letter-spacing:.16em; }
}
@media (hover: none){
	#lv-fpv .lv-fpv-cta:hover{ transform:none; }
}
@media (prefers-reduced-motion: reduce){
	#lv-fpv .lv-fpv-rv{ transition-duration:.01s !important; transition-delay:0s !important; }
	#lv-fpv.is-in .lv-fpv-frame::before{ animation:none !important; }
	#lv-fpv .lv-fpv-card, #lv-fpv .lv-fpv-cta, #lv-fpv .lv-fpv-shot img,
	#lv-fpv .lv-fpv-cbody::before, #lv-fpv .lv-fpv-cta::after{
		transition-duration:.01s !important;
	}
}
