body:has(.fachtage) { padding-top: 0; }
/* ---------- Sticky-Grundlagen ----------
--ft-head-base = Höhe des fixen Seitenkopfs (mobil Tab-Bar, Desktop scrollt weg).
--ft-nav-h     = Höhe des Unterseiten-Menüs (Topbar, sticky).
--ft-header-h  = alles, was oben stehen bleibt: Bezug für Magellan, Sprungziele, sticky Bilder. */
/* Kept outside .fachtage on purpose: nested, ".off-canvas-wrap.fachtage" would compile to
".fachtage .off-canvas-wrap.fachtage" and never match. Always end custom properties with ";" -
otherwise scssphp reads the value up to the next ";" and swallows the following rules. */
.off-canvas-wrap.fachtage { --ft-head-base:2.8125rem; --ft-nav-h:3.25rem; --ft-header-h:calc(var(--ft-head-base) + var(--ft-nav-h)); }
@media only screen and (min-width:64.063em) {
  .off-canvas-wrap.fachtage { --ft-head-base:0px; --ft-nav-h:4rem; }
}
/* overflow:hidden/auto auf Vorfahren verhindert position:sticky – clip nicht.
Betrifft v. a. Mobil (Off-Canvas + html/body overflow-x:hidden aus dem Theme). */
/* .inner-wrap must not clip: the off-canvas menu sits outside its box and would be cut off */
html:has(.off-canvas-wrap.fachtage), body:has(.off-canvas-wrap.fachtage) { overflow:visible!important; }
.off-canvas-wrap.fachtage, .off-canvas-wrap.fachtage .ph_main, .off-canvas-wrap.fachtage .ph_content_wrapper { overflow:clip!important; }
.off-canvas-wrap.fachtage .ph_main, .off-canvas-wrap.fachtage .ph_content_wrapper { overflow:visible!important; }
.fachtage .ph_iconbar.fixed.show-for-large-up, .fachtage .ph-loginbar.show-for-large-up.fixed { position: relative !important; top: 0; }
.fachtage .ph-topbar.show-for-large-up.fixed { position: sticky !important; top: var(--ft-head-base); z-index: 60; margin-top: 0; }
/* Icon bar in the navy family instead of the theme blue. farbe-bw.de keeps its white bar:
its own ".layoutBv .ph_iconbar{background:...!important}" wins, which is intended (dark logo + icons) */
.fachtage .ph_iconbar { background:#233848; }
/* farbe-bw.de: dark icon bar like the other domains (overrides its own white !important).
   Its logo has dark text - shown as background with the white-text version from the Fachtage folder,
   the original image is shifted out of its box (object-position) so size and link stay unchanged */
.fachtage .ph_iconbar:has(.ph_iconbar_logo img[src*="Bdn-Wrttmbrg_pos"]) { background:#233848!important; }
.fachtage .ph_iconbar:has(.ph_iconbar_logo img[src*="Bdn-Wrttmbrg_pos"]) .icon-bar > * :is(i,label) { color:#fff!important; }
.fachtage .ph_iconbar_logo img[src*="Bdn-Wrttmbrg_pos"] { object-position:-99999px 0; background:url("/fileadmin/Bundesverband_Farbe/LIV_Bayern/Fachtage/Logo_1_LIV_Bdn-Wrttmbrg_pos.png") center/contain no-repeat content-box; }
/* Icon bar grows with its content (wrapped labels, e.g. "Warum Mitglied werden") instead of overflowing into the menu */
.fachtage .ph_iconbar { height:auto; min-height:125px; }
.fachtage .ph_iconbar::after { content:""; display:table; clear:both; }
/* ---------- Loginleiste (Domain, Suche, Anmelden): Navy wie der übrige Kopf, auf allen Domains ---------- */
.fachtage .ph-loginbar .top-bar, .fachtage .ph-loginbar .top-bar-section ul li, .fachtage .ph-loginbar .top-bar-section li:not(.has-form) a:not(.button) { background:#172633!important; color:#fff!important; }
.fachtage .ph-loginbar .top-bar-section .divider { border-color:rgba(255,255,255,.12)!important; background:rgba(255,255,255,.12)!important; }
.fachtage .ph-loginbar a, .fachtage .ph-loginbar h1, .fachtage .ph-loginbar i { color:#fff!important; }
.fachtage .ph-loginbar a:hover, .fachtage .ph-loginbar a:hover h1 { color:#f27a90!important; }
.fachtage .ph-loginbar input[type=text], .fachtage .ph-loginbar input[type=search] { background:#1d2f3e!important; border:1px solid rgba(255,255,255,.18)!important; color:#fff!important; box-shadow:none!important; }
.fachtage .ph-loginbar input::placeholder { color:rgba(255,255,255,.55)!important; }
.fachtage .ph_main { margin-top: 0; }
/* LIV Bayern · Fachtage 2027 – Navy Edition (Markup-Stand ohne blogpost-dark/equalizer)
Für Foundation 5 / TYPO3-Markup. Nutzt ausschließlich vorhandene Klassen. */
.fachtage .ph_content { --ft-bg:#172633; --ft-panel:#1d2f3e; --ft-panel-2:#233848; --ft-line:rgba(193,0,51,.55); --ft-line-soft:rgba(255,255,255,.1); --ft-text:#ffffff; --ft-muted:#ffffff; --ft-brass:#f27a90; --ft-brass-hi:#ff9aac; --ft-mark:#c10033; --ft-serif:"Titillium Web","Helvetica Neue",Arial,sans-serif; --ft-sans:"Titillium Web","Helvetica Neue",Helvetica,Arial,sans-serif; background:var(--ft-bg); color:var(--ft-text); font-family:var(--ft-sans); padding-bottom:7rem; -webkit-font-smoothing:antialiased; }
/* Dunkle Bereiche: Navigation, Hero, 50/50-Highlight-Karten */
.fachtage .ph_content .ph_magellan_container,
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105,
.fachtage .ph_content .frame-type-textpic.frame-layout-2,
.fachtage .ph_content .csc-frame-139 { --ft-panel:#1f3342; --ft-bg:#172633; --ft-panel:#1d2f3e; --ft-panel-2:#233848; --ft-line:rgba(193,0,51,.55); --ft-line-soft:rgba(255,255,255,.1); --ft-text:#ffffff; --ft-muted:#ffffff; --ft-brass:#f27a90; --ft-brass-hi:#ff9aac; --ft-mark:#c10033; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 { background:var(--ft-bg); }
.fachtage .ph_content p, .fachtage .ph_content li { color:var(--ft-muted); font-family:var(--ft-sans); font-size:1rem; line-height:1.75; text-wrap:pretty; }
.fachtage .ph_content h1, .fachtage .ph_content h2, .fachtage .ph_content h3 { color:var(--ft-text); font-family:var(--ft-serif); font-weight:600; text-wrap:balance; letter-spacing:0; }
.fachtage .ph_content strong { color:var(--ft-text); font-weight:600; }
.fachtage .ph_content a { color:var(--ft-brass); transition:color .2s; }
.fachtage .ph_content a:hover { color:var(--ft-brass-hi); }
.fachtage .ph_content figure { margin:0; }
.fachtage .ph_content img { display:block; max-width:100%; }
.fachtage .ph_content hr { border:0; border-top:1px solid var(--ft-line-soft); margin:1.1rem 0; }
.fachtage .ph_content .content_wrap.row { max-width:75rem; }
/* Bildblöcke (Foundation block-grid neutralisieren) */
.fachtage .ph_content .csc-textpic.imgblock { margin:0; padding:0; list-style:none; }
.fachtage .ph_content .csc-textpic.imgblock::before, .fachtage .ph_content .csc-textpic.imgblock::after { display:none; }
.fachtage .ph_content .csc-textpic.imgblock>li { float:none; width:auto; padding:0; margin:0; }
.fachtage .ph_content .csc-textpic.imgblock>li::before { display:none; }
.fachtage .ph_content [data-magellan-destination] { scroll-margin-top:calc(var(--ft-header-h) + 3.5rem); }
/* ---------- Magellan-Navigation ---------- */
/* Magellan-Fixierung durch sticky ersetzen: Wrapper auflösen, Klon ausblenden */
.fachtage .ph_content > .csc-frame:first-child { display:contents; }
.fachtage .ph_content [data-magellan-expedition-clone] { display:none!important; }
.fachtage .ph_content .ph_magellan_container[data-magellan-expedition] { position:sticky!important; top:var(--ft-header-h)!important; z-index:50; }
.fachtage .ph_content .ph_magellan_container { width:100%; left:0; z-index:50; background:rgba(23,38,51,.94); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); border-bottom:1px solid var(--ft-line-soft); }
.fachtage .ph_content dl.sub-nav { max-width:75rem; margin:0 auto; padding:0 .9375rem; display:flex; gap:2.25rem; overflow-x:auto; scrollbar-width:none; }
.fachtage .ph_content dl.sub-nav::-webkit-scrollbar { display:none; }
.fachtage .ph_content dl.sub-nav dd { float:none; flex:none; margin:0; }
.fachtage .ph_content dl.sub-nav dd a { display:block; padding:1.15rem 0 1.05rem; font:600 .72rem/1 var(--ft-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--ft-muted); background:none; border-radius:0; border-bottom:2px solid transparent; white-space:nowrap; }
.fachtage .ph_content dl.sub-nav dd a:hover { color:var(--ft-text); background:none; }
.fachtage .ph_content dl.sub-nav dd.active a { color:var(--ft-brass); background:none; padding:1.15rem 0 1.05rem; border-bottom-color:var(--ft-mark); font-weight:600; }
/* ---------- Subpage menu (top bar): page level, sticky. Deliberately different from the magellan
section nav: taller, normal case, solid surface, filled active tab ---------- */
/* clear: floats of the icon bar can reach into the menu (farbe-bw.de: wrapped icon label) and squeeze the list.
!important on colours: some domains set their own top-bar colours with !important */
.fachtage .ph-topbar { background:#0f1c27; border-bottom:2px solid #c10033; clear:both; }
.fachtage .ph-topbar .top-bar { height:auto; line-height:normal; overflow:visible; background:none!important; margin:0; }
.fachtage .ph-topbar .top-bar .title-area { display:none; }
.fachtage .ph-topbar .top-bar-section { position:static; left:auto!important; max-width:75rem; margin:0 auto; padding:0 .9375rem; }
.fachtage .ph-topbar .top-bar-section ul.left { display:flex; gap:.25rem; float:none!important; width:auto; margin:0; padding:0; background:none; overflow-x:auto; scrollbar-width:none; }
/* Foundation forces float:left!important on .left - a floated list collapses the bar and pushes the magellan nav aside */
.fachtage .ph-topbar .top-bar-section ul.left::-webkit-scrollbar { display:none; }
.fachtage .ph-topbar .top-bar-section ul.left>li, .fachtage .ph-topbar .top-bar-section ul.left>li:hover { float:none; flex:none; background:none!important; border:0; }
.fachtage .ph-topbar .top-bar-section li:not(.has-form) a:not(.button) { display:flex; align-items:center; box-sizing:border-box; height:calc(var(--ft-nav-h) - 2px); padding:0 1rem; font:600 .85rem/1 "Titillium Web","Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing:.02em; text-transform:none; color:#fff!important; background:none!important; border-radius:0; white-space:nowrap; transition:background .2s; }
.fachtage .ph-topbar .top-bar-section li:not(.has-form) a:not(.button):hover { color:#fff!important; background:rgba(255,255,255,.08)!important; }
/* TYPO3 marks parent and current page as active: highlight only the last active link */
.fachtage .ph-topbar .top-bar-section li:not(.has-form):not(:has(~ li > a.active)) > a.active:not(.button) { color:#fff!important; background:#c10033!important; }
/* below large: show the menu (theme hides it via show-for-large-up) */
@media only screen and (max-width:64em) {
  .fachtage .ph-topbar.show-for-large-up { display:block!important; }
}
@media only screen and (min-width:64.063em) {
  .fachtage .ph-topbar .top-bar-section li:not(.has-form) a:not(.button) { font-size:.95rem; padding:0 1.25rem; }
}
/* ---------- Hero (Orbit, 1 Slide) ---------- */
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .row { max-width:none; width:auto; margin:0; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .columns { padding:0; }
.fachtage .ph_content .orbit-container { height:auto; background:var(--ft-bg); }
.fachtage .ph_content .orbit-container .orbit-slides-container { margin:0; padding:0; list-style:none; }
/* nur 1 Slide: statisch, ohne Steuerung */
.fachtage .ph_content .orbit-container .orbit-slides-container>:only-child { position:relative; margin-left:0; width:100%; top:auto; }
.fachtage .ph_content .orbit-container .orbit-slides-container:has(>:only-child) { height:auto!important; }
.fachtage .ph_content .orbit-container:has(.orbit-slides-container>:only-child) .orbit-bullets-container { display:none; }
.fachtage .ph_content .orbit-timer, .fachtage .ph_content .orbit-slide-number { display:none!important; }
/* mehrere Slides: Pfeile + Bullets */
.fachtage .ph_content .orbit-container .orbit-prev, .fachtage .ph_content .orbit-container .orbit-next { top:50%; width:3.25rem; height:3.25rem; margin-top:-1.625rem; background:rgba(23,38,51,.6); border:1px solid var(--ft-line); border-radius:50%; z-index:10; transition:background .2s,border-color .2s; }
.fachtage .ph_content .orbit-container .orbit-prev { left:1.5rem; }
.fachtage .ph_content .orbit-container .orbit-next { right:1.5rem; }
.fachtage .ph_content .orbit-container .orbit-prev:hover,
.fachtage .ph_content .orbit-container .orbit-next:hover { background:rgba(23,38,51,.9); border-color:var(--ft-mark); }
.fachtage .ph_content .orbit-container .orbit-prev>span,
.fachtage .ph_content .orbit-container .orbit-next>span { border:0; width:.7rem; height:.7rem; margin-top:-.35rem; border-top:1.5px solid #fff; border-right:1.5px solid #fff; }
.fachtage .ph_content .orbit-container .orbit-prev>span { left:50%; margin-left:-.2rem; transform:rotate(-135deg); }
.fachtage .ph_content .orbit-container .orbit-next>span { left:50%; margin-left:-.5rem; transform:rotate(45deg); }
.fachtage .ph_content .orbit-bullets-container { position:absolute; left:0; right:0; bottom:1.75rem; z-index:10; text-align:center; }
.fachtage .ph_content .orbit-bullets { display:inline-flex; gap:.6rem; margin:0; float:none; overflow:visible; }
.fachtage .ph_content .orbit-bullets li { float:none; margin:0; width:1.75rem; height:2px; border-radius:0; background:rgba(235,230,220,.3); cursor:pointer; }
.fachtage .ph_content .orbit-bullets li.active { background:var(--ft-mark); }
@media only screen and (max-width:40em) {
  .fachtage .ph_content .orbit-container .orbit-prev, .fachtage .ph_content .orbit-container .orbit-next { display:none!important; }
}
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .large-12>.row { position:relative; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .imgblock img { width:100%; height:clamp(480px,74vh,760px); object-fit:cover; filter:saturate(.65) brightness(.6); }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .text-unten { box-shadow:none; max-width:none; position:absolute; left:0; right:0; bottom:0; padding:10rem 1.5rem 5rem!important; background:linear-gradient(to top,var(--ft-bg) 0%,rgba(23,38,51,.82) 40%,rgba(23,38,51,0) 100%); }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text { max-width:75rem; margin:0 auto; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text p { display:flex; justify-content:center; align-items:center; gap:1.25rem; margin:0; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text p::before,
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text p::after { content:""; width:3rem; height:2px; background:var(--ft-mark); }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text p strong { color:var(--ft-brass); font-size:clamp(.9rem,2.4vw,1.15rem); letter-spacing:.2em; font-weight:600; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 h1 { font-size:clamp(3.5rem,10vw,8rem); line-height:.95; margin:1.25rem 0 1.5rem; font-weight:600; color:#fff; }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 h3 { font:400 .9rem/1.6 var(--ft-sans); letter-spacing:.18em; text-transform:uppercase; color:var(--ft-text); margin:0; }
/* Kicker as heading (h2/h3 directly before h1): same look as p>strong */
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text>:is(h2,h3):has(+h1) { display:flex; justify-content:center; align-items:center; gap:1.25rem; margin:0; font:600 clamp(.9rem,2.4vw,1.15rem)/1.75 var(--ft-sans); letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text>:is(h2,h3):has(+h1)::before,
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text>:is(h2,h3):has(+h1)::after { content:""; width:3rem; height:2px; background:var(--ft-mark); }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .csc-textpic-text>:is(h2,h3):has(+h1) strong { color:inherit; font:inherit; letter-spacing:inherit; }
/* ---------- Tages-Header ---------- */
.fachtage .ph_content .frame-type-header { padding:7rem 0 2.5rem; }
/* Header elements without a visible heading (anchor only, e.g. short magellan labels): no height */
.fachtage .ph_content > .frame-type-header:not(:has(h1,h2,h3,h4,h5,h6)){padding:0;margin:0;min-height:0}
.fachtage .ph_content .frame-type-header .csc-header { display:flex; align-items:center; gap:1.5rem; margin:0; }
.fachtage .ph_content .frame-type-header .csc-header::before { content:""; flex:none; width:.6rem; height:.6rem; background:var(--ft-mark); transform:rotate(45deg); }
.fachtage .ph_content .frame-type-header .csc-header::after { content:""; flex:1; height:1px; background:var(--ft-line); }
.fachtage .ph_content .frame-type-header h1 { margin:0; font-size:clamp(2.2rem,4.6vw,3.6rem); line-height:1; font-weight:600; }
/* ---------- Ablauf / Zeitplan ---------- */
.fachtage .ph_content .csc-frame-139 { margin-bottom:1.5rem; }
.fachtage .ph_content .csc-frame-139 { background:none; }
.fachtage .ph_content .csc-frame-139 .csc-textpic-text { position:relative; display:grid; grid-template-columns:8rem minmax(0,1fr); gap:1.5rem; align-items:start; background:var(--ft-panel); padding:2.25rem 2.5rem; border-top:3px solid var(--ft-mark); }
.fachtage .ph_content .csc-frame-139 .csc-textpic-text::before { content:"Tagesablauf"; font:600 .74rem/1.4 var(--ft-sans); letter-spacing:.24em; text-transform:uppercase; color:var(--ft-brass); padding-top:.5rem; }
.fachtage .ph_content .csc-frame-139 p { position:relative; margin:0; padding-left:1.75rem; color:var(--ft-text); font-size:1.15rem; line-height:1.9; margin-bottom:-1.9em; font-variant-numeric:tabular-nums; }
.fachtage .ph_content .csc-frame-139 p::before { content:""; position:absolute; left:0; top:.55em; bottom:calc(1.9em + .55em); width:2px; background:linear-gradient(var(--ft-mark),rgba(193,0,51,.15)); }
/* ---------- Programm-Karten ---------- */
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) { margin-bottom:1.5rem; }
.fachtage .ph_content .frame-layout-0.csc-space-before-medium { margin-top:0; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .large-12>.row { display:flex; flex-wrap:wrap; margin:0; background:var(--ft-panel); border:1px solid var(--ft-line-soft); transition:border-color .3s; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .large-12>.row:hover { border-color:var(--ft-line); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .large-12>.row::before,
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .large-12>.row::after { display:none; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .large-12>.row>.columns { float:none; height:auto!important; padding:0; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .imgblock { display:grid; gap:1px; background:var(--ft-panel); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .imgblock img { width:100%; height:auto; filter:saturate(.85); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .bild-links,
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .bild-rechts { background:var(--ft-panel); }
/* Mehrspaltige Bildblöcke (z. B. 2 Portraits nebeneinander) */
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .imgblock[data-ce-columns="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .imgblock[data-ce-columns="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .imgblock:not([data-ce-columns="1"]) img { aspect-ratio:3/4; height:auto; object-fit:cover; object-position:50% 15%; }
/* 50/50: Text vertikal zentriert */
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .text-links,
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .text-rechts { display:flex; align-items:center; }
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .text-links>.csc-textpic-text,
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .text-rechts>.csc-textpic-text { width:100%; }
@media only screen and (min-width:40.063em) {
  .fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .imgblock { position:sticky; top:calc(var(--ft-header-h) + 4.5rem); }
}
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .csc-textpic-text { padding:clamp(1.75rem,4vw,3.5rem); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .csc-textpic-text>p:first-child { color:var(--ft-brass); font-size:.74rem; font-weight:600; letter-spacing:.24em; text-transform:uppercase; margin:0 0 1rem; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) h2 { font-size:clamp(1.9rem,3.2vw,2.7rem); line-height:1.1; margin:0 0 1.5rem; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) h2+p { border-top:1px solid var(--ft-line-soft); padding-top:1.25rem; margin:0; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) h2+p strong { color:var(--ft-brass); font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) h2+p+p { color:var(--ft-text); margin:0; }
/* Referenten-Karten (Layout 0) */
.fachtage .ph_content .frame-type-textpic.frame-layout-0:has(.imgblock) .csc-textpic-text>p>strong { display:block; font:600 .74rem/1.4 var(--ft-sans); letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); margin:0; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:has(.imgblock) hr+h3 { font-size:1.5rem; line-height:1.25; margin:0; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:has(.imgblock) p>strong,
.fachtage .ph_content .frame-type-textpic.frame-layout-0:has(.imgblock) hr+h2 { display:block; font:600 .74rem/1.4 var(--ft-sans); letter-spacing:.22em; text-transform:uppercase; color:var(--ft-brass); margin:1.75rem 0 .75rem; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:has(.imgblock) h1 { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.15; margin:0 0 1rem; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:has(.imgblock) h2+h2 { margin-bottom:1.25rem; }
/* ---------- Aussteller & weitere Standard-Elemente (Text / Text+Bild, Layout Standard) ---------- */
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) { margin-bottom:1.5rem; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) > .content_wrap > .columns > :is(.row,.csc-textpic-text,.bodytext,.csc-textpic) { margin:0; background:var(--ft-panel); border:1px solid var(--ft-line-soft); border-top:3px solid var(--ft-mark); padding:clamp(1.75rem,4vw,3rem); }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) > .content_wrap > .columns > .row { display:flow-root; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .columns .columns { padding:0; float:none; width:100%; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-header { margin:0 0 1.25rem; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-header :is(h1,h2,h3) { font-size:clamp(1.6rem,2.8vw,2.2rem); line-height:1.15; margin:0; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) p { color:var(--ft-text); margin:0 0 .5rem; }
/* Logo-Wand: Bildblock mit mehreren Spalten */
.fachtage .ph_content > .frame-type-textpic.frame-layout-105 .imgblock:not([data-ce-columns="1"]) { display:grid; grid-template-columns:repeat(auto-fill,minmax(14rem,1fr)); gap:1.25rem; margin:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105 .columns:has(.imgblock) + .columns .csc-textpic-text:not(:empty) { margin-top:1.5rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105 .imgblock:not([data-ce-columns="1"])>li { background:#fff; aspect-ratio:16/9; display:grid; place-items:center; padding:1.5rem 2rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105 .imgblock:not([data-ce-columns="1"]) figure { display:grid; place-items:center; width:100%; height:100%; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105 .imgblock:not([data-ce-columns="1"]) img { width:auto; height:auto; width:100%; max-width:100%; max-height:6rem; object-fit:contain; filter:grayscale(1); opacity:.85; transition:filter .3s,opacity .3s; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105 .imgblock:not([data-ce-columns="1"])>li:hover img { filter:none; opacity:1; }
/* ---------- Text-Karten: Kicker, Überschrift, Button-Link (Teaser & Unterseiten) ---------- */
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-textpic-text>p:first-child:has(+h2) { color:var(--ft-brass); font-size:.74rem; font-weight:600; letter-spacing:.24em; text-transform:uppercase; margin:0 0 .75rem; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-textpic-text>h2 { font-size:clamp(1.9rem,3.2vw,2.7rem); line-height:1.1; margin:0 0 1rem; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-textpic-text p>a:only-child { display:inline-flex; align-items:center; gap:.75rem; margin-top:.75rem; padding:1rem 1.5rem; background:var(--ft-mark); color:#fff; font-size:.8rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; transition:background .2s; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-textpic-text p>a:only-child::after { content:"\2192"; font-size:1.1em; letter-spacing:0; }
.fachtage .ph_content > :is(.frame-type-text,.frame-type-textpic.frame-layout-105:not(.csc-frame-139)) .csc-textpic-text p>a:only-child:hover { background:#9e002a; color:#fff; }
/* ---------- Text-Karten ohne Bild (Layout 0): Intro, CTA, Pakete ---------- */
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)) .csc-textpic-text>p:first-child strong { color:var(--ft-brass); font-weight:600; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)) .csc-textpic-text>h3 { font-size:clamp(1.9rem,3.2vw,2.7rem); line-height:1.1; margin:0 0 1rem; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)) .csc-textpic-text p>a:only-child { display:inline-flex; align-items:center; gap:.75rem; margin-top:.75rem; padding:1rem 1.5rem; background:var(--ft-mark); color:#fff; font-size:.8rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; transition:background .2s; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)) .csc-textpic-text p>a:only-child::after { content:"\2192"; font-size:1.1em; letter-spacing:0; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)) .csc-textpic-text p>a:only-child:hover { background:#9e002a; color:#fff; }
/* Intro: Karte mit nur einem Absatz -> frei stehender Lead-Text */
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)):has(.csc-textpic-text>p:only-child) .large-12>.row { background:none; border:0; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)):has(.csc-textpic-text>p:only-child) .csc-textpic-text { padding:0; max-width:48rem; }
.fachtage .ph_content .frame-type-textpic.frame-layout-0:not(:has(.imgblock)) .csc-textpic-text>p:only-child { color:var(--ft-text); font-size:1.2rem; line-height:1.7; font-weight:400; letter-spacing:0; text-transform:none; margin:0; }
/* ---------- Sponsoringpakete (Gridelemente 2 + 3 Spalten) ---------- */
.fachtage .ph_content :is(.element2cols,.element3cols).row { max-width:75rem; }
.fachtage .ph_content :is(.element2cols,.element3cols) { display:flex; flex-wrap:wrap; }
.fachtage .ph_content :is(.element2cols,.element3cols)::before,
.fachtage .ph_content :is(.element2cols,.element3cols)::after { display:none; }
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns { float:none; margin-bottom:1.5rem; }
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns>.csc-frame { height:100%; margin:0; display:flex; flex-direction:column; }
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns>.csc-frame>.content_wrap { flex:1; display:flex; width:auto; }
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns>.csc-frame>.content_wrap>.columns { flex:1; display:flex; flex-direction:column; }
.fachtage .ph_content :is(.element2cols,.element3cols) .large-12>.row { flex:1; border-top:3px solid var(--ft-mark); }
.fachtage .ph_content :is(.element2cols,.element3cols) .large-12>.row>.columns,
.fachtage .ph_content :is(.element2cols,.element3cols) .csc-textpic-text { display:flex; flex-direction:column; flex:1; }
.fachtage .ph_content .element3cols>.right_col .large-12>.row { background:var(--ft-panel-2); border-color:var(--ft-mark); }
.fachtage .ph_content :is(.element2cols,.element3cols) .csc-textpic-text>p:first-child { margin:0 0 .75rem; }
.fachtage .ph_content :is(.element2cols,.element3cols) .csc-textpic-text>p:first-child strong { font-size:.74rem; letter-spacing:.22em; }
/* h3 = "Paketname<br>Preis": erste Zeile groß, Preis darunter */
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic:not(:has(.imgblock)) .csc-textpic-text>h3 { font-size:1.35rem; line-height:1.35; font-weight:600; color:var(--ft-text); font-variant-numeric:tabular-nums; margin:0 0 1.5rem; padding-bottom:1.5rem; border-bottom:1px solid var(--ft-line-soft); }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic:not(:has(.imgblock)) .csc-textpic-text>h3::first-line { font-size:2.4rem; line-height:1.2; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic:not(:has(.imgblock)) .csc-textpic-text>h3+p:has(+ul) { font:600 .74rem/1.4 var(--ft-sans); letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); margin:0; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic:not(:has(.imgblock)) .csc-textpic-text ul { margin-top:.75rem; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic:not(:has(.imgblock)) .csc-textpic-text>ul+p { margin:auto 0 0; padding-top:1.5rem; font-size:.9rem; color:rgba(255,255,255,.72); }
/* ---------- Raster: mehrere Elemente in einer Spalte (z. B. Video + Bild) ----------
   One card per column like the single-element case: frames stacked without gap, red top line,
   the last frame fills the remaining height so both columns end flush. */
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame){display:flex;flex-direction:column}
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame)>.csc-frame{height:auto;flex:none}
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame)>.csc-frame:first-child{border-top:3px solid var(--ft-mark)}
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame)>.csc-frame:last-child{flex:1 1 auto}
/* image element in such a column: flush, no own card frame, fills the rest */
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame)>.frame-type-image .row{margin:0;max-width:none;width:auto;height:100%;border-top:0}
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame)>.frame-type-image :is(.bild-oben,.imgblock,li,figure){height:100%;margin:0;padding:0!important}
.fachtage .ph_content :is(.element2cols,.element3cols)>.columns:has(>.csc-frame+.csc-frame)>.frame-type-image img{display:block;width:100%;height:100%;object-fit:cover}
/* ---------- Video im HTML-Element ---------- */
.fachtage .ph_content .frame-type-html iframe{display:block;width:100%;height:auto;aspect-ratio:16/9}
/* consent overlay of the video plugin sets inline left/right:1.56rem and height:95% - cover the whole video instead */
.fachtage .ph_content .frame-type-html .iframe_wrapper{left:0!important;right:0!important;height:100%!important}
@media only screen and (max-width:40em) {
  .fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic:not(:has(.imgblock)) .csc-textpic-text>h3::first-line { font-size:2rem; }
}
/* Bildunterschrift (Name) als Overlay unten links */
.fachtage .ph_content figure .csc-textpic-caption, .fachtage .ph_content figure figcaption { position:absolute; left:0; right:0; bottom:0; z-index:2; margin:0; padding:2.5rem 1rem .9rem; background:linear-gradient(to top,rgba(23,38,51,.92) 0%,rgba(23,38,51,.6) 55%,rgba(23,38,51,0) 100%); color:#fff; font-size:.95rem; font-weight:600; line-height:1.3; letter-spacing:.02em; text-align:left; pointer-events:none; }
.fachtage .ph_content figure .csc-textpic-caption::before, .fachtage .ph_content figure figcaption::before { content:""; display:block; width:1.5rem; height:2px; margin-bottom:.5rem; background:var(--ft-mark); }
.fachtage .ph_content figure:has(.csc-textpic-caption,figcaption) .copyright_box { top:.5rem; bottom:auto; }
/* Bild-Copyright */
.fachtage .ph_content figure { position:relative; }
.fachtage .ph_content .copyright_box { position:absolute; right:.75rem; bottom:.5rem; z-index:2; font-size:.65rem; line-height:1.3; color:rgba(255,255,255,.7); text-shadow:0 1px 2px rgba(0,0,0,.6); }
.fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .copyright_box { top:.75rem; bottom:auto; }
/* ---------- Bildbühne: Text+Bild (Layout 105), 1 Bild oben + Text -> Vollbild mit Overlay ---------- */
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) { margin:7rem 0 1.5rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) > .content_wrap { max-width:none; margin:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) > .content_wrap > .columns { padding:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) > .content_wrap > .columns > .row { position:relative; display:block; padding:0; background:var(--ft-bg); border:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .imgblock img { width:100%; height:clamp(460px,72vh,720px); object-fit:cover; filter:saturate(.8); }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten { position:absolute; inset:0; display:flex; align-items:center; background:linear-gradient(90deg,rgba(23,38,51,.95) 0%,rgba(23,38,51,.8) 38%,rgba(23,38,51,.15) 75%,rgba(23,38,51,0) 100%); }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten .csc-textpic-text { width:100%; max-width:75rem; margin:0 auto; padding:0 .9375rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten .csc-textpic-text>* { max-width:34rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten .csc-textpic-text>h2 { font-size:clamp(2.4rem,5vw,4rem); line-height:1; margin:0 0 1.25rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten .csc-textpic-text>h2::after { content:""; display:block; width:3rem; height:3px; margin-top:1.5rem; background:var(--ft-mark); }
.fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten .csc-textpic-text>p { font-size:1.1rem; }
@media only screen and (max-width:40em) {
  .fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) { margin-top:4.5rem; }
  .fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .imgblock img { height:560px; }
  .fachtage .ph_content > .frame-type-textpic.frame-layout-105:has(.bild-oben .imgblock[data-ce-columns="1"]) .text-unten { align-items:flex-end; padding-bottom:2.5rem; background:linear-gradient(to top,rgba(23,38,51,.96) 0%,rgba(23,38,51,.75) 50%,rgba(23,38,51,0) 100%); }
}
/* ---------- Startseite: Teaser Veranstaltungsort (Text ohne Bild, Layout 0) -> Vollbild mit Overlay ----------
Bildbühnen aus Text-Elementen ohne Bild (Layout 0), erkannt über den Button-Link; Bild kommt aus dem CSS.
Startseite: Link auf /fachtage/veranstaltungsort · Unterseite Veranstaltungsort: Link auf /fachtage */
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"]) { --ft-stage-img:url("https://www.platzhirsche.net/fileadmin/Bundesverband_Farbe/LIV_Bayern/Fachtage/Fachtage_2027/AdobeStock_99113681.jpeg"); }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href="/fachtage"]) { --ft-stage-img:url("https://www.platzhirsche.net/fileadmin/Bundesverband_Farbe/LIV_Bayern/Fachtage/Hotel/20240403_143044.jpg"); }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) { margin:7rem 0 1.5rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) > .content_wrap { max-width:none; margin:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) > .content_wrap > .columns { padding:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .large-12>.row { min-height:clamp(460px,72vh,720px); display:flex; align-items:center; border:0; background:linear-gradient(90deg,rgba(23,38,51,.95) 0%,rgba(23,38,51,.8) 38%,rgba(23,38,51,.15) 75%,rgba(23,38,51,0) 100%),var(--ft-stage-img) center/cover no-repeat; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .large-12>.row:hover { border:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text { width:100%; max-width:75rem; margin:0 auto; padding:3rem .9375rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text>* { max-width:34rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text>h3 { font-size:clamp(2.4rem,5vw,4rem); line-height:1; margin:0 0 1.25rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text>h3::after { content:""; display:block; width:3rem; height:3px; margin-top:1.5rem; background:var(--ft-mark); }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text>p { font-size:1.1rem; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text>p:first-child { font-size:.74rem; }
@media only screen and (max-width:40em) {
  .fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) { margin-top:4.5rem; }
  .fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .large-12>.row { min-height:560px; align-items:flex-end; background:linear-gradient(to top,rgba(23,38,51,.96) 0%,rgba(23,38,51,.75) 50%,rgba(23,38,51,0) 100%),var(--ft-stage-img) center/cover no-repeat; }
  .fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(a[href*="veranstaltungsort"],a[href="/fachtage"]) .csc-textpic-text { padding-bottom:2.5rem; }
}
/* Button-Link auch in 50/50-Karten */
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .csc-textpic-text p>a:only-child { display:inline-flex; align-items:center; gap:.75rem; margin-top:.75rem; padding:1rem 1.5rem; background:var(--ft-mark); color:#fff; font-size:.8rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; transition:background .2s; }
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .csc-textpic-text p>a:only-child::after { content:"\2192"; font-size:1.1em; letter-spacing:0; }
.fachtage .ph_content :is(.frame-layout-2,.frame-layout-101,.frame-layout-102) .csc-textpic-text p>a:only-child:hover { background:#9e002a; color:#fff; }
/* ---------- Aussteller-Logos (Production: Text+Bild, Layout 0, Bilder oben) ---------- */
.fachtage .ph_content .frame-layout-0 .large-12>.row:has(>.bild-oben) { border-top:3px solid var(--ft-mark); }
.fachtage .ph_content .frame-layout-0 .large-12>.row>.bild-oben { width:100%; padding:clamp(1.75rem,4vw,3rem); }
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) { position:static; display:grid; grid-template-columns:repeat(auto-fill,minmax(14rem,1fr)); gap:1.25rem; background:none; margin:0; }
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"])>li { background:#fff; aspect-ratio:16/9; padding:0; }
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) figure,
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) figure>a { display:grid; place-items:center; width:100%; height:100%; padding:1.5rem 2rem; }
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) figure>a { padding:0; }
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) img { width:100%; height:auto; max-height:6rem; aspect-ratio:auto; object-fit:contain; filter:grayscale(1); opacity:.85; transition:filter .3s,opacity .3s; }
.fachtage .ph_content .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"])>li:hover img { filter:none; opacity:1; }
/* ---------- Logoleiste 4 Spalten (Layout 0, bild-oben, data-ce-columns="4"): bewusst ohne Gestaltung ---------- */
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) { margin:3rem 0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .large-12>.row,
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .large-12>.row:hover { border:0!important; background:none!important; box-shadow:none!important; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .large-12>.row>.bild-oben { padding:0!important; background:none!important; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock { position:static!important; display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:center; gap:2rem 1.5rem; margin:0; padding:0; background:none!important; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock>li { background:none!important; aspect-ratio:auto!important; padding:0!important; border:0; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock figure,
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock figure>a { display:block; width:100%; height:auto; padding:0!important; background:none; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock>li { display:flex; justify-content:center; container-type:inline-size; }
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock figure { display:flex!important; justify-content:center; }
/* equal height for all logos: 15cqw = cell width / 6.6 (widest logo), so no logo gets squeezed by max-width */
.fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock img { width:auto!important; max-width:100%; height:min(3.25rem,15cqw)!important; max-height:none; aspect-ratio:auto!important; object-fit:contain; filter:none!important; opacity:1!important; transition:none; }
@media only screen and (max-width:40em) {
  .fachtage .ph_content > .frame-type-textpic.frame-layout-0:has(.imgblock[data-ce-columns="4"]) .bild-oben .imgblock { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
}
/* ---------- Anmeldeformular (sf_event_mgt Registration, .ph-event) ---------- */
.fachtage .ph_content .frame-type-list.panel { background:none; border:0; border-radius:0; box-shadow:none; margin-bottom:1.5rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event { color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-title h2 { font-size:clamp(1.9rem,3.2vw,2.7rem); line-height:1.1; margin:0 0 1.5rem; color:#fff; }
/* Eckdaten-Panel */
.fachtage .ph_content .tx-sf-event-mgt .ph-event .panel.eventDetails { margin:0 0 2rem; padding:clamp(1.5rem,3vw,2.25rem); background:var(--ft-panel); border:1px solid var(--ft-line-soft); border-top:3px solid var(--ft-mark); border-radius:0; color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails>.row { display:flex; flex-wrap:wrap; gap:1.5rem 0; margin:0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails>.row::before,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails>.row::after { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .columns { float:none; padding:0 1.25rem 0 0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .event-list-label p,
.fachtage .ph_content .tx-sf-event-mgt .ph-event #event-prices .price-title { margin:0 0 .35rem; font-size:.72rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .event-list-label b { font-weight:600; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .event-list-value,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .event-list-value p { margin:0; font-size:1.05rem; line-height:1.5; color:#fff; font-variant-numeric:tabular-nums; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .event-list-value b { color:#fff; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event #event-prices .price-value { font-size:1.2rem; font-weight:600; color:#fff; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event #event-prices .price-tax { font-size:.85rem; color:var(--ft-text); opacity:.8; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event #event-prices .price-options { margin:.75rem 0 0; padding:0; list-style:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event #event-prices .price-options>li { padding:.2rem 0; font-size:.88rem; line-height:1.4; color:var(--ft-text); }
/* Formular-Fläche */
.fachtage .ph_content .tx-sf-event-mgt .ph-event form.registration>fieldset { margin:0; padding:clamp(1.5rem,4vw,3rem); background:var(--ft-panel); border:1px solid var(--ft-line-soft); border-radius:0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event form.registration>fieldset>.row { margin:0 -.9375rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row { margin:0 0 1.5rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row+br,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row>br,
.fachtage .ph_content .tx-sf-event-mgt .ph-event input+br,
.fachtage .ph_content .tx-sf-event-mgt .ph-event textarea+br { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row .clear { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event label,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .gender>div>span { display:block; margin:0 0 .45rem; font-size:.9rem; font-weight:600; line-height:1.4; color:#fff; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-required { color:var(--ft-brass); margin-left:.15rem; }
/* Felder */
.fachtage .ph_content .tx-sf-event-mgt .ph-event input[type="text"],
.fachtage .ph_content .tx-sf-event-mgt .ph-event input[type="email"],
.fachtage .ph_content .tx-sf-event-mgt .ph-event input[type="tel"],
.fachtage .ph_content .tx-sf-event-mgt .ph-event select,
.fachtage .ph_content .tx-sf-event-mgt .ph-event textarea { height:3rem; margin:0; padding:.75rem 1rem; background-color:rgba(255,255,255,.06); border:1px solid var(--ft-line); border-radius:0; box-shadow:none; color:#fff; font-family:var(--ft-sans); font-size:1rem; transition:border-color .2s,background-color .2s; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event textarea { height:auto; min-height:8rem; resize:vertical; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event input[type="text"]:focus,
.fachtage .ph_content .tx-sf-event-mgt .ph-event select:focus,
.fachtage .ph_content .tx-sf-event-mgt .ph-event textarea:focus { outline:0; background-color:rgba(255,255,255,.1); border-color:var(--ft-mark); box-shadow:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event select { appearance:none; -webkit-appearance:none; padding-right:2.75rem; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23fff' stroke-width='1.5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 1rem center; background-size:.75rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event select option { color:#172633; background:#fff; }
/* Radio / Checkbox */
.fachtage .ph_content .tx-sf-event-mgt .ph-event input[type="radio"],
.fachtage .ph_content .tx-sf-event-mgt .ph-event input[type="checkbox"] { width:1.1rem!important; height:1.1rem!important; margin:0!important; position:static!important; flex:none; accent-color:var(--ft-mark); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .gender { display:flex; flex-wrap:wrap; gap:.5rem 1.75rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .gender>div { flex:0 0 100%; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .gender>label,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .radio-field-radiofields>label,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .checkbox-field-checkfields>label,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .checkbox fieldset>label { display:flex; align-items:center; gap:.6rem; margin:0; font-weight:400; font-size:.95rem; color:var(--ft-text); cursor:pointer; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .radio-field-radiofields,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .checkbox-field-checkfields { display:flex; flex-wrap:wrap; gap:.6rem 1.75rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .checkbox fieldset { margin:0; padding:1rem 1.25rem!important; background:rgba(255,255,255,.04)!important; border:1px solid var(--ft-line-soft); border-radius:0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .checkbox fieldset>label { align-items:flex-start; line-height:1.5; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .checkbox fieldset>label input { margin-top:.2rem!important; }
/* Hinweistexte im Formular */
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row>p { margin:0 0 .5rem; color:var(--ft-text); line-height:1.6; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row>p strong { color:#fff; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row>ul { margin:0 0 0 1.1rem; color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row a,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row a[style] { color:var(--ft-brass)!important; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .event-registration-row a:hover { color:var(--ft-brass-hi)!important; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event hr { margin:.5rem 0 1.75rem; border-color:var(--ft-line-soft); }
/* Aktionen */
.fachtage .ph_content .tx-sf-event-mgt .ph-event .columns.left:has(>input.submit) { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event input.submit { position:static!important; top:0!important; height:auto; margin:0; padding:1.1rem 1.75rem; background:var(--ft-mark); border:0; border-radius:0; color:#fff; font-family:var(--ft-sans); font-size:.85rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; cursor:pointer; transition:background .2s; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event input.submit:hover,
.fachtage .ph_content .tx-sf-event-mgt .ph-event input.submit:focus { background:#9e002a; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event a.button.tiny { position:static!important; margin:0; padding:0; width:3.3rem; height:3.3rem; justify-content:center; background:none!important; border:1px solid var(--ft-line); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event a.button.tiny::after { content:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event a.button.tiny:hover { border-color:var(--ft-mark)!important; background:rgba(255,255,255,.05)!important; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event a.button.tiny svg { width:1rem!important; top:0!important; }
/* reCaptcha-Hinweis */
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha { display:flex; align-items:center; justify-content:flex-end; gap:.75rem; margin:0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha::before,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha::after { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha .columns { float:none; width:auto; padding:0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha_text { text-align:right; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha h6 { margin:0 0 .2rem; font-size:.7rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha p { margin:0; font-size:.8rem; line-height:1.5; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha_logo img { width:2.25rem; height:auto; opacity:.8; }
@media only screen and (max-width:40em) {
  .fachtage .ph_content .tx-sf-event-mgt .ph-event .eventDetails .columns { flex:0 0 100%; padding:0; }
  .fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha { justify-content:flex-start; margin-top:1.5rem; }
  .fachtage .ph_content .tx-sf-event-mgt .ph-event .captcha_text { text-align:left; order:2; }
}
/* ---------- Anmeldung (sf_event_mgt Detail, frame-type-list) ---------- */
.fachtage .ph_content .frame-type-list { padding-top:7rem; margin-bottom:1.5rem; }
.fachtage .ph_content .frame-type-list > .content_wrap > .columns > .csc-header { display:flex; align-items:center; gap:1.5rem; margin:0 0 2.5rem; }
.fachtage .ph_content .frame-type-list > .content_wrap > .columns > .csc-header::before { content:""; flex:none; width:.6rem; height:.6rem; background:var(--ft-mark); transform:rotate(45deg); }
.fachtage .ph_content .frame-type-list > .content_wrap > .columns > .csc-header::after { content:""; flex:1; height:1px; background:var(--ft-line); }
.fachtage .ph_content .frame-type-list > .content_wrap > .columns > .csc-header h1 { margin:0; font-size:clamp(2.2rem,4.6vw,3.6rem); line-height:1; font-weight:600; }
/* Bildkopf */
.fachtage .ph_content .tx-sf-event-mgt .event_detail_header { position:relative; overflow:hidden; }
.fachtage .ph_content .tx-sf-event-mgt .event_detail_header>br { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .event_detail_header>img { display:block; width:100%; height:clamp(300px,48vh,520px); object-fit:cover; filter:saturate(.8); }
.fachtage .ph_content .tx-sf-event-mgt .event_detail_header::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(to top,var(--ft-panel) 0%,rgba(29,47,62,0) 55%); }
.fachtage .ph_content .tx-sf-event-mgt .event_detail_header .copyright_box { top:.75rem; bottom:auto; }
.fachtage .ph_content .tx-sf-event-mgt .event_header_title { position:absolute; left:0; right:0; bottom:1.5rem; z-index:3; display:flex; justify-content:center; }
.fachtage .ph_content .tx-sf-event-mgt .event_header_title a.scroll_down { position:relative; display:block; width:3.25rem; height:3.25rem; border:1px solid var(--ft-line); border-radius:50%; background:rgba(23,38,51,.6); transition:border-color .2s,background .2s; }
.fachtage .ph_content .tx-sf-event-mgt .event_header_title a.scroll_down:hover { border-color:var(--ft-mark); background:rgba(23,38,51,.9); }
.fachtage .ph_content .tx-sf-event-mgt .event_header_title a.scroll_down span { position:absolute; left:50%; top:50%; width:.7rem; height:.7rem; margin:-.55rem 0 0 -.35rem; border-right:1.5px solid #fff; border-bottom:1.5px solid #fff; transform:rotate(45deg); }
/* Infobereich */
.fachtage .ph_content .tx-sf-event-mgt #eventinfos { margin:0; max-width:none; padding:3rem clamp(1.25rem,4vw,3rem) 2rem!important; background:var(--ft-panel); border:1px solid var(--ft-line-soft); border-top:0; scroll-margin-top:calc(var(--ft-header-h) + 4rem); }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos .row { max-width:none; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos h2 { font-size:clamp(1.9rem,3.2vw,2.7rem); line-height:1.1; margin:0 0 .75rem; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos h2+.clear+p b { font-size:1.15rem; font-weight:400; color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos hr { margin:2rem 0; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"] { display:grid; grid-template-columns:repeat(auto-fill,minmax(13rem,1fr)); gap:1.5rem; margin:1.5rem 0 0; padding:0; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"]::before,
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"]::after { display:none; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"]>li { float:none; width:auto; padding:.1rem 0 .1rem 1rem; border-left:2px solid var(--ft-mark); font-size:1.2rem; color:var(--ft-text); font-variant-numeric:tabular-nums; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"]>li:empty { display:none; }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"]>li>b { display:block; margin-bottom:.35rem; font-size:.72rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); }
.fachtage .ph_content .tx-sf-event-mgt #eventinfos [class*="block-grid-"]>li>br { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .event-description a { display:inline-flex; align-items:center; gap:.75rem; padding:1rem 1.5rem; background:var(--ft-mark); font-size:.8rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; line-height:1.3; transition:background .2s; margin-bottom:.75rem; color:#fff!important; }
.fachtage .ph_content .tx-sf-event-mgt .event-description a::after { content:"\2192"; font-size:1.1em; letter-spacing:0; }
.fachtage .ph_content .tx-sf-event-mgt .event-description a:hover { background:#9e002a; color:#fff!important; }
.fachtage .ph_content .tx-sf-event-mgt .event-description strong { color:var(--ft-text); }
/* Veranstalter */
.fachtage .ph_content .tx-sf-event-mgt .event-detail-label p { margin:0 0 1rem; }
.fachtage .ph_content .tx-sf-event-mgt .event-detail-label p b { font-size:.72rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); }
.fachtage .ph_content .tx-sf-event-mgt .event-detail-label br,
.fachtage .ph_content .tx-sf-event-mgt .event-organisator>br { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .event-organisator img.orgaLogo { display:block; width:100%; max-width:16rem; height:auto; margin:0 0 1.25rem; padding:1rem 1.25rem; background:#fff; }
.fachtage .ph_content .tx-sf-event-mgt .event-organisator p { margin:0; line-height:1.7; }
/* Zusatzbilder */
.fachtage .ph_content .tx-sf-event-mgt .event-additional-image .imgblock { display:flex; flex-wrap:wrap; gap:1rem; margin:1.5rem 0 0; padding:0; list-style:none; }
.fachtage .ph_content .tx-sf-event-mgt .event-additional-image figure.th { margin:0; padding:0; border:0; box-shadow:none; background:none; width:min(100%,20rem); }
.fachtage .ph_content .tx-sf-event-mgt .event-additional-image figure.th img { width:100%; aspect-ratio:4/3; object-fit:cover; transition:opacity .2s; }
.fachtage .ph_content .tx-sf-event-mgt .event-additional-image figure.th a:hover img { opacity:.85; }
/* Zurück-Button */
.fachtage .ph_content .tx-sf-event-mgt a.button { display:inline-flex; align-items:center; justify-content:center; gap:.75rem; width:auto; margin:0; padding:1.1rem 1.75rem; background:var(--ft-mark); border:0; color:#fff; font-family:var(--ft-sans); font-size:.85rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; line-height:1.3; transition:background .2s; }
.fachtage .ph_content .tx-sf-event-mgt a.button::after { content:"\2192"; font-size:1.1em; letter-spacing:0; }
.fachtage .ph_content .tx-sf-event-mgt a.button:hover, .fachtage .ph_content .tx-sf-event-mgt a.button:focus { background:#9e002a; color:#fff; }
/* Button-Zeile: Flex statt Float – sonst überdeckt die (position:relative) Zurück-Spalte den Anmeldebutton */
.fachtage .ph_content .tx-sf-event-mgt .row:has(>.columns>p>a.button) { display:flex; flex-wrap:wrap; gap:1rem; margin:0; }
.fachtage .ph_content .tx-sf-event-mgt .row:has(>.columns>p>a.button)::before,
.fachtage .ph_content .tx-sf-event-mgt .row:has(>.columns>p>a.button)::after { display:none; }
.fachtage .ph_content .tx-sf-event-mgt .columns:has(>p>a.button) { width:auto!important; float:none!important; padding:0; }
.fachtage .ph_content .tx-sf-event-mgt .columns:has(>p>a.button)>p { margin:0; }
/* Anmeldung = Hauptbutton (rot), Zurück = Umriss */
.fachtage .ph_content .tx-sf-event-mgt a.button:not(.secondary) { background:none; border:1px solid var(--ft-line); color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt a.button:not(.secondary)::after { content:none; }
.fachtage .ph_content .tx-sf-event-mgt a.button:not(.secondary):hover,
.fachtage .ph_content .tx-sf-event-mgt a.button:not(.secondary):focus { background:rgba(255,255,255,.05); border-color:var(--ft-mark); color:#fff; }
/* Preisbox (nachgeladen in #event-prices) */
.fachtage .ph_content .tx-sf-event-mgt #eventinfos li#event-prices:not(:empty) { grid-column:span 2; }
.fachtage .ph_content .tx-sf-event-mgt #event-prices .price-title { margin-bottom:.35rem; font-size:.72rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--ft-brass); }
.fachtage .ph_content .tx-sf-event-mgt #event-prices .price-value { font-size:1.2rem; color:var(--ft-text); }
.fachtage .ph_content .tx-sf-event-mgt #event-prices .price-tax { font-size:.85rem; opacity:.8; }
.fachtage .ph_content .tx-sf-event-mgt #event-prices .price-options { display:block; margin:.75rem 0 0; padding:0; list-style:none; font-size:.9rem; }
.fachtage .ph_content .tx-sf-event-mgt #event-prices .price-options>li { float:none; width:auto; padding:.2rem 0; border:0; font-size:.9rem; }
/* Referenten-Liste */
.fachtage .ph_content .tx-sf-event-mgt .event-speaker ul { display:block; margin:0; padding:0; list-style:none; }
.fachtage .ph_content .tx-sf-event-mgt .event-speaker ul>li { float:none; width:auto; padding:0 0 1rem; margin:0 0 1rem; border-bottom:1px solid var(--ft-line-soft); }
.fachtage .ph_content .tx-sf-event-mgt .event-speaker ul>li:last-child { border:0; margin:0; }
.fachtage .ph_content .tx-sf-event-mgt .event-speaker img { display:block; width:4.5rem; height:4.5rem; object-fit:cover; object-position:50% 20%; border-radius:50%; margin:0 0 .75rem; }
.fachtage .ph_content .tx-sf-event-mgt .event-speaker p { margin:0; }
.fachtage .ph_content .tx-sf-event-mgt .event-speaker p:empty { display:none; }
@media only screen and (max-width:40em) {
  .fachtage .ph_content .frame-type-list { padding-top:4.5rem; }
  .fachtage .ph_content .tx-sf-event-mgt .event-detail-row { margin-top:1.5rem; }
}
/* Listen */
.fachtage .ph_content .csc-textpic-text ul { list-style:none; margin:1.5rem 0 0; padding:0; border-top:1px solid var(--ft-line-soft); }
.fachtage .ph_content .csc-textpic-text ul li { position:relative; margin:0; padding:.8rem 0 .8rem 1.9rem; border-bottom:1px solid var(--ft-line-soft); }
.fachtage .ph_content .csc-textpic-text ul li::before { content:""; position:absolute; left:0; top:1.65rem; width:1rem; height:2px; background:var(--ft-mark); }
/* ---------- Mobil ---------- */
@media only screen and (max-width:40em) {
  /* magellan: all items visible in a compact 2-column grid, sticky (was: fixed) */
  .fachtage .ph_content dl.sub-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; padding:0; overflow:visible; }
  .fachtage .ph_content dl.sub-nav dd { border-bottom:1px solid var(--ft-line-soft); }
  .fachtage .ph_content dl.sub-nav dd:nth-child(odd) { border-right:1px solid var(--ft-line-soft); }
  .fachtage .ph_content dl.sub-nav dd a, .fachtage .ph_content dl.sub-nav dd.active a { padding:.5rem .5rem .45rem; font-size:.66rem; letter-spacing:.1em; line-height:1.25; white-space:normal; text-align:center; }
  .fachtage .ph_content .frame-type-textpic:is(.frame-layout-0,.frame-layout-2,.frame-layout-101,.frame-layout-102) .bild-rechts { order:-1; }
  .fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .imgblock img { height:560px; }
  .fachtage .ph_content .frame-type-gridelements_pi1.frame-layout-105 .text-unten { padding:8rem 1.25rem 3.5rem!important; }
  .fachtage .ph_content .frame-type-header { padding:4.5rem 0 1.75rem; }
  .fachtage .ph_content .csc-frame-139 .csc-textpic-text { grid-template-columns:1fr; gap:.75rem; padding:1.5rem; }
  .fachtage .ph_content .csc-frame-139 p { font-size:1rem; }
}
/* ---------- Referenten-Karten im Spaltenmodus (Gridelement 2/3 Spalten): Bild oben, Text darunter ---------- */
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 { margin-bottom:0; height:100%; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 > .content_wrap,
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 > .content_wrap > .columns { height:100%; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .large-12>.row { display:flex!important; flex-direction:column; flex-wrap:nowrap; height:100%; border-top:3px solid var(--ft-mark); }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .large-12>.row>.columns { width:100%!important; max-width:none; flex:none; padding:0!important; background:none; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .large-12>.row>.bild-oben { padding:0!important; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock,
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) { position:static!important; display:grid; gap:1px; margin:0; padding:0; background:var(--ft-panel); }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock[data-ce-columns="1"] { grid-template-columns:1fr; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock[data-ce-columns="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock>li,
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"])>li { width:auto; padding:0; background:none; aspect-ratio:auto; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock figure,
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock figure>a { display:block; width:100%; height:auto; padding:0; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock img,
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) img { display:block; width:100%; height:auto; max-height:none; aspect-ratio:16/10; object-fit:cover; object-position:50% 20%; filter:saturate(.85); opacity:1; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) img { aspect-ratio:4/5; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .text-unten { flex:1 1 auto; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .text-unten .csc-textpic-text { padding:clamp(1.5rem,3vw,2.5rem); }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .csc-textpic-text>p:first-child { margin-bottom:1rem; }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .csc-textpic-text>hr { margin:0 0 1.25rem; border-color:var(--ft-line-soft); }
.fachtage .ph_content :is(.element2cols,.element3cols) .frame-type-textpic.frame-layout-0 .csc-textpic-text>hr+h3 { font-size:1.5rem; line-height:1.25; margin:0 0 1rem; }
/* ---------- Gruppen-Element (elementsgroup): gleiche Breite wie die übrigen Karten ---------- */
.fachtage .ph_content .elementsgroup.row { max-width:75rem; margin-left:auto; margin-right:auto; }
/* ---------- Logo-Laufband ----------
   Every "insert records" element (shortcut) that contains a logo wall runs as an endless ticker
   (right to left, starting with the first logos of the wall). The logos are maintained once in the wall on the Fachtage main page.
   fachtage.js duplicates the list once (seamless loop), adds .ft-ticker and sets --ft-ticker-dur. */
.fachtage .ph_content .ft-ticker .frame-layout-0 .large-12>.row { background:none; border:0; display:block; }
.fachtage .ph_content .ft-ticker .frame-layout-0 .large-12>.row>.bild-oben { padding:0!important; overflow:hidden; -webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent); mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent); }
.fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) { display:flex; gap:0; width:max-content; margin:0; animation:ft-ticker var(--ft-ticker-dur,60s) linear infinite; }
.fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"])>li { flex:none; width:12rem; height:6.75rem; aspect-ratio:auto; margin-right:1.25rem; }
.fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) figure { padding:1rem 1.5rem; }
.fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) img { width:100%; height:100%; max-height:none; }
.fachtage .ph_content .ft-ticker:hover .frame-layout-0 .bild-oben .imgblock { animation-play-state:paused; }
@keyframes ft-ticker { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .fachtage .ph_content .ft-ticker .frame-layout-0 .large-12>.row>.bild-oben { overflow-x:auto; -webkit-mask-image:none; mask-image:none; }
  .fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) { animation:none; }
  .fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock>li[aria-hidden="true"] { display:none; }
}
@media only screen and (max-width:40em) {
  .fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"])>li { width:9rem; height:5rem; margin-right:.75rem; }
  .fachtage .ph_content .ft-ticker .frame-layout-0 .bild-oben .imgblock:not([data-ce-columns="1"]) figure { padding:.6rem .9rem; }
}
/* ---------- Anmeldeformular: Breite Info-Panel + Fehlerzustand nach dem Absenden ----------
   The theme limits every .panel to 1050px; the form is 1150px wide.
   Server-side validation marks the row with .error-class and adds .field-errors .error;
   the template's notice #errorBox is inline display:none and never shown by any script. */
.fachtage .ph_content .tx-sf-event-mgt .ph-event .panel.eventDetails { max-width:none; }
/* fieldset grows with its widest content by default (min-width:min-content) and overflowed the form on phones */
.fachtage .ph_content .tx-sf-event-mgt .ph-event form.registration>fieldset { min-width:0; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event:has(.error-class) #errorBox { display:block!important; width:auto!important; margin:0 0 2rem!important; padding:1rem 1.5rem!important; background:#c10033!important; color:#fff!important; font-weight:600; line-height:1.5; border-left:4px solid #ff9aac; scroll-margin-top:calc(var(--ft-header-h) + 1rem); }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .error-class :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea) { border-color:#ff4d6d; box-shadow:0 0 0 1px #ff4d6d; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .error-class>label,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .error-class .gender>div>span,
.fachtage .ph_content .tx-sf-event-mgt .ph-event .error-class.gender>div>span { color:#ff9aac; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .field-errors { margin:.4rem 0 0; padding:0; background:none; }
.fachtage .ph_content .tx-sf-event-mgt .ph-event .field-errors .error { display:block; margin:0; padding:0; background:none!important; color:#ff9aac!important; font-size:.85rem; font-weight:600; line-height:1.4; }
/* Event detail "Programm/Ablauf" (link back to this page) is not needed on the Fachtage pages */
.fachtage .ph_content .event-program.columns { display:none; }
/* Cards with slider (layout 101/102), e.g. Dinkelsbühl: h4 = section kicker with separator line, h3 = section title */
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-101,.frame-layout-102) .csc-textpic-text>h4 { margin:2.25rem 0 .6rem; padding-top:2rem; border-top:1px solid var(--ft-line-soft); font:600 .74rem/1.4 var(--ft-sans); letter-spacing:.24em; text-transform:uppercase; color:var(--ft-brass); }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-101,.frame-layout-102) .csc-textpic-text>h3 { margin:0 0 .75rem; font-size:1.5rem; line-height:1.25; }
.fachtage .ph_content .frame-type-textpic:is(.frame-layout-101,.frame-layout-102) .csc-textpic-text>p+p>a:only-child { margin-top:0; }
