/* InfoMedia Design-CSS. Portiert aus novamira-sandbox/infomedia-design.php am 2026-08-28.
   Reines CSS ohne PHP-Schicht: der frühere url("...)-Escaping-Fallstrick kann hier nicht auftreten. */


/* ============================================================================
 * KLASSEN-INDEX  --  design.css  (fruehe Schicht)
 * ----------------------------------------------------------------------------
 * Alle projektspezifischen .im-*-Klassen DIESER Datei, thematisch gruppiert.
 * Markierung [auch in custom.css] = die Klasse wird von BEIDEN Schichten
 * gestylt; dort entscheidet die Ladereihenfolge (siehe Kopf dieser Datei).
 * Stand 2026-08-28.
 * ========================================================================== */

/* --- Global & Hilfsklassen ------------------------------------------- */
/*   .im-tag                  (1x)  [auch in custom.css]
       Eyebrow/Section-Tag über einer Überschrift: Pille mit feinem Rahmen, Versalien.
       Sparsam einsetzen — laut Design höchstens eine pro drei Sektionen.
   */
/*   .im-lift                 (6x)
       Hover-Effekt „anheben“: Karte hebt sich leicht, Rahmen und Schatten
       verstärken sich.
   */
/*   .im-bspcard              (2x)
       Wie im-lift, speziell für Beispiel-Karten.
   */
/*   .im-anchor               (1x)
       Sprungziel-Korrektur: hält 100px Abstand zum klebenden Header, damit Ankerlinks
       nicht unter der Navigation landen.
   */
/*   .im-cg3                  (3x)
       Einfaches Drei-Spalten-Raster mit 16px Abstand.
   */
/*   .im-colgrid3             (13x)
       Drei-Spalten-Raster für verlinkte Inhaltskarten (SteuerNews); regelt zusätzlich
       Zeilenhöhe und Ausrichtung.
   */

/* --- Hero-Bereiche --------------------------------------------------- */
/*   .im-rec-hero             (3x)
       Recruiting-Hero mit abgerundeter Bildmaske.
   */
/*   .im-rec-photo            (1x)
       Positionierung des Fotos im Recruiting-Hero.
   */
/*   .im-rec-badge            (3x)
       Schwebende Info-Karte über dem Recruiting-Foto (Milchglas-Effekt).
   */
/*   .im-rec-badge-ic         (1x)
       Icon-Kachel in dieser Karte.
   */
/*   .im-rec-badge-t          (1x)
       Titelzeile in dieser Karte.
   */
/*   .im-rec-badge-s          (2x)
       Kleingedrucktes in dieser Karte.
   */
/*   .im-rec-chips            (1x)
       Chip-Reihe unter dem Recruiting-Hero.
   */
/*   .im-ref-hero-photo       (2x)
       Foto im Referenzen-Hero: runde Ecken und weicher grüner Schatten.
   */

/* --- Unterseite /website/ -------------------------------------------- */
/*   .im-web-tgrid            (2x)  [auch in custom.css]
       Testimonial-Raster: zwei Spalten (Desktop), einspaltig auf Mobil.
   */
/*   .im-web-preiscard        (3x)  [auch in custom.css]
       Preis-Karte: zweispaltig, stapelt auf Mobil.
   */
/*   .im-web-ctabullets       (3x)
       Aufzählung in der CTA-Karte, zentriert.
   */
/*   .im-web-faqsec           (5x)  [auch in custom.css]
       FAQ-Sektion: Spalte behält volle Breite statt zu schrumpfen; trägt auch das
       Badge.
   */
/*   .im-web-chips            (3x)
       Chip-Reihe innerhalb der FAQ-Sektion.
   */
/*   .im-web-leist            (2x)
       Höhenausgleich im Leistungen-Raster (alle Karten gleich hoch).
   */

/* --- SteuerNews ------------------------------------------------------ */
/*   .im-sn-grid              (6x)
       Raster der SteuerNews-Preiskarten.
   */
/*   .im-sn-pkg               (6x)
       Einzelne Preiskarte: Inhalt oben, Button unten bündig.
   */
/*   .im-sn-ibx               (2x)
       Live-Beispiel-Karte (native Infobox) mit Hover-Anhebung.
   */
/*   .im-snhead               (5x)
       Kopfzeile einer Beispiel-Karte (Raster aus Titel, Badge, Unterzeile).
   */
/*   .im-sntitle              (1x)
       Titel darin.
   */
/*   .im-snbadge              (2x)
       Badge darin.
   */
/*   .im-snsub                (1x)
       Unterzeile darin.
   */
/*   .im-sncard               (1x)
       Abstand über der Karte.
   */
/*   .im-inhalt-grid          (5x)
       Raster der Inhalts-Karten (native Infoboxen).
   */

/* --- Online-Rechner -------------------------------------------------- */
/*   .im-or-grid              (4x)
       Raster der zehn Rechner-Karten.
   */
/*   .im-or-ibx               (4x)
       Rechner-Karte mit Pfeil rechts und Hover-Anhebung.
   */
/*   .im-or-pkg               (1x)
       Abstand in der Paket-Karte.
   */
/*   .im-or-pkg-feat          (1x)
       Dasselbe für die hervorgehobene Paket-Karte.
   */
/*   .im-or-crosssell         (3x)
       Cross-Sell-Leiste unter den Paketen.
   */
/*   .im-or-cross-ic          (1x)
       Icon-Kachel darin.
   */
/*   .im-or-cross-txt         (2x)
       Textbereich darin.
   */
/*   .im-or-cross-cta         (3x)
       Aufforderungs-Link darin, Pfeil wandert beim Überfahren.
   */
/*   .im-or-calc              (2x)
       Rahmenkarte um den eingebetteten Rechner auf den Unterseiten.
   */

/* --- Videos & Zusatzangebote ----------------------------------------- */
/*   .im-vid-strip            (9x)
       Leiste „Ihr Klienten-Video“ mit Aufzählungspunkten.
   */
/*   .im-vid-label            (1x)
       Beschriftung in dieser Leiste.
   */
/*   .im-vstrip               (4x)
       Variante dieser Leiste mit Icons.
   */
/*   .im-xs-card              (1x)
       Cross-Sell-Karte.
   */
/*   .im-xs-foot              (1x)
       Fußzeile der Cross-Sell-Karte.
   */
/*   .im-za-badge             (1x)
       Badge auf einer Zusatzangebot-Karte.
   */
/*   .im-za-cardtop           (1x)
       Kopfbereich der Zusatzangebot-Karte.
   */
/*   .im-za-tag               (1x)
       Einzelnes Schlagwort.
   */
/*   .im-za-tags              (1x)
       Container der Schlagwörter.
   */
/*   .im-za-desc              (1x)
       Beschreibungstext (leicht transparent).
   */
/*   .im-za-sub               (1x)
       Unterzeile (leicht transparent).
   */
/*   .im-za-foot              (1x)
       Fußzeile (leicht transparent).
   */
/*   .im-za-prow              (2x)
       Preiszeile — bricht nicht um.
   */

/* --- Journal & Grafikdesign ------------------------------------------ */
/*   .im-kj-card              (1x)
       Journal-Preiskarte: Inhalt oben, Button unten.
   */
/*   .im-kj-btnbottom         (3x)
       Button am unteren Kartenrand, mit Hover-Animation.
   */
/*   .im-gd-flist             (1x)
       Icon-Kachel in der Grafikdesign-Leistungsliste.
   */

/* --- Was ist neu / Preise -------------------------------------------- */
/*   .im-wn-tabs              (6x)
       Reiter-Umschalter (Print/Digital) als Pillen-Leiste.
   */
/*   .im-wn-deadline          (8x)
       Bestellschluss-Pille im Hero — bricht ab Tablet in eine eigene Zeile.
   */
/*   .im-deadline             (4x)
       Bestellschluss-Angabe, bricht nicht um.
   */
/*   .im-deadline-ext         (6x)
       Variante ohne linken Abstand.
   */
/*   .im-preiskarte           (3x)
       Preiskarte in den Reitern.
   */
/*   .im-preistabelle         (11x)
       Preistabelle: zweispaltig mit feinen Trennlinien, auf Mobil einspaltig.
   */
/*   .im-preisgrid            (2x)
       Raster der Preisblöcke.
   */
/*   .im-preis-cta            (2x)
       Buttonzeile unter den Preisen.
   */
/*   .im-preis-note           (1x)
       Hinweiszeile unter den Preisen.
   */

/* --- Neugründer ----------------------------------------------------- */
/*   .im-wp-card              (7x)
       Welcome-Package-Karte mit Hover-Anhebung.
   */
/*   .im-ngw-pa               (1x)
       Preisangabe Variante A.
   */
/*   .im-ngw-pb               (2x)
       Preisangabe Variante B (mit Rahmen).
   */

/* --- FAQ ------------------------------------------------------------- */
/*   .im-faq-acc              (13x)
       Akkordeon: jede Frage als eigene weiße Karte mit 12px Abstand; Kreis-Icon mit
       Plus/Minus.
   */
/*   .im-faq-cat              (2x)
       Kategorie-Kopf im FAQ.
   */
/*   .im-pc-card              (5x)
       Produktverweis-Karte mit Pfeil rechts oben.
   */
/*   .im-pcgrid               (3x)
       Raster dieser Karten.
   */

/* --- Über uns ------------------------------------------------------- */
/*   .im-teamphoto            (3x)
       Teamfoto: füllt die Kachel formatfüllend.
   */
/*   .im-teamcontact          (1x)
       Kontaktbereich der Teamkarte, unten bündig.
   */
/*   .im-tccontact            (1x)
       Trennlinie über dem Kontaktbereich.
   */
/*   .im-werte                (1x)
       Werte-Karten: Titelgröße 20px.
   */

/* --- Inhalte & Formate ----------------------------------------------- */
/*   .im-inhalte              (4x)
       Waagerechte Leiste mit Themen-Pillen.
   */
/*   .im-inh-label            (2x)
       Beschriftung in dieser Leiste.
   */
/*   .im-fmt-grid             (3x)
       Raster der Format-Karten.
   */
/*   .im-fmt-badge            (1x)
       Badge auf einer Format-Karte.
   */
/*   .im-spezial              (2x)
       Leiste mit Spezialthemen.
   */
/*   .im-rapid-sec            (1x)
       Textfarbe in der Schnellübersicht.
   */

/* --- Footer & Rechtsseiten ------------------------------------------- */
/*   .im-legal                (1x)
       Rechtsseiten: schmalere Lesespalte (760px, zentriert). Wird über die
       Kadence-Body-Klasse gesetzt, nicht am Block.
   */


/* ===== InfoMedia Spacing-Skala (feine Rampe, responsive) ===== */
:root{
  --global-kb-spacing-xxs:0.5rem;   /* 8 */
  --global-kb-spacing-xs:0.75rem;   /* 12 */
  --global-kb-spacing-sm:1rem;      /* 16 – Grid-Gutter */
  --global-kb-spacing-md:1.5rem;    /* 24 – Element-Abstand */
  --global-kb-spacing-lg:2rem;      /* 32 – Karten-Padding */
  --global-kb-spacing-xl:3rem;      /* 48 – Header->Grid */
  --global-kb-spacing-xxl:4rem;     /* 64 */
  --global-kb-spacing-3xl:6rem;     /* 96 – Sektions-Padding */
  --global-kb-spacing-4xl:8rem;     /* 128 – Hero */
  --global-kb-spacing-5xl:10rem;    /* 160 */
}
@media (max-width:767px){
  :root{
    --global-kb-spacing-md:1.25rem;  /* 20 */
    --global-kb-spacing-lg:1.75rem;  /* 28 */
    --global-kb-spacing-xl:2rem;     /* 32 */
    --global-kb-spacing-xxl:3rem;    /* 48 */
    --global-kb-spacing-3xl:3.5rem;  /* 56 */
    --global-kb-spacing-4xl:5rem;    /* 80 */
    --global-kb-spacing-5xl:6.5rem;  /* 104 */
  }
}

/* ===== Leistungen: native 3x3 Kadence-Spalten — gleiche Kartenhoehe ===== */
.im-web-leist .wp-block-kadence-infobox,
.im-web-leist .kt-blocks-info-box-link-wrap{ height:100%; }

/* ===== Referenzen/Testimonials: natives columns:4 als 2x2 (Editor + Frontend) ===== */
.im-web-tgrid > .kt-row-column-wrap{ grid-template-columns:repeat(2,1fr) !important; gap:16px; align-items:stretch; }
@media (max-width:600px){
  .im-web-tgrid > .kt-row-column-wrap{ grid-template-columns:1fr !important; }
}

/* ===== Preis-Karte: 60/40 auf Mobil stapeln (sonst zerbricht die Preis-Spalte) ===== */
@media (max-width:767px){
  .im-web-preiscard.im-web-preiscard > .kt-row-column-wrap{ grid-template-columns:1fr !important; }
}

/* ===== Preis-Box (Spalte 2) mobil volle Breite wie Button/Inhalt ===== */
@media (max-width:767px){
  .im-web-preiscard > .kt-row-column-wrap > .wp-block-kadence-column:nth-child(2){ padding-left:0 !important; padding-right:0 !important; }
}

/* ===== CTA Icon List: zentriert-kompakt (Desktop) / zentriert gestapelt (Mobil) ===== */
.im-web-ctabullets ul.kt-svg-icon-list{ justify-content:center !important; }
@media (min-width:768px){
  .im-web-ctabullets ul.kt-svg-icon-list{ grid-template-columns:repeat(3,auto) !important; }
}
@media (max-width:767px){
  .im-web-ctabullets ul.kt-svg-icon-list{ grid-template-columns:auto !important; }
}

/* ===== FAQ Accordion: einheitliche weisse Karte pro Pane + 12px Gap (Kadence stylt Header/Content getrennt) ===== */
.im-faq-acc .kt-accordion-pane{ background:#fff; border-radius:16px; overflow:hidden; }
.im-faq-acc .kt-accordion-inner-wrap{ row-gap:12px !important; }

/* ===== FAQ Accordion Icon: Sand-Kreis + dunkles +/- (Kadence-Icon ist einfarbig) ===== */
.im-faq-acc .kt-blocks-accordion-icon-trigger{ background:var(--global-palette7) !important; width:32px !important; height:32px !important; min-width:32px !important; min-height:32px !important; flex:0 0 auto !important; box-sizing:border-box !important; }
.im-faq-acc .kt-blocks-accordion-icon-trigger::before,
.im-faq-acc .kt-blocks-accordion-icon-trigger::after{ background:var(--global-palette1) !important; }
.im-faq-acc .kt-blocks-accordion-icon-trigger::before,
.im-faq-acc .kt-blocks-accordion-icon-trigger::after{ width:12px !important; height:2px !important; top:0 !important; right:0 !important; bottom:0 !important; left:0 !important; margin:auto !important; }

/* ===== FAQ Accordion: Header immer transparent (weisse Karte traegt BG, kein Active-Grau) ===== */
.im-faq-acc .kt-blocks-accordion-header,
.im-faq-acc .kt-blocks-accordion-header:hover{ background:transparent !important; }

/* ===== Hero Chips Icon List: kompakt links (Desktop) / gestapelt (Mobil) ===== */
.im-web-chips ul.kt-svg-icon-list{ justify-content:flex-start !important; }
@media (min-width:768px){
  .im-web-chips ul.kt-svg-icon-list{ grid-template-columns:repeat(3,auto) !important; }
}
@media (max-width:767px){
  .im-web-chips ul.kt-svg-icon-list{ grid-template-columns:auto !important; }
}

/* ===== Ihre Inhalte: horizontale Leiste mit Pills ===== */
.im-inhalte ul.kt-svg-icon-list{ display:flex !important; flex-wrap:wrap; align-items:center; gap:10px; grid-template-columns:none !important; margin:0 !important; }
.im-inhalte li.kt-svg-icon-list-item-wrap{ background:#EFECE5; border-radius:999px; padding:8px 16px !important; margin:0 !important; }
.im-inhalte li.im-inh-label{ background:transparent !important; padding-left:0; padding-right:4px; }
.im-inhalte li.im-inh-label .kt-svg-icon-list-text{ text-transform:uppercase; letter-spacing:0.06em; font-weight:700; color:rgba(16,32,27,0.45); font-size:12px; }

/* ===== Recruiting Hero ===== */
.im-rec-hero{ position:relative; overflow:hidden; }
.im-rec-hero::before{ content:''; position:absolute; top:-180px; right:-160px; width:520px; height:520px; border-radius:50%; background:radial-gradient(circle, rgba(198,242,78,0.45), rgba(198,242,78,0)); filter:blur(30px); pointer-events:none; z-index:0; }
.im-rec-hero > .kt-row-column-wrap{ position:relative; z-index:1; }
.im-rec-chips ul.kt-svg-icon-list{ display:flex !important; flex-wrap:wrap; gap:8px 24px; grid-template-columns:none !important; }
.im-rec-photo .kt-inside-inner-col{ position:relative; }
.im-rec-badge{ position:absolute; left:-16px; bottom:32px; display:flex; align-items:center; gap:12px; background:rgba(250,248,245,0.95); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); border-radius:16px; padding:14px; box-shadow:0 20px 40px rgba(11,59,46,0.18); z-index:2; }
.im-rec-badge-ic{ display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:12px; background:#0B3B2E; color:#C6F24E; flex:0 0 auto; }
.im-rec-badge-t{ margin:0 !important; font-size:14px; font-weight:700; color:#10201B; line-height:1.2; }
.im-rec-badge-s{ margin:2px 0 0 !important; font-size:12px; color:rgba(16,32,27,0.6); line-height:1.3; }
@media (max-width:767px){ .im-rec-badge{ left:12px; bottom:16px; padding:12px; } }

/* ===== BUGFIX-BATCH 2026-08-06 ===== */
.im-rec-badge{ align-items:center; }
.im-rec-badge-s{ white-space:nowrap; }
.im-web-faqsec .im-faq-acc{ text-align:left !important; }
.im-web-faqsec .im-faq-acc .kt-blocks-accordion-title, .im-web-faqsec .im-faq-acc .kt-blocks-accordion-panel-inner, .im-web-faqsec .im-faq-acc .kt-blocks-accordion-panel-inner *{ text-align:left !important; }

.im-web-faqsec .im-tag .kb-svg-icon-wrap{ display:none !important; }

.im-rapid-sec .kt-blocks-info-box-title{ color:#EFECE5 !important; }

/* ===== SteuerNews Preis-Karten ===== */
.im-sn-pkg .kt-inside-inner-col{ display:flex; flex-direction:column; }
.im-sn-pkg .wp-block-kadence-iconlist{ margin-bottom:auto !important; width:100% !important; }
.im-sn-pkg .kt-svg-icon-list-items{ width:100% !important; }
.im-sn-pkg ul.kt-svg-icon-list{ grid-template-columns:1fr !important; width:100% !important; max-width:none !important; }
.im-sn-pkg li.kt-svg-icon-list-item-wrap{ align-items:flex-start !important; }
.im-sn-pkg .kt-svg-icon-list-single{ margin-top:3px; }

/* ===== SteuerNews Live-Beispiele (kadence/infobox nativ) ===== */
/* CSS-Rest nur für das, was Kadence NICHT nativ kann: Auto-Flow-Grid + space-between-Layout + Hover-Lift. */
/* Karte, Chip, Icon, Hover-Farbwechsel, Schatten, Whole-Card-Link = native infobox-Attribute (Backend-editierbar). */
.im-sn-grid > .kt-inside-inner-col, .im-sn-grid > .kadence-inner-column-inner{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
@media (max-width:900px){ .im-sn-grid > .kt-inside-inner-col, .im-sn-grid > .kadence-inner-column-inner{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .im-sn-grid > .kt-inside-inner-col, .im-sn-grid > .kadence-inner-column-inner{ grid-template-columns:1fr; } }
.im-sn-ibx .kt-blocks-info-box-link-wrap{ justify-content:space-between !important; transition:transform .2s ease; }
.im-sn-ibx:hover .kt-blocks-info-box-link-wrap{ transform:translateY(-4px); }

/* ===== Online-Rechner Liste (kadence/infobox nativ) ===== */
.im-or-grid > .kt-inside-inner-col, .im-or-grid > .kadence-inner-column-inner{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
@media (max-width:640px){ .im-or-grid > .kt-inside-inner-col, .im-or-grid > .kadence-inner-column-inner{ grid-template-columns:1fr; } }
/* Pfeil rechts + Hover-Lift (Kadence-infobox hat nur einen Icon-Slot) */
.im-or-ibx .kt-blocks-info-box-link-wrap{ transition:transform .2s ease; }
.im-or-ibx:hover .kt-blocks-info-box-link-wrap{ transform:translateY(-3px); }
.im-or-ibx .kt-blocks-info-box-link-wrap::after{ content:''; margin-left:auto; flex:0 0 auto; width:18px; height:18px; background-color:rgba(16,32,27,0.3); -webkit-mask:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cline%20x1%3D%227%22%20y1%3D%2217%22%20x2%3D%2217%22%20y2%3D%227%22%2F%3E%3Cpolyline%20points%3D%227%207%2017%207%2017%2017%22%2F%3E%3C%2Fsvg%3E') center/contain no-repeat; mask:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cline%20x1%3D%227%22%20y1%3D%2217%22%20x2%3D%2217%22%20y2%3D%227%22%2F%3E%3Cpolyline%20points%3D%227%207%2017%207%2017%2017%22%2F%3E%3C%2Fsvg%3E') center/contain no-repeat; transition:transform .2s ease, background-color .2s ease; }
.im-or-ibx:hover .kt-blocks-info-box-link-wrap::after{ background-color:#0B3B2E; transform:translate(2px,-2px); }

/* ===== Online-Rechner Preis-Karten: Cross-Sell (Feature-Border = nativer borderStyle am Column) ===== */
.im-or-crosssell{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; border-radius:24px; background:#EFECE5; padding:20px 24px; text-decoration:none; transition:background .2s; }
.im-or-crosssell:hover{ background:#E4E0D5; }
.im-or-cross-ic{ display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:12px; background:#0B3B2E; color:#C6F24E; flex:0 0 auto; }
.im-or-cross-txt{ flex:1; min-width:220px; font-size:15px; color:rgba(16,32,27,0.8); line-height:1.5; }
.im-or-cross-txt strong{ color:#10201B; }
.im-or-cross-cta{ display:inline-flex; align-items:center; gap:6px; font-size:14px; font-weight:700; color:#0B3B2E; flex:0 0 auto; }
.im-or-cross-cta svg{ transition:transform .2s; }
.im-or-crosssell:hover .im-or-cross-cta svg{ transform:translateX(3px); }

/* ===== Online-Rechner Preis-Karten: Buttons unten (Badge-Abstand = natives margin am Block 347_b7867f-6c) ===== */
.im-or-pkg .wp-block-kadence-advancedbtn, .im-or-pkg-feat .wp-block-kadence-advancedbtn{ margin-top:auto !important; }

/* ===== Online-Rechner Unterseite: Rahmen-Karte um den Rechner-iFrame ===== */
.im-or-calc{ max-width:920px; margin:0 auto; background:#fff; border-radius:24px; padding:12px; overflow:hidden; }
.im-or-calc iframe{ width:100% !important; max-width:100%; border:0; display:block; }

.im-bspcard{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.im-bspcard:hover{transform:translateY(-4px);border-color:rgba(11,59,46,0.25);box-shadow:0 10px 30px rgba(11,59,46,0.1)}

.im-vstrip .kt-blocks-info-box-link-wrap{display:flex;align-items:flex-start;gap:14px}
.im-vstrip .kt-blocks-info-box-media{margin-bottom:0!important}
.im-vstrip .kt-blocks-info-box-media-container{flex:0 0 auto}
.im-vstrip .kt-infobox-textcontent{flex:1 1 auto;text-align:left}
.im-fmt-grid .kt-row-column-wrap{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px}
.im-fmt-grid .kt-row-column-wrap>.wp-block-kadence-column{width:auto!important;flex:none!important;max-width:none!important;min-width:0!important}
@media (max-width:767px){.im-fmt-grid .kt-row-column-wrap{grid-template-columns:1fr!important}}
.im-fmt-badge{position:absolute;top:32px;right:32px;background:#fff;color:#0B3B2E;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;line-height:1}
.im-cg3{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1023px){.im-cg3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.im-cg3{grid-template-columns:1fr}}
/* .im-lift auf einem Element, das Hintergrund und border-radius SELBST traegt. */
.im-lift:not(.wp-block-kadence-column){transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.im-lift:not(.wp-block-kadence-column):hover{transform:translateY(-3px);border-color:rgba(11,59,46,0.3);box-shadow:0 18px 44px rgba(11,59,46,0.12)}
/* Kadence-Column: background UND border-radius liegen auf dem INNEREN
   .kt-inside-inner-col; das aeussere .wp-block-kadence-column bleibt rechteckig
   (radius 0). Ein Schatten dort zeichnet die rechteckige Kante nach -> an den vier
   Ecken scheinen spitze helle Zipfel durch (2026-09-01 auf 388 gemeldet).
   Deshalb Transform + Schatten auf den inneren Container, der den Radius traegt. */
.wp-block-kadence-column.im-lift > .kt-inside-inner-col{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.wp-block-kadence-column.im-lift:hover > .kt-inside-inner-col{transform:translateY(-3px);border-color:rgba(11,59,46,0.3);box-shadow:0 18px 44px rgba(11,59,46,0.12)}
@media (prefers-reduced-motion:reduce){.im-lift:not(.wp-block-kadence-column):hover,.wp-block-kadence-column.im-lift:hover > .kt-inside-inner-col{transform:none}}
.im-anchor{scroll-margin-top:100px}
.im-colgrid3 > .kt-inside-inner-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:1023px){.im-colgrid3 > .kt-inside-inner-col{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.im-colgrid3 > .kt-inside-inner-col{grid-template-columns:1fr}}.im-colgrid3 .wp-block-kadence-infobox,.im-colgrid3 .kt-blocks-info-box-link-wrap{height:100%}

.im-sncard{margin-top:24px}
.im-snhead > .kt-inside-inner-col{display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
.im-snhead .im-snbadge{grid-column:1;grid-row:1 / span 2;align-self:center;margin:0;line-height:0}
.im-snhead .im-snbadge .wp-block-kadence-single-icon{margin:0}
.im-snhead .im-sntitle{grid-column:2;grid-row:1;margin:0 0 2px}
.im-snhead .im-snsub{grid-column:2;grid-row:2;margin:0}
.im-teamphoto{margin:0}
.im-teamphoto img{display:block;width:100%;object-fit:cover}
.im-tccontact{border-top:1px solid rgba(16,32,27,0.08);padding-top:14px;margin-top:2px}

/* Team-Karten: inneren BG-Container die gestreckte Kartenhoehe fuellen lassen (Kadence hat dafuer kein natives Attribut) */
.kt-inside-inner-col:has(> .im-teamphoto){display:flex;flex-direction:column;height:100%}
.kt-inside-inner-col:has(> .im-teamcontact){display:flex;flex-direction:column;justify-content:space-between;height:100%}

/* Werte-Karten: Infobox-Titel 20px (titleFont generiert kein CSS) */
.im-werte .kt-blocks-info-box-title{ font-size:20px; line-height:1.3; }

/* ===== FAQ Produktverweise: native Infobox-Karten ===== */
.im-pcgrid > .kt-row-column-wrap{ column-gap:12px !important; }
.im-pc-card .kt-blocks-info-box-link-wrap{ position:relative; }
.im-pc-card{ transition:transform .28s cubic-bezier(.16,1,.3,1); }
.im-pc-card:hover{ transform:translateY(-3px); }
.im-pc-card .kt-infobox-textcontent{ padding-right:20px; }
.im-pc-card .kt-blocks-info-box-link-wrap::after{ content:""; position:absolute; right:16px; top:50%; transform:translateY(-50%); width:15px; height:15px; background-image:url(data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%2310201B%27%20stroke-opacity=%270.4%27%20stroke-width=%272.2%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M7%2017%2017%207%27/%3E%3Cpath%20d=%27M7%207h10v10%27/%3E%3C/svg%3E); background-position:center; background-size:15px 15px; background-repeat:no-repeat; }
@media(max-width:1024px){ .im-pcgrid > .kt-row-column-wrap{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; row-gap:12px !important; } }
@media(max-width:600px){ .im-pcgrid > .kt-row-column-wrap{ grid-template-columns:1fr !important; } }

/* ===== Rechtsseiten: schmalere Lesespalte ===== */
body.im-legal .entry-content{ max-width:760px; margin-left:auto; margin-right:auto; } /* body. noetig: Theme setzt .content-title-style-above .entry-content{margin:0} mit gleicher Spezifitaet, aber spaeter */

/* SteuerNews native linked items */
.im-colgrid3 .kb-section-has-link > .kt-inside-inner-col{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:12px}
.im-colgrid3 .kb-section-has-link > .kt-inside-inner-col > .wp-block-kadence-advancedheading:nth-of-type(1){grid-column:1;grid-row:1}
.im-colgrid3 .kb-section-has-link > .kt-inside-inner-col > .wp-block-kadence-advancedheading:nth-of-type(2){grid-column:1;grid-row:2}
.im-colgrid3 .kb-section-has-link > .kt-inside-inner-col > .wp-block-kadence-icon{grid-column:2;grid-row:1 / span 2;align-self:center;margin:0}
.im-colgrid3 .kb-section-has-link > .kt-inside-inner-col{transition:background-color .18s ease}
.im-colgrid3 .kb-section-has-link:hover > .kt-inside-inner-col{background:#EDF3E6 !important}
.im-colgrid3 .kb-section-has-link .wp-block-kadence-single-icon{color:rgba(16,32,27,0.4);transition:color .18s ease,transform .18s ease}
.im-colgrid3 .kb-section-has-link:hover .wp-block-kadence-single-icon{color:#0B3B2E;transform:translate(2px,-2px)}

/* Inhalt-Grid (native infoboxes) */
.im-inhalt-grid > .kt-inside-inner-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:12px}
@media(max-width:600px){.im-inhalt-grid > .kt-inside-inner-col{grid-template-columns:1fr;grid-auto-rows:auto}}
.im-inhalt-grid .wp-block-kadence-infobox{height:100%}
.im-inhalt-grid .kt-blocks-info-box-link-wrap{border:1px solid rgba(250,248,245,0.1);height:100%}
.im-inhalt-grid .wp-block-kadence-infobox .kt-blocks-info-box-link-wrap{align-items:flex-start !important}
.im-spezial{margin-top:16px}
.im-spezial > .kt-inside-inner-col{display:flex;flex-wrap:wrap;align-items:center;gap:16px}

/* Preise: head anchor + button row */
#preise{scroll-margin-top:96px}
.im-preis-cta{margin-top:32px}
.im-preis-cta > .kt-inside-inner-col{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.im-preis-note a{color:#0B3B2E;font-weight:600;text-decoration:underline;text-underline-offset:2px}

/* Preise-Tabs (native) */
.im-preisgrid > .kt-inside-inner-col{display:grid;grid-template-columns:0.85fr 1.15fr;gap:16px;align-items:stretch}
.im-preiskarte{height:100%}
.im-preiskarte > .kt-inside-inner-col{height:100%;display:flex;flex-direction:column}
.im-preiskarte > .kt-inside-inner-col > :nth-child(4){margin-top:auto !important}
@media(max-width:768px){.im-preisgrid > .kt-inside-inner-col{grid-template-columns:1fr}}
.im-preistabelle{margin:0;background:#fff;border:1px solid rgba(16,32,27,0.1);border-radius:24px;padding:24px 28px}
.im-preistabelle table{display:block;width:100%;border:0;margin:0}
.im-preistabelle thead{display:block;border-bottom:0 !important}
.im-preistabelle thead tr{display:flex;justify-content:space-between;margin:0 0 8px}
.im-preistabelle thead th{border:0;padding:0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:rgba(16,32,27,0.4)}
.im-preistabelle tbody{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}
.im-preistabelle tbody tr{display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid rgba(16,32,27,0.08);padding:9px 0}
.im-preistabelle tbody td{border:0;padding:0;font-size:15px}
.im-preistabelle tbody td:first-child{color:rgba(16,32,27,0.7)}
.im-preistabelle tbody td:last-child{text-align:right;font-weight:600;color:#10201B}
@media(max-width:600px){.im-preistabelle tbody{grid-template-columns:1fr}}
.im-wn-tabs .kt-tabs-content-wrap{border:0 !important;background:transparent !important;padding:0 !important}
.im-wn-tabs .kt-tab-inner-content{padding:0 !important;border:0 !important;background:transparent !important;box-shadow:none !important}
.im-wn-tabs .kt-tabs-title-list{display:inline-flex !important;gap:4px;list-style:none;margin:0 0 24px !important;padding:4px !important;border:1px solid rgba(16,32,27,0.12);border-radius:999px;background:#fff}
.im-wn-tabs .kt-title-item{margin:0 !important;border:0 !important;background:transparent !important}
.im-wn-tabs .kt-tab-title{border:0 !important;border-radius:999px !important;padding:10px 26px !important;font-size:14px !important;font-weight:700 !important;color:rgba(16,32,27,0.6) !important;background:transparent !important;transition:background .15s,color .15s}
.im-wn-tabs .kt-tab-title-active > .kt-tab-title{background:#0B3B2E !important;color:#FAF8F5 !important}

/* im-deadline nowrap */
.im-deadline,[data-win-deadline]{white-space:nowrap}

/* Hero-Eyebrow hug + icon top */
.wp-block-kadence-advancedheading.im-wn-deadline{display:inline-block !important;max-width:100%;vertical-align:top}
.im-wn-deadline .kb-svg-icon-wrap{vertical-align:-2px}
.im-wn-deadline .im-deadline.im-deadline-ext,.im-wn-deadline [data-win-deadline].im-deadline-ext{margin-left:0 !important}
@media (min-width:768px) and (max-width:1142px){/* 2-zeilig (768-1142): eigene Zeile */.im-wn-deadline .im-deadline.im-deadline-ext,.im-wn-deadline [data-win-deadline].im-deadline-ext{display:block;width:-moz-fit-content;width:fit-content;margin:6px 0 0 21px !important}}@media (max-width:567px){/* 2-zeilig mobil: eigene Zeile */.im-wn-deadline .im-deadline.im-deadline-ext,.im-wn-deadline [data-win-deadline].im-deadline-ext{display:block;width:-moz-fit-content;width:fit-content;margin:6px 0 0 21px !important}}

/* Referenzen Hero Foto */
.im-ref-hero-photo{margin:0}
.im-ref-hero-photo img{border-radius:22px;box-shadow:0 30px 70px rgba(11,59,46,0.22);display:block;width:100%;height:auto}

/* Neugründer Welcome-Package Karten */
.im-wp-card{transition:transform .2s ease}
.im-wp-card > .kt-inside-inner-col{transition:box-shadow .2s ease,border-color .2s ease}
.im-wp-card:hover{transform:translateY(-2px)}
.im-wp-card .kt-blocks-info-box-title{font-size:18px !important;line-height:1.3 !important;color:#10201B !important}
.im-wp-card .kt-blocks-info-box-learnmore{display:inline-flex;align-items:center;gap:6px;transition:color .2s ease}
.im-wp-card .kt-blocks-info-box-learnmore::after{content:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2215%22%20height=%2215%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22%2310201B%22%20stroke-opacity=%220.6%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cline%20x1=%227%22%20y1=%2217%22%20x2=%2217%22%20y2=%227%22/%3E%3Cpolyline%20points=%227%207%2017%207%2017%2017%22/%3E%3C/svg%3E");display:inline-block;line-height:0}
.im-wp-card:hover .kt-blocks-info-box-learnmore::after{content:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2215%22%20height=%2215%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22%230B3B2E%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cline%20x1=%227%22%20y1=%2217%22%20x2=%2217%22%20y2=%227%22/%3E%3Cpolyline%20points=%227%207%2017%207%2017%2017%22/%3E%3C/svg%3E")}
.im-ngw-pa .kt-blocks-info-box-title{font-size:20px !important;color:#FAF8F5 !important}
.im-ngw-pb .kt-blocks-info-box-title{font-size:20px !important;color:#10201B !important}
.im-ngw-pb .kt-blocks-info-box-link-wrap{border:1px solid rgba(16,32,27,0.12)}

/* Videos: Ihr-Klienten-Video Leiste */
.im-vid-strip > .kt-inside-inner-col{flex-wrap:nowrap;align-items:center;gap:16px}
.im-vid-label{margin:0;color:rgba(16,32,27,0.45);white-space:nowrap}
.im-vid-strip .kt-svg-icon-list{display:flex !important;flex-wrap:nowrap !important;align-items:center;gap:10px !important;margin:0;padding:0;list-style:none;grid-template-columns:none !important}
.im-vid-strip .kt-svg-icon-list-item-wrap{display:inline-flex !important;align-items:center;gap:8px !important;flex:0 0 auto;width:auto;background:#EFECE5;border-radius:999px;padding:8px 16px !important;margin:0 !important;list-style:none;font-size:14px;font-weight:500;line-height:1;white-space:nowrap}
.im-vid-strip .kt-svg-icon-list-item-wrap::marker{content:""}
.im-vid-strip .kadence-dynamic-icon{flex:none}
.im-vid-strip .kt-svg-icon-list-single{width:15px !important;height:15px !important;flex:none;color:#0B3B2E;stroke:#0B3B2E}
.im-vid-strip .kt-svg-icon-list-text{color:rgba(16,32,27,0.82)}
@media (max-width:1024px){.im-vid-strip > .kt-inside-inner-col{flex-wrap:wrap}.im-vid-strip .kt-svg-icon-list{flex-wrap:wrap !important}}

/* Videos: Cross-Sell Karten */
.im-xs-card .kt-blocks-info-box-title{font-size:16px !important;font-weight:700 !important;color:#10201B !important;line-height:1.3}
.im-xs-foot{color:rgba(16,32,27,0.5)}

/* Zusatzangebot (nativ) */
.im-za-badge{display:inline-block;white-space:nowrap;align-self:flex-end}
.im-za-cardtop > .kt-row-column-wrap{align-items:center}
.im-za-tags > .kt-inside-inner-col{flex-direction:row !important;flex-wrap:wrap;align-items:flex-start}
.im-za-prow .wp-block-kadence-column:last-child .wp-block-kadence-advancedheading{white-space:nowrap}
.im-za-prow > .kt-row-column-wrap{grid-template-columns:1fr auto !important}
.im-za-tag{display:inline-block}
.im-za-sub{opacity:.6}
.im-za-foot{opacity:.55}
.im-za-desc{opacity:.72}

/* KlientenJournal Preise */
.im-kj-btnbottom{margin-top:auto !important;width:100%}
.im-kj-card > .kt-inside-inner-col{display:flex;flex-direction:column;height:100%}
.im-kj-btnbottom .kb-button{transition:transform .2s ease, filter .2s ease}
.im-kj-btnbottom .kb-button:hover{transform:translateY(-2px);filter:brightness(0.96)}

/* Grafikdesign Pakete */
.im-gd-flist .kt-svg-icon-list-single{width:24px;height:24px;border-radius:50%;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:none}

/* FAQ Kategorien */
.im-faq-cat > .kt-row-column-wrap{grid-template-columns:auto 1fr !important;align-items:center}
.im-faq-cat .kb-svg-icon-wrap{border-radius:12px !important}

/* ===== Was ist neu: Zusatzoptionen unter den Preis-Reitern ===== */
/* Zwei gleichwertige Karten (Individualisierung / Video). Bewusst NICHT .im-preisgrid,
   das ist 0.85fr/1.15fr fuer Karte+Tabelle innerhalb der Reiter. */
.im-zusatzgrid > .kt-inside-inner-col{ display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:stretch; margin-top:24px }
@media(max-width:767px){ .im-zusatzgrid > .kt-inside-inner-col{ grid-template-columns:1fr } }
