/* ==========================================================================
   Finke Praxismarketing — "Nature Distilled"
   Warme Erdtöne · organische Formen · sanfte 3D-Tiefe · Lora + Raleway
   ========================================================================== */

:root{
	/* Nature Distilled Palette */
	--terracotta:#C67B5C;
	--sand-beige:#D4C4A8;
	--warm-clay:#B5651D;
	--soft-cream:#F5F0E1;
	--earth-brown:#8B4513;
	--olive-green:#6B7B3C;
	--warm-stone:#9C8B7A;

	/* Aliasse (Customizer überschreibt --fpm-primary/-accent/-clay) */
	--fpm-primary:var(--terracotta);
	--fpm-accent:var(--olive-green);
	--fpm-clay:var(--warm-clay);

	/* Flächen & Text */
	--bg:#FBF7EE;
	--bg-2:#F2EADB;
	--surface:#FFFFFF;
	--surface-warm:#FBF6EC;
	--ink:#2E2620;
	--ink-soft:#5A4F45;
	--ink-mute:#857A6D;
	--line:rgba(139,69,19,.14);
	--line-2:rgba(139,69,19,.10);

	/* Radius — organisch, variiert */
	--r-sm:10px;
	--r-md:18px;
	--r-lg:28px;
	--r-xl:40px;
	--r-blob:42% 58% 60% 40% / 45% 42% 58% 55%;

	/* Schatten — weich, natürlich, warm getönt */
	--sh-sm:0 4px 14px rgba(94,63,38,.08);
	--sh-md:0 14px 38px rgba(94,63,38,.12);
	--sh-lg:0 28px 64px rgba(94,63,38,.18);
	--sh-glow:0 18px 40px rgba(198,123,92,.32);

	--container:1180px;
	--gap:clamp(16px,3vw,32px);
	--ease:cubic-bezier(.22,.61,.36,1); /* natural ease-out */

	--font-head:'Lora',Georgia,'Times New Roman',serif;
	--font-body:'Raleway',system-ui,-apple-system,'Segoe UI',sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
	margin:0;
	font-family:var(--font-body);
	color:var(--ink);
	background:
		radial-gradient(1200px 600px at 80% -10%, rgba(212,196,168,.45), transparent 60%),
		radial-gradient(900px 500px at -10% 20%, rgba(198,123,92,.10), transparent 55%),
		var(--bg);
	font-size:17px;
	line-height:1.7;
	font-weight:400;
	overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--fpm-clay);text-decoration:none;transition:color .2s var(--ease)}
a:hover{color:var(--earth-brown)}
:focus-visible{outline:3px solid var(--fpm-primary);outline-offset:3px;border-radius:6px}

/* Korn-Textur Overlay (grain) */
.fpm-grain{
	position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.5;
	mix-blend-mode:multiply;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
}

.fpm-container{width:min(var(--container),92vw);margin-inline:auto}

/* Typografie */
.fpm-h2{font-family:var(--font-head);font-weight:600;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.12;letter-spacing:-.01em;color:var(--ink);margin:0 0 .5em}
.fpm-h3{font-family:var(--font-head);font-weight:600;font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.2;margin:0 0 .4em}
.fpm-lead{font-size:clamp(1.02rem,1.5vw,1.18rem);color:var(--ink-soft);margin:0 0 1.4em;max-width:60ch}

.fpm-eyebrow{
	display:inline-flex;align-items:center;gap:.5em;
	font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;
	color:var(--fpm-clay);margin-bottom:1rem;
}
.fpm-eyebrow .fpm-icon{width:18px;height:18px}

.fpm-icon{width:20px;height:20px;flex:none;display:inline-block;vertical-align:middle}

.fpm-section{padding:clamp(64px,9vw,120px) 0;position:relative;z-index:2}
.fpm-section--muted{background:linear-gradient(180deg,var(--bg-2),var(--bg))}
.fpm-section__head{max-width:760px;margin:0 auto clamp(36px,5vw,64px);text-align:center}
.fpm-section__sub{font-size:1.08rem;color:var(--ink-soft);margin:0}

/* ---------- Buttons ---------- */
.fpm-btn{
	--btn-bg:var(--fpm-primary);--btn-fg:#fff;
	display:inline-flex;align-items:center;justify-content:center;gap:.55em;
	font-family:var(--font-body);font-weight:600;font-size:.98rem;line-height:1;
	padding:.92em 1.5em;border-radius:999px;border:1.5px solid transparent;
	cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),color .25s var(--ease);
	text-align:center;white-space:nowrap;
}
.fpm-btn .fpm-icon{width:18px;height:18px;transition:transform .25s var(--ease)}
.fpm-btn--lg{padding:1.08em 1.9em;font-size:1.02rem}
.fpm-btn--block{display:flex;width:100%}
.fpm-btn--solid{background:linear-gradient(135deg,var(--fpm-primary),var(--fpm-clay));color:#fff;box-shadow:var(--sh-glow)}
.fpm-btn--solid:hover{color:#fff;transform:translateY(-3px);box-shadow:0 26px 50px rgba(198,123,92,.42)}
.fpm-btn--solid:hover .fpm-icon{transform:translateX(4px)}
.fpm-btn--outline{background:transparent;border-color:var(--fpm-primary);color:var(--earth-brown)}
.fpm-btn--outline:hover{background:rgba(198,123,92,.12);transform:translateY(-3px);color:var(--earth-brown)}
.fpm-btn--ghost{background:rgba(255,255,255,.55);border-color:var(--line);color:var(--ink)}
.fpm-btn--ghost:hover{background:#fff;color:var(--ink);box-shadow:var(--sh-sm)}
.fpm-btn--cream{background:var(--soft-cream);color:var(--earth-brown)}
.fpm-btn--cream:hover{background:#fff;color:var(--earth-brown);transform:translateY(-3px);box-shadow:var(--sh-md)}
.fpm-btn--ghost-light{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.45);color:#fff;backdrop-filter:blur(6px)}
.fpm-btn--ghost-light:hover{background:rgba(255,255,255,.24);color:#fff}
.fpm-btn--phone{font-weight:600}

/* ---------- Header / Navbar ---------- */
.fpm-skip-link{position:absolute;left:-999px;top:0;z-index:200;background:var(--ink);color:#fff;padding:.7em 1.2em;border-radius:0 0 var(--r-sm) 0}
.fpm-skip-link:focus{left:0;color:#fff}

.fpm-header{
	position:sticky;top:0;z-index:100;
	background:rgba(251,247,238,.72);
	backdrop-filter:blur(16px) saturate(140%);
	-webkit-backdrop-filter:blur(16px) saturate(140%);
	border-bottom:1px solid var(--line-2);
	transition:box-shadow .3s var(--ease),background .3s var(--ease);
}
.fpm-header.is-stuck{box-shadow:0 10px 30px rgba(94,63,38,.10);background:rgba(251,247,238,.9)}
.fpm-header__inner{
	display:flex;align-items:center;gap:clamp(20px,3vw,48px);
	min-height:84px;padding-block:12px;
}
.fpm-brand{display:flex;align-items:center;gap:14px;flex:none}
.fpm-brand__logo{display:block}
.fpm-brand__img{height:52px;width:auto}
.fpm-brand__name{display:flex;flex-direction:column;line-height:1.05;color:var(--ink)}
.fpm-brand__name:hover{color:var(--ink)}
.fpm-brand__title{font-family:var(--font-head);font-weight:600;font-size:1.16rem;letter-spacing:-.01em}
.fpm-brand__tag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fpm-clay);font-weight:600}

.fpm-nav{margin-left:auto}
.fpm-menu{list-style:none;display:flex;align-items:center;gap:clamp(8px,1.6vw,26px);margin:0;padding:0}
.fpm-menu li{position:relative}
.fpm-menu a{
	display:block;color:var(--ink);font-weight:500;font-size:1rem;
	padding:.55em .2em;position:relative;
}
.fpm-menu>li>a::after{
	content:"";position:absolute;left:.2em;right:.2em;bottom:.1em;height:2px;
	background:linear-gradient(90deg,var(--fpm-primary),var(--fpm-clay));
	transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ease);border-radius:2px;
}
.fpm-menu>li>a:hover,.fpm-menu>li.current-menu-item>a{color:var(--earth-brown)}
.fpm-menu>li>a:hover::after,.fpm-menu>li.current-menu-item>a::after{transform:scaleX(1)}

/* Sub-menü */
.fpm-menu .sub-menu{
	position:absolute;top:calc(100% + 12px);left:0;min-width:230px;
	background:#fff;border:1px solid var(--line);border-radius:var(--r-md);
	box-shadow:var(--sh-md);padding:10px;list-style:none;margin:0;
	opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s var(--ease);z-index:30;
}
.fpm-menu li:hover>.sub-menu,.fpm-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.fpm-menu .sub-menu a{padding:.6em .8em;border-radius:var(--r-sm);font-size:.95rem}
.fpm-menu .sub-menu a:hover{background:var(--surface-warm);color:var(--earth-brown)}

.fpm-header__cta{display:flex;align-items:center;gap:12px;flex:none}
.fpm-header__cta .fpm-btn--phone{display:none}

.fpm-burger{
	display:none;flex:none;width:48px;height:48px;border:1px solid var(--line);
	background:rgba(255,255,255,.6);border-radius:14px;cursor:pointer;color:var(--ink);
	align-items:center;justify-content:center;transition:.2s var(--ease);
}
.fpm-burger:hover{background:#fff;box-shadow:var(--sh-sm)}
.fpm-burger .fpm-icon{width:24px;height:24px}

/* ---------- Drawer (mobil) ---------- */
.fpm-drawer{position:fixed;inset:0;z-index:150;visibility:hidden;pointer-events:none}
.fpm-drawer.is-open{visibility:visible;pointer-events:auto}
.fpm-drawer__backdrop{position:absolute;inset:0;background:rgba(46,38,32,.5);opacity:0;transition:opacity .3s var(--ease);backdrop-filter:blur(2px)}
.fpm-drawer.is-open .fpm-drawer__backdrop{opacity:1}
.fpm-drawer__panel{
	position:absolute;top:0;right:0;height:100%;width:min(360px,86vw);
	background:linear-gradient(180deg,var(--soft-cream),#fff);
	box-shadow:var(--sh-lg);padding:84px 28px 32px;overflow-y:auto;
	transform:translateX(100%);transition:transform .35s var(--ease);
	display:flex;flex-direction:column;gap:18px;
}
.fpm-drawer.is-open .fpm-drawer__panel{transform:translateX(0)}
.fpm-drawer__close{position:absolute;top:22px;right:22px;width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center}
.fpm-drawer__menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.fpm-drawer__menu li{border-bottom:1px solid var(--line-2)}
.fpm-drawer__menu a{display:block;padding:.95em .2em;font-family:var(--font-head);font-size:1.18rem;color:var(--ink);font-weight:500}
.fpm-drawer__menu a:hover{color:var(--fpm-clay);padding-left:.6em}
.fpm-drawer__menu .sub-menu{list-style:none;margin:0;padding:0 0 .4em .8em}
.fpm-drawer__menu .sub-menu a{font-size:1rem;font-family:var(--font-body);color:var(--ink-soft);padding:.5em .2em}
.fpm-drawer__phone{display:flex;align-items:center;gap:.6em;color:var(--earth-brown);font-weight:600;justify-content:center;margin-top:4px}

/* ---------- HERO ---------- */
.fpm-hero{position:relative;min-height:clamp(620px,92vh,920px);display:flex;align-items:center;overflow:hidden;z-index:2;isolation:isolate}
.fpm-hero__bg{position:absolute;inset:-8% 0 0;z-index:-2;will-change:transform}
.fpm-hero__img{width:100%;height:116%;object-fit:cover;filter:saturate(.92) contrast(1.02)}
.fpm-hero__veil{
	position:absolute;inset:0;z-index:-1;
	background:
		linear-gradient(105deg, rgba(46,38,32,.78) 0%, rgba(139,69,19,.46) 42%, rgba(198,123,92,.22) 72%, rgba(245,240,225,.06) 100%),
		linear-gradient(0deg, rgba(46,38,32,.55), transparent 45%);
}
.fpm-hero__inner{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,5vw,64px);align-items:center;padding-block:clamp(90px,12vh,140px);position:relative}
.fpm-hero__content{max-width:660px}
.fpm-kicker{
	display:inline-flex;align-items:center;gap:.6em;
	background:rgba(245,240,225,.16);border:1px solid rgba(245,240,225,.32);
	color:#F7EFE0;padding:.5em 1.05em;border-radius:999px;
	font-size:.82rem;font-weight:600;letter-spacing:.04em;backdrop-filter:blur(6px);margin-bottom:1.4rem;
}
.fpm-kicker .fpm-icon{width:18px;height:18px;color:var(--sand-beige)}
.fpm-hero__title{
	font-family:var(--font-head);color:#fff;font-weight:600;
	font-size:clamp(2.3rem,5.4vw,4.1rem);line-height:1.06;letter-spacing:-.015em;margin:0 0 .55em;
	text-shadow:0 2px 30px rgba(46,38,32,.4);
}
.fpm-hero__highlight{display:block;color:var(--sand-beige);font-style:italic;font-weight:500;
	background:linear-gradient(100deg,#F0E2C6,#E7C9A8 55%,#D4A07A);
	-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.fpm-hero__subtitle{color:rgba(247,239,224,.92);font-size:clamp(1.05rem,1.7vw,1.28rem);max-width:56ch;margin:0 0 2rem;line-height:1.65}
.fpm-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:1.6rem}
.fpm-hero__phone{display:inline-flex;align-items:center;gap:.6em;color:#F7EFE0;font-size:1.02rem}
.fpm-hero__phone:hover{color:#fff}
.fpm-hero__phone .fpm-icon{color:var(--sand-beige)}
.fpm-hero__phone strong{font-weight:700;letter-spacing:.02em}

/* Hero Stat-Karte — glass + 3D float */
.fpm-hero__stats{
	display:grid;grid-template-columns:1fr 1fr;gap:14px;
	background:rgba(255,255,255,.12);backdrop-filter:blur(14px);
	border:1px solid rgba(255,255,255,.28);border-radius:var(--r-lg);
	padding:22px;box-shadow:var(--sh-lg);
	transform:perspective(1200px) rotateY(-7deg) rotateX(3deg);
	transition:transform .5s var(--ease);
}
.fpm-hero__stats:hover{transform:perspective(1200px) rotateY(-2deg) rotateX(1deg)}
.fpm-stat{background:rgba(245,240,225,.1);border:1px solid rgba(255,255,255,.18);border-radius:var(--r-md);padding:16px 14px;text-align:center}
.fpm-stat__num{display:block;font-family:var(--font-head);font-weight:700;font-size:clamp(1.5rem,3vw,2.1rem);color:#fff;line-height:1}
.fpm-stat__label{display:block;margin-top:.4em;font-size:.78rem;color:rgba(247,239,224,.85);letter-spacing:.03em}

.fpm-hero__scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:26px;height:42px;border:2px solid rgba(247,239,224,.5);border-radius:14px;display:flex;justify-content:center;z-index:3}
.fpm-hero__scroll span{width:4px;height:9px;background:var(--sand-beige);border-radius:3px;margin-top:7px;animation:fpm-scroll 1.7s var(--ease) infinite}
@keyframes fpm-scroll{0%{opacity:0;transform:translateY(-4px)}40%{opacity:1}80%,100%{opacity:0;transform:translateY(12px)}}

/* ---------- SLIDER (CPT slide) ---------- */
.fpm-slider-sec{position:relative;z-index:2;margin-top:-2px}
.fpm-slider{position:relative;overflow:hidden}
.fpm-slider__track{display:flex;transition:transform .7s var(--ease);will-change:transform}
.fpm-slide{min-width:100%;position:relative;height:clamp(420px,64vh,640px)}
.fpm-slide__media{position:absolute;inset:0}
.fpm-slide__img{width:100%;height:100%;object-fit:cover}
.fpm-slide__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,38,32,.74),rgba(46,38,32,.32) 52%,transparent 88%)}
.fpm-slide__body{position:absolute;inset:0;display:flex;align-items:center}
.fpm-slide__card{max-width:600px;color:#fff}
.fpm-slide__title{font-family:var(--font-head);font-weight:600;font-size:clamp(1.7rem,4vw,3rem);line-height:1.1;margin:0 0 .4em;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.fpm-slide__text{font-size:clamp(1rem,1.6vw,1.2rem);color:rgba(247,239,224,.94);margin:0 0 .6em;max-width:50ch}
.fpm-slide__rich{color:rgba(247,239,224,.9)}
.fpm-slide__rich p{margin:.3em 0}
.fpm-slider__nav{
	position:absolute;top:50%;transform:translateY(-50%);z-index:5;
	width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.4);
	background:rgba(46,38,32,.32);backdrop-filter:blur(8px);color:#fff;cursor:pointer;
	display:flex;align-items:center;justify-content:center;transition:.25s var(--ease);
}
.fpm-slider__nav:hover{background:var(--fpm-primary);border-color:var(--fpm-primary)}
.fpm-slider__nav--prev{left:18px}
.fpm-slider__nav--prev .fpm-icon{transform:rotate(180deg)}
.fpm-slider__nav--next{right:18px}
.fpm-slider__dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:10px}
.fpm-slider__dots button{width:11px;height:11px;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:transparent;cursor:pointer;padding:0;transition:.25s var(--ease)}
.fpm-slider__dots button.is-active{background:var(--sand-beige);border-color:var(--sand-beige);width:30px;border-radius:6px}

/* ---------- INTRO ---------- */
.fpm-intro__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,72px);align-items:center}
.fpm-pillars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.fpm-pillar{
	display:flex;gap:18px;align-items:flex-start;background:var(--surface);
	border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;box-shadow:var(--sh-sm);
	transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.fpm-pillar:hover{transform:translateX(6px);box-shadow:var(--sh-md)}
.fpm-pillar__icon{flex:none;width:50px;height:50px;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--fpm-primary),var(--fpm-clay))}
.fpm-pillar__icon .fpm-icon{width:24px;height:24px}
.fpm-pillar__title{font-family:var(--font-head);font-size:1.16rem;margin:0 0 .2em}
.fpm-pillar p{margin:0;color:var(--ink-soft);font-size:.96rem}

/* ---------- CARDS (3D Tilt) ---------- */
.fpm-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:clamp(20px,2.6vw,30px);perspective:1400px}
.fpm-card{transform-style:preserve-3d;will-change:transform}
.fpm-card__link{
	display:flex;flex-direction:column;height:100%;background:var(--surface);
	border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;color:var(--ink);
	box-shadow:var(--sh-sm);transition:box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.fpm-card:hover .fpm-card__link{box-shadow:var(--sh-lg);border-color:rgba(198,123,92,.4)}
.fpm-card__media{aspect-ratio:16/10;overflow:hidden}
.fpm-card__img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.fpm-card:hover .fpm-card__img{transform:scale(1.07)}
.fpm-card__body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1;transform:translateZ(28px)}
.fpm-card__icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;margin-bottom:16px;color:var(--fpm-clay);background:var(--surface-warm);border:1px solid var(--line)}
.fpm-card__icon .fpm-icon{width:26px;height:26px}
.fpm-card__title{font-family:var(--font-head);font-size:1.28rem;font-weight:600;margin:0 0 .45em;color:var(--ink)}
.fpm-card__text{color:var(--ink-soft);font-size:.97rem;margin:0 0 1.2em;flex:1}
.fpm-card__date{font-size:.82rem;color:var(--fpm-clay);font-weight:600;letter-spacing:.03em;margin-bottom:.4em;display:block}
.fpm-card__more{display:inline-flex;align-items:center;gap:.45em;font-weight:600;color:var(--fpm-clay);font-size:.95rem}
.fpm-card__more .fpm-icon{width:17px;height:17px;transition:transform .25s var(--ease)}
.fpm-card:hover .fpm-card__more .fpm-icon{transform:translateX(5px)}

/* ---------- MARQUEE (Partner-Logos) ---------- */
.fpm-marquee{margin-top:clamp(28px,4vw,48px);overflow:hidden;position:relative;
	-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);}
.fpm-marquee__track{display:flex;align-items:center;gap:clamp(36px,5vw,72px);width:max-content;animation:fpm-marquee 42s linear infinite}
.fpm-marquee:hover .fpm-marquee__track{animation-play-state:paused}
.fpm-marquee__item{flex:none;height:64px;display:grid;place-items:center;padding:12px 8px}
.fpm-marquee__logo{max-height:60px;width:auto;object-fit:contain;filter:grayscale(1) opacity(.62);transition:filter .3s var(--ease),transform .3s var(--ease)}
.fpm-marquee__item:hover .fpm-marquee__logo{filter:grayscale(0) opacity(1);transform:scale(1.05)}
@keyframes fpm-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- ABOUT ---------- */
.fpm-about__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,80px);align-items:center}
.fpm-about__media{position:relative}
.fpm-about__img{width:100%;border-radius:var(--r-blob);box-shadow:var(--sh-lg);aspect-ratio:4/5;object-fit:cover}
.fpm-about__badge{
	position:absolute;right:-10px;bottom:-18px;width:130px;height:130px;border-radius:50%;
	background:linear-gradient(135deg,var(--fpm-accent),#56652f);color:#fff;
	display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
	box-shadow:var(--sh-md);font-size:.78rem;line-height:1.2;border:5px solid var(--bg);
}
.fpm-about__badge-num{font-family:var(--font-head);font-size:2.6rem;font-weight:700;line-height:1}
.fpm-checklist{list-style:none;margin:0 0 1.8em;padding:0;display:flex;flex-direction:column;gap:12px}
.fpm-checklist li{display:flex;align-items:center;gap:.7em;font-weight:500;color:var(--ink)}
.fpm-checklist .fpm-icon{width:22px;height:22px;color:#fff;background:var(--fpm-accent);border-radius:50%;padding:4px;flex:none}

/* ---------- CTA Band ---------- */
.fpm-ctaband{position:relative;z-index:2;padding:clamp(56px,8vw,96px) 0;overflow:hidden;
	background:linear-gradient(120deg,var(--earth-brown),var(--warm-clay) 55%,var(--terracotta));}
.fpm-ctaband::before{content:"";position:absolute;inset:0;opacity:.5;mix-blend-mode:soft-light;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E")}
.fpm-ctaband__inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:clamp(24px,5vw,56px);flex-wrap:wrap}
.fpm-ctaband__title{font-family:var(--font-head);color:#fff;font-size:clamp(1.8rem,3.6vw,2.7rem);margin:0 0 .3em;font-weight:600}
.fpm-ctaband__text{color:rgba(247,239,224,.92);margin:0;max-width:52ch;font-size:1.05rem}
.fpm-ctaband__actions{display:flex;flex-wrap:wrap;gap:14px}

/* ---------- Page Hero / Breadcrumb / Prose ---------- */
.fpm-pagehero{position:relative;padding:clamp(120px,16vh,180px) 0 clamp(50px,7vw,80px);overflow:hidden;
	background:linear-gradient(135deg,var(--earth-brown),var(--warm-clay) 60%,var(--terracotta));}
.fpm-pagehero--img{background-image:var(--fpm-hero-img);background-size:cover;background-position:center}
.fpm-pagehero__veil{position:absolute;inset:0;background:linear-gradient(120deg,rgba(46,38,32,.82),rgba(139,69,19,.5) 60%,rgba(198,123,92,.34))}
.fpm-pagehero>.fpm-container{position:relative;z-index:2}
.fpm-pagehero__icon{display:inline-flex;width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;align-items:center;justify-content:center;margin-bottom:18px}
.fpm-pagehero__icon .fpm-icon{width:30px;height:30px}
.fpm-pagehero__title{font-family:var(--font-head);color:#fff;font-weight:600;font-size:clamp(2rem,5vw,3.4rem);line-height:1.1;margin:0;letter-spacing:-.015em;text-shadow:0 2px 24px rgba(0,0,0,.3)}
.fpm-pagehero__sub{color:rgba(247,239,224,.92);font-size:1.12rem;margin:.7em 0 0;max-width:60ch}
.fpm-breadcrumb{display:flex;align-items:center;gap:.55em;color:rgba(247,239,224,.85);font-size:.9rem;margin-bottom:1.1rem;flex-wrap:wrap}
.fpm-breadcrumb a{color:rgba(247,239,224,.9)}
.fpm-breadcrumb a:hover{color:#fff}

.fpm-prose{max-width:820px;margin-inline:auto;font-size:1.08rem;color:var(--ink-soft)}
.fpm-prose h2{font-family:var(--font-head);color:var(--ink);font-size:clamp(1.5rem,3vw,2.1rem);margin:1.6em 0 .5em;font-weight:600}
.fpm-prose h3{font-family:var(--font-head);color:var(--ink);font-size:1.4rem;margin:1.4em 0 .4em;font-weight:600}
.fpm-prose p{margin:0 0 1.2em}
.fpm-prose ul,.fpm-prose ol{margin:0 0 1.4em;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:.7em}
.fpm-prose ul li{position:relative;padding-left:2em}
.fpm-prose ul li::before{content:"";position:absolute;left:0;top:.55em;width:13px;height:13px;border-radius:4px 7px 5px 8px;background:linear-gradient(135deg,var(--fpm-primary),var(--fpm-clay))}
.fpm-prose ol{counter-reset:fpm;padding-left:0}
.fpm-prose ol li{position:relative;padding-left:2.4em;counter-increment:fpm}
.fpm-prose ol li::before{content:counter(fpm);position:absolute;left:0;top:0;width:1.7em;height:1.7em;border-radius:50%;background:var(--surface-warm);border:1px solid var(--line);color:var(--fpm-clay);font-weight:700;font-size:.8em;display:grid;place-items:center}
.fpm-prose a{font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(181,101,29,.4)}
.fpm-prose img{border-radius:var(--r-md);box-shadow:var(--sh-md);margin:1.4em 0}
.fpm-prose blockquote{margin:1.6em 0;padding:1.2em 1.6em;background:var(--surface-warm);border-left:4px solid var(--fpm-primary);border-radius:0 var(--r-md) var(--r-md) 0;font-family:var(--font-head);font-style:italic;color:var(--ink)}
.fpm-prose .fpm-lead-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,3vw,34px);box-shadow:var(--sh-sm);margin:1.6em 0}

.fpm-service-cta{margin-top:2.4em;text-align:center;background:var(--surface-warm);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(28px,4vw,48px)}
.fpm-service-cta p{margin:0 0 1.4em;color:var(--ink-soft)}

.fpm-pagination{margin-top:48px;display:flex;justify-content:center}
.fpm-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.fpm-pagination a,.fpm-pagination span{display:grid;place-items:center;min-width:46px;height:46px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:600}
.fpm-pagination .current{background:linear-gradient(135deg,var(--fpm-primary),var(--fpm-clay));color:#fff;border-color:transparent}
.fpm-pagination a:hover{background:var(--surface-warm);color:var(--earth-brown)}

/* ---------- Footer ---------- */
.fpm-footer{position:relative;z-index:2;background:#2A231D;color:#E7DCC9;padding-top:clamp(56px,7vw,84px)}
.fpm-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1.2fr;gap:clamp(28px,5vw,56px);padding-bottom:clamp(40px,5vw,60px)}
.fpm-footer__logo img{height:56px;width:auto;margin-bottom:16px;filter:brightness(0) invert(1) opacity(.92)}
.fpm-footer__claim{color:#C6B8A2;max-width:42ch;font-size:.98rem}
.fpm-footer__social{display:flex;gap:12px;margin-top:18px}
.fpm-social{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;color:#E7DCC9;transition:.25s var(--ease)}
.fpm-social:hover{background:var(--fpm-primary);color:#fff;transform:translateY(-3px)}
.fpm-footer__title{font-family:var(--font-head);color:#fff;font-size:1.15rem;margin:0 0 1.1em;font-weight:600}
.fpm-footer__menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7em}
.fpm-footer__menu a{color:#C6B8A2;font-size:.98rem}
.fpm-footer__menu a:hover{color:#fff;padding-left:.35em}
.fpm-footer__contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.fpm-footer__contact li{display:flex;align-items:flex-start;gap:.7em;color:#C6B8A2;font-size:.98rem}
.fpm-footer__contact .fpm-icon{width:20px;height:20px;color:var(--terracotta);margin-top:2px;flex:none}
.fpm-footer__contact a{color:#C6B8A2}
.fpm-footer__contact a:hover{color:#fff}
.fpm-footer__bar{border-top:1px solid rgba(255,255,255,.1)}
.fpm-footer__bar-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:.86rem;color:#A8997F;flex-wrap:wrap}
.fpm-footer__legal{display:flex;gap:20px}
.fpm-footer__legal a{color:#A8997F}
.fpm-footer__legal a:hover{color:#fff}

/* ---------- To-Top ---------- */
.fpm-totop{position:fixed;right:22px;bottom:22px;z-index:90;width:50px;height:50px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,var(--fpm-primary),var(--fpm-clay));color:#fff;box-shadow:var(--sh-md);opacity:0;visibility:hidden;transform:translateY(14px) rotate(-90deg);transition:.3s var(--ease);display:grid;place-items:center}
.fpm-totop.is-visible{opacity:1;visibility:visible;transform:translateY(0) rotate(-90deg)}
.fpm-totop:hover{transform:translateY(-4px) rotate(-90deg)}

/* ---------- Reveal-Animation ---------- */
.fpm-reveal{opacity:0;transform:translateY(34px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.fpm-reveal.is-visible{opacity:1;transform:none}

/* ---------- Responsive ---------- */
/* Phone-Button im Header nur auf sehr breiten Screens (kein Gedränge) */
@media (min-width:1320px){
	.fpm-header__cta .fpm-btn--phone{display:inline-flex}
}
/* Brand-Tagline auf mittleren Breiten ausblenden, damit die Navbar großzügig bleibt */
@media (max-width:1200px){
	.fpm-brand__tag{display:none}
}
@media (max-width:1080px){
	.fpm-hero__inner{grid-template-columns:1fr;gap:36px}
	.fpm-hero__stats{max-width:460px;transform:none}
	.fpm-hero__stats:hover{transform:none}
}
/* Echtes Burger-Menü ab < 1024px (Navbar darf nie quetschen/überlaufen) */
@media (max-width:1024px){
	.fpm-nav,.fpm-header__cta{display:none}
	.fpm-burger{display:flex}
}
@media (max-width:900px){
	.fpm-intro__grid,.fpm-about__grid{grid-template-columns:1fr}
	.fpm-about__media{max-width:440px;margin-inline:auto}
	.fpm-footer__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
	body{font-size:16px}
	.fpm-header__inner{min-height:72px}
	.fpm-brand__img{height:44px}
	.fpm-brand__tag{display:none}
	.fpm-hero__actions .fpm-btn{flex:1 1 auto}
	.fpm-hero__stats{grid-template-columns:1fr 1fr}
	.fpm-slide__scrim{background:linear-gradient(0deg,rgba(46,38,32,.82),rgba(46,38,32,.3))}
	.fpm-slider__nav{width:42px;height:42px}
	.fpm-footer__grid{grid-template-columns:1fr}
	.fpm-ctaband__inner{flex-direction:column;align-items:flex-start}
}

/* ---------- prefers-reduced-motion ---------- */
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
	.fpm-reveal{opacity:1;transform:none}
	.fpm-marquee__track{animation:none}
	.fpm-hero__bg{transform:none!important}
}
