/* ===== 16.10.2026 Wow-Upgrade: Hero-Wand, Kennzahlen-Band, Case-Stage, Reveals ===== */
.f2-hero--wall { align-items:center; min-height:100svh; background:radial-gradient(120% 90% at 85% 10%,#16202b 0%,#0a0a0a 55%); }
.f2-hero__glow { position:absolute; width:60vw; height:60vw; right:-15vw; top:-20vw; background:radial-gradient(closest-side,rgba(0,173,255,.18),transparent); filter:blur(20px); pointer-events:none; }
.f2-hero__grid { display:grid; grid-template-columns:1fr; gap:36px; align-items:center; position:relative; z-index:2; }
@media (min-width:1000px) { .f2-hero__grid { grid-template-columns:6.4fr 5.6fr; gap:48px; } }
#top .smo-f2 .f2-h1--wall { font-size:clamp(34px,6vw,112px); }
.f2-hero--wall .f2-lede { max-width:34em; margin-top:clamp(18px,2vw,30px); color:var(--f-fg); }
.f2-hero--wall .f2-hero__cta { margin-top:clamp(22px,2.4vw,36px); }
.f2-hero--wall .f2-hero__bar { margin-top:clamp(28px,4vw,56px); }
.f2-wall { display:none; }
@media (min-width:1000px) {
	.f2-wall { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; height:min(78vh,760px); }
	.f2-wall__col { display:flex; flex-direction:column; gap:14px; }
	.f2-wall__col--0 { transform:translateY(-6%); animation:f2float 9s ease-in-out infinite; }
	.f2-wall__col--1 { transform:translateY(8%); animation:f2float 11s ease-in-out -3s infinite reverse; }
	.f2-wall__col--2 { transform:translateY(-2%); animation:f2float 10s ease-in-out -6s infinite; }
}
@keyframes f2float { 0%,100% { translate:0 -10px; } 50% { translate:0 12px; } }
.f2-wall__tile { position:relative; flex:1 1 0; min-height:0; display:block; overflow:hidden; background:var(--f-card); border-radius:6px; }
.f2-wall__tile video, .f2-wall__tile img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.f2-wall__label { position:absolute; left:10px; bottom:10px; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; background:rgba(10,10,10,.6); padding:5px 9px; border-radius:999px; backdrop-filter:blur(6px); }

/* Kennzahlen-Band */
.f2-kpiband { border-bottom:1px solid var(--f-line); padding:clamp(36px,5vw,72px) 0 !important; }
.f2-kpiband__grid { display:grid; grid-template-columns:repeat(2,1fr); gap:28px 20px; }
@media (min-width:900px) { .f2-kpiband__grid { grid-template-columns:repeat(4,1fr); } }
.f2-kb { display:block; border-left:1px solid var(--f-line); padding-left:18px; }
#top .smo-f2 .f2-kb strong { display:block; font-size:clamp(38px,5.4vw,96px); line-height:1; font-weight:700; letter-spacing:-.05em; font-variant-numeric:tabular-nums; color:var(--f-fg); }
#top .smo-f2 .f2-kb span { display:block; margin-top:10px; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--f-mute); }
#top .smo-f2 .f2-kb em { display:block; margin-top:5px; font-style:normal; font-size:13px; color:var(--f-fg); }
#top .smo-f2 .f2-kb:hover em { color:var(--f-accent); }
#top .smo-f2 .f2-kpiband__note { margin-top:22px; font-size:12px; color:var(--f-mute); }

/* Case-Stage (Desktop) */
.f2-stage { display:none; }
.f2-cases--m { display:block; }
@media (min-width:1000px) and (min-height:640px) {
	.f2-stage { display:block; height:calc(var(--n) * 90vh + 20vh); }
	.f2-cases--m { display:none; }
	.f2-stage__sticky { position:sticky; top:0; height:100vh; display:flex; align-items:center; overflow:hidden; border-top:1px solid var(--f-line); }
	.f2-stage__grid { display:grid; grid-template-columns:4fr 4fr 4fr; gap:clamp(24px,3vw,56px); align-items:center; width:100%; }
	.f2-stage__media { position:relative; height:min(78vh,780px); aspect-ratio:9/16; justify-self:center; background:var(--f-card); overflow:hidden; border-radius:8px; }
	.f2-stage__frame { position:absolute; inset:0; opacity:0; transform:scale(1.06); transition:opacity .6s var(--f-ease),transform .9s var(--f-ease); }
	.f2-stage__frame.is-on { opacity:1; transform:none; }
	.f2-stage__frame video, .f2-stage__frame img { width:100%; height:100%; object-fit:cover; display:block; }
	.f2-stage__texts { position:relative; min-height:280px; }
	.f2-stage__text { position:absolute; left:0; right:0; top:50%; transform:translateY(calc(-50% + 24px)); opacity:0; transition:opacity .5s ease,transform .7s var(--f-ease); pointer-events:none; }
	.f2-stage__text.is-on { opacity:1; transform:translateY(-50%); pointer-events:auto; }
}
.f2-stage__count { font-size:clamp(28px,3vw,48px); font-weight:700; letter-spacing:-.04em; margin-top:22px !important; font-variant-numeric:tabular-nums; color:var(--f-mute); }
#top .smo-f2 .f2-stage__count .f2-stage__cur { color:var(--f-fg); }
#top .smo-f2 .f2-stage__intro { margin-top:18px; color:var(--f-mute); font-size:15px; line-height:1.6; max-width:30em; }
#top .smo-f2 .f2-stage__case { font-size:clamp(24px,2.6vw,44px); line-height:1.05; font-weight:700; letter-spacing:-.04em; margin-bottom:22px; }
#top .smo-f2 .f2-stage__kpis { display:flex; flex-direction:column; gap:12px; margin-bottom:26px; }
#top .smo-f2 .f2-stage__kpis span { font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--f-mute); }
#top .smo-f2 .f2-stage__kpis b { display:block; font-size:clamp(34px,4vw,64px); line-height:1; letter-spacing:-.05em; color:var(--f-fg); text-transform:none; margin-bottom:4px; }

/* Leistungen: zwei Spalten mit Chips */
@media (min-width:900px) { .f2-svc__item { grid-template-columns:90px 1fr 1fr; align-items:start; } }
.f2-svc__side { display:grid; gap:18px; align-content:start; }
.f2-chips { list-style:none; margin:0 !important; padding:0 !important; display:flex; flex-wrap:wrap; gap:8px; }
#top .smo-f2 .f2-chips li { font-size:12px; font-weight:600; letter-spacing:.04em; padding:8px 14px; border:1px solid var(--f-line); border-radius:999px; color:var(--f-fg); transition:background .25s,color .25s,border-color .25s; }
.f2-svc__item:hover .f2-chips li { border-color:rgba(242,242,239,.45); }
.f2-svc__item { transition:padding-left .4s var(--f-ease); }
@media (hover:hover) { .f2-svc__item:hover { padding-left:14px; } }

/* Sticky Mini-CTA */
.f2-sticky { position:fixed; right:clamp(14px,2vw,28px); bottom:clamp(14px,2vw,28px); z-index:50; display:inline-flex; gap:10px; align-items:center; padding:15px 24px; border-radius:999px; background:#f2f2ef; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; box-shadow:0 10px 30px rgba(0,0,0,.4); transform:translateY(160%); transition:transform .4s var(--f-ease); }
#top .smo-f2 .f2-sticky, #top .smo-f2 .f2-sticky i { color:#0a0a0a; }
.f2-sticky.is-in { transform:none; }
.f2-sticky[hidden] { display:none; }

/* Reveals (nur mit JS) */
.f2-js .f2-hero .f2-line { transform:translateY(60%); opacity:0; animation:f2up 1s var(--f-ease) forwards; }
.f2-js .f2-hero .f2-line:nth-child(2) { animation-delay:.1s; } .f2-js .f2-hero .f2-line:nth-child(3) { animation-delay:.2s; }
@keyframes f2up { to { transform:none; opacity:1; } }
.f2-js [data-rv] { opacity:0; transform:translateY(28px); transition:opacity .8s var(--f-ease),transform .9s var(--f-ease); }
.f2-js [data-rv].is-in { opacity:1; transform:none; }
@media (max-width:767px) { .f2-hero--wall { min-height:auto; padding-top:110px !important; } .f2-sticky { left:14px; right:14px; justify-content:center; } }
@media (prefers-reduced-motion: reduce) {
	.f2-wall__col, .f2-js .f2-hero .f2-line { animation:none !important; transform:none !important; opacity:1 !important; }
	.f2-js [data-rv] { opacity:1; transform:none; transition:none; }
	.f2-stage__frame, .f2-stage__text { transition:none; }
}

/* Hero-Korrektur: Spalten, H1-Groesse, Leiste unter dem Raster */
.f2-hero--wall { flex-direction:column; align-items:stretch; justify-content:center; }
.f2-hero--wall > .f2-wrap { width:100%; }
@media (min-width:1000px) { .f2-hero__grid { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); } }
#top .smo-f2 .f2-h1--wall { font-size:clamp(34px,4.2vw,80px); }

/* Mobil: Hero-Wand als Streifen, Sticky-CTA neben Back-to-top */
@media (max-width:999px) {
	.f2-wall { display:flex; gap:10px; overflow:hidden; height:min(52vh,420px); }
	.f2-wall__col { flex:0 0 38%; display:flex; flex-direction:column; gap:10px; }
	.f2-wall__col:nth-child(2) { transform:translateY(8%); }
	.f2-wall__tile:nth-child(2) { display:none; }
}
@media (max-width:767px) { .f2-sticky { right:78px; } }

/* ===== Review-Umsetzung 16.10.2026: Lesbarkeit, Cases redaktionell, Leistungen, Ratgeber ===== */
.smo-f2 { --f-mute:rgba(242,242,239,.74); }
#top .smo-f2 .f2-lede { font-size:clamp(18px,1.55vw,22px); line-height:1.55; max-width:34em; }
.f2-label, #top .smo-f2 .f2-label { font-size:13px; }
#top .smo-f2 .f2-head__text { font-size:clamp(17px,1.3vw,20px); line-height:1.6; max-width:52ch; }
#top .smo-f2 .f2-fact dd { font-size:17px; line-height:1.55; max-width:36ch; }
.f2-fact dt { font-size:13px; }
#top .smo-f2 .f2-svc__body p { font-size:clamp(17px,1.25vw,19px); max-width:52ch; }
#top .smo-f2 .f2-step p { font-size:17px; line-height:1.6; max-width:36ch; }
#top .smo-f2 .f2-faq__item p { font-size:17px; line-height:1.65; max-width:62ch; }
#top .smo-f2 .f2-case__kpis, #top .smo-f2 .f2-case__kpis span { font-size:14px; }
.f2-case__brand, #top .smo-f2 .f2-case__brand { font-size:13px; }
#top .smo-f2 .f2-chips li { font-size:14px; }
#top .smo-f2 .f2-kpiband__note { font-size:14px; }
#top .smo-f2 .f2-kb span { font-size:12px; }
#top .smo-f2 .f2-kb em { font-size:15px; }
#top .smo-f2 .f2-case__title { font-size:18px; }

/* Hero-Punkte */
.f2-points { list-style:none; margin:clamp(20px,2vw,30px) 0 0 !important; padding:0 !important; display:grid; gap:12px; max-width:40em; }
.f2-points li { display:grid; grid-template-columns:96px 1fr; gap:14px; align-items:baseline; border-top:1px solid var(--f-line); padding-top:12px; }
#top .smo-f2 .f2-points b { font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--f-accent); }
#top .smo-f2 .f2-points span { font-size:16px; line-height:1.5; color:var(--f-fg); }
#top .smo-f2 .f2-points a { border-bottom:1px solid currentColor; }

/* Cases redaktionell */
.f2-feat { display:grid; grid-template-columns:1fr; gap:28px; align-items:center; }
@media (min-width:900px) { .f2-feat { grid-template-columns:5fr 7fr; gap:clamp(32px,5vw,96px); } }
.f2-feat__media { aspect-ratio:9/16; width:100%; max-width:440px; max-height:82vh; justify-self:center; border-radius:8px; }
.f2-feat__body { display:grid; gap:20px; align-content:center; }
#top .smo-f2 .f2-feat__title { font-size:clamp(28px,3.4vw,56px); line-height:1.02; font-weight:700; letter-spacing:-.04em; }
.f2-feat__kpis { display:flex; flex-wrap:wrap; gap:20px 44px; }
#top .smo-f2 .f2-feat__kpis span { font-size:14px; letter-spacing:.08em; text-transform:uppercase; color:var(--f-mute); }
#top .smo-f2 .f2-feat__kpis b { display:block; font-size:clamp(44px,6vw,104px); line-height:1; letter-spacing:-.05em; color:var(--f-fg); text-transform:none; margin-bottom:6px; }
#top .smo-f2 .f2-feat__kpis i, #top .smo-f2 .f2-case__kpis i { display:block; font-style:normal; font-size:12px; letter-spacing:.04em; text-transform:none; opacity:.8; }
.f2-feat__body .f2-link { justify-self:start; }
.f2-duo { display:grid; grid-template-columns:1fr; gap:48px; margin-top:clamp(64px,9vw,140px); }
@media (min-width:900px) { .f2-duo { grid-template-columns:1.15fr .85fr; gap:clamp(40px,6vw,120px); align-items:start; } .f2-duo__item--1 { margin-top:clamp(80px,12vw,200px); } }
.f2-duo__item { display:grid; gap:18px; }
.f2-duo__media { aspect-ratio:4/5; border-radius:8px; display:block; position:relative; overflow:hidden; background:var(--f-card); }
.f2-duo__item--1 .f2-duo__media { aspect-ratio:9/14; }
.f2-duo__media video, .f2-duo__media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--f-ease); }
.f2-duo__item:hover .f2-duo__media video, .f2-duo__item:hover .f2-duo__media img { transform:scale(1.04); }
#top .smo-f2 .f2-duo__title { display:block; font-size:clamp(22px,2.2vw,34px); line-height:1.1; font-weight:700; letter-spacing:-.03em; margin:4px 0 10px; }
.f2-duo__meta { display:block; }
.f2-midcta { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px 32px; margin-top:clamp(64px,8vw,120px); padding:clamp(24px,3vw,44px) 0; border-top:1px solid var(--f-line); border-bottom:1px solid var(--f-line); }
#top .smo-f2 .f2-midcta p { font-size:clamp(22px,2.6vw,40px); font-weight:700; letter-spacing:-.035em; line-height:1.05; }
.f2-rail__label { margin-top:clamp(56px,7vw,100px) !important; margin-bottom:20px !important; }
.f2-gallery--compact { display:grid; grid-template-columns:repeat(var(--n,3),minmax(0,1fr)); gap:clamp(14px,1.6vw,28px); overflow:visible; scroll-snap-type:none; }
.f2-gallery--compact .f2-case { flex:none; min-width:0; }
.f2-gallery--compact .f2-case__media { aspect-ratio:4/5; }
@media (max-width:1023px) { .f2-gallery--compact { grid-template-columns:repeat(min(var(--n,2),3),minmax(0,1fr)); } }
@media (max-width:767px) { .f2-gallery--compact { grid-template-columns:repeat(2,minmax(0,1fr)); } .f2-gallery--compact .f2-case:last-child:nth-child(odd) { grid-column:1 / -1; } .f2-gallery--compact .f2-case:last-child:nth-child(odd) .f2-case__media { aspect-ratio:16/10; } }
.f2-ed { padding-bottom:clamp(40px,5vw,80px) !important; }

/* Leistungen: Problem / Vorgehen / Ergebnis */
.f2-svc__qa { margin:10px 0 0; display:grid; gap:14px; }
.f2-svc__qa div { display:grid; grid-template-columns:130px 1fr; gap:14px; border-top:1px solid var(--f-line); padding-top:12px; }
#top .smo-f2 .f2-svc__qa dt { font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--f-accent); margin:0; }
#top .smo-f2 .f2-svc__qa dd { font-size:16px; line-height:1.55; color:var(--f-fg); margin:0; }
@media (max-width:600px) { .f2-svc__qa div { grid-template-columns:1fr; gap:4px; } .f2-points li { grid-template-columns:1fr; gap:2px; } }
@media (min-width:900px) { .f2-svc__item { grid-template-columns:90px 1.4fr .8fr; } .f2-svc__body { max-width:none; } }

/* Ratgeber */
.f2-guide { border-top:1px solid var(--f-line); padding:clamp(72px,10vw,160px) 0 !important; }
.f2-guide__grid { display:grid; grid-template-columns:1fr; gap:40px 48px; }
@media (min-width:800px) { .f2-guide__grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1200px) { .f2-guide__grid { grid-template-columns:repeat(3,1fr); } }
.f2-guide__item { border-top:1px solid var(--f-fg); padding-top:20px; }
#top .smo-f2 .f2-guide__item h3 { font-size:clamp(22px,2vw,30px); line-height:1.1; font-weight:700; letter-spacing:-.03em; margin-bottom:12px; }
#top .smo-f2 .f2-guide__item p { font-size:17px; line-height:1.65; color:var(--f-mute); max-width:40ch; }

/* Header-Icons (Darkmode-Toggle, Suche, Burger) folgen dem Modus: Light = dunkel, Dark = hell (Stephan 16.10.2026) */
html[data-site-theme="light"] body#top.smo-fancy-active #header .smo-dark-icon-btn,
html[data-site-theme="light"] body#top.smo-fancy-active #header .smo-search-trigger { color:#111 !important; }
html[data-site-theme="dark"] body#top.smo-fancy-active #header .smo-dark-icon-btn,
html[data-site-theme="dark"] body#top.smo-fancy-active #header .smo-search-trigger { color:#e2e2e2 !important; }
.f2-svc__qa div { grid-template-columns:170px 1fr; }
.f2-ed .f2-after { margin-top:28px; }
@media (max-width:600px) { .f2-svc__qa div { grid-template-columns:1fr; } }
/* LCP: Hero-Headline nie unsichtbar starten, kurze Bewegung */
.f2-js .f2-hero .f2-line { opacity:1; transform:translateY(40%); animation:f2up .6s var(--f-ease) forwards; }
.f2-js .f2-hero .f2-line:nth-child(2) { animation-delay:.05s; } .f2-js .f2-hero .f2-line:nth-child(3) { animation-delay:.1s; }

/* Case-Kontext: Ausgangslage / Idee */
.f2-feat__brief { display:grid; gap:14px; max-width:46em; }
#top .smo-f2 .f2-feat__brief > span { display:grid; grid-template-columns:130px 1fr; gap:14px; font-size:16px; line-height:1.55; border-top:1px solid var(--f-line); padding-top:12px; color:var(--f-fg); font-weight:400; }
#top .smo-f2 .f2-feat__brief b { font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--f-accent); }
#top .smo-f2 .f2-duo__brief { display:block; font-size:15px; line-height:1.55; color:var(--f-mute); margin-bottom:12px; max-width:40em; font-weight:400; }
.f2-midcta--svc { margin-top:clamp(40px,5vw,72px); border-bottom:0; }
@media (max-width:600px) { #top .smo-f2 .f2-feat__brief > span { grid-template-columns:1fr; gap:2px; } }

/* Kontakt: Lesbarkeit (WCAG AA, 16 px Fliesstext) */
.f2c-field label { font-size:13px; }
#top .smo-f2 .f2c-help, #top .smo-f2 .f2c-err { font-size:14px; }
#top .smo-f2 .f2c-privacy { font-size:14px; line-height:1.55; color:var(--f-mute); }
.f2c-more summary { font-size:13px; }
#top .smo-f2 .f2c-person__role { font-size:15px; }
.f2c-ways span { font-size:13px; }

/* Kontakt: Lesbarkeit (WCAG AA, 16 px Fliesstext) */
.f2c-field label { font-size:13px; }
#top .smo-f2 .f2c-help, #top .smo-f2 .f2c-err { font-size:14px; }
#top .smo-f2 .f2c-privacy { font-size:14px; line-height:1.55; color:var(--f-mute); }
.f2c-more summary { font-size:13px; }
#top .smo-f2 .f2c-person__role { font-size:15px; }
.f2c-ways span { font-size:13px; }
@media (min-width:768px) { .f2-sticky { right:92px; } }

/* ===== Hell/Dunkel: Inhaltsbereich folgt dem Modus (html[data-site-theme]); Tokens an EINER Stelle ===== */
.f2-trust__logos--light { display: none; }
html[data-site-theme="light"] .f2-trust__logos--dark { display: none; }
html[data-site-theme="light"] .f2-trust__logos--light { display: block; }
html[data-site-theme="light"] .smo-f2 { --f-bg:#f7f7f4; --f-fg:#0a0a0a; --f-mute:rgba(10,10,10,.72); --f-line:rgba(10,10,10,.16); --f-card:#ffffff; --f-accent:#0070a8; }
html[data-site-theme="light"] .f2-hero--wall { background: radial-gradient(120% 90% at 85% 10%, #e1edf5 0%, #f7f7f4 55%); }
html[data-site-theme="light"] .f2-hero__glow { opacity: .5; }
html[data-site-theme="light"] .f2-hero__bar { border-top-color: rgba(10,10,10,.2); }
html[data-site-theme="light"] .f2-wall__label { background: rgba(247,247,244,.85); color: #0a0a0a; }
html[data-site-theme="light"] .f2-cta { border-color: rgba(10,10,10,.7); }
html[data-site-theme="light"] #top .smo-f2 .f2-cta:hover { background: #0a0a0a; color: #f7f7f4; }
html[data-site-theme="light"] #top .smo-f2 .f2-cta--ghost { border-color: var(--f-line); color: var(--f-mute); }
html[data-site-theme="light"] .f2-sticky { background: #0a0a0a; box-shadow: 0 10px 30px rgba(0,0,0,.25); }
html[data-site-theme="light"] #top .smo-f2 .f2-sticky, html[data-site-theme="light"] #top .smo-f2 .f2-sticky i { color: #f7f7f4; }
html[data-site-theme="light"] .f2-case__ph { background: linear-gradient(160deg, #e6e6e1, #f2f2ee); }
html[data-site-theme="light"] .f2-feat__media, html[data-site-theme="light"] .f2-duo__media { background: #e6e6e1; }
html[data-site-theme="light"] .smo-f2 :focus-visible { outline-color: #0070a8; }
html[data-site-theme="light"] .f2-kpiband__note, html[data-site-theme="light"] #top .smo-f2 .f2-kpiband__note { color: var(--f-mute); }
/* Kontaktformular hell */
html[data-site-theme="light"] #top .smo-f2 .f2c-field input[type="text"], html[data-site-theme="light"] #top .smo-f2 .f2c-field input[type="email"], html[data-site-theme="light"] #top .smo-f2 .f2c-field input[type="tel"], html[data-site-theme="light"] #top .smo-f2 .f2c-field select, html[data-site-theme="light"] #top .smo-f2 .f2c-field textarea { background: #fff !important; color: #0a0a0a !important; border: 1px solid rgba(10,10,10,.3) !important; }
html[data-site-theme="light"] .f2c-field select option { background: #fff; color: #0a0a0a; }
html[data-site-theme="light"] #top .smo-f2 .f2c-field input:focus, html[data-site-theme="light"] #top .smo-f2 .f2c-field select:focus, html[data-site-theme="light"] #top .smo-f2 .f2c-field textarea:focus { border-color: #0070a8 !important; }
html[data-site-theme="light"] .f2c-btn { background: #0a0a0a; color: #f7f7f4 !important; border-color: #0a0a0a; }
html[data-site-theme="light"] #top .smo-f2 .f2c-btn:hover { background: transparent; color: #0a0a0a !important; }
html[data-site-theme="light"] #top .smo-f2 .f2c-err { color: #b3261e; }
html[data-site-theme="light"] #top .smo-f2 .f2c-status--ok { color: #1b6e3a; border-left-color: #1b6e3a; }
html[data-site-theme="light"] #top .smo-f2 .f2c-status--err { color: #b3261e; border-left-color: #b3261e; }
html[data-site-theme="light"] .f2c-field [aria-invalid="true"], html[data-site-theme="light"] #top .smo-f2 .f2c-field [aria-invalid="true"] { border-color: #b3261e !important; }
html[data-site-theme="light"] #top .smo-f2 .f2c-card { border-color: var(--f-line); }

/* Hub-Seiten: Link-Gruppen */
.f2-groups { border-top: 1px solid var(--f-line); padding: clamp(56px, 8vw, 120px) 0 !important; }
.f2-group + .f2-group { margin-top: clamp(48px, 6vw, 96px); }
.f2-group .f2-head { margin-bottom: clamp(24px, 3vw, 44px); }
.f2-gl { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: 1fr; gap: 0 clamp(24px, 3vw, 56px); border-top: 1px solid var(--f-line); }
@media (min-width: 760px) { .f2-gl { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1180px) { .f2-gl { grid-template-columns: repeat(3, 1fr); } }
.f2-gl li { border-bottom: 1px solid var(--f-line); }
#top .smo-f2 .f2-gl a { display: grid; grid-template-columns: 1fr auto; gap: 4px 16px; padding: 20px 0; }
.f2-gl__t { font-size: clamp(19px, 1.7vw, 24px); font-weight: 700; letter-spacing: -.02em; line-height: 1.2; }
.f2-gl__d { grid-column: 1; font-size: 15px; line-height: 1.5; color: var(--f-mute); max-width: 36ch; }
.f2-gl__a { grid-row: 1 / span 2; grid-column: 2; align-self: center; font-size: 18px; transition: transform .3s var(--f-ease); }
#top .smo-f2 .f2-gl a:hover .f2-gl__a { transform: translate(4px, -4px); }
#top .smo-f2 .f2-gl a:hover .f2-gl__t { color: var(--f-accent); }

/* Briefing-Abschnitte: Problem & Ziel, Schwerpunkte, Erfolgsmessung & Grenzen, Verwandte Seiten */
.f2-facts__title { margin-bottom: clamp(24px, 3vw, 44px) !important; }
.f2-chips--topics { margin: 0 0 clamp(32px, 4vw, 56px) !important; }
.f2-measure { border-top: 1px solid var(--f-line); padding: clamp(56px, 8vw, 120px) 0 !important; }
.f2-measure__grid { display: grid; grid-template-columns: 1fr; gap: 28px; }
@media (min-width: 990px) { .f2-measure__grid { grid-template-columns: 5fr 7fr; gap: 64px; } }
#top .smo-f2 .f2-measure p { font-size: clamp(17px, 1.3vw, 20px); line-height: 1.65; max-width: 60ch; }
#top .smo-f2 .f2-measure__limits { margin-top: 20px; color: var(--f-mute); font-size: 16px; }
.f2-related { padding: clamp(40px, 6vw, 80px) 0 !important; }

/* Ausgewogene Raster (16.10.): nie verwaiste letzte Zeile, nie ueberlaufende Spalten, Spaltenzahl folgt der Anzahl */
.f2-kpiband__grid, .f2-kpis, .f2-facts__grid, .f2-steps, .f2-guide__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.f2-kpiband__grid > *, .f2-kpis > *, .f2-facts__grid > *, .f2-steps > *, .f2-guide__grid > * { min-width:0; overflow-wrap:anywhere; }
.f2-facts__grid, .f2-guide__grid { grid-template-columns:minmax(0,1fr); }
.f2-kpiband__grid > :last-child:nth-child(odd), .f2-kpis > :last-child:nth-child(odd) { grid-column:1 / -1; }
@media (min-width:700px) {
	.f2-facts__grid, .f2-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.f2-facts__grid > :last-child:nth-child(odd), .f2-steps > :last-child:nth-child(odd) { grid-column:1 / -1; }
}
@media (min-width:800px) {
	.f2-guide__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.f2-guide__grid > :last-child:nth-child(odd) { grid-column:1 / -1; }
}
@media (min-width:900px) {
	.f2-kpiband__grid, .f2-kpis { grid-template-columns:repeat(4,minmax(0,1fr)); }
	.f2-kpiband__grid > :last-child:nth-child(odd), .f2-kpis > :last-child:nth-child(odd) { grid-column:auto; }
	.f2-kpiband__grid:has(> :nth-child(3):last-child), .f2-kpis:has(> :nth-child(3):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.f2-kpiband__grid:has(> :nth-child(2):last-child), .f2-kpis:has(> :nth-child(2):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.f2-kpiband__grid:has(> :nth-child(6):last-child), .f2-kpis:has(> :nth-child(6):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:1100px) {
	.f2-facts__grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
	.f2-facts__grid > :last-child:nth-child(odd) { grid-column:auto; }
	.f2-facts__grid:has(> :nth-child(4):last-child) { grid-template-columns:repeat(4,minmax(0,1fr)); }
	.f2-facts__grid:has(> :nth-child(3):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.f2-facts__grid:has(> :nth-child(6):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:1200px) {
	.f2-steps { grid-template-columns:repeat(4,minmax(0,1fr)); }
	.f2-steps > :last-child:nth-child(odd) { grid-column:auto; }
	.f2-steps:has(> :nth-child(3):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.f2-steps:has(> :nth-child(5):last-child) { grid-template-columns:repeat(6,minmax(0,1fr)); }
	.f2-steps:has(> :nth-child(5):last-child) > * { grid-column:span 2; }
	.f2-steps:has(> :nth-child(5):last-child) > :nth-child(n+4) { grid-column:span 3; }
	.f2-steps:has(> :nth-child(6):last-child) { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.f2-guide__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.f2-guide__grid > :last-child:nth-child(odd) { grid-column:auto; }
	.f2-guide__grid:has(> :nth-child(4):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.f2-guide__grid:has(> :nth-child(5):last-child) { grid-template-columns:repeat(6,minmax(0,1fr)); }
	.f2-guide__grid:has(> :nth-child(5):last-child) > * { grid-column:span 2; }
	.f2-guide__grid:has(> :nth-child(5):last-child) > :nth-child(n+4) { grid-column:span 3; }
}
.f2-gallery:not(.f2-gallery--compact) { display:grid; grid-template-columns:repeat(auto-fit,minmax(clamp(150px,20vw,300px),1fr)); overflow:visible; scroll-snap-type:none; }
.f2-gallery:not(.f2-gallery--compact) .f2-case { flex:none; min-width:0; }

.f2-hero__text .f2-lede { margin-top:clamp(18px,2.2vw,32px); }

/* Abstand H1 -> Einleitung (alle Sprachen) und CJK-Typografie (Japanisch/Chinesisch: grosszuegigere Zeilenhoehe, kein negatives Tracking) */
#top .smo-f2 .f2-h1 + .f2-lede, #top .smo-f2 .f2-hero__text .f2-lede { margin-top: clamp(20px, 2.4vw, 36px) !important; }
html[lang^="ja"] .smo-f2 :is(.f2-h1, .f2-h2, .f2-h3, .f2-feat__title, .f2-duo__title, .f2-case__title, .f2-step h3, .f2-svc h3),
html[lang^="zh"] .smo-f2 :is(.f2-h1, .f2-h2, .f2-h3, .f2-feat__title, .f2-duo__title, .f2-case__title, .f2-step h3, .f2-svc h3) { line-height: 1.28 !important; letter-spacing: 0 !important; word-break: keep-all; overflow-wrap: anywhere; }
html[lang^="ja"] .smo-f2 .f2-line, html[lang^="zh"] .smo-f2 .f2-line { display: block; padding: .04em 0; }
html[lang^="ja"] .smo-f2, html[lang^="zh"] .smo-f2 { line-break: strict; }
@media (max-width: 600px) {
  html[lang^="ja"] .smo-f2 .f2-h1, html[lang^="zh"] .smo-f2 .f2-h1 { font-size: clamp(26px, 8vw, 38px) !important; }
  html[lang^="ja"] .smo-f2 .f2-h2, html[lang^="zh"] .smo-f2 .f2-h2 { font-size: clamp(24px, 7vw, 34px) !important; }
}
