:root,
[data-theme="dark"] {
	color-scheme: dark;
	--site-bg: #09090b;
	--site-fg: #f4f4f5;
	--site-muted: #a1a1aa;
	--site-line: rgba(255, 255, 255, .08);
	--site-violet: #7c3aed;
	--site-violet-2: #8b5cf6;
	--site-glass: rgba(24, 24, 27, .62);
	--site-glass-border: rgba(196, 181, 253, .18);
	--site-radius: 1.25rem;
	--site-shadow: 0 24px 80px rgba(0, 0, 0, .35);
	font-family: Inter, ui-sans-serif, system-ui, sans-serif;
}

* {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

body.site {
	margin: 0;
	min-height: 100vh;
	overflow-x: hidden;
	background:
		radial-gradient(circle at 12% 0%, rgba(124, 58, 237, .28), transparent 34rem),
		radial-gradient(circle at 90% 10%, rgba(59, 130, 246, .16), transparent 28rem),
		var(--site-bg);
	color: var(--site-fg);
}

a {
	color: #c4b5fd;
	text-decoration: none;
}

a:hover {
	color: #ede9fe;
}

.site-skip {
	position: absolute;
	left: -999px;
	top: 0;
	background: #fff;
	color: #09090b;
	padding: .5rem 1rem;
	z-index: 20;
}

.site-skip:focus {
	left: 1rem;
	top: 1rem;
}

.site-shell {
	width: min(1120px, calc(100% - 2rem));
	margin: 0 auto;
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 10;
	backdrop-filter: blur(20px);
	background: rgba(3, 7, 18, .78);
	border-bottom: 1px solid rgba(107, 114, 128, .08);
}

/* Landingpage-Komposition nach dem Salesflw-Designentwurf. */
:root,
[data-theme="dark"] {
	--site-bg: #020817;
	--site-fg: #f8fafc;
	--site-muted: #9ba7bc;
	--site-line: rgba(111, 143, 190, .13);
	--site-glass: linear-gradient(145deg, rgba(15, 27, 50, .76), rgba(4, 12, 28, .88));
	--site-glass-border: rgba(107, 141, 190, .23);
	--site-radius: .78rem;
	--site-shadow: 0 18px 45px rgba(0, 0, 0, .24);
}

body.site {
	background:
		radial-gradient(circle at 50% -8%, rgba(27, 126, 222, .12), transparent 30rem),
		radial-gradient(circle at 4% 8%, rgba(124, 58, 237, .16), transparent 25rem),
		radial-gradient(circle at 96% 12%, rgba(29, 78, 216, .12), transparent 25rem),
		radial-gradient(circle at 22% 24%, rgba(59, 130, 246, .45) 0 1px, transparent 1.5px),
		radial-gradient(circle at 76% 17%, rgba(168, 85, 247, .42) 0 1px, transparent 1.5px),
		linear-gradient(180deg, #020817 0%, #030817 44%, #020611 100%);
	background-size: auto, auto, auto, 19rem 19rem, 23rem 23rem, auto;
}

.site-shell,
.site-header .site-shell,
.site-hero > .site-shell {
	width: min(1180px, calc(100% - 3rem));
}

.site-header {
	background: rgba(2, 8, 23, .84);
	border-bottom-color: rgba(77, 117, 173, .09);
}

.site-header__row {
	min-height: 4.65rem;
	gap: 1.6rem;
}

.site-brand__logo {
	height: 31px;
}

.site-nav {
	gap: 1.85rem;
}

.site-nav__link,
.site-nav__toggle,
.site-link {
	font-size: .82rem;
}

.site-header__actions {
	gap: 1.2rem;
}

.site-header .site-btn {
	min-width: 8.15rem;
	min-height: 2.55rem;
	font-size: .82rem;
}

.site-hero:has(.site-showcase) {
	padding: 1.45rem 0 .5rem;
}

.site-hero__grid {
	grid-template-columns: minmax(0, .9fr) minmax(0, 1.25fr);
	gap: 2.75rem;
	min-height: 27rem;
}

.site-badge {
	align-items: center;
	gap: .35rem;
	padding: .23rem .68rem;
	border-color: rgba(145, 105, 235, .34);
	background: rgba(25, 23, 64, .58);
	font-size: .72rem;
}

.site-hero__title {
	max-width: 35rem;
	margin: .8rem 0 .85rem;
	font-size: clamp(2.65rem, 4.25vw, 3.65rem);
	line-height: 1.03;
	letter-spacing: -.045em;
	background: none;
	-webkit-background-clip: initial;
	background-clip: initial;
	color: #f8fafc;
	text-shadow: 0 2px 22px rgba(148, 163, 184, .14);
}

.site-hero__title span {
	background: linear-gradient(100deg, #a855f7 0%, #786df5 45%, #19bff2 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.site-hero .site-lead {
	max-width: 34rem;
	font-size: .98rem;
	line-height: 1.5;
}

.site-hero__actions {
	margin: 1.15rem 0 1rem;
}

.site-hero__actions .site-btn {
	min-width: 9.1rem;
}

.site-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	font-size: .72rem;
}

.site-trust li {
	padding: 0 .85rem;
	border-right: 1px solid var(--site-line);
}

.site-trust li:first-child {
	padding-left: 0;
}

.site-trust li:last-child {
	border-right: 0;
}

.site-showcase.is-enhanced {
	width: 100%;
	height: 26.5rem;
	margin-right: 0;
}

.site-showcase.is-enhanced .site-showcase__viewport {
	height: 24rem;
}

.site-showcase.is-enhanced .site-showcase__card {
	top: 1.15rem;
	width: 11.85rem;
	border-radius: .8rem;
}

.site-showcase.is-enhanced .site-showcase__card[data-position="-2"] {
	transform: translateX(calc(-50% - 14.5rem)) translateY(1.35rem) scale(.84);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="-1"] {
	transform: translateX(calc(-50% - 7.6rem)) translateY(.65rem) scale(.94);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="0"] {
	transform: translateX(-50%) scale(1.055);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="1"] {
	transform: translateX(calc(-50% + 7.6rem)) translateY(.65rem) scale(.94);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="2"] {
	transform: translateX(calc(-50% + 14.5rem)) translateY(1.35rem) scale(.84);
}

.site-showcase__meta {
	min-height: 6.4rem;
	padding: .8rem .8rem .7rem;
}

.site-showcase__meta strong {
	font-size: .88rem;
}

.site-showcase__meta > span {
	font-size: .69rem;
}

.site-showcase.is-enhanced .site-showcase__arrow {
	top: 42%;
	width: 2.25rem;
	height: 2.25rem;
	font-size: 1.35rem;
}

.site-showcase.is-enhanced [data-showcase-prev] { left: -.4rem; }
.site-showcase.is-enhanced [data-showcase-next] { right: -.4rem; }

.site-showcase.is-enhanced .site-showcase__dots {
	bottom: .7rem;
}

.site-section {
	padding: 1.25rem 0;
}

.site-section--center > .site-shell > h2,
.site-section--center > .site-shell > .site-lead {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.site-section h2,
.site-cta h2 {
	font-size: clamp(1.35rem, 2.2vw, 1.7rem);
	margin-bottom: .25rem;
}

.site-section > .site-shell > .site-lead {
	font-size: .85rem;
	line-height: 1.4;
}

.site-glass {
	padding: 1.05rem 1.1rem;
	box-shadow: var(--site-shadow), inset 0 1px 0 rgba(255, 255, 255, .018);
	backdrop-filter: blur(14px);
	transition: transform .22s ease, border-color .22s ease, background .22s ease;
}

.site-glass:hover {
	transform: translateY(-2px);
	border-color: rgba(91, 183, 245, .34);
}

.site-product-grid,
.site-feature-grid,
.site-plan-grid,
.site-steps {
	margin-top: .9rem;
	gap: .75rem;
}

.site-product-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.site-product {
	min-height: 10.6rem;
}

.site-product__top {
	margin-bottom: .65rem;
}

.site-product h3,
.site-feature h3,
.site-steps h3,
.site-plan h3 {
	font-size: .96rem;
	margin-bottom: .4rem;
}

.site-product p,
.site-feature p,
.site-steps p,
.site-plan ul {
	font-size: .76rem;
	line-height: 1.42;
}

.site-card-icon {
	width: 2.35rem;
	height: 2.35rem;
	flex-basis: 2.35rem;
	border-radius: .65rem;
	font-size: 1.4rem;
}

.site-feature-grid {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.site-feature {
	min-height: 10.15rem;
	padding: .9rem;
	text-align: center;
}

.site-feature .site-card-icon {
	margin: 0 auto .65rem;
	background: transparent;
	border: 0;
	box-shadow: none;
	font-size: 2rem;
}

.site-feature h3 {
	font-size: .82rem;
}

.site-feature p {
	font-size: .68rem;
}

.site-steps {
	gap: 1.35rem;
}

.site-steps > li {
	position: relative;
	min-height: 8.5rem;
	padding: .9rem 1rem;
}

.site-steps > li:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 1.8rem;
	left: calc(100% + .15rem);
	width: 1.05rem;
	border-top: 1px dashed rgba(112, 145, 194, .52);
}

.site-steps__num {
	width: 1.95rem;
	height: 1.95rem;
	background: rgba(6, 15, 35, .9);
	border: 1px solid rgba(77, 164, 235, .65);
}

.site-plan-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.site-plan {
	display: flex;
	min-height: 17.5rem;
	flex-direction: column;
}

.site-plan.is-featured {
	border-color: rgba(177, 79, 241, .7);
	box-shadow: 0 0 30px rgba(65, 149, 255, .12), 0 0 24px rgba(177, 79, 241, .12);
}

.site-plan__price {
	font-size: 1.75rem;
}

.site-plan ul {
	flex: 1;
}

.site-center {
	margin-top: .8rem;
	font-size: .8rem;
}

.site-cta {
	padding: 1rem 0 1.2rem;
}

.site-cta__inner {
	min-height: 5.2rem;
	padding: 1rem 1.4rem;
	border-radius: .85rem;
	background:
		radial-gradient(circle at 90% 50%, rgba(197, 64, 238, .32), transparent 15rem),
		linear-gradient(100deg, rgba(26, 28, 75, .9), rgba(82, 30, 135, .78));
	border-color: rgba(176, 74, 244, .58);
}

.site-footer {
	padding: 1.8rem 0 1rem;
	font-size: .8rem;
}

.site-footer__grid {
	grid-template-columns: 1.45fr .75fr .75fr;
	gap: 3rem;
}

.site-footer__brand {
	display: inline-flex;
	margin-bottom: .65rem;
}

.site-footer__brand img {
	display: block;
	height: 29px;
	width: auto;
}

.site-footer .site-muted {
	max-width: 18rem;
	font-size: .76rem;
	line-height: 1.5;
}

.site-footer__legal {
	margin-top: 1.35rem;
	font-size: .72rem;
}

@media (max-width: 1100px) {
	.site-shell,
	.site-header .site-shell,
	.site-hero > .site-shell {
		width: min(94vw, 980px);
	}

	.site-nav { gap: 1.2rem; }
	.site-hero__grid { gap: 1.5rem; }
	.site-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.site-feature { min-height: 8.9rem; }
	.site-showcase.is-enhanced .site-showcase__card[data-position="-2"] { transform: translateX(calc(-50% - 12.6rem)) translateY(1.35rem) scale(.8); }
	.site-showcase.is-enhanced .site-showcase__card[data-position="2"] { transform: translateX(calc(-50% + 12.6rem)) translateY(1.35rem) scale(.8); }
}

@media (max-width: 900px) {
	.site-header__row {
		min-height: 4.35rem;
		gap: .6rem 1rem;
		padding: .65rem 0;
	}

	.site-nav { gap: 1.25rem; }
	.site-hero:has(.site-showcase) { padding-top: 2rem; }
	.site-hero__grid { min-height: 0; }
	.site-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-steps > li:not(:last-child)::after { content: none; }
	.site-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-showcase.is-enhanced { height: 25.5rem; }
	.site-section { padding: 1.6rem 0; }
}

@media (max-width: 560px) {
	.site-shell,
	.site-header .site-shell,
	.site-hero > .site-shell {
		width: min(100% - 1.25rem, 34rem);
	}

	.site-brand__logo { height: 27px; }
	.site-nav { gap: 1rem; }
	.site-header__actions { gap: .75rem; }
	.site-header .site-btn { min-width: 7.2rem; padding: 0 .8rem; }
	.site-hero__title { font-size: clamp(2.35rem, 12vw, 3rem); }
	.site-trust { grid-template-columns: 1fr; gap: .5rem; }
	.site-trust li { padding: 0; border-right: 0; }
	.site-product-grid,
	.site-feature-grid,
	.site-steps,
	.site-plan-grid { grid-template-columns: 1fr; }
	.site-product,
	.site-feature,
	.site-steps > li { min-height: 0; }
	.site-plan { min-height: 0; }
	.site-cta__inner { align-items: flex-start; }
	.site-cta__title { align-items: flex-start; }
	.site-footer__grid { gap: 1.5rem; }
}

.site-header .site-shell {
	width: min(1440px, 90vw);
}

.site-header__row {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 2rem;
	min-height: 5.5rem;
}

.site-brand {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
}

.site-brand__logo {
	display: block;
	height: 35px;
	width: auto;
}

.site-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2.25rem;
}

.site-nav__link,
.site-nav__toggle {
	appearance: none;
	background: transparent;
	border: 0;
	color: rgba(244, 244, 245, .86);
	font: inherit;
	font-size: .9rem;
	font-weight: 500;
	padding: .55rem 0;
	border-radius: .5rem;
	cursor: pointer;
	white-space: nowrap;
}

.site-nav__link:hover,
.site-nav__link.is-active,
.site-nav__toggle:hover {
	color: var(--site-fg);
	background: transparent;
}

.site-nav__toggle {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
}

.site-nav__chevron {
	width: .42rem;
	height: .42rem;
	border-right: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: translateY(-.1rem) rotate(45deg);
	transition: transform .2s ease;
}

.site-nav__drop:hover .site-nav__chevron,
.site-nav__drop:focus-within .site-nav__chevron {
	transform: translateY(.1rem) rotate(225deg);
}

.site-nav__drop {
	position: relative;
}

.site-nav__drop::after {
	content: "";
	position: absolute;
	z-index: 1;
	left: -.55rem;
	right: -.55rem;
	top: 100%;
	height: .75rem;
}

.site-nav__menu {
	display: none;
	position: absolute;
	top: calc(100% + .45rem);
	left: 0;
	min-width: 12rem;
	padding: .5rem;
	border-radius: 1rem;
	background: rgba(6, 11, 27, .97);
	border: 1px solid rgba(139, 92, 246, .28);
	box-shadow: var(--site-shadow);
	z-index: 2;
}

.site-nav__drop:hover .site-nav__menu,
.site-nav__drop:focus-within .site-nav__menu {
	display: grid;
	gap: .15rem;
}

.site-nav__menu a,
.site-nav__menu span {
	display: flex;
	justify-content: space-between;
	gap: .75rem;
	padding: .55rem .7rem;
	border-radius: .7rem;
	color: var(--site-fg);
}

.site-nav__menu a:hover {
	background: rgba(124, 58, 237, .22);
}

.site-nav__menu .is-soon {
	color: var(--site-muted);
}

.site-nav__menu small {
	font-size: .7rem;
}

.site-nav__drop.is-open .site-nav__menu {
	display: grid;
}

.site-nav__drop--language {
	margin-left: -.75rem;
}

.site-nav__language-toggle {
	min-width: 2.8rem;
	justify-content: center;
	color: var(--site-muted);
}

.site-nav__menu--language {
	left: auto;
	right: 0;
	min-width: 10rem;
}

.site-nav__menu--language a.is-active {
	color: var(--site-fg);
	background: rgba(124, 58, 237, .22);
}

.site-header__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 1.45rem;
}

.site-link {
	color: var(--site-fg);
	font-size: .9rem;
	font-weight: 500;
	white-space: nowrap;
}

.site-header .site-btn {
	min-width: 8.5rem;
	min-height: 2.75rem;
	padding: 0 1.4rem;
	border-radius: .55rem;
	font-size: .9rem;
}

.site-header .site-btn--primary {
	background: linear-gradient(105deg, #06b6f2 0%, #2589f8 45%, #b341ed 100%);
	box-shadow: 0 0 30px rgba(49, 158, 255, .2), 0 10px 28px rgba(124, 58, 237, .22);
}

.site-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0 1.4rem;
	border-radius: .55rem;
	border: 1px solid transparent;
	font-size: .9rem;
	font-weight: 600;
	line-height: 1;
	color: var(--site-fg);
	transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease, filter .2s ease;
}

.site-btn--primary {
	background: linear-gradient(105deg, #06b6f2 0%, #2589f8 45%, #b341ed 100%);
	box-shadow: 0 0 30px rgba(49, 158, 255, .18), 0 10px 28px rgba(124, 58, 237, .22);
	color: #fff;
}

.site-btn--primary:hover {
	color: #fff;
	filter: brightness(1.06);
	transform: translateY(-1px);
}

.site-btn--ghost {
	border-color: rgba(156, 103, 255, .5);
	background: rgba(5, 10, 24, .72);
	color: var(--site-fg);
}

.site-btn--ghost:hover {
	border-color: rgba(86, 201, 255, .72);
	background: rgba(18, 28, 58, .78);
	color: #fff;
	transform: translateY(-1px);
}

.site-btn:focus-visible {
	outline: 2px solid #70d4ff;
	outline-offset: 3px;
}

.site-badge {
	display: inline-flex;
	padding: .2rem .7rem;
	border-radius: 999px;
	background: rgba(124, 58, 237, .2);
	border: 1px solid var(--site-glass-border);
	color: #ddd6fe;
	font-size: .8rem;
	letter-spacing: .02em;
}

.site-badge--muted {
	background: rgba(255, 255, 255, .05);
	color: var(--site-muted);
}

.site-hero {
	padding: 4.5rem 0 3rem;
}

.site-hero:has(.site-showcase) {
	padding: 2.25rem 0 2.75rem;
}

.site-hero > .site-shell {
	width: min(1440px, 90vw);
}

.site-hero--simple {
	padding-bottom: 1rem;
}

.site-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
	gap: 2rem;
	align-items: center;
}

.site-hero__grid:not(:has(.site-showcase)) {
	grid-template-columns: minmax(0, 1fr);
	max-width: 42rem;
}

.site-hero__title {
	margin: .85rem 0 1rem;
	font-size: clamp(2.2rem, 5vw, 4.1rem);
	line-height: 1.05;
	letter-spacing: -.04em;
	background: linear-gradient(180deg, #fff, #c4b5fd);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.site-lead {
	color: var(--site-muted);
	font-size: 1.12rem;
	max-width: 38rem;
	line-height: 1.55;
}

.site-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin: 1.5rem 0 1.25rem;
}

.site-trust {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem 1.1rem;
	padding: 0;
	margin: 0;
	list-style: none;
	color: var(--site-muted);
	font-size: .9rem;
}

.site-trust li::before {
	content: none;
}

.site-trust li {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
}

.site-trust .mdi {
	color: #28c9fa;
	font-size: 1.15rem;
}

.site-section {
	padding: 3.5rem 0;
}

.site-section h2,
.site-cta h2 {
	font-size: clamp(1.6rem, 3vw, 2.3rem);
	letter-spacing: -.03em;
	margin: 0 0 .75rem;
}

.site-glass {
	background: var(--site-glass);
	border: 1px solid var(--site-glass-border);
	border-radius: var(--site-radius);
	padding: 1.25rem 1.3rem;
	box-shadow: var(--site-shadow);
	backdrop-filter: blur(16px);
}

.site-product-grid,
.site-feature-grid,
.site-plan-grid,
.site-split {
	display: grid;
	gap: 1rem;
	margin-top: 1.5rem;
}

.site-product-grid,
.site-feature-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-feature-grid--four {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.site-plan-grid,
.site-split {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.site-product,
.site-product h3 {
	color: var(--site-fg);
}

.site-product p,
.site-glass p,
.site-plan ul {
	color: var(--site-muted);
	line-height: 1.5;
}

.site-product.is-soon {
	opacity: .78;
}

.site-product__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75rem;
	margin-bottom: .9rem;
}

.site-product__top .site-badge {
	margin: 0;
}

.site-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.55rem;
	height: 2.55rem;
	flex: 0 0 2.55rem;
	border: 1px solid currentColor;
	border-radius: .7rem;
	background: rgba(6, 12, 30, .72);
	font-size: 1.55rem;
	box-shadow: 0 0 22px color-mix(in srgb, currentColor 24%, transparent);
}

.site-card-icon--blue { color: #21c7f5; }
.site-card-icon--violet { color: #9b62f6; }
.site-card-icon--pink { color: #db5cf3; }

.site-feature .site-card-icon {
	margin-bottom: .8rem;
}

.site-feature h3 {
	margin-top: 0;
}

.site-steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	list-style: none;
	padding: 0;
	margin: 1.5rem 0 0;
}

.site-steps__num {
	display: inline-flex;
	width: 1.8rem;
	height: 1.8rem;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: rgba(124, 58, 237, .3);
	margin-bottom: .6rem;
	font-size: .85rem;
}

.site-steps__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: .65rem;
}

.site-steps__head .site-steps__num {
	margin-bottom: 0;
}

.site-steps__head > .mdi {
	color: #b459f2;
	font-size: 1.75rem;
	filter: drop-shadow(0 0 10px rgba(180, 89, 242, .45));
}

.site-plan.is-featured {
	border-color: rgba(139, 92, 246, .55);
	transform: translateY(-4px);
}

.site-plan__price {
	font-size: 2rem;
	color: var(--site-fg);
	margin: .4rem 0 1rem;
}

.site-plan__price span {
	font-size: .95rem;
	color: var(--site-muted);
	font-weight: 400;
}

.site-plan ul {
	margin: 0 0 1.2rem;
	padding-left: 1.1rem;
}

.site-plan .site-btn {
	width: 100%;
}

.site-center {
	text-align: center;
	margin-top: 1.5rem;
}

.site-cta {
	padding: 1rem 0 4rem;
}

.site-cta__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.6rem 1.8rem;
	border-radius: 1.6rem;
	background:
		linear-gradient(135deg, rgba(124, 58, 237, .35), rgba(37, 99, 235, .2)),
		rgba(24, 24, 27, .7);
	border: 1px solid var(--site-glass-border);
}

.site-cta__title {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.site-cta__title h2 {
	margin: 0;
}

.site-prose {
	max-width: 42rem;
	color: var(--site-muted);
	line-height: 1.65;
}

.site-prose h2 {
	color: var(--site-fg);
	font-size: 1.25rem;
	margin: 1.6rem 0 .6rem;
}

.site-prose ul {
	padding-left: 1.2rem;
}

.site-legal {
	padding-bottom: 2rem;
}

.site-footer {
	border-top: 1px solid var(--site-line);
	padding: 2.5rem 0 1.5rem;
	color: var(--site-muted);
}

.site-footer__grid {
	display: grid;
	grid-template-columns: 1.4fr .8fr .8fr;
	gap: 2rem;
}

.site-footer__brand,
.site-footer__heading {
	color: var(--site-fg);
	margin: 0 0 .6rem;
}

.site-footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.site-footer li + li {
	margin-top: .35rem;
}

.site-footer__legal {
	margin-top: 2rem;
	font-size: .85rem;
}

.site-muted {
	color: var(--site-muted);
}

.site-showcase {
	position: relative;
	min-width: 0;
}

.site-showcase.is-enhanced {
	width: calc(100% + 6rem);
	height: 31.5rem;
	margin-right: -6rem;
}

.site-showcase__viewport {
	display: flex;
	gap: 1rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-padding: 0;
	padding: .75rem .25rem 1rem;
	scrollbar-width: none;
}

.site-showcase.is-enhanced .site-showcase__viewport {
	position: relative;
	height: 28rem;
	overflow: visible;
	padding: 0;
	scroll-snap-type: none;
}

.site-showcase__viewport::-webkit-scrollbar {
	display: none;
}

.site-showcase__card {
	flex: 0 0 min(78%, 320px);
	scroll-snap-align: center;
	border-radius: 1rem;
	overflow: hidden;
	border: 1px solid var(--site-glass-border);
	background: rgba(3, 7, 18, .92);
	box-shadow: 0 22px 55px rgba(0, 0, 0, .42);
}

.site-showcase.is-enhanced .site-showcase__card {
	position: absolute;
	top: 1rem;
	left: 50%;
	width: 14.875rem;
	transform-origin: center center;
	transition: transform .48s cubic-bezier(.22, 1, .36, 1), opacity .36s ease, filter .36s ease, border-color .36s ease, box-shadow .36s ease;
}

.site-showcase.is-enhanced .site-showcase__card[data-position="-2"] {
	z-index: 1;
	transform: translateX(calc(-50% - 18rem)) translateY(1.5rem) scale(.84);
	opacity: .58;
	filter: brightness(.7) saturate(.85);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="-1"] {
	z-index: 2;
	transform: translateX(calc(-50% - 9.5rem)) translateY(.75rem) scale(.93);
	opacity: .84;
	filter: brightness(.86) saturate(.94);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="0"] {
	z-index: 5;
	transform: translateX(-50%) scale(1.045);
	opacity: 1;
	filter: none;
	border-color: rgba(192, 111, 255, .74);
	box-shadow: 0 0 0 1px rgba(67, 179, 255, .22), 0 0 32px rgba(132, 73, 255, .2), 0 30px 70px rgba(0, 0, 0, .52);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="1"] {
	z-index: 2;
	transform: translateX(calc(-50% + 9.5rem)) translateY(.75rem) scale(.93);
	opacity: .84;
	filter: brightness(.86) saturate(.94);
}

.site-showcase.is-enhanced .site-showcase__card[data-position="2"] {
	z-index: 1;
	transform: translateX(calc(-50% + 18rem)) translateY(1.5rem) scale(.84);
	opacity: .58;
	filter: brightness(.7) saturate(.85);
}

.site-showcase__link {
	display: block;
	color: inherit;
	position: relative;
	aspect-ratio: 3 / 5;
	background: linear-gradient(160deg, rgba(124, 58, 237, .35), rgba(15, 23, 42, .9));
}

.site-showcase__link img,
.site-showcase__video,
.site-showcase__placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.site-showcase__video {
	position: absolute;
	inset: 0;
	opacity: 0;
	pointer-events: none;
}

.site-showcase__card:hover .site-showcase__video,
.site-showcase__card:focus-within .site-showcase__video {
	opacity: 1;
}

.site-showcase__placeholder {
	display: grid;
	place-items: center;
	font-weight: 600;
	letter-spacing: -.02em;
}

.site-showcase__meta {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: grid;
	gap: .22rem;
	min-height: 7.25rem;
	padding: 1rem 1rem .9rem;
	background: linear-gradient(180deg, rgba(3, 7, 18, .22), rgba(3, 7, 18, .96) 28%);
	backdrop-filter: blur(8px);
	color: var(--site-fg);
}

.site-showcase__meta small {
	color: #9edcff;
	text-transform: lowercase;
	font-size: .7rem;
	letter-spacing: .02em;
}

.site-showcase__meta strong {
	font-size: .98rem;
	line-height: 1.15;
}

.site-showcase__meta > span {
	color: rgba(244, 244, 245, .78);
	font-size: .79rem;
	line-height: 1.35;
}

.site-showcase__controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .75rem;
	margin-top: .2rem;
}

.site-showcase.is-enhanced .site-showcase__controls {
	position: absolute;
	inset: 0;
	display: block;
	margin: 0;
	pointer-events: none;
}

.site-showcase__arrow {
	width: 2.2rem;
	height: 2.2rem;
	display: grid;
	place-items: center;
	border-radius: 999px;
	border: 1px solid var(--site-glass-border);
	color: var(--site-fg);
	background: rgba(255, 255, 255, .04);
}

.site-showcase.is-enhanced .site-showcase__arrow {
	position: absolute;
	top: 43%;
	z-index: 10;
	width: 2.65rem;
	height: 2.65rem;
	border-color: rgba(85, 204, 255, .52);
	background: rgba(3, 10, 26, .82);
	box-shadow: 0 0 22px rgba(53, 164, 255, .1);
	font-size: 1.6rem;
	pointer-events: auto;
	transform: translateY(-50%);
}

.site-showcase.is-enhanced [data-showcase-prev] {
	left: .25rem;
}

.site-showcase.is-enhanced [data-showcase-next] {
	right: .25rem;
}

.site-showcase__arrow.is-disabled {
	opacity: .35;
	pointer-events: none;
}

.site-showcase__dots {
	display: flex;
	gap: .4rem;
}

.site-showcase.is-enhanced .site-showcase__dots {
	position: absolute;
	left: 50%;
	bottom: 1.25rem;
	z-index: 10;
	transform: translateX(-50%);
	pointer-events: auto;
}

.site-showcase__dots a {
	width: .42rem;
	height: .42rem;
	border-radius: 999px;
	background: transparent;
	border: 1px solid rgba(164, 124, 255, .8);
	transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.site-showcase__dots a[aria-current="true"] {
	background: #55bfff;
	border-color: #55bfff;
	transform: scale(1.15);
}

@media (prefers-reduced-motion: reduce) {
	.site-showcase__card {
		transition: none;
	}

	.site-showcase__card:hover .site-showcase__video,
	.site-showcase__card:focus-within .site-showcase__video {
		opacity: 0;
	}
}

@media (max-width: 900px) {
	.site-header__row,
	.site-hero__grid,
	.site-product-grid,
	.site-feature-grid,
	.site-feature-grid--four,
	.site-steps,
	.site-footer__grid {
		grid-template-columns: 1fr;
		display: grid;
	}

	.site-header__row {
		grid-template-columns: auto 1fr;
		flex-wrap: wrap;
	}

	.site-nav,
	.site-header__actions {
		grid-column: 1 / -1;
	}

	.site-nav {
		overflow-x: auto;
	}

	.site-hero {
		padding-top: 2.5rem;
	}

	.site-hero > .site-shell {
		width: min(calc(100% - 2rem), 44rem);
	}

	.site-showcase.is-enhanced {
		width: 100%;
		height: 29rem;
		margin-right: 0;
	}

	.site-showcase.is-enhanced .site-showcase__viewport {
		height: 26rem;
		overflow: hidden;
	}

	.site-showcase.is-enhanced .site-showcase__card {
		width: min(74vw, 15.5rem);
		top: .75rem;
	}

	.site-showcase.is-enhanced .site-showcase__card[data-position]:not([data-position="0"]) {
		transform: translateX(-50%) scale(.88);
		opacity: 0;
		pointer-events: none;
	}

	.site-showcase.is-enhanced .site-showcase__card[data-position="0"] {
		transform: translateX(-50%) scale(1);
	}

	.site-showcase.is-enhanced [data-showcase-prev] {
		left: 0;
	}

	.site-showcase.is-enhanced [data-showcase-next] {
		right: 0;
	}

	.site-showcase.is-enhanced .site-showcase__dots {
		bottom: .65rem;
	}

	.site-header__actions {
		margin-left: 0;
		justify-content: space-between;
	}
}

/* Finale Kaskade: Layoutregeln muessen hinter den Komponenten-Defaults stehen. */
.site-shell,
.site-header .site-shell,
.site-hero > .site-shell { width: min(1180px, calc(100% - 3rem)); }

.site-header__row { min-height: 4.65rem; gap: 1.6rem; }
.site-brand__logo { height: 31px; }
.site-nav { gap: 1.85rem; }
.site-nav__link,
.site-nav__toggle,
.site-link { font-size: .82rem; }
.site-header__actions { gap: 1.2rem; }
.site-header .site-btn { min-width: 8.15rem; min-height: 2.55rem; font-size: .82rem; }

.site-hero:has(.site-showcase) { padding: 1.45rem 0 .5rem; }
.site-hero__grid {
	grid-template-columns: minmax(0, .9fr) minmax(0, 1.25fr);
	gap: 2.75rem;
	min-height: 27rem;
}
.site-hero__title {
	max-width: 35rem;
	margin: .8rem 0 .85rem;
	font-size: clamp(2.65rem, 4.25vw, 3.65rem);
	line-height: 1.03;
	background: none;
	-webkit-background-clip: initial;
	background-clip: initial;
	color: #f8fafc;
}
.site-hero .site-lead { max-width: 34rem; font-size: .98rem; line-height: 1.5; }
.site-hero__actions { margin: 1.15rem 0 1rem; }
.site-hero__actions .site-btn { min-width: 9.1rem; }
.site-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	font-size: .72rem;
}
.site-trust li { padding: 0 .85rem; border-right: 1px solid var(--site-line); }
.site-trust li:first-child { padding-left: 0; }
.site-trust li:last-child { border-right: 0; }

.site-showcase.is-enhanced { width: 100%; height: 26.5rem; margin-right: 0; }
.site-showcase.is-enhanced .site-showcase__viewport { height: 24rem; }
.site-showcase.is-enhanced .site-showcase__card { top: 1.15rem; width: 11.85rem; border-radius: .8rem; }
.site-showcase.is-enhanced .site-showcase__card[data-position="-2"] { transform: translateX(calc(-50% - 14.5rem)) translateY(1.35rem) scale(.84); }
.site-showcase.is-enhanced .site-showcase__card[data-position="-1"] { transform: translateX(calc(-50% - 7.6rem)) translateY(.65rem) scale(.94); }
.site-showcase.is-enhanced .site-showcase__card[data-position="0"] { transform: translateX(-50%) scale(1.055); }
.site-showcase.is-enhanced .site-showcase__card[data-position="1"] { transform: translateX(calc(-50% + 7.6rem)) translateY(.65rem) scale(.94); }
.site-showcase.is-enhanced .site-showcase__card[data-position="2"] { transform: translateX(calc(-50% + 14.5rem)) translateY(1.35rem) scale(.84); }
.site-showcase__meta { min-height: 6.4rem; padding: .8rem .8rem .7rem; }
.site-showcase__meta strong { font-size: .88rem; }
.site-showcase__meta > span { font-size: .69rem; }
.site-showcase.is-enhanced .site-showcase__arrow { top: 42%; width: 2.25rem; height: 2.25rem; font-size: 1.35rem; }
.site-showcase.is-enhanced [data-showcase-prev] { left: -.4rem; }
.site-showcase.is-enhanced [data-showcase-next] { right: -.4rem; }
.site-showcase.is-enhanced .site-showcase__dots { bottom: .7rem; }

.site-section { padding: 1.25rem 0; }
.site-section h2,
.site-cta h2 { font-size: clamp(1.35rem, 2.2vw, 1.7rem); margin-bottom: .25rem; }
.site-section > .site-shell > .site-lead { font-size: .85rem; line-height: 1.4; }
.site-glass {
	padding: 1.05rem 1.1rem;
	border-radius: var(--site-radius);
	box-shadow: var(--site-shadow), inset 0 1px 0 rgba(255, 255, 255, .018);
}
.site-product-grid,
.site-feature-grid,
.site-plan-grid,
.site-steps { margin-top: .9rem; gap: .75rem; }
.site-product-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.site-product { min-height: 10.6rem; }
.site-card-icon--gold { color: #f5b83d; }
.site-product--movieflw .site-badge { border-color: rgba(245, 184, 61, .45); color: #ffd66b; }
.site-product--movieflw:hover { border-color: rgba(245, 184, 61, .55); }
.site-movieflw .site-badge { border-color: rgba(245, 184, 61, .45); color: #ffd66b; }
.site-movieflw .site-badge i { color: #f5b83d; }
.site-movieflw .site-btn--primary { background: linear-gradient(100deg, #f5a623, #ffd66b); border-color: transparent; color: #1b1203; }
.site-movieflw .site-btn--primary:hover { filter: brightness(1.06); }
.site-movieflw .site-cta__inner { background: radial-gradient(circle at 90% 50%, rgba(245, 166, 35, .3), transparent 15rem), linear-gradient(100deg, rgba(36, 26, 10, .92), rgba(92, 58, 12, .78)); border-color: rgba(245, 184, 61, .5); }
.site-movieflw .site-steps__num { background: rgba(245, 184, 61, .16); color: #ffd66b; }
.site-movieflw .site-steps__head i { color: #f5b83d; }
.site-steps.site-movieflw__steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.site-movieflw__still { position: relative; margin: 0; }
.site-movieflw__still img { display: block; width: 100%; height: auto; border: 1px solid rgba(245, 184, 61, .3); border-radius: 1rem; box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, .45); }
.site-movieflw__still figcaption { position: absolute; left: 1rem; bottom: 1rem; display: flex; overflow: hidden; border: 1px solid rgba(245, 184, 61, .4); border-radius: .5rem; background: rgba(14, 10, 5, .86); color: #f6dca4; font-size: .62rem; letter-spacing: .12em; }
.site-movieflw__still figcaption span { padding: .45rem .7rem; }
.site-movieflw__still figcaption span + span { border-left: 1px solid rgba(245, 184, 61, .28); }
.site-product__top { margin-bottom: .65rem; }
.site-product h3,
.site-feature h3,
.site-steps h3,
.site-plan h3 { font-size: .96rem; margin-bottom: .4rem; }
.site-product p,
.site-feature p,
.site-steps p,
.site-plan ul { font-size: .76rem; line-height: 1.42; }
.site-card-icon { width: 2.35rem; height: 2.35rem; flex-basis: 2.35rem; border-radius: .65rem; font-size: 1.4rem; }
.site-feature-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.site-feature { min-height: 10.15rem; padding: .9rem; text-align: center; }
.site-feature .site-card-icon { margin: 0 auto .65rem; background: transparent; border: 0; box-shadow: none; font-size: 2rem; }
.site-feature h3 { font-size: .82rem; }
.site-feature p { font-size: .68rem; }
.site-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.35rem; }
.site-steps > li { position: relative; min-height: 8.5rem; padding: .9rem 1rem; }
.site-plan-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.site-plan { display: flex; min-height: 17.5rem; flex-direction: column; }
.site-plan__price { font-size: 1.75rem; }
.site-plan ul { flex: 1; }
.site-center { margin-top: .8rem; font-size: .8rem; }

.site-cta { padding: 1rem 0 1.2rem; }
.site-cta__inner {
	min-height: 5.2rem;
	padding: 1rem 1.4rem;
	border-radius: .85rem;
	background: radial-gradient(circle at 90% 50%, rgba(197, 64, 238, .32), transparent 15rem), linear-gradient(100deg, rgba(26, 28, 75, .9), rgba(82, 30, 135, .78));
	border-color: rgba(176, 74, 244, .58);
}
.site-footer { padding: 1.8rem 0 1rem; font-size: .8rem; }
.site-footer__grid { grid-template-columns: 1.45fr .75fr .75fr; gap: 3rem; }
.site-footer__brand { display: inline-flex; margin-bottom: .65rem; }
.site-footer__brand img { display: block; height: 29px; width: auto; }
.site-footer .site-muted { max-width: 18rem; font-size: .76rem; line-height: 1.5; }
.site-footer__legal { margin-top: 1.35rem; font-size: .72rem; }

@media (max-width: 1100px) {
	.site-shell,
	.site-header .site-shell,
	.site-hero > .site-shell { width: min(94vw, 980px); }
	.site-nav { gap: 1.2rem; }
	.site-hero__grid { gap: 1.5rem; }
	.site-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.site-feature { min-height: 8.9rem; }
	.site-product-grid, .site-steps.site-movieflw__steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
	.site-header__row { min-height: 4.35rem; gap: .6rem 1rem; padding: .65rem 0; }
	.site-brand { grid-column: 1; grid-row: 1; }
	.site-header__actions { grid-column: 2; grid-row: 1; justify-content: flex-end; }
	.site-nav {
		grid-column: 1 / -1;
		grid-row: 2;
		gap: 1.25rem;
		justify-content: flex-start;
		overflow-x: auto;
		scrollbar-width: none;
	}
	.site-nav::-webkit-scrollbar { display: none; }
	.site-hero:has(.site-showcase) { padding-top: 2rem; }
	.site-hero__grid { grid-template-columns: 1fr; min-height: 0; }
	.site-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-steps, .site-steps.site-movieflw__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-steps > li:not(:last-child)::after { content: none; }
	.site-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-showcase.is-enhanced { width: 100%; height: 25.5rem; margin-right: 0; }
	.site-section { padding: 1.6rem 0; }
}

@media (max-width: 560px) {
	.site-shell,
	.site-header .site-shell,
	.site-hero > .site-shell { width: min(100% - 1.25rem, 34rem); }
	.site-brand__logo { height: 27px; }
	.site-nav { gap: 1rem; }
	.site-header__actions { gap: .75rem; }
	.site-header__actions .site-link { display: none; }
	.site-header .site-btn { min-width: 7.2rem; padding: 0 .8rem; }
	.site-hero__title { font-size: clamp(2.35rem, 12vw, 3rem); }
	.site-trust { grid-template-columns: 1fr; gap: .5rem; }
	.site-trust li { padding: 0; border-right: 0; }
	.site-product-grid,
	.site-feature-grid,
	.site-steps,
	.site-steps.site-movieflw__steps,
	.site-plan-grid { grid-template-columns: 1fr; }
	.site-product,
	.site-feature,
	.site-steps > li,
	.site-plan { min-height: 0; }
	.site-footer__grid { gap: 1.5rem; }
}

/* ==========================================================================
   FLW Labs – CI-Ebene nach CI v1.0 (docs/flwlabs-ci.md). Liegt bewusst am Ende,
   damit sie die älteren Salesflw-Kaskaden oben überschreibt. Tokens: flwlabs-tokens.css
   ========================================================================== */
:root,
[data-theme="dark"] {
	--site-bg: var(--flw-bg);
	--site-fg: var(--flw-white);
	--site-muted: var(--flw-muted);
	--site-line: var(--flw-border);
	--site-glass: var(--flw-surface);
	--site-glass-border: var(--flw-border);
	--site-radius: var(--flw-radius-card);
	--site-shadow: var(--flw-shadow);
	font-family: var(--flw-font);
}

body.site {
	background:
		radial-gradient(ellipse 60rem 40rem at 85% 120vh, rgba(0, 217, 232, .06), transparent 70%),
		radial-gradient(ellipse 50rem 30rem at 10% 200vh, rgba(54, 242, 124, .045), transparent 70%),
		var(--flw-bg);
	background-size: auto;
	font-family: var(--flw-font);
	font-size: 1rem;
	-webkit-font-smoothing: antialiased;
}

a { color: var(--flw-cyan); transition: color var(--flw-transition); }
a:hover { color: var(--flw-white); }

::selection { background: rgba(0, 217, 232, .35); color: var(--flw-white); }

.site-shell,
.site-header .site-shell,
.site-hero > .site-shell { width: min(1440px, calc(100% - 4rem)); }

/* Header: dunkel, leicht transparent, Trennlinie unten */
.site-header {
	z-index: 50;
	background: rgba(9, 27, 39, .72);
	border-bottom: 1px solid var(--flw-border);
	backdrop-filter: blur(18px) saturate(1.2);
}
.site-header__row { min-height: 5.25rem; gap: 2rem; }
.site-brand__logo { height: 40px; width: auto; }
.site-nav { gap: 2.4rem; }
.site-nav__link,
.site-nav__toggle,
.site-link {
	color: var(--flw-white);
	font-size: .9375rem;
	font-weight: 500;
	transition: color var(--flw-transition);
}
.site-nav__link:hover,
.site-nav__link.is-active,
.site-nav__toggle:hover,
.site-link:hover { color: var(--flw-cyan); }
.site-nav__chevron { width: .45rem; height: .45rem; border-width: 1.5px; opacity: .85; }
.site-nav__language-toggle { color: var(--flw-muted); }
.site-nav__menu {
	min-width: 13rem;
	padding: .45rem;
	border-radius: var(--flw-radius-button);
	background: var(--flw-surface);
	border: 1px solid var(--flw-border);
}
.site-nav__menu a,
.site-nav__menu span { color: var(--flw-white); font-size: .9375rem; font-weight: 500; }
.site-nav__menu a:hover,
.site-nav__menu--language a.is-active { background: var(--flw-surface-hover); color: var(--flw-cyan); }
.site-header__actions { gap: 1.75rem; }
.site-header .site-btn { min-width: 0; min-height: 2.9rem; padding: 0 1.5rem; font-size: .9375rem; white-space: nowrap; }

/* Buttons */
.site-btn {
	gap: .6rem;
	min-height: 2.9rem;
	padding: 0 1.5rem;
	border: 1px solid transparent;
	border-radius: var(--flw-radius-button);
	font-family: var(--flw-font);
	font-size: .9375rem;
	font-weight: 600;
	transition: background var(--flw-transition), border-color var(--flw-transition), box-shadow var(--flw-transition), filter var(--flw-transition), transform var(--flw-transition);
}
.site-btn .mdi { font-size: 1.2em; line-height: 1; }
.site-btn--primary,
.site-header .site-btn--primary {
	border: 0;
	background: var(--flw-gradient);
	color: var(--flw-bg);
	font-weight: 700;
	box-shadow: var(--flw-glow);
}
.site-btn--primary:hover {
	color: var(--flw-bg);
	filter: brightness(1.06);
	box-shadow: 0 0 40px rgba(0, 221, 184, .32);
	transform: translateY(-1px);
}
.site-btn--ghost,
.site-btn--outline {
	border-color: var(--flw-border);
	background: transparent;
	color: var(--flw-white);
}
.site-btn--ghost:hover,
.site-btn--outline:hover {
	border-color: var(--flw-cyan);
	background: rgba(0, 217, 232, .06);
	color: var(--flw-white);
	transform: translateY(-1px);
}
.site-btn--lg { min-height: 3.5rem; padding: 0 2rem; font-size: 1rem; }
.site-btn:focus-visible,
.flw-tool:focus-visible,
.site-glass:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 3px; }

/* Labels (12 px, SemiBold) */
.site-badge {
	background: rgba(0, 217, 232, .08);
	border: 1px solid rgba(0, 217, 232, .3);
	color: var(--flw-cyan);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .02em;
}
.site-badge--muted { background: transparent; border-color: var(--flw-border); color: var(--flw-muted); }

/* Hero der Startseite */
.flw-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: min(calc(100svh - 5.25rem), 56rem);
	display: flex;
	padding: clamp(4rem, 9vh, 7.5rem) 0 2.5rem;
}
.flw-hero__media {
	position: absolute;
	inset: 0;
	z-index: -1;
}
.flw-hero__media img {
	position: absolute;
	top: 0;
	right: 0;
	width: min(100%, 115rem);
	height: 100%;
	object-fit: cover;
	object-position: 62% center;
}
.flw-hero__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, var(--flw-bg) 0%, rgba(6, 19, 30, .88) 22%, rgba(6, 19, 30, .25) 48%, transparent 64%),
		linear-gradient(0deg, var(--flw-bg) 0%, rgba(6, 19, 30, .55) 16%, transparent 34%);
}
.flw-hero__inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 3.5rem;
}
.flw-hero__copy { max-width: 44rem; }
.flw-eyebrow {
	margin: 0 0 1.5rem;
	color: var(--flw-muted);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: var(--flw-tracking-label);
	text-transform: uppercase;
}
.flw-hero__title {
	margin: 0 0 1.75rem;
	color: var(--flw-white);
	font-size: clamp(3rem, 6.2vw, 5.5rem);
	font-weight: 800;
	line-height: 1;
	letter-spacing: -.035em;
}
.flw-hero__accent {
	display: block;
	width: fit-content;
	padding-bottom: .06em;
	background: var(--flw-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.flw-hero__lead {
	max-width: 38rem;
	margin: 0;
	color: var(--flw-muted);
	font-size: 1.125rem;
	line-height: 1.6;
}
.flw-hero__actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2.5rem; }

.flw-tools {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}
.flw-tool {
	display: flex;
	align-items: center;
	gap: 1.1rem;
	height: 100%;
	padding: 1.15rem 1.25rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-card);
	background: var(--flw-surface-glass);
	backdrop-filter: blur(14px);
	color: var(--flw-white);
	box-shadow: var(--flw-shadow);
	transition: border-color var(--flw-transition), background var(--flw-transition), transform var(--flw-transition);
}
.flw-tool:hover {
	border-color: var(--flw-border-hover);
	background: var(--flw-surface-hover);
	color: var(--flw-white);
	transform: translateY(-2px);
}
.flw-tool__text { display: grid; gap: .25rem; min-width: 0; flex: 1; }
.flw-tool__text strong { font-size: 1.125rem; font-weight: 700; letter-spacing: -.01em; }
.flw-tool__text small { color: var(--flw-muted); font-size: .8125rem; line-height: 1.3; }
.flw-tool__arrow { color: var(--flw-muted); font-size: 1.15rem; transition: transform var(--flw-transition), color var(--flw-transition); }
.flw-tool:hover .flw-tool__arrow { color: var(--flw-cyan); transform: translateX(3px); }
.flw-tool__icon {
	display: inline-flex;
	flex: 0 0 3.25rem;
	align-items: center;
	justify-content: center;
	width: 3.25rem;
	height: 3.25rem;
	border-radius: var(--flw-radius-button);
	color: #fff;
	font-size: 1.7rem;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25);
}
.flw-tool__icon--movieflw { background: var(--flw-tool-movieflw); color: #2a1300; }
.flw-tool__icon--videoflw { background: var(--flw-tool-videoflw); }
.flw-tool__icon--imageflw { background: var(--flw-tool-imageflw); color: #032412; }
.flw-tool__icon--postflw { background: var(--flw-tool-postflw); }
.flw-tool__icon--webflw { background: var(--flw-tool-webflw); }

/* Unterseiten-Hero (videoflw, movieflw, Preise …) */
.site-hero__title {
	font-weight: 800;
	letter-spacing: -.035em;
	color: var(--flw-white);
}
.site-hero__title span {
	background: var(--flw-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.site-trust .mdi { color: var(--flw-cyan); }

/* Abschnitte: H2 40 px Bold, Fließtext 16–18 px */
.site-section { padding: 6rem 0 1.5rem; scroll-margin-top: 5.5rem; }
.site-section h2,
.site-cta h2 {
	color: var(--flw-white);
	font-size: clamp(1.875rem, 3vw, 2.5rem);
	font-weight: 700;
	letter-spacing: -.02em;
	line-height: 1.15;
	margin: 0 0 1rem;
}
.site-lead,
.site-section > .site-shell > .site-lead { color: var(--flw-muted); font-size: 1.125rem; line-height: 1.6; }
.site-section--center > .site-shell > .site-lead { margin-left: auto; margin-right: auto; }

/* Cards und Panels */
.site-glass {
	padding: 1.75rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-card);
	background: var(--flw-surface);
	box-shadow: var(--flw-shadow);
	backdrop-filter: none;
	transition: background var(--flw-transition), border-color var(--flw-transition), transform var(--flw-transition);
}
a.site-glass:hover,
.site-glass:hover { border-color: var(--flw-border-hover); background: var(--flw-surface-hover); }
a.site-glass:hover { transform: translateY(-2px); }
.site-glass p,
.site-product p,
.site-plan ul { color: var(--flw-muted); }

.site-product-grid,
.site-feature-grid,
.site-plan-grid,
.site-steps { margin-top: 3rem; gap: 1.25rem; }

.site-product-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.site-product { min-height: 15rem; text-align: left; color: var(--flw-white); scroll-margin-top: 7rem; }
.site-product:target { border-color: var(--flw-cyan); box-shadow: var(--flw-glow); }
.site-product__top { flex-direction: column; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.site-product__top .flw-tool__icon { flex-basis: 3rem; width: 3rem; height: 3rem; font-size: 1.55rem; }
.site-product .flw-label { margin: 0 0 .9rem; color: var(--flw-cyan); font-size: .75rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }

/* H3 28 px SemiBold */
.site-product h3,
.site-feature h3,
.site-steps h3,
.site-plan h3 {
	color: var(--flw-white);
	font-size: clamp(1.25rem, 1.5vw, 1.75rem);
	font-weight: 600;
	letter-spacing: -.01em;
	line-height: 1.2;
	margin: 0 0 .6rem;
}
.site-product p,
.site-feature p,
.site-steps p,
.site-plan ul { font-size: 1rem; line-height: 1.6; }

.site-card-icon {
	width: 3rem;
	height: 3rem;
	flex-basis: 3rem;
	border: 1px solid rgba(0, 217, 232, .3);
	border-radius: var(--flw-radius-button);
	background: rgba(0, 217, 232, .08);
	color: var(--flw-cyan);
	font-size: 1.5rem;
	box-shadow: none;
}
.site-card-icon--blue,
.site-card-icon--violet,
.site-card-icon--pink { color: var(--flw-cyan); }

.site-feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.site-feature { min-height: 0; padding: 1.75rem; text-align: left; }
.site-feature .site-card-icon { margin: 0 0 1.25rem; border: 1px solid rgba(0, 217, 232, .3); background: rgba(0, 217, 232, .08); font-size: 1.5rem; }

.site-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); text-align: left; }
.site-steps > li { min-height: 0; padding: 1.75rem; }
.site-steps > li:not(:last-child)::after { border-color: var(--flw-border); color: var(--flw-muted-dim); }
.site-steps__num { background: var(--flw-gradient); color: var(--flw-bg); font-weight: 700; }
.site-steps__head > .mdi { color: var(--flw-cyan); filter: none; }

.site-plan-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.site-plan { min-height: 0; text-align: left; }
.site-plan .site-badge { width: fit-content; margin: 0 0 .6rem; }
.site-plan.is-featured { border-color: rgba(0, 217, 232, .55); box-shadow: var(--flw-glow); transform: none; }
.site-plan .site-plan__price { color: var(--flw-white); font-size: 2.25rem; font-weight: 800; letter-spacing: -.02em; }
.site-center { margin-top: 1.75rem; font-size: 1rem; }

/* Arbeitsproben */
.site-section--showcase .site-showcase { max-width: 64rem; margin: 2.5rem auto 0; }
.site-showcase__link { background: linear-gradient(160deg, rgba(0, 217, 232, .16), var(--flw-surface)); }
.site-showcase__meta small { color: var(--flw-cyan); }
.site-showcase.is-enhanced .site-showcase__arrow { border-color: var(--flw-border); background: var(--flw-surface-glass); }
.site-showcase.is-enhanced .site-showcase__arrow:hover { border-color: var(--flw-cyan); box-shadow: none; }
.site-showcase__dots a { border-color: var(--flw-muted); }
.site-showcase__dots a[aria-current="true"] { background: var(--flw-cyan); border-color: var(--flw-cyan); }

/* Abschluss */
.site-cta { padding: 6rem 0 5rem; }
.site-cta__inner,
.site-movieflw .site-cta__inner {
	min-height: 0;
	padding: 2.5rem 2.75rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-card);
	background:
		radial-gradient(circle at 92% 50%, rgba(54, 242, 124, .14), transparent 22rem),
		radial-gradient(circle at 60% 120%, rgba(0, 217, 232, .14), transparent 20rem),
		var(--flw-surface);
}
.site-cta h2 { margin: 0; }

/* Footer */
.site-footer { padding: 3.5rem 0 2rem; border-top: 1px solid var(--flw-border); color: var(--flw-muted); font-size: .9375rem; }
.site-footer__brand img { height: 34px; }
.site-footer .site-muted { max-width: 22rem; font-size: .9375rem; }
.site-footer a { color: var(--flw-muted); }
.site-footer a:hover { color: var(--flw-cyan); }
.site-footer__heading { font-size: .75rem; font-weight: 600; letter-spacing: var(--flw-tracking-label); text-transform: uppercase; }
.site-footer__legal { color: var(--flw-muted-dim); font-size: .8125rem; }

/* Dezentes Einblenden beim Scrollen (nur mit JS, siehe site.js) */
.flw-reveal {
	opacity: 0;
	transform: translateY(14px);
	transition: opacity 300ms ease, transform 300ms ease;
}
.flw-reveal.is-visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
	.flw-tool,
	.flw-tool__arrow,
	.site-glass,
	.site-btn { transition: none; }
	.flw-reveal { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 1520px) {
	.flw-tool__arrow { display: none; }
}

@media (max-width: 1280px) {
	.flw-tools { gap: .85rem; }
	.flw-tool { gap: .8rem; padding: 1rem; }
	.flw-tool__icon { flex-basis: 2.9rem; width: 2.9rem; height: 2.9rem; font-size: 1.5rem; }
	.flw-tool__text strong { font-size: 1.02rem; }
	.flw-tool__text small { font-size: .75rem; }
	.site-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1100px) {
	.site-shell,
	.site-header .site-shell,
	.site-hero > .site-shell { width: calc(100% - 3rem); }
	.site-nav { gap: 1.5rem; }
	.site-header__actions { gap: 1.1rem; }
	.flw-hero__media img { object-position: 70% center; }
	.flw-hero__media::after {
		background:
			linear-gradient(90deg, var(--flw-bg) 0%, rgba(6, 19, 30, .82) 35%, rgba(6, 19, 30, .3) 70%, rgba(6, 19, 30, .2) 100%),
			linear-gradient(0deg, var(--flw-bg) 0%, rgba(6, 19, 30, .6) 26%, transparent 46%);
	}
	.flw-tools { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.site-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-steps,
	.site-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Logo, Navigation und Buttons passen hier nicht mehr in eine Zeile: Navigation in die zweite Zeile. */
@media (min-width: 901px) and (max-width: 1260px) {
	.site-header__row { grid-template-columns: auto 1fr; gap: .35rem 1.5rem; min-height: 0; padding: .85rem 0 .15rem; }
	.site-brand { grid-column: 1; grid-row: 1; }
	.site-header__actions { grid-column: 2; grid-row: 1; justify-content: flex-end; }
	.site-nav { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; gap: 2rem; }
}

@media (max-width: 900px) {
	.site-header__row { min-height: 0; padding: .75rem 0; }
	.site-brand__logo { height: 34px; }
	.site-nav { gap: 1.4rem; }
	.flw-hero { min-height: 0; padding: 0 0 2rem; }
	.flw-hero__media { position: relative; inset: auto; height: 22rem; margin-bottom: -6rem; }
	.flw-hero__media img { width: 100%; object-position: 64% 30%; }
	.flw-hero__media::after { background: linear-gradient(0deg, var(--flw-bg) 0%, rgba(6, 19, 30, .55) 35%, transparent 70%); }
	.flw-hero { flex-direction: column; }
	.flw-hero__inner { gap: 2.5rem; }
	.flw-tools { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-section { padding-top: 4rem; }
	.site-cta__inner { padding: 1.75rem; }
}

@media (max-width: 560px) {
	.site-shell,
	.site-header .site-shell,
	.site-hero > .site-shell { width: calc(100% - 2rem); }
	.site-brand { min-width: 0; }
	.site-brand__logo { height: 26px; max-width: 100%; object-fit: contain; object-position: left center; }
	.site-header .site-btn { min-height: 2.6rem; padding: 0 1rem; font-size: .875rem; }
	.site-header .site-btn .mdi { display: none; }
	.flw-hero__media { height: 17rem; margin-bottom: -4rem; }
	.flw-eyebrow { margin-bottom: 1rem; font-size: .6875rem; letter-spacing: .16em; }
	.flw-hero__title { font-size: clamp(2.75rem, 14vw, 3.6rem); margin-bottom: 1.25rem; }
	.flw-hero__lead { font-size: 1rem; }
	.flw-hero__actions { gap: .75rem; margin-top: 1.75rem; }
	.flw-hero__actions .site-btn { flex: 1 1 100%; min-height: 3.4rem; }
	.flw-tools { grid-template-columns: 1fr; gap: .6rem; }
	.flw-tool { padding: .8rem 1rem; }
	.flw-tool__arrow { display: inline-block; margin-left: auto; }
	.site-product-grid,
	.site-feature-grid,
	.site-steps,
	.site-plan-grid { grid-template-columns: 1fr; }
	.site-section h2,
	.site-cta h2 { font-size: 1.75rem; }
	.site-lead,
	.site-section > .site-shell > .site-lead { font-size: 1rem; }
	.site-glass { padding: 1.35rem; }
	.site-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.site-footer__grid > :first-child { grid-column: 1 / -1; }
}
/* Galerie (Inspiration): Karten, Filter, Detailseite mit Rezept. Siehe docs/gallery.md. */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.flw-label { margin: 0 0 .9rem; color: var(--flw-cyan); font-size: .75rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }

.flw-chips { display: flex; flex-wrap: wrap; gap: .6rem; }
.flw-chips--center { justify-content: center; margin-top: 2.25rem; }
.flw-chip {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	min-height: 2.5rem;
	padding: 0 1rem;
	border: 1px solid var(--flw-border);
	border-radius: 999px;
	color: var(--flw-muted);
	font-size: .875rem;
	font-weight: 600;
	transition: border-color var(--flw-transition), color var(--flw-transition), background var(--flw-transition);
}
.flw-chip:hover { border-color: var(--flw-border-hover); color: var(--flw-white); }
.flw-chip.is-active { border-color: var(--flw-cyan); background: rgba(0, 217, 232, .08); color: var(--flw-white); }
.flw-chip__dot,
.flw-gcard__icon { flex: 0 0 .7rem; width: .7rem; height: .7rem; border-radius: 3px; box-shadow: none; }

.flw-gallery__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.25rem;
	margin-top: 2.5rem;
	text-align: left;
}
.flw-gcard {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-card);
	background: var(--flw-surface);
	color: var(--flw-white);
	transition: border-color var(--flw-transition), transform var(--flw-transition);
}
.flw-gcard:hover { border-color: var(--flw-border-hover); color: var(--flw-white); transform: translateY(-2px); }
.flw-gcard:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 3px; }
.flw-gcard[hidden] { display: none; }
.flw-gcard__media { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--flw-bg); }
.flw-gcard__media img,
.flw-gcard__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.flw-gcard__video { opacity: 0; transition: opacity var(--flw-transition); }
.flw-gcard.is-playing .flw-gcard__video { opacity: 1; }
.flw-gcard__play {
	position: absolute;
	top: .75rem;
	right: .75rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border-radius: 999px;
	background: rgba(6, 19, 30, .7);
	color: var(--flw-white);
}
.flw-gcard__hover {
	position: absolute;
	inset: auto 0 0;
	display: flex;
	align-items: center;
	gap: .4rem;
	padding: 2.5rem 1rem 1rem;
	background: linear-gradient(0deg, rgba(6, 19, 30, .92), transparent);
	color: var(--flw-white);
	font-size: .875rem;
	font-weight: 600;
	opacity: 0;
	transform: translateY(6px);
	transition: opacity var(--flw-transition), transform var(--flw-transition);
}
.flw-gcard:hover .flw-gcard__hover,
.flw-gcard:focus-visible .flw-gcard__hover { opacity: 1; transform: none; }
.flw-gcard__body { display: grid; gap: .35rem; padding: 1rem 1.1rem 1.15rem; }
.flw-gcard__body strong { font-size: 1.0625rem; font-weight: 700; line-height: 1.3; }
.flw-gcard__tool { display: flex; align-items: center; gap: .45rem; margin: 0; color: var(--flw-muted); font-size: .75rem; font-weight: 600; letter-spacing: .02em; }

/* Galerie-Übersicht */
.flw-gallery__head { max-width: 46rem; }
.flw-gallery__head h1 { margin: 0 0 1rem; color: var(--flw-white); font-size: clamp(2.25rem, 4.5vw, 3.5rem); font-weight: 800; letter-spacing: -.03em; line-height: 1.05; }
.flw-gallery__filters { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 2.5rem; }
.flw-gallery__usecase select {
	min-height: 2.5rem;
	padding: 0 2.25rem 0 1rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-button);
	background: var(--flw-surface);
	color: var(--flw-white);
	font: inherit;
	font-size: .875rem;
}
.flw-gallery__usecase select:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 2px; }
.flw-gallery__empty { margin-top: 3rem; padding: 3rem; border: 1px dashed var(--flw-border); border-radius: var(--flw-radius-card); color: var(--flw-muted); text-align: center; }

/* Detailseite */
.flw-gitem { padding-top: 3rem; }
.flw-gitem__back { margin: 0 0 1.5rem; font-size: .9375rem; }
.flw-gitem__back a { color: var(--flw-muted); }
.flw-gitem__back a:hover { color: var(--flw-cyan); }
.flw-gitem__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 3rem; align-items: start; }
.flw-gitem__media { position: relative; margin: 0; overflow: hidden; border: 1px solid var(--flw-border); border-radius: var(--flw-radius-card); background: var(--flw-surface); }
.flw-gitem__media img,
.flw-gitem__media video { display: block; width: 100%; height: auto; max-height: 80vh; object-fit: contain; background: var(--flw-bg); }
.flw-gitem__ai {
	position: absolute;
	left: 1rem;
	top: 1rem;
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	padding: .3rem .7rem;
	border: 1px solid var(--flw-border);
	border-radius: 999px;
	background: rgba(6, 19, 30, .78);
	color: var(--flw-white);
	font-size: .75rem;
	font-weight: 600;
}
.flw-recipe { position: sticky; top: 7rem; }
.flw-recipe h1 { margin: .75rem 0 .75rem; color: var(--flw-white); font-size: clamp(1.875rem, 3vw, 2.5rem); font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
.flw-recipe__summary { margin: 0 0 1rem; color: var(--flw-muted); font-size: 1.0625rem; line-height: 1.6; }
.flw-recipe__meta { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; margin: 0 0 1.5rem; color: var(--flw-muted); font-size: .8125rem; font-weight: 600; }
.flw-recipe__meta .mdi { color: var(--flw-cyan); }
.flw-recipe__card { padding: 1.5rem; border: 1px solid var(--flw-border); border-radius: var(--flw-radius-card); background: var(--flw-surface); box-shadow: var(--flw-shadow); }
.flw-recipe__card h2 { margin: 0 0 .6rem; color: var(--flw-white); font-size: 1rem; font-weight: 700; }
.flw-recipe__brief { margin-bottom: 1.5rem; }
.flw-recipe__brief-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.flw-recipe__brief p { margin: 0; padding: 1rem; border-radius: var(--flw-radius-button); background: var(--flw-bg); color: var(--flw-white); font-size: .9375rem; line-height: 1.6; }
.flw-copy {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	margin-bottom: .6rem;
	padding: .3rem .7rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-button);
	background: transparent;
	color: var(--flw-muted);
	font: inherit;
	font-size: .8125rem;
	font-weight: 600;
	cursor: pointer;
	transition: border-color var(--flw-transition), color var(--flw-transition);
}
.flw-copy:hover,
.flw-copy.is-copied { border-color: var(--flw-cyan); color: var(--flw-white); }
.flw-copy:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 2px; }
.flw-recipe__settings { display: grid; gap: .5rem; margin: 0; }
.flw-recipe__settings div { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem 0; border-bottom: 1px solid var(--flw-border); }
.flw-recipe__settings div:last-child { border-bottom: 0; }
.flw-recipe__settings dt { color: var(--flw-muted); font-size: .875rem; }
.flw-recipe__settings dd { margin: 0; color: var(--flw-white); font-size: .875rem; font-weight: 600; text-align: right; }
.flw-recipe__actions { margin-top: 1.5rem; }
.flw-recipe__actions .site-btn { width: 100%; }
.flw-recipe__hint { margin: .75rem 0 0; color: var(--flw-muted); font-size: .8125rem; line-height: 1.5; }
.flw-gitem__more { margin-top: 5rem; }
.flw-gitem__more h2 { margin: 0; color: var(--flw-white); font-size: clamp(1.5rem, 2.4vw, 2rem); font-weight: 700; letter-spacing: -.02em; }

@media (prefers-reduced-motion: reduce) {
	.flw-gcard,
	.flw-gcard__hover,
	.flw-gcard__video { transition: none; }
}

@media (max-width: 1100px) {
	.flw-gallery__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.flw-gitem__grid { gap: 2rem; }
}

@media (max-width: 900px) {
	.flw-gallery__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.flw-gitem__grid { grid-template-columns: 1fr; }
	.flw-recipe { position: static; }
}

@media (max-width: 560px) {
	.flw-gallery__grid { gap: .75rem; }
	.flw-gcard__body { padding: .75rem .8rem .9rem; }
	.flw-gcard__body strong { font-size: .9375rem; }
	.flw-gallery__usecase,
	.flw-gallery__usecase select { width: 100%; }
	.flw-recipe__card { padding: 1.15rem; }
}

/* Startseite: ein Bereich je Werkzeug mit Bildmosaik aus der Galerie (views/site/home.php, site.js). */
.flw-studios__head { max-width: 48rem; margin: 0 auto; text-align: center; }
.flw-studios__head .site-lead { margin: 0 auto; }
.flw-studios__all { margin-top: clamp(3.5rem, 7vw, 6rem); }

.flw-studio--movieflw { --studio-accent: var(--flw-tool-movieflw); }
.flw-studio--videoflw { --studio-accent: var(--flw-tool-videoflw); }
.flw-studio--imageflw { --studio-accent: var(--flw-tool-imageflw); }
.flw-studio--postflw { --studio-accent: var(--flw-tool-postflw); }
.flw-studio--webflw { --studio-accent: var(--flw-tool-webflw); }

.flw-studio {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: clamp(2rem, 5vw, 5rem);
	align-items: center;
	margin-top: clamp(4.5rem, 9vw, 8rem);
	scroll-margin-top: 6rem;
}
.flw-studio.is-flipped { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); }
.flw-studio.is-flipped .flw-studio__copy { order: 2; }

.flw-studio__copy { min-width: 0; text-align: left; }
.flw-studio__brand { display: flex; align-items: center; gap: .9rem; margin-bottom: 1.4rem; }
.flw-studio__brand .flw-label { margin: 0; letter-spacing: var(--flw-tracking-label); }
.flw-studio__brand .flw-tool__icon { flex-basis: 3rem; width: 3rem; height: 3rem; font-size: 1.55rem; }
.flw-studio h3 {
	margin: 0 0 1.1rem;
	color: var(--flw-white);
	font-size: clamp(2.5rem, 4.6vw, 4rem);
	font-weight: 800;
	letter-spacing: -.04em;
	line-height: .95;
}
.flw-studio__lead { margin: 0 0 1.25rem; color: var(--flw-white); font-size: 1.1875rem; line-height: 1.55; }
.flw-studio__text { color: var(--flw-muted); font-size: .9375rem; line-height: 1.7; }
.flw-studio__text p,
.flw-studio__text ul { margin: 0 0 .9rem; }
.flw-studio__text ul { padding-left: 1.2rem; }
.flw-studio__text h2 { margin: 1.4rem 0 .5rem; color: var(--flw-white); font-size: 1.0625rem; letter-spacing: 0; }
.flw-studio__text > :last-child { margin-bottom: 0; }
.flw-studio__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }

.flw-studio__media { position: relative; min-width: 0; isolation: isolate; }
.flw-studio__media::before {
	content: '';
	position: absolute;
	inset: 12% 8%;
	z-index: -1;
	border-radius: 50%;
	background: var(--studio-accent, var(--flw-gradient));
	opacity: .16;
	filter: blur(90px);
	pointer-events: none;
}

/* Mosaik: feste Anordnung je Anzahl (1–7), erstes Werk groß. Bilder werden zugeschnitten. */
.flw-mosaic {
	--mosaic-row: clamp(5.5rem, 7.6vw, 7.5rem);
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-rows: var(--mosaic-row);
	gap: .625rem;
}
.flw-mosaic--1 { grid-template-areas: "a a a" "a a a" "a a a" "a a a"; }
.flw-mosaic--2 { grid-template-areas: "a a b" "a a b" "a a b" "a a b"; }
.flw-mosaic--3 { grid-template-areas: "a a b" "a a b" "a a c" "a a c"; }
.flw-mosaic--4 { grid-template-areas: "a a b" "a a b" "a a c" "d d c" "d d c"; }
.flw-mosaic--5 { grid-template-areas: "a a b" "a a b" "a a c" "d e c" "d e c"; }
.flw-mosaic--6 { grid-template-areas: "a a b" "a a b" "a a c" "d e c" "d e f" "d e f"; }
.flw-mosaic--7 { grid-template-areas: "a a b" "a a b" "c d b" "c d e" "f g e" "f g e"; }
.flw-mosaic > :nth-child(1) { grid-area: a; }
.flw-mosaic > :nth-child(2) { grid-area: b; }
.flw-mosaic > :nth-child(3) { grid-area: c; }
.flw-mosaic > :nth-child(4) { grid-area: d; }
.flw-mosaic > :nth-child(5) { grid-area: e; }
.flw-mosaic > :nth-child(6) { grid-area: f; }
.flw-mosaic > :nth-child(7) { grid-area: g; }
/* Werke: Reihen, deren Kacheln das echte Seitenverhältnis haben (--tile-ratio aus home.php). Breite im Verhältnis,
   gleiche Höhe je Reihe, jede Reihe füllt die ganze Breite. */
.flw-mosaic--rows { display: flex; flex-direction: column; gap: .625rem; }
.flw-mosaic__row { --row-max: 28rem; display: flex; gap: .625rem; width: min(100%, calc(var(--row-sum, 3) * var(--row-max))); margin-inline: auto; }
.flw-mosaic__row > .flw-tile { flex: var(--tile-ratio, 1.778) 1 0%; min-width: 0; aspect-ratio: var(--tile-ratio, 1.778); }

.flw-tile {
	position: relative;
	display: block;
	min-height: 0;
	overflow: hidden;
	border-radius: 14px;
	background: var(--flw-surface);
	color: var(--flw-white);
	isolation: isolate;
}
.flw-tile img,
.flw-tile__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 35%;
	transition: transform 700ms cubic-bezier(.2, .7, .2, 1), opacity 400ms ease;
}
.flw-tile__video { opacity: 0; }
.flw-tile.is-playing .flw-tile__video { opacity: 1; }
.flw-tile:hover img,
.flw-tile:hover .flw-tile__video { transform: scale(1.045); }
.flw-tile:hover { color: var(--flw-white); }
.flw-tile:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 3px; }
.flw-tile__badge {
	position: absolute;
	top: .6rem;
	right: .6rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 999px;
	background: rgba(6, 19, 30, .7);
	font-size: 1rem;
}
.flw-tile__caption {
	position: absolute;
	inset: auto 0 0;
	display: grid;
	gap: .15rem;
	padding: 2.75rem .9rem .8rem;
	background: linear-gradient(0deg, rgba(6, 19, 30, .92), rgba(6, 19, 30, 0));
	opacity: 0;
	transform: translateY(6px);
	transition: opacity 250ms ease, transform 250ms ease;
}
.flw-tile__caption strong { font-size: .9375rem; font-weight: 700; line-height: 1.3; }
.flw-tile__caption small { color: var(--flw-muted); font-size: .75rem; font-weight: 600; }
.flw-tile:hover .flw-tile__caption,
.flw-tile:focus-visible .flw-tile__caption { opacity: 1; transform: none; }

/* Werkzeug ohne veröffentlichte Werke */
.flw-studio__placeholder {
	display: grid;
	place-items: center;
	align-content: center;
	gap: 1.1rem;
	min-height: 22rem;
	padding: 2rem;
	border: 1px dashed var(--flw-border);
	border-radius: var(--flw-radius-card);
	background:
		repeating-linear-gradient(90deg, transparent 0 calc(33.333% - 1px), rgba(36, 64, 78, .45) calc(33.333% - 1px) 33.333%),
		repeating-linear-gradient(180deg, transparent 0 calc(25% - 1px), rgba(36, 64, 78, .45) calc(25% - 1px) 25%),
		rgba(13, 35, 48, .55);
	color: var(--flw-muted);
	text-align: center;
}
.flw-studio__placeholder p { margin: 0; font-size: .9375rem; }
.flw-studio__placeholder .flw-tool__icon { flex-basis: 4.5rem; width: 4.5rem; height: 4.5rem; font-size: 2.3rem; }

@media (hover: none) {
	.flw-mosaic > .flw-tile:first-child .flw-tile__caption,
	.flw-mosaic__row:first-child > .flw-tile:first-child .flw-tile__caption { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
	.flw-tile img,
	.flw-tile__video,
	.flw-tile__caption { transition: none; }
	.flw-tile:hover img,
	.flw-tile:hover .flw-tile__video { transform: none; }
}

@media (max-width: 900px) {
	.flw-studio,
	.flw-studio.is-flipped { grid-template-columns: 1fr; gap: 2rem; }
	.flw-studio.is-flipped .flw-studio__copy { order: 0; }
	.flw-studio h3 { font-size: clamp(2.25rem, 9vw, 3rem); }
	.flw-mosaic { --mosaic-row: clamp(5rem, 17vw, 7.5rem); }
	.flw-studio__placeholder { min-height: 14rem; }
}

/* Schmal: zwei Spalten, höchstens fünf Werke. */
@media (max-width: 560px) {
	.flw-studio__lead { font-size: 1.0625rem; }
	.flw-studio__actions .site-btn { flex: 1 1 100%; }
	.flw-mosaic { --mosaic-row: 6.25rem; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
	.flw-mosaic--1 { grid-template-areas: "a a" "a a" "a a"; }
	.flw-mosaic--2 { grid-template-areas: "a b" "a b" "a b"; }
	.flw-mosaic--3 { grid-template-areas: "a a" "a a" "b c" "b c"; }
	.flw-mosaic--4 { grid-template-areas: "a a" "a a" "b c" "b c" "d d" "d d"; }
	.flw-mosaic--5,
	.flw-mosaic--6,
	.flw-mosaic--7 { grid-template-areas: "a a" "a a" "b c" "b c" "d e" "d e"; }
	.flw-mosaic > :nth-child(n+6) { display: none; }
	.flw-mosaic--rows,
	.flw-mosaic__row { gap: .5rem; }
}

/* Platzhalter-Mosaik bis zum ersten Werk eines Werkzeugs: Standbilder mit langsamem Kamerazoom (Ken Burns). */
.flw-tile--still img { animation: flw-kenburns 18s ease-in-out infinite alternate; transform-origin: 50% 45%; }
.flw-tile--still:nth-child(2) img { animation-duration: 22s; animation-delay: -7s; transform-origin: 30% 60%; }
.flw-tile--still:nth-child(3) img { animation-duration: 20s; animation-delay: -12s; transform-origin: 70% 40%; }
.flw-tile--still:nth-child(4) img { animation-duration: 24s; animation-delay: -4s; transform-origin: 40% 30%; }
.flw-tile--still:nth-child(5) img { animation-duration: 19s; animation-delay: -15s; transform-origin: 60% 65%; }
@keyframes flw-kenburns {
	from { transform: scale(1.02) translate3d(0, 0, 0); }
	to { transform: scale(1.16) translate3d(-2%, -1.5%, 0); }
}
/* Schnipsel haben kein Poster: sie zeigen gleich ihr erstes Bild statt einer leeren Kachel. */
.flw-tile--clip .flw-tile__video { opacity: 1; }

/* Galerie-Modal (site.js, site/_gallery_viewer.php): Werk im Vollbild auf seinen eigenen, unscharfen Farben,
   rechts das Rezept in den CI-Farben. Auf der Startseite und in der Galerie. */
html.flw-viewer-open { overflow: hidden; }
.flw-viewer {
	width: 100vw;
	max-width: none;
	height: 100dvh;
	max-height: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 0;
	background: var(--flw-bg);
	color: var(--flw-white);
	font-family: var(--flw-font);
}
.flw-viewer[open] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 440px); }
.flw-viewer::backdrop { background: rgba(3, 10, 16, .92); }
.flw-viewer__stage { position: relative; min-width: 0; min-height: 0; overflow: hidden; background: #030a10; }
.flw-viewer__backdrop {
	position: absolute;
	inset: -80px;
	width: calc(100% + 160px);
	height: calc(100% + 160px);
	object-fit: cover;
	filter: blur(70px) saturate(1.2) brightness(.45);
	pointer-events: none;
}
.flw-viewer__media { position: absolute; inset: 0; display: grid; place-items: center; margin: 0; padding: 3rem 5.5rem; }
.flw-viewer__media img,
.flw-viewer__media video {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: calc(100dvh - 6rem);
	object-fit: contain;
	border-radius: var(--flw-radius-card);
	box-shadow: 0 30px 90px rgba(0, 0, 0, .55);
}
.flw-viewer .flw-gitem__ai { top: 1.25rem; left: 1.25rem; }
.flw-viewer__nav {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	padding: 0;
	border: 1px solid var(--flw-border);
	border-radius: 999px;
	background: rgba(6, 19, 30, .66);
	color: var(--flw-white);
	font-size: 1.6rem;
	cursor: pointer;
	backdrop-filter: blur(10px);
	transform: translateY(-50%);
	transition: border-color var(--flw-transition), background var(--flw-transition);
}
.flw-viewer__nav:hover { border-color: var(--flw-cyan); background: rgba(13, 35, 48, .9); }
.flw-viewer__nav:focus-visible,
.flw-viewer__close:focus-visible,
.flw-viewer__page:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 3px; }
.flw-viewer__nav--prev { left: 1.25rem; }
.flw-viewer__nav--next { right: 1.25rem; }
.flw-viewer__nav[hidden] { display: none; }
.flw-viewer__panel.flw-recipe { position: static; display: flex; flex-direction: column; min-width: 0; min-height: 0; border-left: 1px solid var(--flw-border); background: var(--flw-surface); }
.flw-viewer__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .9rem 1rem .9rem 1.5rem; border-bottom: 1px solid var(--flw-border); }
.flw-viewer__page { display: inline-flex; align-items: center; gap: .4rem; color: var(--flw-muted); font-size: .875rem; font-weight: 600; }
.flw-viewer__page:hover { color: var(--flw-cyan); }
.flw-viewer__close {
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-button);
	background: transparent;
	color: var(--flw-white);
	font-size: 1.35rem;
	cursor: pointer;
	transition: border-color var(--flw-transition), background var(--flw-transition);
}
.flw-viewer__close:hover { border-color: var(--flw-cyan); background: rgba(0, 217, 232, .06); }
.flw-viewer__body { flex: 1; min-height: 0; overflow-y: auto; padding: 1.5rem; }
.flw-viewer .flw-recipe__title { margin: .75rem 0; color: var(--flw-white); font-size: clamp(1.5rem, 2vw, 2rem); font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
.flw-viewer .flw-recipe__card { padding: 1.25rem; background: rgba(6, 19, 30, .45); box-shadow: none; }
/* Lange Briefings scrollen in ihrem Kasten; der Aufruf bleibt unten in der Leiste sichtbar. */
.flw-viewer .flw-recipe__brief p { max-height: 15rem; overflow-y: auto; overscroll-behavior: contain; }
.flw-viewer .flw-recipe__actions { position: sticky; bottom: -1.5rem; margin: 1.5rem -1.5rem -1.5rem; padding: 1rem 1.5rem 1.5rem; border-top: 1px solid var(--flw-border); background: var(--flw-surface); }
.flw-viewer.is-loading .flw-viewer__stage,
.flw-viewer.is-loading .flw-viewer__body { opacity: .45; transition: opacity var(--flw-transition); }
.flw-viewer__loading { grid-column: 1 / -1; display: grid; place-items: center; }
.flw-viewer__loading span { width: 2.5rem; height: 2.5rem; border: 3px solid var(--flw-border); border-top-color: var(--flw-cyan); border-radius: 50%; animation: flw-viewer-spin .8s linear infinite; }
@keyframes flw-viewer-spin { to { transform: rotate(360deg); } }
@media (max-width: 900px) {
	.flw-viewer[open] { display: flex; flex-direction: column; overflow-y: auto; }
	.flw-viewer__stage { flex: 0 0 58dvh; }
	.flw-viewer__media { padding: 1rem 3.75rem; }
	.flw-viewer__media img,
	.flw-viewer__media video { max-height: calc(58dvh - 2rem); }
	.flw-viewer__nav { width: 2.5rem; height: 2.5rem; font-size: 1.35rem; }
	.flw-viewer__nav--prev { left: .6rem; }
	.flw-viewer__nav--next { right: .6rem; }
	.flw-viewer__panel.flw-recipe { flex: none; border-left: 0; border-top: 1px solid var(--flw-border); }
	.flw-viewer__head { position: sticky; top: 0; z-index: 3; background: var(--flw-surface); }
	.flw-viewer__body { overflow: visible; }
	.flw-viewer__loading { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
	.flw-viewer__loading span { animation-duration: 2s; }
}


/* Galerie in bündigen Reihen (site.js): Bilder füllen ihre Karte, Titel und Werkzeug liegen unten auf dem Bild.
   Hochkant-Werke (.is-tall) sind zwei Reihen hoch, daneben stapeln sich zwei Halbreihen. --row-h und --tall-h
   setzt site.js je nach Breite; Restreihen (.is-partial) werden nicht gestreckt. */
.flw-gallery__grid.is-justified { display: flex; flex-direction: column; }
.flw-gallery__row,
.flw-gallery__half { display: flex; gap: inherit; }
.flw-gallery__stack { display: flex; flex: 1 1 0; flex-direction: column; gap: inherit; min-width: 0; }
.flw-gallery__band.is-flipped { flex-direction: row-reverse; }
.flw-gallery__band.is-partial .flw-gallery__stack { flex: 0 1 var(--stack-w, auto); }
.is-justified .flw-gcard { position: relative; flex: var(--card-ratio, .8) 1 0%; min-width: 0; height: var(--row-h, 230px); }
.is-justified .flw-gcard.is-tall { flex: 0 0 calc(var(--card-ratio, .8) * var(--tall-h, 472px)); height: var(--tall-h, 472px); }
.is-justified .is-partial > .flw-gcard { flex: 0 1 calc(var(--card-ratio, .8) * var(--row-h, 230px)); }
.is-justified .flw-gallery__tallrow > .flw-gcard.is-tall { flex: var(--card-ratio, .8) 1 0%; }
.is-justified .is-partial > .flw-gcard.is-tall { flex: 0 1 calc(var(--card-ratio, .8) * var(--tall-h, 472px)); }
.is-justified .flw-gcard__media { position: absolute; inset: 0; aspect-ratio: auto; }
.is-justified .flw-gcard__hover { display: none; }
.is-justified .flw-gcard__body {
	position: absolute;
	inset: auto 0 0;
	padding: 2.75rem 1rem .9rem;
	background: linear-gradient(0deg, rgba(6, 19, 30, .92), rgba(6, 19, 30, 0));
	opacity: 0;
	transform: translateY(6px);
	transition: opacity var(--flw-transition), transform var(--flw-transition);
	pointer-events: none;
}
.is-justified .flw-gcard:hover .flw-gcard__body,
.is-justified .flw-gcard:focus-visible .flw-gcard__body { opacity: 1; transform: none; }
.is-justified .flw-gcard__body strong { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
@media (hover: none) {
	.is-justified .flw-gcard__body { opacity: 1; transform: none; }
}
@media (max-width: 560px) {
	.is-justified .flw-gcard__body { padding: 2rem .6rem .55rem; }
	.is-justified .flw-gcard__body strong { font-size: .8125rem; }
	.is-justified .flw-gcard__tool { font-size: .6875rem; }
}

/* Hell/Dunkel-Schalter im Header (layout/site.php, layout/partial_flw_theme.php) */
.site-theme-toggle {
	display: inline-grid;
	width: 2.5rem;
	height: 2.5rem;
	place-items: center;
	padding: 0;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-pill, 999px);
	background: transparent;
	color: var(--flw-white);
	font-size: 1.2rem;
	cursor: pointer;
	transition: border-color var(--flw-transition), color var(--flw-transition);
}
.site-theme-toggle:hover { border-color: var(--flw-cyan); color: var(--flw-cyan); }
.site-theme-toggle:focus-visible { outline: 2px solid var(--flw-cyan); outline-offset: 2px; }

/* Wege zum Start: direkte Einstiege je Werkzeug unter dem Text (views/site/home.php) */
.flw-studio--movieflw { --studio-ink: var(--flw-c-ink-movieflw); }
.flw-studio--videoflw { --studio-ink: var(--flw-c-ink-videoflw); }
.flw-studio--imageflw { --studio-ink: var(--flw-c-ink-imageflw); }
.flw-studio--postflw { --studio-ink: var(--flw-c-ink-postflw); }
.flw-studio--webflw { --studio-ink: var(--flw-c-ink-webflw); }
.flw-start { margin: 1.6rem 0 0; }
.flw-start__label {
	margin: 0 0 .65rem;
	color: var(--flw-muted);
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: var(--flw-tracking-caps, .08em);
	text-transform: uppercase;
}
.flw-start__chips { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.flw-start__chip {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	min-height: 2.25rem;
	padding: 0 .9rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-pill, 999px);
	color: var(--flw-white);
	font-size: .8125rem;
	font-weight: 500;
	text-decoration: none;
	transition: border-color var(--flw-transition), background-color var(--flw-transition);
}
.flw-start__chip .mdi { color: var(--studio-ink, var(--flw-cyan)); font-size: 1.05rem; }
.flw-start__chip:hover {
	border-color: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 55%, transparent);
	background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 8%, transparent);
	color: var(--flw-white);
	text-decoration: none;
}
.flw-start__chip:focus-visible { outline: 2px solid var(--studio-ink, var(--flw-cyan)); outline-offset: 2px; }

/* Menü „Produkte“: die Werkzeuge mit ihrem Icon wie in der App (Etappe 8) */
.site-nav__menu a { display: flex; align-items: center; justify-content: flex-start; gap: .65rem; }
.site-nav__menu .flw-tool__icon { flex: 0 0 1.75rem; width: 1.75rem; height: 1.75rem; border-radius: .5rem; font-size: 1rem; }

/* Landingpages der Werkzeuge (views/site/tool_landing.php, Etappe 6) */
.tool-landing--imageflw { --studio-ink: var(--flw-c-ink-imageflw); }
.tool-landing--postflw { --studio-ink: var(--flw-c-ink-postflw); }
.tool-landing--webflw { --studio-ink: var(--flw-c-ink-webflw); }
.tool-landing .site-hero__grid,
.tool-landing .site-hero__grid:not(:has(.site-showcase)) {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	max-width: none;
	min-height: 26rem;
}
.tool-landing__badge {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	margin: 0;
	color: var(--studio-ink, var(--flw-cyan));
	font-size: .8125rem;
	font-weight: 600;
	letter-spacing: var(--flw-tracking-caps, .08em);
	text-transform: uppercase;
}
.tool-landing__badge .flw-tool__icon { flex-basis: 2rem; width: 2rem; height: 2rem; font-size: 1.1rem; }
.tool-landing__still {
	display: grid;
	place-items: center;
	aspect-ratio: 4 / 3;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-lg, 20px);
	background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 8%, transparent);
}
.tool-landing__still:not(.tool-landing__still--empty) { position: relative; }
.tool-landing__still img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.tool-landing__still--empty .flw-tool__icon { flex-basis: 5rem; width: 5rem; height: 5rem; font-size: 2.6rem; }
.tool-landing__head { max-width: 42rem; margin-bottom: 1.75rem; }
.tool-landing__head h2 { margin: 0 0 .5rem; }
.tool-landing__head .site-lead { margin: 0; }
.tool-landing__head--row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	max-width: none;
}
.tool-landing__starts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.tool-landing__start {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: .4rem;
	padding: 1.25rem 1.25rem 2.75rem;
	border: 1px solid var(--flw-border);
	border-radius: var(--flw-radius-md, 14px);
	color: var(--flw-white);
	text-decoration: none;
	transition: border-color var(--flw-transition), background-color var(--flw-transition);
}
.tool-landing__start strong { font-size: 1rem; font-weight: 600; }
.tool-landing__start span:not(.tool-landing__start-icon) { color: var(--flw-muted); font-size: .875rem; line-height: 1.5; }
.tool-landing__start-icon {
	display: inline-grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	margin-bottom: .35rem;
	border-radius: var(--flw-radius-sm, 10px);
	background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 14%, transparent);
	color: var(--studio-ink, var(--flw-cyan));
	font-size: 1.3rem;
}
.tool-landing__start-arrow {
	position: absolute;
	right: 1.25rem;
	bottom: 1rem;
	color: var(--studio-ink, var(--flw-cyan));
	font-size: 1.1rem;
	transition: transform var(--flw-transition);
}
.tool-landing__start:hover {
	border-color: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 55%, transparent);
	background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 6%, transparent);
	color: var(--flw-white);
	text-decoration: none;
}
.tool-landing__start:hover .tool-landing__start-arrow { transform: translateX(3px); }
.tool-landing__start:focus-visible { outline: 2px solid var(--studio-ink, var(--flw-cyan)); outline-offset: 2px; }
.tool-landing .site-steps.tool-landing__steps { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0; }
.tool-landing .site-steps__num { border: 0; background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 16%, transparent); color: var(--studio-ink, var(--flw-cyan)); }
.tool-landing .site-feature-grid.site-feature-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 0; }
.tool-landing__faq > * { max-width: 48rem; }
.tool-landing__question { border-bottom: 1px solid var(--flw-border); }
.tool-landing__question summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.1rem 0;
	color: var(--flw-white);
	font-size: 1rem;
	font-weight: 600;
	list-style: none;
	cursor: pointer;
}
.tool-landing__question summary::-webkit-details-marker { display: none; }
.tool-landing__question summary .mdi { color: var(--studio-ink, var(--flw-cyan)); font-size: 1.3rem; transition: transform var(--flw-transition); }
.tool-landing__question[open] summary .mdi { transform: rotate(180deg); }
.tool-landing__question summary:focus-visible { outline: 2px solid var(--studio-ink, var(--flw-cyan)); outline-offset: 2px; }
.tool-landing__question p { margin: 0 0 1.1rem; color: var(--flw-muted); line-height: 1.6; }
@media (max-width: 960px) {
	.tool-landing__starts,
	.tool-landing .site-feature-grid.site-feature-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	.tool-landing .site-hero__grid,
	.tool-landing .site-hero__grid:not(:has(.site-showcase)) { grid-template-columns: minmax(0, 1fr); min-height: 0; }
	.tool-landing__starts,
	.tool-landing .site-feature-grid.site-feature-grid--four,
	.tool-landing .site-steps.tool-landing__steps { grid-template-columns: minmax(0, 1fr); }
	.tool-landing__head--row { flex-direction: column; align-items: flex-start; }
}
/* Light theme (generated by resources/tools/light-theme.js): start */
:root[data-theme="light"] { --site-bg: #fbfbfc; --site-fg: #18181b; --site-muted: #55555e; --site-line: rgba(31, 31, 31, 0.08); --site-violet: #7c3aed; --site-violet-2: #8b5cf6; --site-glass: rgba(246, 246, 247, 0.62); --site-glass-border: rgba(24, 20, 41, 0.18); --site-shadow: 0 24px 80px rgba(0, 0, 0, 0.122); }
html[data-theme="light"] body.site { background: radial-gradient(circle at 12% 0%, rgba(90, 19, 210, 0.28), transparent 34rem),
		radial-gradient(circle at 90% 10%, rgba(10, 90, 219, 0.16), transparent 28rem),
		var(--site-bg); color: var(--site-fg); }
html[data-theme="light"] a { color: #2905b3; text-decoration: none; }
html[data-theme="light"] a:hover { color: #0b0231; }
html[data-theme="light"] .site-skip { background: #0d0d0d; color: #09090b; }
html[data-theme="light"] .site-header { background: rgba(249, 250, 254, 0.78); border-bottom: 1px solid rgba(28, 30, 33, 0.028); }
:root[data-theme="light"] { --site-bg: #f7f9fe; --site-fg: #0f1924; --site-muted: #434f64; --site-line: rgba(71, 107, 158, 0.13); --site-glass: linear-gradient(145deg, rgba(238, 242, 250, 0.76), rgba(245, 248, 254, 0.88)); --site-glass-border: rgba(70, 107, 159, 0.23); --site-shadow: 0 18px 45px rgba(0, 0, 0, 0.084); }
html[data-theme="light"] body.site { background: radial-gradient(circle at 50% -8%, rgba(25, 116, 205, 0.12), transparent 30rem),
		radial-gradient(circle at 4% 8%, rgba(90, 19, 210, 0.16), transparent 25rem),
		radial-gradient(circle at 96% 12%, rgba(27, 73, 202, 0.12), transparent 25rem),
		radial-gradient(circle at 22% 24%, rgba(10, 90, 219, 0.45) 0 1px, transparent 1.5px),
		radial-gradient(circle at 76% 17%, rgba(117, 10, 219, 0.42) 0 1px, transparent 1.5px),
		linear-gradient(180deg, #f7f9fe 0%, #f7f9fe 44%, #f9fafe 100%); background-size: auto, auto, auto, 19rem 19rem, 23rem 23rem, auto; }
html[data-theme="light"] .site-header { background: rgba(247, 249, 254, 0.84); border-bottom-color: rgba(71, 107, 159, 0.09); }
html[data-theme="light"] .site-badge { border-color: rgba(81, 27, 202, 0.34); background: rgba(234, 234, 247, 0.58); }
html[data-theme="light"] .site-hero__title { background: none; -webkit-background-clip: initial; background-clip: initial; color: #0f1924; text-shadow: 0 2px 22px rgba(92, 111, 138, 0.084); }
html[data-theme="light"] .site-hero__title span { background: linear-gradient(100deg, #a855f7 0%, #786df5 45%, #19bff2 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
html[data-theme="light"] .site-trust li { border-right: 1px solid var(--site-line); }
html[data-theme="light"] .site-trust li:last-child { border-right: 0; }
html[data-theme="light"] .site-glass { box-shadow: var(--site-shadow), inset 0 1px 0 rgba(115, 115, 115, 0.011); }
html[data-theme="light"] .site-glass:hover { border-color: rgba(13, 135, 216, 0.34); }
html[data-theme="light"] .site-feature .site-card-icon { background: transparent; border: 0; box-shadow: none; }
html[data-theme="light"] .site-steps > li:not(:last-child)::after { border-top: 1px dashed rgba(69, 106, 161, 0.52); }
html[data-theme="light"] .site-steps__num { background: rgba(243, 246, 253, 0.9); border: 1px solid rgba(23, 124, 206, 0.65); }
html[data-theme="light"] .site-plan.is-featured { border-color: rgba(135, 17, 213, 0.7); box-shadow: 0 0 30px rgba(0, 101, 230, 0.072), 0 0 24px rgba(135, 17, 213, 0.072); }
html[data-theme="light"] .site-cta__inner { background: radial-gradient(circle at 90% 50%, rgba(166, 19, 211, 0.32), transparent 15rem),
		linear-gradient(100deg, rgba(230, 231, 246, 0.9), rgba(82, 30, 135, 0.78)); border-color: rgba(135, 13, 216, 0.58); }
@media (max-width: 560px) {
html[data-theme="light"] .site-trust li { border-right: 0; }
}
html[data-theme="light"] .site-nav__link, html[data-theme="light"] .site-nav__toggle { background: transparent; border: 0; color: rgba(29, 29, 32, 0.86); }
html[data-theme="light"] .site-nav__link:hover, html[data-theme="light"] .site-nav__link.is-active, html[data-theme="light"] .site-nav__toggle:hover { color: var(--site-fg); background: transparent; }
html[data-theme="light"] .site-nav__chevron { border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; }
html[data-theme="light"] .site-nav__menu { background: rgba(246, 247, 253, 0.97); border: 1px solid rgba(75, 12, 217, 0.28); box-shadow: var(--site-shadow); }
html[data-theme="light"] .site-nav__menu a, html[data-theme="light"] .site-nav__menu span { color: var(--site-fg); }
html[data-theme="light"] .site-nav__menu a:hover { background: rgba(90, 19, 210, 0.22); }
html[data-theme="light"] .site-nav__menu .is-soon { color: var(--site-muted); }
html[data-theme="light"] .site-nav__language-toggle { color: var(--site-muted); }
html[data-theme="light"] .site-nav__menu--language a.is-active { color: var(--site-fg); background: rgba(90, 19, 210, 0.22); }
html[data-theme="light"] .site-link { color: var(--site-fg); }
html[data-theme="light"] .site-header .site-btn--primary { background: linear-gradient(105deg, #06b6f2 0%, #2589f8 45%, #b341ed 100%); box-shadow: 0 0 30px rgba(0, 121, 230, 0.12), 0 10px 28px rgba(90, 19, 210, 0.132); }
html[data-theme="light"] .site-btn { border: 1px solid transparent; color: var(--site-fg); }
html[data-theme="light"] .site-btn--primary { background: linear-gradient(105deg, #06b6f2 0%, #2589f8 45%, #b341ed 100%); box-shadow: 0 0 30px rgba(0, 121, 230, 0.108), 0 10px 28px rgba(90, 19, 210, 0.132); color: #fff; }
html[data-theme="light"] .site-btn--primary:hover { color: #1a1a1a; }
html[data-theme="light"] .site-btn--ghost { border-color: rgba(80, 0, 230, 0.5); background: rgba(247, 248, 253, 0.72); color: var(--site-fg); }
html[data-theme="light"] .site-btn--ghost:hover { border-color: rgba(0, 156, 230, 0.72); background: rgba(236, 239, 249, 0.78); color: #1a1a1a; }
html[data-theme="light"] .site-btn:focus-visible { outline: 2px solid #70d4ff; }
html[data-theme="light"] .site-badge { background: rgba(90, 19, 210, 0.2); border: 1px solid var(--site-glass-border); color: #0a0132; }
html[data-theme="light"] .site-badge--muted { background: rgba(31, 31, 31, 0.05); color: var(--site-muted); }
html[data-theme="light"] .site-hero__title { background: linear-gradient(180deg, #0d0d0d, #c4b5fd); -webkit-background-clip: text; background-clip: text; color: transparent; }
html[data-theme="light"] .site-lead { color: var(--site-muted); }
html[data-theme="light"] .site-trust { color: var(--site-muted); }
html[data-theme="light"] .site-trust .mdi { color: #048bb3; }
html[data-theme="light"] .site-glass { background: var(--site-glass); border: 1px solid var(--site-glass-border); box-shadow: var(--site-shadow); }
html[data-theme="light"] .site-product, html[data-theme="light"] .site-product h3 { color: var(--site-fg); }
html[data-theme="light"] .site-product p, html[data-theme="light"] .site-glass p, html[data-theme="light"] .site-plan ul { color: var(--site-muted); }
html[data-theme="light"] .site-card-icon { border: 1px solid currentColor; background: rgba(245, 247, 253, 0.72); box-shadow: 0 0 22px color-mix(in srgb, currentColor 24%, transparent); }
html[data-theme="light"] .site-card-icon--blue { color: #088bb0; }
html[data-theme="light"] .site-card-icon--violet { color: #490aae; }
html[data-theme="light"] .site-card-icon--pink { color: #920dab; }
html[data-theme="light"] .site-steps__num { background: rgba(90, 19, 210, 0.3); }
html[data-theme="light"] .site-steps__head > .mdi { color: #6b0daa; }
html[data-theme="light"] .site-plan.is-featured { border-color: rgba(75, 12, 217, 0.55); }
html[data-theme="light"] .site-plan__price { color: var(--site-fg); }
html[data-theme="light"] .site-plan__price span { color: var(--site-muted); }
html[data-theme="light"] .site-cta__inner { background: linear-gradient(135deg, rgba(90, 19, 210, 0.35), rgba(19, 79, 210, 0.2)),
		rgba(246, 246, 247, 0.7); border: 1px solid var(--site-glass-border); }
html[data-theme="light"] .site-prose { color: var(--site-muted); }
html[data-theme="light"] .site-prose h2 { color: var(--site-fg); }
html[data-theme="light"] .site-footer { border-top: 1px solid var(--site-line); color: var(--site-muted); }
html[data-theme="light"] .site-footer__brand, html[data-theme="light"] .site-footer__heading { color: var(--site-fg); }
html[data-theme="light"] .site-muted { color: var(--site-muted); }
html[data-theme="light"] .site-showcase__card { border: 1px solid var(--site-glass-border); background: rgba(249, 250, 254, 0.92); box-shadow: 0 22px 55px rgba(0, 0, 0, 0.147); }
html[data-theme="light"] .site-showcase.is-enhanced .site-showcase__card[data-position="0"] { border-color: rgba(129, 0, 230, 0.74); box-shadow: 0 0 0 1px rgba(0, 137, 230, 0.132), 0 0 32px rgba(74, 0, 230, 0.12), 0 30px 70px rgba(0, 0, 0, 0.182); }
html[data-theme="light"] .site-showcase__link { color: inherit; background: linear-gradient(160deg, rgba(90, 19, 210, 0.35), rgba(241, 243, 250, 0.9)); }
html[data-theme="light"] .site-showcase__meta { background: linear-gradient(180deg, rgba(20, 26, 41, 0.077), rgba(249, 250, 254, 0.96) 28%); color: var(--site-fg); }
html[data-theme="light"] .site-showcase__meta small { color: #0075b8; }
html[data-theme="light"] .site-showcase__meta > span { color: rgba(29, 29, 32, 0.78); }
html[data-theme="light"] .site-showcase__arrow { border: 1px solid var(--site-glass-border); color: var(--site-fg); background: rgba(31, 31, 31, 0.04); }
html[data-theme="light"] .site-showcase.is-enhanced .site-showcase__arrow { border-color: rgba(0, 161, 230, 0.52); background: rgba(246, 248, 254, 0.82); box-shadow: 0 0 22px rgba(0, 126, 230, 0.06); }
html[data-theme="light"] .site-showcase__dots a { background: transparent; border: 1px solid rgba(70, 0, 230, 0.8); }
html[data-theme="light"] .site-showcase__dots a[aria-current="true"] { background: #55bfff; border-color: #55bfff; }
html[data-theme="light"] .site-hero__title { background: none; -webkit-background-clip: initial; background-clip: initial; color: #0f1924; }
html[data-theme="light"] .site-trust li { border-right: 1px solid var(--site-line); }
html[data-theme="light"] .site-trust li:last-child { border-right: 0; }
html[data-theme="light"] .site-glass { box-shadow: var(--site-shadow), inset 0 1px 0 rgba(115, 115, 115, 0.011); }
html[data-theme="light"] .site-card-icon--gold { color: #af7809; }
html[data-theme="light"] .site-product--movieflw .site-badge { border-color: rgba(218, 150, 11, 0.45); color: #b88500; }
html[data-theme="light"] .site-product--movieflw:hover { border-color: rgba(218, 150, 11, 0.55); }
html[data-theme="light"] .site-movieflw .site-badge { border-color: rgba(218, 150, 11, 0.45); color: #b88500; }
html[data-theme="light"] .site-movieflw .site-badge i { color: #af7809; }
html[data-theme="light"] .site-movieflw .site-btn--primary { background: linear-gradient(100deg, #f5a623, #ffd66b); border-color: transparent; color: #1b1203; }
html[data-theme="light"] .site-movieflw .site-cta__inner { background: radial-gradient(circle at 90% 50%, rgba(220, 141, 10, 0.3), transparent 15rem), linear-gradient(100deg, rgba(252, 248, 243, 0.92), rgba(246, 239, 229, 0.78)); border-color: rgba(218, 150, 11, 0.5); }
html[data-theme="light"] .site-movieflw .site-steps__num { background: rgba(218, 150, 11, 0.16); color: #b88500; }
html[data-theme="light"] .site-movieflw .site-steps__head i { color: #af7809; }
html[data-theme="light"] .site-movieflw__still img { border: 1px solid rgba(218, 150, 11, 0.3); box-shadow: 0 1.5rem 3rem rgba(0, 0, 0, 0.158); }
html[data-theme="light"] .site-movieflw__still figcaption { border: 1px solid rgba(218, 150, 11, 0.4); background: rgba(253, 252, 250, 0.86); color: #a77711; }
html[data-theme="light"] .site-movieflw__still figcaption span + span { border-left: 1px solid rgba(218, 150, 11, 0.28); }
html[data-theme="light"] .site-feature .site-card-icon { background: transparent; border: 0; box-shadow: none; }
html[data-theme="light"] .site-cta__inner { background: radial-gradient(circle at 90% 50%, rgba(166, 19, 211, 0.32), transparent 15rem), linear-gradient(100deg, rgba(230, 231, 246, 0.9), rgba(82, 30, 135, 0.78)); border-color: rgba(135, 13, 216, 0.58); }
@media (max-width: 560px) {
html[data-theme="light"] .site-trust li { border-right: 0; }
}
:root[data-theme="light"] { --site-bg: var(--flw-bg); --site-fg: var(--flw-white); --site-muted: var(--flw-muted); --site-line: var(--flw-border); --site-glass: var(--flw-surface); --site-glass-border: var(--flw-border); --site-radius: var(--flw-radius-card); --site-shadow: var(--flw-shadow); }
html[data-theme="light"] body.site { background: radial-gradient(ellipse 60rem 40rem at 85% 120vh, rgba(0, 215, 230, 0.06), transparent 70%),
		radial-gradient(ellipse 50rem 30rem at 10% 200vh, rgba(14, 216, 89, 0.045), transparent 70%),
		var(--flw-bg); background-size: auto; }
html[data-theme="light"] a { color: var(--flw-cyan); }
html[data-theme="light"] a:hover { color: var(--flw-white); }
html[data-theme="light"] ::selection { background: rgba(0, 215, 230, 0.35); color: var(--flw-white); }
html[data-theme="light"] .site-header { background: rgba(242, 248, 252, 0.72); border-bottom: 1px solid var(--flw-border); }
html[data-theme="light"] .site-nav__link, html[data-theme="light"] .site-nav__toggle, html[data-theme="light"] .site-link { color: var(--flw-white); }
html[data-theme="light"] .site-nav__link:hover, html[data-theme="light"] .site-nav__link.is-active, html[data-theme="light"] .site-nav__toggle:hover, html[data-theme="light"] .site-link:hover { color: var(--flw-cyan); }
html[data-theme="light"] .site-nav__language-toggle { color: var(--flw-muted); }
html[data-theme="light"] .site-nav__menu { background: var(--flw-surface); border: 1px solid var(--flw-border); }
html[data-theme="light"] .site-nav__menu a, html[data-theme="light"] .site-nav__menu span { color: var(--flw-white); }
html[data-theme="light"] .site-nav__menu a:hover, html[data-theme="light"] .site-nav__menu--language a.is-active { background: var(--flw-surface-hover); color: var(--flw-cyan); }
html[data-theme="light"] .site-btn { border: 1px solid transparent; }
html[data-theme="light"] .site-btn--primary, html[data-theme="light"] .site-header .site-btn--primary { border: 0; background: var(--flw-gradient); color: var(--flw-bg); box-shadow: var(--flw-glow); }
html[data-theme="light"] .site-btn--primary:hover { color: var(--flw-bg); box-shadow: 0 0 40px rgba(0, 221, 184, 0.112); }
html[data-theme="light"] .site-btn--ghost, html[data-theme="light"] .site-btn--outline { border-color: var(--flw-border); background: transparent; color: var(--flw-white); }
html[data-theme="light"] .site-btn--ghost:hover, html[data-theme="light"] .site-btn--outline:hover { border-color: var(--flw-cyan); background: rgba(0, 215, 230, 0.06); color: var(--flw-white); }
html[data-theme="light"] .site-btn:focus-visible, html[data-theme="light"] .flw-tool:focus-visible, html[data-theme="light"] .site-glass:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .site-badge { background: rgba(0, 215, 230, 0.08); border: 1px solid rgba(0, 215, 230, 0.3); color: var(--flw-cyan); }
html[data-theme="light"] .site-badge--muted { background: transparent; border-color: var(--flw-border); color: var(--flw-muted); }
html[data-theme="light"] .flw-eyebrow { color: var(--flw-muted); }
html[data-theme="light"] .flw-tool { border: 1px solid var(--flw-border); background: var(--flw-surface-glass); color: var(--flw-white); box-shadow: var(--flw-shadow); }
html[data-theme="light"] .flw-tool:hover { border-color: var(--flw-border-hover); background: var(--flw-surface-hover); color: var(--flw-white); }
html[data-theme="light"] .flw-tool__text small { color: var(--flw-muted); }
html[data-theme="light"] .flw-tool__arrow { color: var(--flw-muted); }
html[data-theme="light"] .flw-tool:hover .flw-tool__arrow { color: var(--flw-cyan); }
html[data-theme="light"] .flw-tool__icon { color: #1a1a1a; box-shadow: inset 0 1px 0 rgba(115, 115, 115, 0.15); }
html[data-theme="light"] .flw-tool__icon--movieflw { background: var(--flw-tool-movieflw); color: #2a1300; }
html[data-theme="light"] .flw-tool__icon--videoflw { background: var(--flw-tool-videoflw); }
html[data-theme="light"] .flw-tool__icon--imageflw { background: var(--flw-tool-imageflw); color: #032412; }
html[data-theme="light"] .flw-tool__icon--postflw { background: var(--flw-tool-postflw); }
html[data-theme="light"] .flw-tool__icon--webflw { background: var(--flw-tool-webflw); }
html[data-theme="light"] .site-hero__title { color: var(--flw-white); }
html[data-theme="light"] .site-hero__title span { background: var(--flw-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; }
html[data-theme="light"] .site-trust .mdi { color: var(--flw-cyan); }
html[data-theme="light"] .site-section h2, html[data-theme="light"] .site-cta h2 { color: var(--flw-white); }
html[data-theme="light"] .site-lead, html[data-theme="light"] .site-section > .site-shell > .site-lead { color: var(--flw-muted); }
html[data-theme="light"] .site-glass { border: 1px solid var(--flw-border); background: var(--flw-surface); box-shadow: var(--flw-shadow); }
html[data-theme="light"] a.site-glass:hover, html[data-theme="light"] .site-glass:hover { border-color: var(--flw-border-hover); background: var(--flw-surface-hover); }
html[data-theme="light"] .site-glass p, html[data-theme="light"] .site-product p, html[data-theme="light"] .site-plan ul { color: var(--flw-muted); }
html[data-theme="light"] .site-product { color: var(--flw-white); }
html[data-theme="light"] .site-product:target { border-color: var(--flw-cyan); box-shadow: var(--flw-glow); }
html[data-theme="light"] .site-product .flw-label { color: var(--flw-cyan); }
html[data-theme="light"] .site-product h3, html[data-theme="light"] .site-feature h3, html[data-theme="light"] .site-steps h3, html[data-theme="light"] .site-plan h3 { color: var(--flw-white); }
html[data-theme="light"] .site-card-icon { border: 1px solid rgba(0, 215, 230, 0.3); background: rgba(0, 215, 230, 0.08); color: var(--flw-cyan); box-shadow: none; }
html[data-theme="light"] .site-card-icon--blue, html[data-theme="light"] .site-card-icon--violet, html[data-theme="light"] .site-card-icon--pink { color: var(--flw-cyan); }
html[data-theme="light"] .site-feature .site-card-icon { border: 1px solid rgba(0, 215, 230, 0.3); background: rgba(0, 215, 230, 0.08); }
html[data-theme="light"] .site-steps > li:not(:last-child)::after { border-color: var(--flw-border); color: var(--flw-muted-dim); }
html[data-theme="light"] .site-steps__num { background: var(--flw-gradient); color: var(--flw-bg); }
html[data-theme="light"] .site-steps__head > .mdi { color: var(--flw-cyan); }
html[data-theme="light"] .site-plan.is-featured { border-color: rgba(0, 215, 230, 0.55); box-shadow: var(--flw-glow); }
html[data-theme="light"] .site-plan .site-plan__price { color: var(--flw-white); }
html[data-theme="light"] .site-showcase__link { background: linear-gradient(160deg, rgba(0, 215, 230, 0.16), var(--flw-surface)); }
html[data-theme="light"] .site-showcase__meta small { color: var(--flw-cyan); }
html[data-theme="light"] .site-showcase.is-enhanced .site-showcase__arrow { border-color: var(--flw-border); background: var(--flw-surface-glass); }
html[data-theme="light"] .site-showcase.is-enhanced .site-showcase__arrow:hover { border-color: var(--flw-cyan); box-shadow: none; }
html[data-theme="light"] .site-showcase__dots a { border-color: var(--flw-muted); }
html[data-theme="light"] .site-showcase__dots a[aria-current="true"] { background: var(--flw-cyan); border-color: var(--flw-cyan); }
html[data-theme="light"] .site-cta__inner, html[data-theme="light"] .site-movieflw .site-cta__inner { border: 1px solid var(--flw-border); background: radial-gradient(circle at 92% 50%, rgba(14, 216, 89, 0.14), transparent 22rem),
		radial-gradient(circle at 60% 120%, rgba(0, 215, 230, 0.14), transparent 20rem),
		var(--flw-surface); }
html[data-theme="light"] .site-footer { border-top: 1px solid var(--flw-border); color: var(--flw-muted); }
html[data-theme="light"] .site-footer a { color: var(--flw-muted); }
html[data-theme="light"] .site-footer a:hover { color: var(--flw-cyan); }
html[data-theme="light"] .site-footer__legal { color: var(--flw-muted-dim); }
html[data-theme="light"] .flw-label { color: var(--flw-cyan); }
html[data-theme="light"] .flw-chip { border: 1px solid var(--flw-border); color: var(--flw-muted); }
html[data-theme="light"] .flw-chip:hover { border-color: var(--flw-border-hover); color: var(--flw-white); }
html[data-theme="light"] .flw-chip.is-active { border-color: var(--flw-cyan); background: rgba(0, 215, 230, 0.08); color: var(--flw-white); }
html[data-theme="light"] .flw-chip__dot, html[data-theme="light"] .flw-gcard__icon { box-shadow: none; }
html[data-theme="light"] .flw-gcard { border: 1px solid var(--flw-border); background: var(--flw-surface); color: var(--flw-white); }
html[data-theme="light"] .flw-gcard:hover { border-color: var(--flw-border-hover); color: var(--flw-white); }
html[data-theme="light"] .flw-gcard:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .flw-gcard__media { background: var(--flw-bg); }
html[data-theme="light"] .flw-gcard__play { background: rgba(245, 249, 253, 0.7); color: var(--flw-white); }
html[data-theme="light"] .flw-gcard__hover { background: linear-gradient(0deg, rgba(245, 249, 253, 0.92), transparent); color: var(--flw-white); }
html[data-theme="light"] .flw-gcard__tool { color: var(--flw-muted); }
html[data-theme="light"] .flw-gallery__head h1 { color: var(--flw-white); }
html[data-theme="light"] .flw-gallery__usecase select { border: 1px solid var(--flw-border); background: var(--flw-surface); color: var(--flw-white); }
html[data-theme="light"] .flw-gallery__usecase select:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .flw-gallery__empty { border: 1px dashed var(--flw-border); color: var(--flw-muted); }
html[data-theme="light"] .flw-gitem__back a { color: var(--flw-muted); }
html[data-theme="light"] .flw-gitem__back a:hover { color: var(--flw-cyan); }
html[data-theme="light"] .flw-gitem__media { border: 1px solid var(--flw-border); background: var(--flw-surface); }
html[data-theme="light"] .flw-gitem__media img, html[data-theme="light"] .flw-gitem__media video { background: var(--flw-bg); }
html[data-theme="light"] .flw-gitem__ai { border: 1px solid var(--flw-border); background: rgba(245, 249, 253, 0.78); color: var(--flw-white); }
html[data-theme="light"] .flw-recipe h1 { color: var(--flw-white); }
html[data-theme="light"] .flw-recipe__summary { color: var(--flw-muted); }
html[data-theme="light"] .flw-recipe__meta { color: var(--flw-muted); }
html[data-theme="light"] .flw-recipe__meta .mdi { color: var(--flw-cyan); }
html[data-theme="light"] .flw-recipe__card { border: 1px solid var(--flw-border); background: var(--flw-surface); box-shadow: var(--flw-shadow); }
html[data-theme="light"] .flw-recipe__card h2 { color: var(--flw-white); }
html[data-theme="light"] .flw-recipe__brief p { background: var(--flw-bg); color: var(--flw-white); }
html[data-theme="light"] .flw-copy { border: 1px solid var(--flw-border); background: transparent; color: var(--flw-muted); }
html[data-theme="light"] .flw-copy:hover, html[data-theme="light"] .flw-copy.is-copied { border-color: var(--flw-cyan); color: var(--flw-white); }
html[data-theme="light"] .flw-copy:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .flw-recipe__settings div { border-bottom: 1px solid var(--flw-border); }
html[data-theme="light"] .flw-recipe__settings div:last-child { border-bottom: 0; }
html[data-theme="light"] .flw-recipe__settings dt { color: var(--flw-muted); }
html[data-theme="light"] .flw-recipe__settings dd { color: var(--flw-white); }
html[data-theme="light"] .flw-recipe__hint { color: var(--flw-muted); }
html[data-theme="light"] .flw-gitem__more h2 { color: var(--flw-white); }
html[data-theme="light"] .flw-studio--movieflw { --studio-accent: var(--flw-tool-movieflw); }
html[data-theme="light"] .flw-studio--videoflw { --studio-accent: var(--flw-tool-videoflw); }
html[data-theme="light"] .flw-studio--imageflw { --studio-accent: var(--flw-tool-imageflw); }
html[data-theme="light"] .flw-studio--postflw { --studio-accent: var(--flw-tool-postflw); }
html[data-theme="light"] .flw-studio--webflw { --studio-accent: var(--flw-tool-webflw); }
html[data-theme="light"] .flw-studio h3 { color: var(--flw-white); }
html[data-theme="light"] .flw-studio__lead { color: var(--flw-white); }
html[data-theme="light"] .flw-studio__text { color: var(--flw-muted); }
html[data-theme="light"] .flw-studio__text h2 { color: var(--flw-white); }
html[data-theme="light"] .flw-studio__media::before { background: var(--studio-accent, var(--flw-gradient)); }
html[data-theme="light"] .flw-tile { background: var(--flw-surface); color: var(--flw-white); }
html[data-theme="light"] .flw-tile:hover { color: var(--flw-white); }
html[data-theme="light"] .flw-tile:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .flw-tile__badge { background: rgba(245, 249, 253, 0.7); }
html[data-theme="light"] .flw-tile__caption { background: linear-gradient(0deg, rgba(245, 249, 253, 0.92), rgba(20, 31, 41, 0)); }
html[data-theme="light"] .flw-tile__caption small { color: var(--flw-muted); }
html[data-theme="light"] .flw-studio__placeholder { border: 1px dashed var(--flw-border); background: repeating-linear-gradient(90deg, transparent 0 calc(33.333% - 1px), rgba(20, 34, 41, 0.158) calc(33.333% - 1px) 33.333%),
		repeating-linear-gradient(180deg, transparent 0 calc(25% - 1px), rgba(20, 34, 41, 0.158) calc(25% - 1px) 25%),
		rgba(239, 246, 251, 0.55); color: var(--flw-muted); }
html[data-theme="light"] .flw-viewer { border: 0; background: var(--flw-bg); color: var(--flw-white); }
html[data-theme="light"] .flw-viewer::backdrop { background: rgba(3, 10, 16, 0.92); }
html[data-theme="light"] .flw-viewer__stage { background: #f9fcfe; }
html[data-theme="light"] .flw-viewer__media img, html[data-theme="light"] .flw-viewer__media video { box-shadow: 0 30px 90px rgba(0, 0, 0, 0.193); }
html[data-theme="light"] .flw-viewer__nav { border: 1px solid var(--flw-border); background: rgba(245, 249, 253, 0.66); color: var(--flw-white); }
html[data-theme="light"] .flw-viewer__nav:hover { border-color: var(--flw-cyan); background: rgba(239, 246, 251, 0.9); }
html[data-theme="light"] .flw-viewer__nav:focus-visible, html[data-theme="light"] .flw-viewer__close:focus-visible, html[data-theme="light"] .flw-viewer__page:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .flw-viewer__panel.flw-recipe { border-left: 1px solid var(--flw-border); background: var(--flw-surface); }
html[data-theme="light"] .flw-viewer__head { border-bottom: 1px solid var(--flw-border); }
html[data-theme="light"] .flw-viewer__page { color: var(--flw-muted); }
html[data-theme="light"] .flw-viewer__page:hover { color: var(--flw-cyan); }
html[data-theme="light"] .flw-viewer__close { border: 1px solid var(--flw-border); background: transparent; color: var(--flw-white); }
html[data-theme="light"] .flw-viewer__close:hover { border-color: var(--flw-cyan); background: rgba(0, 215, 230, 0.06); }
html[data-theme="light"] .flw-viewer .flw-recipe__title { color: var(--flw-white); }
html[data-theme="light"] .flw-viewer .flw-recipe__card { background: rgba(20, 31, 41, 0.158); box-shadow: none; }
html[data-theme="light"] .flw-viewer .flw-recipe__actions { border-top: 1px solid var(--flw-border); background: var(--flw-surface); }
html[data-theme="light"] .flw-viewer__loading span { border: 3px solid var(--flw-border); border-top-color: var(--flw-cyan); }
@media (max-width: 900px) {
html[data-theme="light"] .flw-viewer__panel.flw-recipe { border-left: 0; border-top: 1px solid var(--flw-border); }
html[data-theme="light"] .flw-viewer__head { background: var(--flw-surface); }
}
html[data-theme="light"] .is-justified .flw-gcard__body { background: linear-gradient(0deg, rgba(245, 249, 253, 0.92), rgba(20, 31, 41, 0)); }
html[data-theme="light"] .site-theme-toggle { border: 1px solid var(--flw-border); background: transparent; color: var(--flw-white); }
html[data-theme="light"] .site-theme-toggle:hover { border-color: var(--flw-cyan); color: var(--flw-cyan); }
html[data-theme="light"] .site-theme-toggle:focus-visible { outline: 2px solid var(--flw-cyan); }
html[data-theme="light"] .flw-studio--movieflw { --studio-ink: var(--flw-c-ink-movieflw); }
html[data-theme="light"] .flw-studio--videoflw { --studio-ink: var(--flw-c-ink-videoflw); }
html[data-theme="light"] .flw-studio--imageflw { --studio-ink: var(--flw-c-ink-imageflw); }
html[data-theme="light"] .flw-studio--postflw { --studio-ink: var(--flw-c-ink-postflw); }
html[data-theme="light"] .flw-studio--webflw { --studio-ink: var(--flw-c-ink-webflw); }
html[data-theme="light"] .flw-start__label { color: var(--flw-muted); }
html[data-theme="light"] .flw-start__chip { border: 1px solid var(--flw-border); color: var(--flw-white); text-decoration: none; }
html[data-theme="light"] .flw-start__chip .mdi { color: var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .flw-start__chip:hover { border-color: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 55%, transparent); background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 8%, transparent); color: var(--flw-white); text-decoration: none; }
html[data-theme="light"] .flw-start__chip:focus-visible { outline: 2px solid var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing--imageflw { --studio-ink: var(--flw-c-ink-imageflw); }
html[data-theme="light"] .tool-landing--postflw { --studio-ink: var(--flw-c-ink-postflw); }
html[data-theme="light"] .tool-landing--webflw { --studio-ink: var(--flw-c-ink-webflw); }
html[data-theme="light"] .tool-landing__badge { color: var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing__still { border: 1px solid var(--flw-border); background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 8%, transparent); }
html[data-theme="light"] .tool-landing__start { border: 1px solid var(--flw-border); color: var(--flw-white); text-decoration: none; }
html[data-theme="light"] .tool-landing__start span:not(.tool-landing__start-icon) { color: var(--flw-muted); }
html[data-theme="light"] .tool-landing__start-icon { background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 14%, transparent); color: var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing__start-arrow { color: var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing__start:hover { border-color: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 55%, transparent); background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 6%, transparent); color: var(--flw-white); text-decoration: none; }
html[data-theme="light"] .tool-landing__start:focus-visible { outline: 2px solid var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing .site-steps__num { border: 0; background: color-mix(in srgb, var(--studio-ink, var(--flw-cyan)) 16%, transparent); color: var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing__question { border-bottom: 1px solid var(--flw-border); }
html[data-theme="light"] .tool-landing__question summary { color: var(--flw-white); }
html[data-theme="light"] .tool-landing__question summary .mdi { color: var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing__question summary:focus-visible { outline: 2px solid var(--studio-ink, var(--flw-cyan)); }
html[data-theme="light"] .tool-landing__question p { color: var(--flw-muted); }
/* Light theme (generated): end */
