/* ==========================================================================
   2026 redesign — shared styles (header, navigation, search, footer).
   Loaded on every page.

   Everything is scoped under `.ui26` so the legacy Bootstrap 3 /
   2022 styles on inner pages are not affected, and class names that
   collide with Bootstrap (.container, .btn, .nav-item, .main-nav) are
   prefixed with `ui-`.
   ========================================================================== */

:root {
  /* Brand colors */
  --ui-red: #E30613;
  --ui-red-dark: #B8040F;
  --ui-near-black: #1C1D21;
  --ui-ink: #25272E;
  --ui-body-text: #4F5461;
  --ui-body-text-strong: #3A3E49;
  --ui-muted: #63687A;
  --ui-slate: #474C5C;
  --ui-bg-light: #F5F6F7;
  --ui-bg-lighter: #F2F3F4;
  --ui-border: #E1E4E9;
  --ui-border-strong: #C9CDD5;
  --ui-border-card: #E3E5E9;
  --ui-border-input: #D4D8DF;
  --ui-divider: #EBEDF0;
  --ui-divider-light: #EEF0F2;
  --ui-white: #fff;
  --ui-quote-mark: #F3C4C8;
  --ui-pink-hover: #FF8A93;

  /* Type (Inter is self-hosted via css/2022/inter.css) */
  --ui-font: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;

  /* Layout */
  --ui-container-max: 1300px;
  --ui-container-pad: 20px;
  --ui-header-height: 82px;

  /* Motion */
  --ui-ease: cubic-bezier(.22,.7,.24,1);
}

html { overflow-x: hidden; }

/* ---------------------------- scoped reset ---------------------------- */
/* Neutralises the global element rules of the legacy stylesheets
   (e.g. `h1 {color:#f70303 !important}`, `p {text-align:justify}`,
   `img {height:auto !important}`, Roboto on strong/headings). */
.ui26,
.ui26 *,
.ui26 *::before,
.ui26 *::after { box-sizing: border-box; }

.ui26 {
  font-family: var(--ui-font);
  color: var(--ui-near-black);
  -webkit-font-smoothing: antialiased;
  line-height: normal;
}

.ui26 h1, .ui26 h2, .ui26 h3, .ui26 h4, .ui26 h5,
.ui26 p, .ui26 figure, .ui26 figcaption {
  margin: 0;
  width: auto;
  font-family: var(--ui-font);
  text-transform: none;
}

.ui26 h2, .ui26 h3, .ui26 h4, .ui26 h5 { color: inherit; }
/* legacy: `h1 { color: #f70303 !important }` */
.ui26 h1 { color: inherit !important; }

.ui26 p {
  text-align: inherit;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.ui26 strong, .ui26 b { font-family: inherit; }

.ui26 img { max-width: 100%; }

.ui26 a { color: var(--ui-red); text-decoration: none; }
.ui26 a:hover, .ui26 a:focus { color: var(--ui-red-dark); text-decoration: none; }

.ui26 button, .ui26 select, .ui26 input { font-family: inherit; }
.ui26 button { cursor: pointer; }

.ui26 ul { list-style: none; margin: 0; padding: 0; }
.ui26 li { margin: 0; }

.ui26 svg { display: block; }

/* ------------------------------ utilities ------------------------------ */
.ui26 .ui-container {
  max-width: var(--ui-container-max);
  margin: 0 auto;
  padding: 0 var(--ui-container-pad);
}

.ui26 .ui-visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.ui26 .ui-eyebrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  /* A touch deeper than --ui-red: 5.0:1 on the light grey heroes (#F2F3F4),
     where #E30613 is 4.4:1. */
  color: #D10511;
}
/* On dark backgrounds (YouTube block): lighter red, 5.1:1 on #1C1D21. */
.ui26 .youtube-section .ui-eyebrow { color: #FF4A3D; }

/* -------------------------------- header -------------------------------- */
/* Fixed on every page. On the homepage it is transparent over the hero
   until the page scrolls (.is-stuck); inner pages use the solid variant
   plus a spacer so content starts below it. */
.ui26.site-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  background: transparent;
  border-bottom: 1px solid transparent;
  transition: background .28s ease, border-color .28s ease, box-shadow .28s ease;
}

.ui26.site-header.is-stuck,
.ui26.site-header.site-header--solid {
  background: var(--ui-bg-light);
  border-bottom-color: var(--ui-border);
}

.ui26.site-header.is-stuck {
  box-shadow: 0 1px 0 rgba(28,29,33,0.04), 0 8px 24px rgba(28,29,33,0.06);
}

.site-header-spacer { height: var(--ui-header-height); }

.ui26 .site-header__bar {
  /* Content (logo … search) spans the full 1300px, edge to edge with the
     page content; the padding only applies on narrower windows. */
  max-width: calc(var(--ui-container-max) + 2 * var(--ui-container-pad));
  margin: 0 auto;
  position: relative;
  padding: 0 var(--ui-container-pad);
  height: var(--ui-header-height);
  display: flex;
  align-items: center;
  gap: 20px;
}

.ui26 .site-header__logo {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}
.ui26 .site-header__logo img {
  height: 28px !important;
  width: auto;
  display: block;
}

/* ------------------------------ main nav -------------------------------- */
.ui26 .ui-nav {
  display: flex;
  gap: 36px;
  flex: 1 1 auto;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  flex-wrap: nowrap;
}

@media (max-width: 1023px) {
  .ui26 .ui-nav,
  .ui26 .site-header__actions--desktop { display: none !important; }
}
@media (min-width: 1024px) {
  .ui26 .site-header__actions--mobile { display: none !important; }
}

.ui26 .ui-nav-item {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}

.ui26 .ui-nav-item__link {
  display: flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
  color: var(--ui-near-black);
  font-size: 16.5px;
  font-weight: 400;
}
.ui26 .ui-nav-item__link:hover,
.ui26 .ui-nav-item.is-active > .ui-nav-item__link { color: var(--ui-red); }
.ui26 .ui-nav-item__link svg { flex: 0 0 auto; }

/* ------------------------------ mega menu -------------------------------- */
.ui26 .mega-menu {
  position: absolute;
  top: 100%;
  left: -16px;
  /* As wide as the longest link (one line each), within 272–360px; longer
     titles wrap. */
  width: max-content;
  min-width: 272px;
  max-width: 360px;
  background: var(--ui-white);
  border: 1px solid var(--ui-border);
  border-radius: 3px;
  box-shadow: 0 20px 48px rgba(28,29,33,0.16);
  padding: 10px;
  z-index: 90;
  display: none;
  opacity: 0;
  transform: translateY(-6px);
}

.ui26 .mega-menu--right { left: auto; right: 0; min-width: 220px; }

.ui26 .mega-menu.is-open {
  display: block;
  opacity: 1;
  transform: none;
  transition: opacity .18s ease, transform .18s ease;
}

.ui26 .mega-menu__link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border-radius: 2px;
  font-size: 14.5px;
  font-weight: 400;
  color: var(--ui-near-black);
}
.ui26 .mega-menu__link:hover,
.ui26 .mega-menu__link.is-active {
  background: var(--ui-bg-light);
  color: var(--ui-red);
}

/* ---------------------------- header actions ------------------------------ */
.ui26 .site-header__actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex: 0 0 auto;
}

.ui26 .site-header__actions--mobile {
  margin-left: auto;
  gap: 6px;
}

.ui26 .header-account {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}

.ui26 .header-btn {
  display: flex;
  align-items: center;
  gap: 7px;
  height: 40px;
  padding: 0 14px;
  white-space: nowrap;
  border: 1px solid var(--ui-border-strong);
  border-radius: 3px;
  color: var(--ui-near-black);
  font-size: 14.5px;
  font-weight: 600;
  background: var(--ui-white);
}
.ui26 .header-btn:hover { border-color: var(--ui-red); color: var(--ui-red); }

.ui26 .header-btn--primary {
  border: none;
  color: var(--ui-white);
  background: var(--ui-red);
}
.ui26 .header-btn--primary:hover { background: var(--ui-red-dark); color: var(--ui-white); }

.ui26 .icon-btn {
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  padding: 0;
  border-radius: 3px;
}
.ui26 .icon-btn:hover { background: var(--ui-bg-light); }

/* ----------------------------- search overlay ------------------------------ */
.ui26 .search-overlay {
  display: none;
  position: absolute;
  /* Starts right after the logo (≈218px wide), ends at the 1300px edge. */
  left: calc(var(--ui-container-pad) + 236px);
  right: var(--ui-container-pad);
  top: 50%;
  transform: translateY(-50%);
  height: 54px;
  background: var(--ui-white);
  z-index: 95;
  align-items: center;
  gap: 14px;
  padding-left: 18px;
  border: 1px solid var(--ui-border-strong);
  border-radius: 3px;
}

.ui26 .search-overlay.is-open { display: flex; }

@media (max-width: 1023px) {
  .ui26 .search-overlay { left: 60px; }
}
@media (max-width: 479px) {
  .ui26 .search-overlay { left: 12px; right: 12px; gap: 8px; padding-left: 12px; }
  .ui26 .search-overlay__submit { padding: 0 14px; }
}

.ui26 .search-overlay__form {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 14px;
}

.ui26 .search-overlay__icon { flex: 0 0 auto; }

.ui26 .search-overlay__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  border: none;
  outline: none;
  background: transparent;
  box-shadow: none;
  padding: 0;
  margin: 0;
  font-size: 16px;
  color: var(--ui-near-black);
}

.ui26 .search-overlay__submit {
  flex: 0 0 auto;
  height: 40px;
  padding: 0 22px;
  background: var(--ui-red);
  border: none;
  border-radius: 3px;
  color: var(--ui-white);
  font-size: 14.5px;
  font-weight: 700;
}
.ui26 .search-overlay__submit:hover { background: var(--ui-red-dark); }

.ui26 .search-overlay__close {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  margin-right: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: 3px;
}
.ui26 .search-overlay__close:hover { background: var(--ui-bg-light); }

/* ------------------------------ mobile menu ------------------------------- */
.ui26 .mobile-menu {
  display: none;
  background: var(--ui-white);
  border-top: 1px solid var(--ui-border);
  box-shadow: 0 20px 40px rgba(28,29,33,0.12);
  max-height: calc(100vh - var(--ui-header-height));
  overflow-y: auto;
}
.ui26 .mobile-menu.is-open { display: block; }

.ui26 .mobile-menu__nav {
  display: flex;
  flex-direction: column;
  padding: 8px 20px 20px;
}

.ui26 .mobile-menu__link,
.ui26 .mobile-menu__group > summary {
  display: block;
  padding: 15px 4px;
  border-bottom: 1px solid var(--ui-divider-light);
  font-size: 16px;
  font-weight: 400;
  color: var(--ui-near-black);
}

.ui26 .mobile-menu__group > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ui26 .mobile-menu__group > summary::-webkit-details-marker { display: none; }
.ui26 .mobile-menu__group > summary svg { transition: transform .2s ease; }
.ui26 .mobile-menu__group[open] > summary svg { transform: rotate(180deg); }
.ui26 .mobile-menu__group[open] > summary { color: var(--ui-red); }

.ui26 .mobile-menu__sub {
  padding: 6px 0 10px 14px;
  border-bottom: 1px solid var(--ui-divider-light);
}

.ui26 .mobile-menu__sublink {
  display: block;
  padding: 9px 4px;
  font-size: 15px;
  color: var(--ui-body-text-strong);
}

.ui26 .mobile-menu__link--cta {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  height: 46px;
  border-radius: 3px;
  color: var(--ui-white);
  font-size: 15px;
  font-weight: 700;
  background: var(--ui-red);
  border-bottom: none;
}
.ui26 .mobile-menu__link--cta:hover { color: var(--ui-white); background: var(--ui-red-dark); }

/* -------------------------------- footer --------------------------------- */
.ui26.site-footer {
  background: var(--ui-near-black);
  border-top: 3px solid var(--ui-red);
  padding: 64px 0 0;
  clear: both;
}

.ui26 .site-footer__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px,1fr));
  gap: 36px;
}

.ui26 .site-footer__logo { height: 26px !important; width: auto; display: block; }

.ui26 .site-footer__tagline {
  margin: 18px 0 0;
  font-size: 13.5px;
  line-height: 1.65;
  color: rgba(255,255,255,0.55);
}

.ui26 .site-footer__badge {
  width: 96px;
  height: 96px !important;
  margin-top: 24px;
  display: block;
}

.ui26 .site-footer__heading {
  margin: 0 0 16px;
  min-height: 38px;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ui-white) !important;
}

.ui26 .site-footer__link {
  display: block;
  padding: 6px 0;
  font-size: 14px;
  color: rgba(255,255,255,0.84);
}
.ui26 .site-footer__link:hover { color: var(--ui-white); }

.ui26 .site-footer__bottom {
  margin-top: 52px;
  padding: 22px 0;
  border-top: 1px solid rgba(255,255,255,0.12);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.ui26 .site-footer__copy {
  font-size: 13px;
  color: rgba(255,255,255,0.62);
}

.ui26 .site-footer__cookie {
  font-size: 13px;
  color: rgba(255,255,255,0.6);
}
.ui26 .site-footer__cookie:hover { color: var(--ui-white); }

/* ------------------------------ page hero -------------------------------- */
/* Inner pages rendered by the legacy branch of index-main.php (articles,
   EasyBlog, jManager lists, ...): page title in the style of the 2026
   heroes, breadcrumbs in a bar below it. Replaces the grey banner image
   (.banner-new). */
.ui26.page-hero {
  clear: both;
  width: 100%;
  background: var(--ui-bg-lighter);
  padding: 54px var(--ui-container-pad) 46px;
}
.ui26 .page-hero__inner {
  max-width: var(--ui-container-max);
  margin: 0 auto;
  text-align: center;
}
/* Legacy: .menu-title { font-size: 36px !important; color: #4d4d4d !important } */
.ui26 .page-hero__title.menu-title {
  margin: 0;
  width: auto;
  font-family: var(--ui-font);
  font-size: clamp(28px, 4vw, 42px) !important;
  line-height: 1.16;
  font-weight: 400;
  letter-spacing: -0.02em;
  color: var(--ui-ink) !important;
  text-transform: none;
}

.ui26 .page-hero__lead {
  max-width: var(--ui-container-max);
  margin: 12px auto 0;
  font-size: 17px;
  line-height: 1.6;
  letter-spacing: normal;
  text-align: center !important;
  color: var(--ui-body-text);
}

/* Package badge (Entry / Standard / Premium): the medallion of the Leistungspakete cards
   (css/2026/packages.css, .pricing-card__badge) in a reusable size. Used in the package panel
   of the Kontoübersicht and on the registration form. */
.ui26 .pkg-badge {
  --pkg-size: 52px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--pkg-size);
  height: var(--pkg-size);
  border-radius: 50%;
  border: 4px solid var(--ui-white);
  box-shadow: 0 6px 16px rgba(28, 29, 33, 0.08);
  background: #E4E6EA;
}
.ui26 .pkg-badge--entry { background: #EFE3D0; }
.ui26 .pkg-badge--standard { background: #E4E6EA; }
.ui26 .pkg-badge--premium { border-color: #2A2D35; background: #1C1D21; box-shadow: inset 0 0 0 2px #C6A15B, 0 6px 18px rgba(0, 0, 0, 0.35); }
.ui26 .pkg-badge__icon {
  display: grid;
  grid-template-columns: repeat(2, calc(var(--pkg-size) * 0.15));
  grid-template-rows: repeat(2, calc(var(--pkg-size) * 0.15));
  gap: 1px;
}
.ui26 .pkg-badge__icon span { background: var(--ui-white); border: 1px solid #C9CDD5; }
.ui26 .pkg-badge__icon span:nth-child(2) { background: var(--ui-red); border: none; }
.ui26 .pkg-badge--premium .pkg-badge__icon span { border: none; }

/* Kontoübersicht (managers): package panel on the right of the profile card, a small version of
   the price list column headers (pricelist.css, .pl-head): tinted per package, medallion on top,
   label, name in spaced capitals, short text. Markup: html/com_users/profile/default_logout_man.php. */
.ui26 .pkg-card,
.profile-main .pkg-card {
  flex: 0 0 210px;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-left: auto;
  padding: 24px 18px 22px;
  border-radius: 12px;
  background: #F6EEE1;
  text-align: center;
}
.profile-main .pkg-card--standard { background: #ECEFF4; }
.profile-main .pkg-card--premium { background: #16181D; }
.profile-main .pkg-card .pkg-badge { --pkg-size: 72px; }
.profile-main .pkg-card__text { display: flex; flex-direction: column; align-items: center; }
.profile-main .pkg-card__label { font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ui-muted); }
.profile-main .pkg-card__name { margin-top: 4px; font-size: 18px; font-weight: 800; line-height: 1.2; letter-spacing: 0.06em; text-transform: uppercase; color: var(--ui-near-black); }
.profile-main .pkg-card__sub { margin-top: 6px; font-size: 12.5px; line-height: 1.45; color: var(--ui-muted); }
.profile-main .pkg-card--premium .pkg-card__label,
.profile-main .pkg-card--premium .pkg-card__sub { color: rgba(255, 255, 255, 0.72); }
.profile-main .pkg-card--premium .pkg-card__name { color: #FF4A3D; }
@media (max-width: 767px) {
  .profile-main .pkg-card { flex-basis: auto; align-self: stretch; margin-left: 0; }
}

/* Registration form: "Sie sind dabei, sich für das „Standard“-Dienstleistungspaket zu registrieren." */
.ui26 .mr-package-note {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0 0 28px;
  padding: 18px 22px;
  border: 1px solid var(--ui-border-card);
  border-left: 4px solid var(--ui-red);
  border-radius: 10px;
  background: var(--ui-white);
}
.ui26 .mr-form > .mr-package-note { margin: 0; } /* the form's own gap spaces it */
.ui26 .mr-package-note .pkg-badge { --pkg-size: 60px; }
.ui26 .mr-package-note__text { flex: 1 1 auto; min-width: 0; }
.ui26 .mr-package-note__title { margin: 0; font-size: 17px; font-weight: 600; line-height: 1.4; color: var(--ui-ink); text-align: left; }
.ui26 .mr-package-note__title strong { color: #D10511; }
.ui26 .mr-package-note__desc { margin: 4px 0 0; font-size: 14.5px; line-height: 1.5; color: var(--ui-body-text); text-align: left; }
.ui26 .mr-package-note__change {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14.5px;
  font-weight: 600;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  white-space: nowrap;
}
.ui26 .mr-package-note__change:hover { color: var(--ui-red-dark) !important; }
@media (max-width: 640px) {
  .ui26 .mr-package-note { flex-wrap: wrap; gap: 14px; padding: 16px 18px; }
  .ui26 .mr-package-note .pkg-badge { --pkg-size: 48px; }
  .ui26 .mr-package-note__text { flex-basis: calc(100% - 64px); }
  .ui26 .mr-package-note__change { margin-left: 62px; }
}

/* "Systemmeldung" dialog (server messages, html/message.php): the close button in the style of the
   other red buttons. Legacy styles gave it grey text on the old red (#f70303), white only on hover. */
#system-message-container .modal-footer .btn.close-btn {
  padding: 10px 22px !important;
  border: 1px solid var(--ui-red) !important;
  border-radius: 3px;
  background: var(--ui-red) !important;
  font-family: var(--ui-font);
  font-size: 15px;
  font-weight: 700;
  color: var(--ui-white) !important;
}
#system-message-container .modal-footer .btn.close-btn:hover,
#system-message-container .modal-footer .btn.close-btn:focus-visible {
  border-color: var(--ui-red-dark) !important;
  background: var(--ui-red-dark) !important;
  color: var(--ui-white) !important;
}

/* ------------------------ Playbook / Support panels ------------------------ */
/* popups/playbook.php and support.php: a tab on the right window edge opens a
   slide-out panel (desktop: from the right; phones: bottom sheet). Plain
   panels, no modal: the page stays scrollable. Behaviour: site.js
   (initSidePanels). */
.ui26.side-tab {
  position: fixed;
  right: 0;
  z-index: 1040;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 11px;
  border: 0;
  border-radius: 8px 0 0 8px;
  background: var(--ui-red);
  box-shadow: -4px 4px 16px rgba(20, 24, 35, 0.16);
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-family: var(--ui-font);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ui-white);
  cursor: pointer;
  transition: background-color .2s ease, padding .2s ease;
}
.ui26.side-tab svg { transform: rotate(90deg); flex: 0 0 auto; }
.ui26.side-tab--playbook { top: calc(50% - 150px); }
.ui26.side-tab--support { top: calc(50% + 12px); }
.ui26.side-tab:hover { padding-left: 15px; background: var(--ui-red-dark); }
.ui26.side-tab:focus-visible { outline: 3px solid rgba(227, 6, 19, 0.35); outline-offset: 2px; }
.ui26.side-tab.is-active { background: var(--ui-ink); }

.ui26.side-panel {
  position: fixed;
  top: 50%;
  right: 52px; /* next to the tabs, so both tabs stay clickable */
  z-index: 1045;
  width: min(540px, calc(100vw - 92px));
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  overscroll-behavior: contain;
  border-top: 4px solid var(--ui-red);
  border-radius: 10px;
  background: var(--ui-white);
  box-shadow: 0 24px 64px rgba(20, 24, 35, 0.24), 0 2px 8px rgba(20, 24, 35, 0.08);
  font-family: var(--ui-font);
  opacity: 0;
  transform: translate(calc(100% + 92px), -50%);
  transition: transform .38s cubic-bezier(.22, 1, .36, 1), opacity .25s ease;
}
.ui26.side-panel.is-open { opacity: 1; transform: translate(0, -50%); }
.ui26.side-panel[hidden] { display: none; }
.ui26 .side-panel__head {
  position: sticky;
  top: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 18px 12px 26px;
  background: var(--ui-white);
}
.ui26 .side-panel__label {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #D10511;
}
/* Auto-open on the homepage: countdown line under the title until the panel closes by itself
   (stops when the visitor hovers, clicks or tabs into the panel). Set up in site.js. */
.ui26 .side-panel__timer {
  position: absolute;
  left: 26px;
  right: 18px;
  bottom: 0;
  height: 3px;
  border-radius: 2px;
  background: var(--ui-red);
  opacity: 0.35;
  transform-origin: left center;
  transform: scaleX(0);
  pointer-events: none;
}
.ui26.side-panel.is-auto-closing .side-panel__timer { animation: ui26-panel-timer var(--ui-panel-auto-close, 10s) linear forwards; }
@keyframes ui26-panel-timer { from { transform: scaleX(1); } to { transform: scaleX(0); } }
.ui26 .side-panel__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--ui-ink);
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}
.ui26 .side-panel__close:hover { background: var(--ui-bg-light); color: #D10511; }
.ui26 .side-panel__close:focus-visible { outline: 2px solid var(--ui-red); outline-offset: 2px; }
.ui26 .side-panel__body { padding: 0 26px 24px; }
.ui26 .side-panel__item {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 18px 0;
}
.ui26 .side-panel__item + .side-panel__item { border-top: 1px solid var(--ui-divider); }
.ui26 .side-panel__signet { width: 88px; height: auto; }
.ui26.side-panel p { margin: 0 0 6px; text-align: left; }
.ui26.side-panel p.popup-title {
  margin-bottom: 8px;
  font-size: 16.5px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.005em;
  color: var(--ui-ink);
}
.ui26.side-panel p.popup-description { font-size: 14.5px; line-height: 1.55; color: var(--ui-body-text-strong); }
.ui26 .side-panel__link { font-weight: 700; color: #D10511 !important; text-decoration: underline; text-underline-offset: 3px; }
.ui26 .side-panel__link:hover { color: var(--ui-red-dark) !important; }
.ui26 .side-panel__support { display: grid; gap: 18px; padding-top: 10px; }
.ui26 .side-panel__photo { display: block; width: 100%; max-height: 220px; object-fit: cover; object-position: center 20%; border-radius: 8px; background: #1C1D21; }
.ui26 .side-panel__btn {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: 8px;
  padding: 0 22px;
  border-radius: 3px;
  background: var(--ui-red);
  font-size: 15px;
  font-weight: 700;
  color: var(--ui-white) !important;
  text-decoration: none !important;
  transition: background-color .15s ease;
}
.ui26 .side-panel__btn:hover { background: var(--ui-red-dark); }
@media (max-width: 640px) {
  .ui26.side-tab { padding: 12px 8px; font-size: 13px; }
  .ui26.side-tab svg { display: none; }
  .ui26.side-tab--playbook { top: calc(50% - 120px); }
  .ui26.side-panel {
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-height: 85vh;
    border-radius: 14px 14px 0 0;
    transform: translateY(100%);
  }
  .ui26.side-panel.is-open { transform: translateY(0); }
  .ui26 .side-panel__body { padding: 0 18px 22px; }
  .ui26 .side-panel__head { padding-left: 18px; }
  .ui26 .side-panel__label { font-size: 18px; }
  .ui26 .side-panel__timer { left: 18px; }
  .ui26 .side-panel__item { grid-template-columns: 64px minmax(0, 1fr); gap: 14px; }
  .ui26 .side-panel__signet { width: 64px; }
  .ui26.side-panel p.popup-title { font-size: 15.5px; }
  /* while the sheet is open: no tab or cookie badge on top of / peeking out of it */
  body.side-panel-open .ui26.side-tab,
  body.side-panel-open .cc-trigger { opacity: 0; visibility: hidden; pointer-events: none; }
}
@media (prefers-reduced-motion: reduce) {
  .ui26.side-panel, .ui26.side-tab { transition: none; }
  .ui26 .side-panel__timer { display: none; }
}

/* ---------------------------- account forms ----------------------------- */
/* Login (html/com_users/login/default_login.php), password reset
   (html/com_users/reset/*.php) and "Passwort ändern"
   (html/com_users/profile/edit.php): Joomla form fields
   (.control-group > .control-label + .controls) in 2026 cards, 1300px. */
.ui26.acc-2026 {
  max-width: var(--ui-container-max);
  margin: 0 auto;
  padding: 44px 0 90px;
  font-family: var(--ui-font);
}
.ui26 .acc-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}
.ui26 .acc-card {
  padding: 34px 36px;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  background: var(--ui-white);
}
.ui26 .acc-card--side { background: var(--ui-bg-light); border-color: var(--ui-divider); }
.ui26 .acc-card__title {
  margin: 0 0 18px;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--ui-ink) !important;
}
.ui26 .acc-card p {
  margin: 0 0 18px;
  font-size: 15px;
  line-height: 1.6;
  text-align: left;
  letter-spacing: normal;
  color: var(--ui-body-text-strong);
}
.ui26 .acc-note { margin: 18px 0 0 !important; font-size: 13.5px !important; color: var(--ui-muted) !important; }

/* Form: legacy .well / .form-horizontal (Bootstrap 3) reset. */
.ui26 .acc-form.well,
.ui26 .acc-form {
  margin: 0;
  padding: 0 !important;
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.ui26 .acc-form fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.ui26 .acc-form legend {
  width: auto;
  margin: 0 0 22px;
  padding: 0;
  border: 0;
  font-family: var(--ui-font);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--ui-body-text-strong);
}
.ui26 .acc-form .control-group { float: none !important; width: auto !important; margin: 0 0 18px !important; padding: 0 !important; }
/* Invisible reCAPTCHA v3 field (only hidden inputs): no empty row. */
.ui26 .acc-form .control-group:not(:has(input:not([type="hidden"]), select, textarea, button)) { margin: 0 !important; }
/* Legacy: form.well#member-profile { padding-bottom: 45px }. */
.ui26 form.well#member-profile.acc-form { padding: 0; }
.ui26 .acc-form .control-label {
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 0 8px;
  text-align: left !important;
}
.ui26 .acc-form .control-label label,
.ui26 .acc-form .acc-check label {
  margin: 0;
  font-family: var(--ui-font);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: var(--ui-muted);
}
.ui26 .acc-form .control-label .star { color: var(--ui-red); }
.ui26 .acc-form .controls { margin: 0 !important; padding: 0 !important; }
/* Legacy mobile rules float .controls and the password input left; the submit
   row then collapses next to them and the button overflows the screen. */
.ui26 .acc-form .controls,
.ui26 .acc-form .input-group .form-control { float: none !important; }
.ui26 .acc-form .controls { width: 100% !important; }
.ui26 .acc-form .form-control,
.ui26 .acc-form input[type="text"],
.ui26 .acc-form input[type="email"],
.ui26 .acc-form input[type="password"] {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid var(--ui-border-input) !important;
  border-radius: 4px !important;
  background: var(--ui-white);
  box-shadow: none;
  font-family: var(--ui-font) !important;
  font-size: 15px;
  letter-spacing: normal !important;
  color: var(--ui-near-black) !important;
}
.ui26 .acc-form .form-control[readonly] { background: var(--ui-bg-light); color: var(--ui-muted) !important; }
.ui26 .acc-form .form-control:focus { outline: none; border-color: var(--ui-red) !important; box-shadow: 0 0 0 3px rgba(227,6,19,0.12); }
.ui26 .acc-form .form-control.invalid { border-color: #B30808 !important; }
.ui26 .acc-form label.invalid { color: #B30808; }

/* Password: input + show/hide button as one field; strength meter below. */
.ui26 .acc-form .input-group { display: flex; width: 100%; }
.ui26 .acc-form .input-group .form-control { flex: 1 1 auto; border-radius: 4px 0 0 4px !important; }
.ui26 .acc-form .input-group .input-password-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 46px;
  min-width: 46px !important;
  max-width: 46px;
  height: 44px;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--ui-border-input) !important;
  border-left: 0 !important;
  border-radius: 0 4px 4px 0 !important;
  background: var(--ui-bg-light) !important;
  color: var(--ui-muted) !important;
}
.ui26 .acc-form .input-password-toggle:hover { color: var(--ui-red) !important; }
/* Password strength meter: slim bar, colour by strength. */
.ui26 .acc-form meter {
  display: block;
  width: 100%;
  height: 6px;
  margin-top: 8px;
  border: 0;
  border-radius: 3px;
  background: var(--ui-divider);
  -webkit-appearance: none;
  appearance: none;
}
.ui26 .acc-form meter::-webkit-meter-bar { height: 6px; border: 0; border-radius: 3px; background: var(--ui-divider); }
.ui26 .acc-form meter::-webkit-meter-optimum-value { border-radius: 3px; background: #1E9C68; }
.ui26 .acc-form meter::-webkit-meter-suboptimum-value { border-radius: 3px; background: #D99A00; }
.ui26 .acc-form meter::-webkit-meter-even-less-good-value { border-radius: 3px; background: #D0584D; }
.ui26 .acc-form meter:-moz-meter-optimum::-moz-meter-bar { background: #1E9C68; }
.ui26 .acc-form meter:-moz-meter-sub-optimum::-moz-meter-bar { background: #D99A00; }
.ui26 .acc-form meter:-moz-meter-sub-sub-optimum::-moz-meter-bar { background: #D0584D; }
.ui26 .acc-form .small.text-muted,
.ui26 .acc-form .form-text { display: block; margin: 0 0 8px; font-size: 12.5px; color: var(--ui-muted); }
/* Password rules ("Minimum Requirements") below the field instead of above,
   so "Passwort" and "Passwort bestätigen" line up side by side. */
.ui26 .acc-form .controls { display: flex; flex-direction: column; }
.ui26 .acc-form .controls > .small.text-muted { order: 2; margin: 8px 0 0; }
.ui26 .acc-form .controls > .password-group { order: 1; }
.ui26 .acc-form .password-group [aria-live] { margin-top: 6px; font-size: 13px; text-align: left !important; color: var(--ui-muted); }
.ui26 .acc-form .password-group [aria-live]:empty { display: none; }
.ui26 .acc-form .controls .form-text { margin: 8px 0 0; }

/* Remember me */
.ui26 .acc-form .acc-check { display: flex !important; align-items: center; gap: 10px; }
.ui26 .acc-form .acc-check input { width: 17px; height: 17px; margin: 0; }
.ui26 .acc-form .acc-check label { font-size: 14px; font-weight: 400; letter-spacing: normal; color: var(--ui-body-text-strong); }

/* Buttons */
.ui26 .acc-submit { display: flex; flex-wrap: wrap; gap: 12px; margin: 26px 0 0 !important; }
/* Legacy: .com-users-profile__edit-submit .btn.btn-danger { margin: 20px 0 0 20px; padding: 10px !important }. */
.ui26 .acc-submit .acc-btn.btn { padding: 0 28px !important; margin: 0 !important; }
.ui26 .acc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 28px !important;
  border: 1px solid var(--ui-red) !important;
  border-radius: 3px !important;
  background: var(--ui-red) !important;
  font-family: var(--ui-font);
  font-size: 15px !important;
  font-weight: 700;
  letter-spacing: normal;
  text-decoration: none !important;
  color: var(--ui-white) !important;
  width: auto !important;
  margin: 0 !important;
  cursor: pointer;
}
.ui26 .acc-btn:hover { background: var(--ui-red-dark) !important; border-color: var(--ui-red-dark) !important; }
.ui26 .acc-btn--outline {
  background: var(--ui-white) !important;
  border-color: var(--ui-border-strong) !important;
  color: var(--ui-near-black) !important;
}
.ui26 .acc-btn--outline:hover { background: var(--ui-white) !important; border-color: var(--ui-red) !important; color: var(--ui-red) !important; }

/* Reset: steps */
.ui26 .acc-steps { margin: 0 0 22px; padding: 0; list-style: none; counter-reset: none; }
.ui26 .acc-steps li {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 10px 0;
  border-bottom: 1px solid var(--ui-divider);
  background: none;
  font-size: 15px;
  color: var(--ui-muted);
}
.ui26 .acc-steps li:last-child { border-bottom: 0; }
.ui26 .acc-steps__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid var(--ui-border-strong);
  background: var(--ui-white);
  font-size: 13px;
  font-weight: 700;
}
.ui26 .acc-steps li.is-current { font-weight: 600; color: var(--ui-near-black); }
.ui26 .acc-steps li.is-current .acc-steps__num { background: var(--ui-red); border-color: var(--ui-red); color: var(--ui-white); }
.ui26 .acc-steps li.is-done .acc-steps__num { background: #E4F4EC; border-color: #E4F4EC; color: #137A4F; }
.ui26 .acc-link { font-size: 14px; font-weight: 600; color: #D10511 !important; text-decoration: none; }
.ui26 .acc-link:hover { text-decoration: underline; }

/* "Passwort ändern": fields on a two-column grid. */
.ui26 .acc-form--grid fieldset { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; align-items: start; }
.ui26 .acc-form--grid fieldset > legend { grid-column: 1 / -1; float: none; font-size: 22px; font-weight: 600; letter-spacing: -0.01em; color: var(--ui-ink); }
.ui26 .acc-form--grid fieldset > p { grid-column: 1 / -1; }

@media (max-width: 1340px) {
  .ui26.acc-2026 { padding-left: var(--ui-container-pad); padding-right: var(--ui-container-pad); }
}
@media (max-width: 900px) {
  .ui26 .acc-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .ui26.acc-2026 { padding-top: 28px; padding-bottom: 60px; }
  .ui26 .acc-card { padding: 24px 18px; }
  .ui26 .acc-form--grid fieldset { grid-template-columns: 1fr; }
  .ui26 .acc-btn { width: 100% !important; }
  /* Legacy: #user-registration button.btn.btn-primary.validate { width: auto !important } (reset / remind forms). */
  .ui26 #user-registration button.btn.btn-primary.acc-btn { width: 100% !important; }
}

/* --------------------------- company profile ---------------------------- */
/* Account overview, companies and managers
   (html/com_users/profile/default_logout_co.php / _man.php, class
   .profile-2026; manager-only parts below, class .profile-man). Same layout as before; cards, type, buttons and inputs
   in the 2026 style. Legacy rules: bootstrap/css/style.css "user account pages". */
.profile-main.profile-2026 { margin-top: 40px !important; margin-bottom: 70px !important; font-family: var(--ui-font); }

/* Cards */
.profile-main.profile-2026 .profile-main-left > div {
  padding: 28px 30px;
  margin-bottom: 18px;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(28, 29, 33, 0.04);
}
.profile-main.profile-2026 h2,
.profile-main.profile-2026 h3 {
  font-family: var(--ui-font);
  font-weight: 600;
  letter-spacing: -0.01em;
  color: var(--ui-ink);
}
.profile-main.profile-2026 h2 { font-size: 24px; line-height: 1.25; margin-bottom: 6px; }
.profile-main.profile-2026 h3 { font-size: 20px; line-height: 1.3; margin-bottom: 8px; }
/* Legacy #999 text (2.8:1) -> body text colour. */
.profile-main.profile-2026 p {
  font-family: var(--ui-font);
  font-size: 15px;
  line-height: 1.6;
  letter-spacing: normal;
  text-align: left;
  color: var(--ui-body-text-strong);
}
.profile-main.profile-2026 .profile-info p { color: var(--ui-muted); }

/* Buttons */
.profile-main.profile-2026 .profile-links {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 20px !important;
  border: 0;
  border-radius: 3px;
  background: var(--ui-red) !important;
  font-family: var(--ui-font);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: normal;
  text-decoration: none;
  white-space: nowrap;
  color: var(--ui-white) !important;
  width: auto !important;
  cursor: pointer;
}
.profile-main.profile-2026 .profile-links:hover { background: var(--ui-red-dark) !important; }

/* Inputs (tender title, name search, feedback) */
.profile-main.profile-2026 input[type="text"],
.profile-main.profile-2026 textarea.feedback {
  height: 44px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid var(--ui-border-input) !important;
  border-radius: 4px;
  background: var(--ui-white);
  font-family: var(--ui-font) !important;
  font-size: 15px;
  letter-spacing: normal !important;
  color: var(--ui-near-black) !important;
  box-shadow: none;
}
.profile-main.profile-2026 input[type="text"]:focus,
.profile-main.profile-2026 textarea.feedback:focus { outline: none; border-color: var(--ui-red) !important; }
.profile-main.profile-2026 input::placeholder,
.profile-main.profile-2026 textarea::placeholder { color: #8A8F9B !important; }

/* Profile header: logo box and company name */
.profile-main.profile-2026 .profile-header:first-child { display: flex !important; align-items: center; gap: 26px; }
.profile-main.profile-2026 .profile-image {
  float: none;
  flex: 0 0 140px;
  margin: 0;
  border-radius: 6px;
  overflow: hidden;
  background: var(--ui-bg-light);
  border: 1px solid var(--ui-border);
}
.profile-main.profile-2026 .profile-image img { display: block; width: 100%; }
.profile-main.profile-2026 .upload-photo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 10px;
  background: var(--ui-near-black);
  font-size: 13px;
}
.profile-main.profile-2026 .upload-photo:hover { background: var(--ui-red); }
.profile-main.profile-2026 .upload-photo i { float: none; margin: 0; }
.profile-main.profile-2026 .profile-info { float: none; width: auto; }
.profile-main.profile-2026 .profile-info br { display: none; }
.profile-main.profile-2026 .profile-info .profile-links { margin-top: 16px; }

/* Search card: two rows with icon, label and button */
.profile-main.profile-2026 .profile-search-box strong { font-family: var(--ui-font); font-weight: 600; color: var(--ui-near-black); }
.profile-main.profile-2026 .profile-search-box > p { margin-bottom: 6px; }
.profile-main.profile-2026 .profile-search-box .search-type {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 14px 0;
  border-bottom: 1px solid var(--ui-divider);
}
.profile-main.profile-2026 .profile-search-box .search-type.last { border-bottom: 1px solid var(--ui-divider); }
.profile-main.profile-2026 .profile-search-box .search-type.second { border-bottom: 0; padding-bottom: 0; }
.profile-main.profile-2026 .profile-search-box .search-type img { float: none; width: 48px; height: 48px; }
.profile-main.profile-2026 .profile-search-box .search-type p {
  float: none;
  flex: 1 1 auto;
  margin: 0;
  font-weight: 600;
  color: var(--ui-near-black);
}
.profile-main.profile-2026 .profile-search-box .search-type a { float: none; margin: 0; }

/* Tender: title field + button on one row */
.profile-main.profile-2026 .profile-tender-form { display: flex; gap: 12px; margin-top: 18px; }
/* Legacy: #tender_title { height: 30px !important; border: 1px solid #f3f3f3 !important }. */
.profile-main.profile-2026 .profile-tender-form #tender_title {
  flex: 1 1 auto;
  width: auto !important;
  height: 44px !important;
  border: 1px solid var(--ui-border-input) !important;
  color: var(--ui-near-black) !important;
}

/* Shortlist link */
.profile-main.profile-2026 .wishlist-link { margin-top: 18px; }

/* Feedback: textarea with the send button inside */
.profile-main.profile-2026 .feedback-field { position: relative; margin-top: 18px; }
.profile-main.profile-2026 textarea.feedback {
  display: block;
  width: 100%;
  height: 120px !important;
  margin: 0 !important;
  padding: 12px 64px 12px 12px !important;
  line-height: 1.5;
  resize: vertical;
}
/* Send button: 40px circle in the bottom-right corner of the text box
   (legacy: absolute to the card with fixed offsets). */
/* Link out of the flow (it added an empty line below the text box); the
   icon is positioned from its corner. */
.profile-main.profile-2026 .feedback-field > a { position: absolute; right: 0; bottom: 0; width: 0; height: 0; cursor: pointer; }
.profile-main.profile-2026 .profile-header .feedback-field .fa-paper-plane:before {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: block;
  width: 40px;
  height: 40px;
  padding: 0;
  border-radius: 50%;
  background: var(--ui-red);
  font-size: 16px;
  line-height: 40px;
  text-align: center;
  text-indent: -2px;
  color: var(--ui-white);
}
.profile-main.profile-2026 .profile-header .feedback-field a:hover .fa-paper-plane:before { background: var(--ui-red-dark); }
.profile-main.profile-2026 .ajaxResp:not(:empty) { margin-top: 10px; font-size: 14px; color: #B30808 !important; }

/* Right column (pool partners): name search as a card */
.profile-main.profile-2026 .col-md-4 .profile-stats {
  padding: 28px 26px;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  background: var(--ui-white);
  box-shadow: 0 1px 2px rgba(28, 29, 33, 0.04);
}
.profile-main.profile-2026 .profile-search-form p { margin-bottom: 16px; }
.profile-main.profile-2026 .profile-search-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.profile-main.profile-2026 .profile-search-form p,
.profile-main.profile-2026 .profile-search-form .profileSearchMsg { grid-column: 1 / -1; }
.profile-main.profile-2026 .profile-search-form .fname,
.profile-main.profile-2026 .profile-search-form .lname { width: 100% !important; }
.profile-main.profile-2026 .profile-search-form .profile-links { grid-column: 1 / -1; justify-self: start; }

/* Tablet / phone: columns stack (Bootstrap), keep side spacing, logo box
   in the flow instead of overlapping the hero. */
@media (max-width: 991px) {
  .profile-main.profile-2026 { margin-top: 28px !important; padding: 0 16px; }
  .profile-main.profile-2026 .col-md-4 { margin-top: 10px; padding: 0; }
}
@media (max-width: 640px) {
  .profile-main.profile-2026 .profile-main-left > div { padding: 22px 18px; }
  .profile-main.profile-2026 .profile-header:first-child { flex-direction: column; text-align: center; }
  .profile-main.profile-2026 .profile-image { position: static; transform: none; flex-basis: auto; width: 140px; }
  .profile-main.profile-2026 .profile-image img { width: 100%; height: auto; box-shadow: none; }
  .profile-main.profile-2026 .profile-info { margin-top: 0; text-align: center; }
  .profile-main.profile-2026 .profile-info p { text-align: center; }
  .profile-main.profile-2026 .profile-tender-form { flex-direction: column; }
  .profile-main.profile-2026 .profile-tender-form .profile-links { align-self: flex-start; }
  .profile-main.profile-2026 .profile-search-form { grid-template-columns: 1fr; }
}

/* Manager overview only (.profile-man, default_logout_man.php). */
/* Partner logo row on top (ACP / CBA / BFM): no gap when there is no logo. */
.profile-main.profile-man > .col-md-8:first-child:not(:has(*)) { display: none; }
.profile-main.profile-man > .col-md-8:first-child:not(:has(*)) + .col-md-4:not(:has(*)) { display: none; }
.profile-main.profile-man .profile-header:first-child { align-items: flex-start; }
.profile-main.profile-man .profile-info p { margin: 2px 0; font-size: 14.5px; }
.profile-main.profile-man .profile-info a { display: inline; margin: 0; color: #D10511; font-weight: 600; text-decoration: none; } /* legacy mobile: inline-block, margin-top 15px */
.profile-main.profile-man .profile-info a:hover { text-decoration: underline; }
.profile-main.profile-man .acp-upgrade-badge { float: none; width: auto; margin-left: auto; }
/* Stacked profile card up to 767px: legacy rules (bootstrap/css/style.css, 320–767px) position the
   photo absolutely above the card; the reset above only started at 640px. */
@media (max-width: 767px) {
  .profile-main.profile-2026 .profile-header:first-child { flex-direction: column; align-items: center; text-align: center; }
  .profile-main.profile-2026 .profile-image { position: static; transform: none; flex-basis: auto; width: 140px; }
  .profile-main.profile-2026 .profile-image img { width: 100%; height: auto; box-shadow: none; }
  .profile-main.profile-2026 .profile-info { margin-top: 0; text-align: center; }
  .profile-main.profile-2026 .profile-info p { text-align: center; }
}

/* Headline / profile */
.profile-main.profile-man .profile-description .personal-data { margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--ui-divider); }
.profile-main.profile-man .profile-description a.profile-links { margin-top: 22px; }

/* Criteria: two columns of chips */
.profile-main.profile-man .profile-criteria {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 22px 28px;
}
.profile-main.profile-man .profile-criteria .criteria-box { float: none; width: auto; margin: 0; }
.profile-main.profile-man .profile-criteria .criteria-box-head { margin-bottom: 10px; font-size: 17px; }
.profile-main.profile-man .profile-criteria .criteria-box span {
  display: inline-block;
  margin: 0 6px 6px 0;
  padding: 4px 10px;
  border: 1px solid var(--ui-border);
  border-radius: 6px;
  background: var(--ui-bg-light);
  font-family: var(--ui-font);
  font-size: 13px;
  line-height: 1.5;
  color: var(--ui-body-text-strong);
}
.profile-main.profile-man .profile-criteria > a.profile-links { float: none; grid-column: 1 / -1; justify-self: start; }

/* Search: the last row has no divider */
.profile-main.profile-man .profile-search-box .search-type.first { border-bottom: 1px solid var(--ui-divider); }
.profile-main.profile-man .profile-search-box .search-type.last { border-bottom: 0; padding-bottom: 0; }

/* History: dark bar */
.profile-main.profile-man .profile-main-left > .profile-history-box {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: var(--ui-near-black) !important;
  border-color: var(--ui-near-black);
}
.profile-main.profile-man .profile-history-box .history-text { float: none; font-family: var(--ui-font); }
.profile-main.profile-man .profile-history-box .history-text strong { display: block; margin-bottom: 4px; font-size: 16px; color: var(--ui-white); }
.profile-main.profile-man .profile-history-box .history-text p { color: rgba(255,255,255,0.8) !important; }
.profile-main.profile-man .profile-history-box a { float: none; flex: 0 0 auto; }

/* Quality seal */
.profile-main.profile-man .profile-main-left > .profile-stamp-box {
  display: grid !important;
  grid-template-columns: minmax(0, 1.3fr) 1fr 1fr;
  gap: 24px;
  align-items: center;
}
.profile-main.profile-man .profile-stamp-box .stamp-box-text { float: none; width: auto; margin: 0; }
.profile-main.profile-man .profile-stamp-box .stamp-box-text a { color: #D10511; }
.profile-main.profile-man .profile-stamp-box .stamp-one { float: none; width: auto; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.profile-main.profile-man .profile-stamp-box .stamp-one.borderleft { border-left: 1px solid var(--ui-divider); }
.profile-main.profile-man .profile-stamp-box .stamp-one img { width: 96px; }
.profile-main.profile-man .profile-stamp-box .stamp-one a {
  float: none;
  width: auto;
  margin: 0;
  font-family: var(--ui-font);
  font-size: 13px;
  font-weight: 600;
  color: #D10511;
  text-decoration: none;
}
.profile-main.profile-man .profile-stamp-box .stamp-one a:hover { text-decoration: underline; }

/* Manager sidebar (right column): Kennzahlen, Exclusive Rabatte / upgrade
   notice, Tagessatz + Blogbeitrag (html/com_users/profile/default_logout_man.php). */
.profile-main.profile-man .profile-side { display: flex; flex-direction: column; gap: 18px; }
.profile-main.profile-man .profile-side .side-card {
  display: block;
  margin: 0;
  padding: 24px 24px 26px;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  background: var(--ui-white);
  box-shadow: 0 1px 2px rgba(28, 29, 33, 0.04);
}
.profile-main.profile-man .profile-side .side-card__title {
  width: auto !important;
  margin: 0 0 14px;
  padding: 0;
  font-family: var(--ui-font);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--ui-ink) !important;
}
/* Rabatte card without content (Standard/Premium before approval): hide it. */
.profile-main.profile-man .profile-side .side-card:not(:has(*)) { display: none; }
/* Kennzahlen */
.profile-main.profile-man .side-kpis { margin: 0 0 18px; padding: 0; list-style: none; }
.profile-main.profile-man .side-kpis li {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 0 !important;
  padding: 9px 0 !important;
  border-bottom: 1px solid var(--ui-divider);
  font-size: 14px;
  line-height: 1.4 !important;
  list-style: none;
}
.profile-main.profile-man .side-kpis li::before { content: none !important; }
.profile-main.profile-man .side-kpis li:first-child { padding-top: 0; }
.profile-main.profile-man .side-kpis__label { color: var(--ui-body-text-strong); }
.profile-main.profile-man .side-kpis__value {
  font-size: 18px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--ui-ink);
}
.profile-main.profile-man .profile-side .profile-links { float: none; display: inline-flex; margin: 0; }
/* Exclusive Rabatte: one block per partner, logo in a fixed box */
.profile-main.profile-man .profile-side .partner-detail-section { margin: 0; padding: 0; }
.profile-main.profile-man .side-partner { padding: 16px 0; border-top: 1px solid var(--ui-divider); }
.profile-main.profile-man .side-partner:first-of-type { padding-top: 0; border-top: 0; }
.profile-main.profile-man .side-partner:last-child { padding-bottom: 0; }
.profile-main.profile-man .side-partner__logo {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 56px;
  margin: 0 0 10px;
}
.profile-main.profile-man .side-partner__logo img { width: auto !important; max-width: 180px; max-height: 56px; height: auto; }
.profile-main.profile-man .side-partner__text p {
  margin: 0 0 8px;
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--ui-body-text-strong);
}
.profile-main.profile-man .side-partner__text p:last-child { margin-bottom: 0; }
.profile-main.profile-man .profile-side a:not(.profile-links) { color: #D10511; font-weight: 600; overflow-wrap: anywhere; }
/* Upgrade notice (Light, Entry, Basic) instead of the old blurred image */
.profile-main.profile-man .side-upgrade { text-align: left; }
.profile-main.profile-man .side-upgrade__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0 0 14px;
  border-radius: 50%;
  background: #FDECEC;
  color: var(--ui-red);
}
.profile-main.profile-man .side-upgrade p { margin: 0 0 18px; font-size: 14.5px; line-height: 1.6; color: var(--ui-body-text-strong); }
/* Tagessatz überprüfen + Blogbeitrag erstellen */
.profile-main.profile-man .side-action + .side-action { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--ui-divider); }
.profile-main.profile-man .side-action .side-card__title { margin-bottom: 8px; font-size: 16px; }
.profile-main.profile-man .side-action p { margin: 0 0 8px; font-size: 13.5px; line-height: 1.6; color: var(--ui-body-text-strong); }
.profile-main.profile-man .side-action p:last-child { margin-bottom: 0; }
.profile-main.profile-man .side-action__link { display: inline; font-size: 14px; text-decoration: none !important; }
.profile-main.profile-man .side-action__link:hover { text-decoration: underline !important; }
.profile-main.profile-man .side-action__link svg { display: inline-block; margin-left: 4px; vertical-align: -2px; transition: transform .15s ease; }
.profile-main.profile-man .side-action__link:hover svg { transform: translateX(2px); }

/* Upload tiles (outside .profile-main): heading + six cards, 1300px */
.profile-main.profile-man { margin-bottom: 36px !important; }
.profile-uploads.profile-uploads-2026 { padding: 0 0 70px; background: transparent; }
.profile-uploads-2026 > .row.content-wraper { max-width: var(--ui-container-max); margin: 0 auto; padding: 0 !important; }
.profile-uploads-2026 .profile-uploads__title {
  margin: 0 0 18px;
  font-family: var(--ui-font);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: var(--ui-ink);
}
.profile-uploads-2026 .col-md-12 {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  float: none;
  padding: 0 !important;
}
/* Legacy (mobile): .profile-uploads .col-md-2 { width: 48%; height: 300px }. */
.profile-uploads-2026 .col-md-12 > .col-md-2 {
  height: auto !important;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: auto;
  float: none;
  padding: 0 0 18px;
  overflow: hidden;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  background: var(--ui-white);
  text-align: center;
  transition: border-color .2s, box-shadow .2s;
}
.profile-uploads-2026 .col-md-12 > .col-md-2:hover { border-color: var(--ui-border-strong); box-shadow: 0 6px 18px rgba(28,29,33,0.08); }
/* Image first (full width, fixed area), title below it. */
.profile-uploads-2026 .col-md-2 img {
  order: -1;
  display: block;
  width: 100%;
  height: 120px;
  margin: 0 0 14px;
  border-radius: 0;
  object-fit: cover;
  vertical-align: top;
  background: var(--ui-bg-light);
}
/* Legacy: h3 { width: 100% } (with side margins it overflowed). */
.profile-uploads-2026 .col-md-2 h3 {
  width: auto !important;
  min-height: 0;
  padding: 0;
  margin: 0 10px 14px;
  overflow-wrap: anywhere;
  font-family: var(--ui-font);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--ui-ink);
}
.profile-uploads-2026 .profile-links {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  align-self: center;
  min-height: 38px;
  margin-top: auto;
  padding: 0 14px !important;
  border: 1px solid var(--ui-red);
  border-radius: 3px;
  background: var(--ui-red) !important;
  font-family: var(--ui-font);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--ui-white) !important;
  text-decoration: none;
  white-space: nowrap;
}
.profile-uploads-2026 .profile-links:before { margin-right: 0 !important; font-size: 12px !important; }
.profile-uploads-2026 .profile-links:hover { background: var(--ui-red-dark) !important; border-color: var(--ui-red-dark); }
/* Case Studies: "Bearbeiten" + "Info" side by side, Info as outline. */
.profile-uploads-2026 .col-md-2:has(> .col-md-6) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto minmax(0, 1fr);
  grid-template-rows: auto auto 1fr;
}
.profile-uploads-2026 .col-md-2:has(> .col-md-6) > .col-md-6:first-of-type { grid-column: 2; }
.profile-uploads-2026 .col-md-2:has(> .col-md-6) > .col-md-6 + .col-md-6 { grid-column: 3; margin-left: 8px; }
.profile-uploads-2026 .col-md-2:has(> .col-md-6) > img,
.profile-uploads-2026 .col-md-2:has(> .col-md-6) > h3 { grid-column: 1 / -1; }
.profile-uploads-2026 .col-md-2:has(> .col-md-6) > img { grid-row: 1; justify-self: stretch; }
.profile-uploads-2026 .col-md-2:has(> .col-md-6) > h3 { grid-row: 2; }
.profile-uploads-2026 .col-md-2 > .col-md-6 { grid-row: 3; align-self: end; width: auto; float: none; padding: 0; margin: 0; }
.profile-uploads-2026 .col-md-2 > .col-md-6 .profile-links { margin: 0; }
/* Info: square icon button (label for screen readers via aria-label). */
.profile-uploads-2026 .col-md-2 > .col-md-6 + .col-md-6 .profile-links {
  width: 38px;
  padding: 0 !important;
  font-size: 0 !important;
  border-color: var(--ui-border-strong);
  background: var(--ui-white) !important;
  color: var(--ui-near-black) !important;
}
.profile-uploads-2026 .col-md-2 > .col-md-6 + .col-md-6 .profile-links:hover { border-color: var(--ui-red); color: var(--ui-red) !important; }
.profile-uploads-2026 .col-md-2 > .col-md-6 + .col-md-6 .profile-links:before { content: "\f05a" !important; font-size: 15px !important; }

@media (max-width: 1340px) {
  .profile-uploads-2026 > .row.content-wraper { padding: 0 var(--ui-container-pad) !important; }
}
@media (max-width: 1100px) {
  .profile-uploads-2026 .col-md-12 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .profile-uploads-2026 > .row.content-wraper { padding: 0 16px !important; }
}
@media (max-width: 640px) {
  .profile-uploads-2026 .col-md-12 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .profile-uploads.profile-uploads-2026 { padding-bottom: 50px; }
  .profile-main.profile-2026 { margin-bottom: 30px !important; }
  .profile-main.profile-man .profile-criteria { grid-template-columns: 1fr; gap: 0; }
  .profile-main.profile-man .profile-main-left > .profile-history-box { flex-direction: column; align-items: flex-start; }
  .profile-main.profile-man .profile-main-left > .profile-stamp-box { grid-template-columns: 1fr 1fr; }
  .profile-main.profile-man .profile-stamp-box .stamp-box-text { grid-column: 1 / -1; }
  .profile-main.profile-man .profile-stamp-box .stamp-one.borderleft { border-left: 0; }
  .profile-main.profile-man .profile-info p { text-align: center; }
}

/* ------------------------- inner page content box ------------------------- */
/* Legacy .row.content-wraper has padding-right: 15px only, which shifts the
   centred 1300px content 7.5px left of the header. Where the full 1300px
   fit, drop it so header and content share the same edges. */
@media (min-width: 1340px) {
  .main-repetr .main-content > .row.content-wraper { padding-right: 0; }
}

/* ---------------------------- inner page text ----------------------------- */
/* Body text of the legacy content area (articles, EasyBlog, jManager, ...)
   in the style of the Preisliste rows: Inter, #3A3E49 (contrast 11:1 on
   white), normal letter-spacing, left-aligned. Replaces Roboto-Light,
   #555 / #696969, letter-spacing 1px and justified text. Only the selectors
   that set these are overridden, so coloured text (red notes, white text on
   dark boxes) keeps its colour. Font sizes are unchanged (14px). */
.main-repetr .main-content {
  font-family: var(--ui-font);
  color: var(--ui-body-text-strong);
  letter-spacing: normal;
}
.main-repetr p,
.main-repetr .content-wraper p,
.main-repetr .content-wraper ul li,
.main-repetr .custom p,
.main-repetr .description p {
  font-family: var(--ui-font);
  letter-spacing: normal;
  text-align: left;
}
/* Colour: low specificity on purpose. It beats the legacy element rule
   `p { color: #555 }`, but every legacy class rule still wins, e.g.
   `.custom1 p { color: #fff }` on dark boxes. The grey class rules
   (.custom p / .description p: #696969) are overridden explicitly. */
.main-repetr :where(p, li, dd) { color: var(--ui-body-text-strong); }
.main-repetr .custom p,
.main-repetr .description p,
.main-repetr .content-wraper ul li { color: var(--ui-body-text-strong); }
.main-repetr li,
.main-repetr dd,
.main-repetr dt,
.main-repetr td {
  font-family: var(--ui-font);
  letter-spacing: normal;
}
.main-repetr .content-wraper p strong,
.main-repetr p strong,
.main-repetr p b {
  font-family: var(--ui-font);
  font-weight: 700;
}

/* ----------------------- contrast fixes (WCAG AA) ------------------------ */
/* Legacy brand red #f70303 is 4.2:1 against white (links, white-on-red
   buttons); the 2026 red #E30613 is 4.9:1. Same selectors as the legacy
   rules, one step more specific; hover rules keep their colours. */
/* Text links: #D10511 (5.4:1 on white, 4.9:1 on the light grey boxes).
   Only links inside text: anchors styled as buttons (e.g. .company-reg-banner a,
   white on red) keep their own colours. */
.main-repetr .content-wraper :where(p, li, td, dd, span, label, h2, h3, h4) a:where(:not(.page-link, .btn)) { color: #D10511; }
/* On dark boxes (.custom1, #282727): lighter red, 5.3:1. */
.main-repetr .custom1 a { color: #FF6B5E; }
.main-repetr .company-reg-banner a { background-color: var(--ui-red); }
/* Registration notice (red text on #FFFBEB). */
.main-repetr .company-reg-banner p,
.main-repetr .company-reg-banner p strong { color: #D10511; }
body input[type="submit"],
body button[type="submit"],
html body input[type="button"],
body .search .submit,
body a.btn,
body a#contractbtn { background-color: var(--ui-red) !important; }
body button.btn-primary,

/* EasyBlog meta (date, comments; .text-muted #888 = 3.5:1) and pagination
   (#777 on #F4F4F4 = 4.1:1). */
.main-repetr #eb .text-muted,
.main-repetr #eb .text-muted a { color: var(--ui-muted); }
/* Author name stays a red link. Legacy: #eb .eb-post-meta a { color: #f70303 !important }. */
.main-repetr #eb .eb-post-meta .eb-post-author a { color: #D10511 !important; }
.main-repetr .o-pagination__btn:not([aria-disabled="true"]),
.main-repetr .o-pagination span:not(.sr-only) { color: var(--ui-muted); }

/* jManager search hints (#6B7280 on #F6F6F6 = 4.48:1). */
.main-repetr .info-notice,
.main-repetr .info-notice b { color: var(--ui-muted); }

/* Provider / Verbände cards (#999 on #F2F2F2 = 2.5:1). */
.main-repetr .providers-page-description p { color: var(--ui-body-text-strong); }

/* "Abgelaufen" labels (Bootstrap .label-warning: white on #F0AD4E = 2.0:1). */
.main-repetr .label-warning { background-color: #A15C00; }

/* Service ticket upload field (#888 = 3.5:1). */
.main-repetr .drag-and-drop-text,
.main-repetr .tf-upload-browse,
.main-repetr .max-file-size { color: var(--ui-muted); }

/* Breadcrumbs (mod_breadcrumbs, position before-content): thin bar below the
   hero, aligned with the content. Legacy: ul.breadcrumb floats right,
   Roboto-Bold 14px, "|" dividers. */
.ui26.page-crumbs {
  clear: both;
  width: 100%;
  border-bottom: 1px solid var(--ui-divider);
  background: var(--ui-white);
}
/* Text lines up with the content box (1300px, e.g. #eb, .main-A1). */
.ui26 .page-crumbs__inner {
  max-width: calc(var(--ui-container-max) + 2 * var(--ui-container-pad));
  margin: 0 auto;
  padding: 12px var(--ui-container-pad);
}
.ui26.page-crumbs .moduletable,
.ui26.page-crumbs .module { margin: 0; padding: 0; }
.ui26.page-crumbs .breadcrumb {
  float: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2px 0;
  margin: 0;
  padding: 0;
  background: none;
  border-radius: 0;
  list-style: none;
}
.ui26.page-crumbs .breadcrumb li {
  display: inline-flex;
  align-items: center;
  float: none;
  margin: 0;
  padding: 0;
  font-size: 12.5px;
  line-height: 1.5;
  text-shadow: none;
}
.ui26.page-crumbs .breadcrumb li + li::before { content: none; }
.ui26.page-crumbs .breadcrumb li a,
.ui26.page-crumbs .breadcrumb .active span {
  font-family: var(--ui-font);
  font-size: 12.5px;
  font-weight: 400;
  letter-spacing: normal;
  text-transform: none;
}
.ui26.page-crumbs .breadcrumb li a { color: var(--ui-muted); text-decoration: none; }
.ui26.page-crumbs .breadcrumb li a:hover { color: var(--ui-red); }
.ui26.page-crumbs .breadcrumb .active span { color: var(--ui-ink); }
.ui26.page-crumbs .breadcrumb .divider {
  padding: 0 8px;
  font-size: 0;
  color: var(--ui-border-strong);
}
.ui26.page-crumbs .breadcrumb .divider::before {
  content: "›";
  font-size: 13px;
}

/* The fixed Playbook / Support tabs (≈44px) sit on the right window edge:
   keep the hero text clear of them where the 1300px box reaches the edge. */
@media (max-width: 1400px) {
  .ui26.page-hero { padding-left: 56px; padding-right: 56px; }
}
@media (max-width: 640px) {
  .ui26.page-hero { padding: 36px 52px 32px; }
  .ui26 .page-crumbs__inner { padding-top: 10px; padding-bottom: 10px; }
}
.ui26 .acc-card .acc-back { margin: 18px 0 0; }

/* ==========================================================================
   Contact page (kontakt.html; html/com_contact/contact/*.php): form card
   (legend "Eine E-Mail senden" as title) + contact details card.
   ========================================================================== */
.ui26 .ct-grid--single { grid-template-columns: minmax(0, 1fr); }
.ui26 .ct-form fieldset { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; align-items: start; }
.ui26 .ct-form fieldset > legend {
  grid-column: 1 / -1;
  float: none;
  width: auto;
  margin: 0 0 6px;
  padding: 0;
  border: 0;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
  text-transform: none;
  color: var(--ui-ink) !important;
}
.ui26 .ct-form fieldset > .control-group { grid-column: 1 / -1; }
.ui26 .ct-form fieldset > .control-group:has(#jform_contact_name),
.ui26 .ct-form fieldset > .control-group:has(#jform_contact_email) { grid-column: auto; }
/* "* Benötigtes Feld" under the title */
.ui26 .ct-form fieldset > .control-group.field-spacer { margin: 0 0 22px !important; }
.ui26 .ct-form .field-spacer .control-label { float: none; width: auto; padding: 0; text-align: left; }
.ui26 .ct-form .field-spacer label { margin: 0; font-size: 13px !important; font-weight: 400 !important; letter-spacing: normal; color: var(--ui-muted) !important; }
.ui26 .ct-form .field-spacer .red { color: var(--ui-red); }
.ui26 .ct-form .field-spacer .controls { display: none; }
.ui26 .ct-form .control-label { float: none !important; width: auto !important; padding: 0 !important; text-align: left !important; }
.ui26 .ct-form .control-label label { letter-spacing: normal; }
.ui26 .ct-form textarea.form-control {
  display: block;
  width: 100% !important;
  min-height: 190px;
  padding: 12px 14px;
  border: 1px solid var(--ui-border-strong) !important;
  border-radius: 4px !important;
  background: var(--ui-white);
  font-family: var(--ui-font);
  font-size: 15px;
  line-height: 1.6;
  color: var(--ui-near-black);
  resize: vertical;
  box-shadow: none;
}
.ui26 .ct-form textarea.form-control:focus { outline: none; border-color: var(--ui-red) !important; box-shadow: 0 0 0 3px rgba(227,6,19,0.12); }
.ui26 .ct-form textarea.form-control.invalid { border-color: #B30808 !important; }
/* Copy checkbox: box first, label next to it. */
.ui26 .ct-form .control-group:has(.form-check) { display: flex !important; align-items: center; gap: 10px; }
.ui26 .ct-form .control-group:has(.form-check) .controls { order: -1; flex: 0 0 auto; width: auto !important; }
.ui26 .ct-form .control-group:has(.form-check) .form-check { display: flex; margin: 0 !important; padding: 0 !important; min-height: 0; }
.ui26 .ct-form .control-group:has(.form-check) input { float: none !important; width: 17px; height: 17px; margin: 0 !important; accent-color: var(--ui-red); }
.ui26 .ct-form .control-group:has(.form-check) .control-label { flex: 1 1 auto; min-width: 0; margin: 0 !important; }
.ui26 .ct-form .control-group:has(.form-check) label { margin: 0; font-size: 14px; font-weight: 400; color: var(--ui-body-text-strong); cursor: pointer; }
/* Captcha (reCAPTCHA v3: hidden inputs only) */
.ui26 .ct-form .control-group:has(.plg-captcha-recaptcha-v3-hidden) { margin: 0 !important; }
.ui26 .ct-form .control-group.acc-submit { margin: 8px 0 0 !important; }
.ui26 .ct-form .acc-submit .controls { display: block; }

/* Contact details */
.ui26 .ct-list { margin: 0; padding: 0; }
.ui26 .ct-item { display: flex; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--ui-divider); }
.ui26 .ct-item:first-child { padding-top: 0; }
.ui26 .ct-item:last-child { padding-bottom: 0; border-bottom: 0; }
.ui26 .ct-item__icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--ui-white);
  border: 1px solid var(--ui-divider);
  color: var(--ui-red);
}
.ui26 .ct-item__body { min-width: 0; }
.ui26 .ct-list dt.ct-item__label {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ui-muted);
}
.ui26 .ct-list dd { margin: 0; font-size: 15px; line-height: 1.6; color: var(--ui-near-black); overflow-wrap: anywhere; }
.ui26 .ct-list dd a { color: var(--ui-near-black) !important; text-decoration: none; }
.ui26 .ct-list dd a:hover { color: #D10511 !important; text-decoration: underline; }
.ui26 .ct-vcard { margin: 18px 0 0 !important; font-size: 14px !important; }

@media (max-width: 640px) {
  .ui26 .ct-form fieldset { grid-template-columns: 1fr; }
  .ui26 .ct-form .acc-submit .controls { flex: 1 1 100%; }
  .ui26 .ct-form .acc-submit .acc-btn { width: 100% !important; }
}

/* ==========================================================================
   Convert Forms (service-ticket.html: article 1183, {convertforms 2}).
   The form's own settings (Components › Convert Forms) are written as CSS
   variables on #cf_2, hence !important on the variables. Same card, fields
   and button as the Playbook and contact forms.
   ========================================================================== */
.main-repetr .convertforms.cf {
  --font: var(--ui-font) !important;
  --max-width: 900px !important;
  --background-color: var(--ui-white) !important;
  --border-radius: 8px !important;
  --control-gap: 10px !important;
  --label-color: var(--ui-near-black) !important;
  --label-size: 14px !important;
  --label-weight: 700 !important;
  --input-color: var(--ui-near-black) !important;
  --input-placeholder-color: var(--ui-muted) !important;
  --input-background-color: var(--ui-white) !important;
  --input-border-color: var(--ui-border-strong) !important;
  --input-border-radius: 4px !important;
  --input-size: 15px !important;
  --input-padding: 11px 14px !important;
  margin: 8px auto 30px;
  font-family: var(--ui-font);
}
.main-repetr .convertforms.cf .cf-form-wrap {
  padding: 34px 36px;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  background: var(--ui-white) !important;
}
/* Convert Forms spaces the fields with padding: var(--control-gap) (10px → 20px between). */
.main-repetr .convertforms.cf .cf-control-group { margin: 0; border: 0; }
.main-repetr .convertforms.cf .cf-control-label { margin: 0 0 8px; padding: 0; }
.main-repetr .convertforms.cf .cf-control-label .cf-label { margin: 0; font-size: 14px; font-weight: 700; letter-spacing: normal; line-height: 1.4; color: var(--ui-near-black); }
.main-repetr .convertforms.cf .cf-required-label { color: var(--ui-red); }
.main-repetr .convertforms.cf input.cf-input:not([type="checkbox"]),
.main-repetr .convertforms.cf textarea.cf-input {
  width: 100%;
  min-height: 46px;
  margin: 0;
  border: 1px solid var(--ui-border-strong);
  border-radius: 4px;
  box-shadow: none;
  font-family: var(--ui-font);
  font-size: 15px;
  color: var(--ui-near-black);
}
.main-repetr .convertforms.cf textarea.cf-input { min-height: 190px; line-height: 1.6; resize: vertical; }
.main-repetr .convertforms.cf input.cf-input:not([type="checkbox"]):focus,
.main-repetr .convertforms.cf textarea.cf-input:focus { outline: none; border-color: var(--ui-red); box-shadow: 0 0 0 3px rgba(227,6,19,0.12); }
.main-repetr .convertforms.cf .cf-control-input-desc { margin: 8px 0 0; font-size: 13px; line-height: 1.5; color: var(--ui-muted); }
/* File upload drop zone */
.main-repetr .convertforms.cf .tf-file-upload-editor {
  border: 1px dashed var(--ui-border-strong);
  border-radius: 6px;
  background: var(--ui-bg-light);
  transition: border-color .15s ease, background-color .15s ease;
}
.main-repetr .convertforms.cf .tf-file-upload-editor:hover,
.main-repetr .convertforms.cf .tf-file-upload-editor.dz-drag-hover { border-color: var(--ui-red); background: #FFF7F7; }
.main-repetr .convertforms.cf .tf-file-upload-editor .dz-message { padding: 26px 16px; font-family: var(--ui-font); color: var(--ui-body-text-strong); }
.main-repetr .convertforms.cf .tf-file-upload-editor .dz-message svg { color: var(--ui-red); }
.main-repetr .convertforms.cf .tf-file-upload-editor .drag-and-drop-text { font-size: 15px; color: var(--ui-body-text-strong); }
.main-repetr .convertforms.cf .tf-upload-browse { font-weight: 700; color: #D10511; text-decoration: underline; }
.main-repetr .convertforms.cf .tf-file-upload-editor .max-file-size { font-size: 13px; color: var(--ui-muted); }
/* AGB checkbox */
.main-repetr .convertforms.cf .cf-checkbox-group { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 0; }
.main-repetr .convertforms.cf .cf-checkbox-group input[type="checkbox"] {
  position: static;
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  margin: 3px 0 0;
  opacity: 1;
  accent-color: var(--ui-red);
}
.main-repetr .convertforms.cf .cf-checkbox-group .cf-label {
  margin: 0;
  padding: 0;
  font-size: 14.5px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: normal;
  color: var(--ui-body-text-strong);
  cursor: pointer;
}
.main-repetr .convertforms.cf .cf-checkbox-group .cf-label::before,
.main-repetr .convertforms.cf .cf-checkbox-group .cf-label::after { display: none; }
.main-repetr .convertforms.cf .cf-checkbox-group .cf-label a { color: #D10511; font-weight: 600; }
/* reCAPTCHA + submit */
.main-repetr .convertforms.cf .cf-control-group[data-type="submit"] { padding-top: 14px; }
.main-repetr .convertforms.cf .cf-btn {
  --button-background-color: var(--ui-red) !important;
  --button-font-size: 15px !important;
  --button-padding: 0 28px !important;
  --button-border-radius: 3px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  border: 0;
  font-family: var(--ui-font);
  font-weight: 700;
  color: var(--ui-white);
  cursor: pointer;
}
.main-repetr .convertforms.cf .cf-btn:hover { --button-background-color: var(--ui-red-dark) !important; opacity: 1; }
.main-repetr .convertforms.cf .cf-response:empty { display: none; }
@media (max-width: 640px) {
  .main-repetr .convertforms.cf .cf-form-wrap { padding: 24px 18px; }
  .main-repetr .convertforms.cf .cf-one-half { width: 100%; flex-basis: 100%; }
  .main-repetr .convertforms.cf .cf-btn { width: 100% !important; }
}

/* ==========================================================================
   Blog post comment form (EasyBlog, e.g. /blogs/<post>.html): fields and the
   "Kommentieren" button in the site style (EasyBlog uses blue, pill-shaped
   inputs). EasyBlog styles everything under #eb, hence the #eb prefix.
   ========================================================================== */
#eb form.eb-comment-form { font-family: var(--ui-font); }
#eb form.eb-comment-form .form-group { margin-bottom: 12px; }
#eb form.eb-comment-form .form-group:has(.cell-half) { display: flex; gap: 12px; }
#eb form.eb-comment-form .form-group .cell-half { display: block; flex: 1 1 0; width: auto; padding: 0; }
#eb form.eb-comment-form input.form-control {
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--ui-border-strong) !important;
  border-radius: 4px !important;
  background: var(--ui-white) !important;
  box-shadow: none !important;
  font-family: var(--ui-font);
  font-size: 15px !important;
  color: var(--ui-near-black) !important;
}
#eb form.eb-comment-form input.form-control::placeholder,
#eb form.eb-comment-form textarea.form-control::placeholder { color: var(--ui-muted); opacity: 1; }
#eb form.eb-comment-form .markItUpContainer {
  border: 1px solid var(--ui-border-strong);
  border-radius: 4px;
  overflow: hidden;
  background: var(--ui-white);
}
#eb form.eb-comment-form .markItUpHeader { background: var(--ui-bg-light); border-bottom: 1px solid var(--ui-divider); }
#eb form.eb-comment-form textarea.markItUpEditor {
  min-height: 140px;
  padding: 12px 14px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-family: var(--ui-font);
  font-size: 15px;
  line-height: 1.6;
  color: var(--ui-near-black);
}
#eb form.eb-comment-form .markItUpFooter { background: var(--ui-bg-light); border-top: 1px solid var(--ui-divider); }
#eb form.eb-comment-form input.form-control:focus,
#eb form.eb-comment-form .markItUpContainer:focus-within {
  outline: none;
  border-color: var(--ui-red) !important;
  box-shadow: 0 0 0 3px rgba(227, 6, 19, 0.12);
}
#eb form.eb-comment-form textarea.markItUpEditor:focus { outline: none; box-shadow: none; }
#eb form.eb-comment-form .eb-comment-recaptcha {
  margin: 4px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid var(--ui-divider);
  border-bottom: 0 !important;
  background: none !important;
}
#eb form.eb-comment-form .eb-comment-recaptcha p { margin: 0 0 8px; font-size: 13px; color: var(--ui-body-text-strong); }
#eb form.eb-comment-form .eb-comment-recaptcha b { font-weight: 600; }
#eb form.eb-comment-form .form-action { padding-top: 16px; background: none !important; border: 0 !important; }
#eb form.eb-comment-form .form-action .btn.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px !important;
  padding: 0 26px !important;
  border: 1px solid var(--ui-red) !important;
  border-radius: 3px !important;
  background: var(--ui-red) !important;
  box-shadow: none !important;
  font-family: var(--ui-font);
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--ui-white) !important;
  text-shadow: none !important;
}
#eb form.eb-comment-form .form-action .btn.btn-primary:hover,
#eb form.eb-comment-form .form-action .btn.btn-primary:focus-visible { background: var(--ui-red-dark) !important; border-color: var(--ui-red-dark) !important; color: var(--ui-white) !important; }
@media (max-width: 640px) {
  #eb form.eb-comment-form .form-group:has(.cell-half) { flex-direction: column; }
  #eb form.eb-comment-form .form-action .btn.btn-primary { width: 100%; }
}

/* ------------------- Coaching page (article "Coaching-Angebot") -------------------
   /fuer-interim-manager/coaching-angebot-fuer-interim-manager.html: article HTML from the
   editor (h2 headings, topic list, table .new-prices-plan), layout manatnet:pricelist.
   Styles only; the article markup is unchanged. Scoped by the menu alias on <body>. */
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > h2 {
  margin: 0 0 6px !important;
  font-family: var(--ui-font) !important;
  font-size: 19px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.005em !important;
  text-align: left !important;
  color: var(--ui-ink) !important;
}
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > h2:first-child {
  margin-bottom: 18px !important;
  font-size: 24px !important;
  line-height: 1.3 !important;
  letter-spacing: -0.015em !important;
  color: #D10511 !important;
}
/* the inline span (18pt, #ff0000) inherits the heading style instead */
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > h2:first-child span[style] { font-size: inherit !important; color: inherit !important; }

/* Topic list: red numbers, two newspaper-style columns on wide screens (1–6 left, 7–12 right);
   each item only takes its own height, so a long item leaves no gap next to a short one. */
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol {
  counter-reset: coach;
  display: block !important;
  column-count: 2;
  column-gap: 56px;
  column-rule: 1px solid var(--ui-border-card);
  margin: 26px 0 44px !important;
  padding: 26px 28px !important;
  border: 1px solid var(--ui-border-card);
  border-radius: 10px;
  background: var(--ui-bg-light);
  list-style: none !important;
}
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol > li {
  counter-increment: coach;
  position: relative;
  break-inside: avoid;
  margin: 0 !important;
  padding: 12px 0 12px 40px !important;
  border-top: 1px solid var(--ui-border-card);
  list-style: none !important;
  font-family: var(--ui-font) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol > li::before {
  content: counter(coach);
  position: absolute;
  top: 11px;
  left: 0;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--ui-red);
  font-size: 12.5px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--ui-white);
}

/* no divider above the first item of each column */
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol > li:first-child,
.coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol > li:nth-child(7) { border-top-color: transparent; }

/* Package table */
.coaching-angebot-fuer-interim-manager .new-prices-plan table {
  width: 100% !important;
  margin: 0 0 14px;
  border: 1px solid var(--ui-border-card);
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 10px;
  overflow: hidden;
  background: var(--ui-white);
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr td {
  padding: 14px 20px !important;
  border: 0 !important;
  border-top: 1px solid var(--ui-divider) !important;
  background: var(--ui-white) !important;
  vertical-align: top;
  font-family: var(--ui-font) !important;
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr td + td { border-left: 1px solid var(--ui-divider) !important; }
/* label column */
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr td:first-child {
  width: 130px;
  background: var(--ui-bg-light) !important;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr td:first-child strong {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ui-muted);
}
/* rows without a label continue the row above (Leistungen 2–4, the Nebenkosten note) */
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr:not(:first-child):has(> td:first-child:empty) td {
  border-top-color: transparent !important;
  padding-top: 0 !important;
}
/* header row: package names with a red top line */
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr:first-child td {
  border-top: 0 !important;
  padding-top: 22px !important;
  padding-bottom: 18px !important;
  background: var(--ui-bg-light) !important;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr:first-child td + td { box-shadow: inset 0 4px 0 var(--ui-red); }
.coaching-angebot-fuer-interim-manager .new-prices-plan table h2 {
  margin: 0 !important;
  font-family: var(--ui-font) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  text-align: left !important;
  color: var(--ui-ink) !important;
}
/* prices (strong with inline font-size) */
.coaching-angebot-fuer-interim-manager .new-prices-plan table strong[style] {
  font-size: 22px !important;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--ui-ink);
  font-variant-numeric: tabular-nums;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table tr:last-child td:not(:first-child) strong[style] { font-size: inherit !important; }
/* booking: "Ich bitte um Kontaktaufnahme durch:" + two e-mail buttons */
.coaching-angebot-fuer-interim-manager .new-prices-plan table td p { margin: 0 0 8px !important; text-align: left !important; }
.coaching-angebot-fuer-interim-manager .new-prices-plan table td p:first-child strong { font-size: 13px; font-weight: 600; color: var(--ui-muted); }
.coaching-angebot-fuer-interim-manager .new-prices-plan table a[href^="mailto:"] {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 14.5px;
  font-weight: 600;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table a[href^="mailto:"]::before {
  content: "";
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='15' height='11' rx='1.5'/%3E%3Cpath d='M3 5.5l7 5.5 7-5.5'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='15' height='11' rx='1.5'/%3E%3Cpath d='M3 5.5l7 5.5 7-5.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan table a[href^="mailto:"]:hover { color: var(--ui-red-dark) !important; text-decoration-thickness: 2px !important; }

/* text under the table */
.coaching-angebot-fuer-interim-manager .new-prices-plan > p {
  margin: 0 0 8px !important;
  font-family: var(--ui-font) !important;
  font-size: 15px !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan > p:first-of-type { font-size: 13.5px !important; color: var(--ui-muted) !important; }
.coaching-angebot-fuer-interim-manager .new-prices-plan > p:nth-of-type(2) {
  margin-top: 44px !important;
  font-size: 22px !important;
  font-weight: 600;
  letter-spacing: -0.01em !important;
  color: var(--ui-ink) !important;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan > p:nth-of-type(3) { margin-bottom: 18px !important; }
/* the two registration links (open in a new tab: icon after the text) */
.coaching-angebot-fuer-interim-manager .new-prices-plan > p a {
  font-size: 15px;
  font-weight: 600;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan > p a::after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-left: 6px;
  vertical-align: -1px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3h6v6M17 3l-8 8M15 12v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3h6v6M17 3l-8 8M15 12v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4'/%3E%3C/svg%3E") center / contain no-repeat;
}
.coaching-angebot-fuer-interim-manager .new-prices-plan > p a:hover { color: var(--ui-red-dark) !important; text-decoration-thickness: 2px !important; }

@media (max-width: 900px) {
  .coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol { column-count: 1; padding: 14px 20px !important; }
  .coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > ol > li:nth-child(7) { border-top-color: var(--ui-border-card); }
}
/* Phones/tablets: legacy rules stack every table cell (float/block). Keep the table and let it
   scroll sideways instead, with the label column pinned. */
@media (max-width: 767px) {
  .coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > h2:first-child { font-size: 22px !important; }
  .coaching-angebot-fuer-interim-manager .item-page .custom .content-wraper > h2 { font-size: 17px !important; }
  .coaching-angebot-fuer-interim-manager .new-prices-plan table {
    display: block !important;
    float: none !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
  }
  .coaching-angebot-fuer-interim-manager .new-prices-plan table tbody { display: table !important; float: none !important; width: 100% !important; min-width: 720px; max-width: none !important; }
  .coaching-angebot-fuer-interim-manager .new-prices-plan table tr { display: table-row !important; float: none !important; width: auto !important; }
  .coaching-angebot-fuer-interim-manager .new-prices-plan table tr td { display: table-cell !important; float: none !important; width: auto !important; max-width: none !important; padding: 12px 14px !important; }
  .coaching-angebot-fuer-interim-manager .new-prices-plan table tr td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    width: 96px !important;
    min-width: 96px;
    box-shadow: 1px 0 0 var(--ui-divider);
  }
  .coaching-angebot-fuer-interim-manager .new-prices-plan table tr td:first-child strong { font-size: 11px; }
}

/* ------------------- "Welche Vorteile bieten Sie?" page -------------------
   /fuer-interim-manager/welche-vorteile-bieten-sie.html: article HTML from the editor, a layout
   table with two columns (selfService / valuePLUS), each a nested table: heading, logo, list,
   "Was müssen Sie tun?". Styles only, markup unchanged. Scoped by the menu alias on <body>
   (the article layout manatnet:custom is shared by many pages). */
.welche-vorteile-bieten-sie .item-page .content-wraper table,
.welche-vorteile-bieten-sie .item-page .content-wraper tbody,
.welche-vorteile-bieten-sie .item-page .content-wraper tr,
.welche-vorteile-bieten-sie .item-page .content-wraper td {
  float: none !important;
  max-width: none !important;
  border: 0 !important;
  background: none !important;
}
/* outer table: two cards side by side */
.welche-vorteile-bieten-sie .item-page .content-wraper > table,
.welche-vorteile-bieten-sie .item-page .content-wraper > table > tbody { display: block !important; width: 100% !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper > table > tbody > tr {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  width: 100% !important;
}
.welche-vorteile-bieten-sie .item-page .content-wraper > table > tbody > tr > td {
  display: flex !important;
  flex-direction: column;
  width: auto !important;
  padding: 30px 32px !important;
  border: 1px solid var(--ui-border-card) !important;
  border-radius: 10px;
  background: var(--ui-white) !important;
}
/* inner table: a column, the call to action pushed to the bottom so both cards line up */
.welche-vorteile-bieten-sie .item-page .content-wraper td > table,
.welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody { display: flex !important; flex-direction: column; flex: 1 1 auto; width: 100% !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody > tr { display: block !important; width: 100% !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody > tr > td { display: block !important; width: auto !important; padding: 0 !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody > tr:has(> td:empty) { display: none !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody > tr:has(td[style*="padding: 50px"]) { margin-top: auto; }

/* heading (p > span 18pt > strong) */
.welche-vorteile-bieten-sie .item-page .content-wraper td p { margin: 0 !important; text-align: left !important; letter-spacing: normal !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody > tr:nth-child(2) span[style] {
  display: block;
  margin: 0 0 18px;
  font-family: var(--ui-font) !important;
  font-size: 22px !important;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--ui-ink) !important;
  text-wrap: balance;
}
/* logo */
.welche-vorteile-bieten-sie .item-page .content-wraper td img { display: block; width: 100% !important; max-width: 100% !important; height: auto !important; border-radius: 6px; }

/* list: red numbers and dividers, as on the coaching page */
.welche-vorteile-bieten-sie .item-page .content-wraper ol {
  counter-reset: vort;
  display: block !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.welche-vorteile-bieten-sie .item-page .content-wraper ol > li {
  counter-increment: vort;
  position: relative;
  margin: 0 !important;
  padding: 14px 0 14px 40px !important;
  border-top: 1px solid var(--ui-border-card);
  list-style: none !important;
  font-family: var(--ui-font) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
.welche-vorteile-bieten-sie .item-page .content-wraper ol > li:first-child { border-top-color: transparent; padding-top: 4px !important; }
.welche-vorteile-bieten-sie .item-page .content-wraper ol > li::before {
  content: counter(vort);
  position: absolute;
  top: 14px;
  left: 0;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--ui-red);
  font-size: 12.5px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--ui-white);
}
.welche-vorteile-bieten-sie .item-page .content-wraper ol > li:first-child::before { top: 4px; }
.welche-vorteile-bieten-sie .item-page .content-wraper ol > li strong { color: var(--ui-ink); font-weight: 700; }
/* the "<br><br>" spacers at the end of the items: spacing comes from the padding instead */
.welche-vorteile-bieten-sie .item-page .content-wraper ol > li br { display: none; }

/* "Was müssen Sie tun?" + registration line */
.welche-vorteile-bieten-sie .item-page .content-wraper td[style*="padding: 50px"] {
  margin-top: 22px;
  padding: 22px 0 0 !important;
  border-top: 1px solid var(--ui-border-card) !important;
}
.welche-vorteile-bieten-sie .item-page .content-wraper td[style*="padding: 50px"] span[style] {
  display: block;
  margin: 0 0 6px;
  font-family: var(--ui-font) !important;
  font-size: 20px !important;
  letter-spacing: -0.01em;
  color: #D10511 !important;
}
.welche-vorteile-bieten-sie .item-page .content-wraper td[style*="padding: 50px"] p:last-child strong { font-size: 15px; font-weight: 500; color: var(--ui-body-text-strong); }
.welche-vorteile-bieten-sie .item-page .content-wraper td[style*="padding: 50px"] a {
  font-weight: 700;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.welche-vorteile-bieten-sie .item-page .content-wraper td[style*="padding: 50px"] a:hover { color: var(--ui-red-dark) !important; }

@media (max-width: 900px) {
  .welche-vorteile-bieten-sie .item-page .content-wraper > table > tbody > tr { grid-template-columns: minmax(0, 1fr); gap: 22px; }
}
@media (max-width: 640px) {
  .welche-vorteile-bieten-sie .item-page .content-wraper > table > tbody > tr > td { padding: 22px 18px !important; }
  .welche-vorteile-bieten-sie .item-page .content-wraper td > table > tbody > tr:nth-child(2) span[style] { font-size: 20px !important; }
}

/* ------------------- "Wir helfen Ihnen zu sparen!" page -------------------
   /unternehmen/wir-helfen-ihnen-sparen.html: article HTML from the editor, a layout table with
   two columns (selfService / valuePLUS); each column a nested table: heading, logo, title, text,
   "Was müssen Sie tun?", then videos (left) or the next steps (right). Styles only, markup
   unchanged. Scoped by the menu alias on <body> (layout manatnet:custom is shared). */
.wir-helfen-ihnen-sparen .item-page .content-wraper table,
.wir-helfen-ihnen-sparen .item-page .content-wraper tbody,
.wir-helfen-ihnen-sparen .item-page .content-wraper tr,
.wir-helfen-ihnen-sparen .item-page .content-wraper td {
  float: none !important;
  max-width: none !important;
  border: 0 !important;
  background: none !important;
}
/* outer table: two cards side by side */
.wir-helfen-ihnen-sparen .item-page .content-wraper > table,
.wir-helfen-ihnen-sparen .item-page .content-wraper > table > tbody { display: block !important; width: 100% !important; }
.wir-helfen-ihnen-sparen .item-page .content-wraper > table > tbody > tr {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  align-items: start;
  width: 100% !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper > table > tbody > tr > td {
  display: block !important;
  width: auto !important;
  padding: 30px 32px !important;
  border: 1px solid var(--ui-border-card) !important;
  border-radius: 10px;
  background: var(--ui-white) !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table,
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody,
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr { display: block !important; width: 100% !important; }
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr > td { display: block !important; width: auto !important; padding: 0 !important; }
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:has(> td:empty) { display: none !important; }
.wir-helfen-ihnen-sparen .item-page .content-wraper > p:empty { display: none; }

/* text */
.wir-helfen-ihnen-sparen .item-page .content-wraper td p {
  margin: 0 0 10px !important;
  font-family: var(--ui-font) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper td p:empty { display: none; }
.wir-helfen-ihnen-sparen .item-page .content-wraper td span[style] { font-family: var(--ui-font) !important; letter-spacing: -0.01em; }
/* "SIE WOLLEN GELD / ZEIT SPAREN?": small red line above the card */
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:nth-child(2) span[style] {
  display: block;
  margin: 0 0 14px;
  font-size: 13px !important;
  letter-spacing: 0.1em;
  color: #D10511 !important;
}
/* logo */
.wir-helfen-ihnen-sparen .item-page .content-wraper td img { display: block; width: 100% !important; max-width: 100% !important; height: auto !important; border-radius: 6px; }
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:nth-child(3) > td { padding-bottom: 24px !important; }
/* card title: "Sie suchen selbst: Kostenlos!" / "Wir suchen für Sie: Preiswert!" */
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:nth-child(5) span[style] {
  display: block;
  margin: 0 0 4px;
  font-size: 22px !important;
  line-height: 1.3;
  color: var(--ui-ink) !important;
}
/* "Was müssen Sie tun?" block */
.wir-helfen-ihnen-sparen .item-page .content-wraper td:has(> p > span[style*="#ff0000"]) {
  margin-top: 14px;
  padding-top: 20px !important;
  border-top: 1px solid var(--ui-border-card) !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper span[style*="#ff0000"] {
  display: block;
  font-size: 20px !important;
  line-height: 1.3;
  color: #D10511 !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper td p a {
  font-weight: 700;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper td p a:hover { color: var(--ui-red-dark) !important; }
/* last row: videos (left) / next steps (right) */
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:last-child > td {
  margin-top: 14px;
  padding-top: 22px !important;
  border-top: 1px solid var(--ui-border-card) !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper iframe {
  position: static !important;
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  border: 0;
  border-radius: 8px;
  background: var(--ui-near-black);
}
.wir-helfen-ihnen-sparen .item-page .content-wraper td p:has(> iframe) { margin-bottom: 16px !important; }
/* "Wie sehen dann die nächsten Schritte aus?" + (1) … (10) as a divided list */
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:last-child > td > p:first-child span[style] {
  display: block;
  margin: 0 0 6px;
  font-size: 20px !important;
  line-height: 1.3;
  color: var(--ui-ink) !important;
}
.wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:last-child > td > p:has(> span[style]) ~ p {
  margin: 0 !important;
  padding: 10px 0 !important;
  border-top: 1px solid var(--ui-divider);
}

@media (max-width: 900px) {
  .wir-helfen-ihnen-sparen .item-page .content-wraper > table > tbody > tr { grid-template-columns: minmax(0, 1fr); gap: 22px; }
}
@media (max-width: 640px) {
  .wir-helfen-ihnen-sparen .item-page .content-wraper > table > tbody > tr > td { padding: 22px 18px !important; }
  .wir-helfen-ihnen-sparen .item-page .content-wraper td > table > tbody > tr:nth-child(5) span[style] { font-size: 20px !important; }
}

/* ------------------- "Executive-Club" page -------------------
   /fuer-interim-manager/executive-club.html: article HTML from the editor (intro, a Word table with
   three offers: seal image + text, empty spacer rows, then the registration links). Styles only,
   markup unchanged. Scoped by the menu alias on <body> (layout manatnet:custom is shared). */
.executive-club .item-page .content-wraper p {
  max-width: none !important;
  margin: 0 0 10px !important;
  font-family: var(--ui-font) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
.executive-club .item-page .content-wraper span[style*="font-size"] { font-size: inherit !important; }
.executive-club .item-page .content-wraper [style*="#ff0000"] { color: #D10511 !important; }
.executive-club .item-page .content-wraper p:empty,
.executive-club .item-page .content-wraper p.MsoNormal:not(:has(:not(:empty))) { display: none; }
/* intro: "PROFIS IM INTERIM MANAGEMENT" as a small red line, the paragraph below as lead text */
.executive-club .item-page .content-wraper > p:first-child {
  margin-bottom: 12px !important;
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: 0.12em !important;
  color: #D10511 !important;
}
.executive-club .item-page .content-wraper > p:first-child + p { margin-bottom: 32px !important; font-size: 16px !important; color: var(--ui-body-text) !important; }

/* the table: one card per offer, spacer rows hidden */
.executive-club .item-page .content-wraper table,
.executive-club .item-page .content-wraper tbody { display: block !important; width: 100% !important; max-width: none !important; margin: 0 !important; border: 0 !important; }
.executive-club .item-page .content-wraper tbody { display: grid !important; gap: 20px; }
.executive-club .item-page .content-wraper tr {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 32px;
  align-items: center;
  padding: 28px 32px;
  border: 1px solid var(--ui-border-card);
  border-radius: 10px;
  background: var(--ui-white);
  height: auto !important;
}
.executive-club .item-page .content-wraper tr:not(:has(> td:not(:empty))) { display: none !important; }
.executive-club .item-page .content-wraper td {
  display: block !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  float: none !important;
  vertical-align: top !important;
}
.executive-club .item-page .content-wraper td:first-child { text-align: center; }
.executive-club .item-page .content-wraper td:first-child p { margin: 0 !important; text-align: center !important; }
.executive-club .item-page .content-wraper td img { display: block; width: 100% !important; max-width: 220px !important; height: auto !important; margin: 0 auto !important; }
.executive-club .item-page .content-wraper td:last-child p:last-child { margin-bottom: 0 !important; }
.executive-club .item-page .content-wraper td:last-child > p:first-child { font-size: 16px !important; }
.executive-club .item-page .content-wraper td em { color: var(--ui-body-text); }
.executive-club .item-page .content-wraper td a {
  font-weight: 600;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.executive-club .item-page .content-wraper td a:hover { color: var(--ui-red-dark) !important; }

/* after the table: "Sie finden attraktiv, was wir tun?" + the two registration links */
.executive-club .item-page .content-wraper table + p { margin-top: 40px !important; font-size: 22px !important; font-weight: 600; color: var(--ui-ink) !important; }
.executive-club .item-page .content-wraper table + p br { display: none; }
.executive-club .item-page .content-wraper > p > a,
.executive-club .item-page .content-wraper > p > span > a {
  font-weight: 600;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.executive-club .item-page .content-wraper > p > a[target="_blank"]::after,
.executive-club .item-page .content-wraper > p > span > a[target="_blank"]::after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-left: 6px;
  vertical-align: -1px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3h6v6M17 3l-8 8M15 12v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 3h6v6M17 3l-8 8M15 12v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h4'/%3E%3C/svg%3E") center / contain no-repeat;
}
.executive-club .item-page .content-wraper > p > a:hover,
.executive-club .item-page .content-wraper > p > span > a:hover { color: var(--ui-red-dark) !important; }

@media (max-width: 767px) {
  .executive-club .item-page .content-wraper tr { grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 22px 18px; }
  .executive-club .item-page .content-wraper td img { max-width: 180px !important; }
  .executive-club .item-page .content-wraper table + p { font-size: 20px !important; }
}

/* ------------------- Long text articles -------------------
   /leistungen-fuer-interim-manager.html and /unternehmen/mehrwert-fuer-unternehmen-und-provider.html:
   long editor articles (opening quote, bold paragraphs as section titles, lists, images). Styles
   only, markup unchanged. site.js (initLongArticles) marks the quote (.art-quote), its author line
   (.art-quote-by), the section titles (.art-heading) and empty paragraphs (.art-empty); add a new
   page of this kind to LONG_ARTICLE_PAGES there and to the selector list here. */
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p {
  max-width: none !important;
  margin: 0 0 14px !important;
  font-family: var(--ui-font) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-empty { display: none; }
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper strong { color: var(--ui-ink); }

/* opening quote and author */
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-quote {
  margin: 4px 0 8px !important;
  padding: 4px 0 4px 24px;
  border-left: 4px solid var(--ui-red);
  font-size: 23px !important;
  line-height: 1.45 !important;
  color: var(--ui-ink) !important;
  text-wrap: balance;
}
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-quote strong { font-weight: 600; }
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-quote-by {
  margin: 0 0 32px !important;
  padding-left: 28px;
  font-size: 14px !important;
  color: var(--ui-muted) !important;
}

/* section titles */
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-heading {
  margin: 40px 0 12px !important;
  font-size: 21px !important;
  line-height: 1.35 !important;
  color: var(--ui-ink) !important;
  text-wrap: balance;
}
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-heading + p.art-heading { margin-top: 0 !important; font-size: 18px !important; }

/* lists: two columns with red ticks */
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 32px;
  margin: 8px 0 24px !important;
  padding: 0 !important;
  list-style: none !important;
}
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper ul > li {
  position: relative;
  margin: 0 !important;
  padding: 0 0 0 30px !important;
  list-style: none !important;
  font-family: var(--ui-font) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  letter-spacing: normal !important;
  text-align: left !important;
  color: var(--ui-body-text-strong) !important;
}
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper ul > li::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  float: none;
  width: 18px;
  height: 18px;
  margin: 0 !important; /* legacy .content-wraper ul li::before: float, margin-top 10–16px */
  font-size: 0;
  line-height: 0;
  background: var(--ui-red);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* links */
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper a {
  font-weight: 600;
  color: #D10511 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper a:hover { color: var(--ui-red-dark) !important; }

/* images: left-aligned with the text, with some room around */
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p:has(> img) { margin: 24px 0 !important; text-align: left !important; }
:is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p > img { display: inline-block; width: 100% !important; height: auto !important; } /* max-width = the editor's width (set by site.js) */

@media (max-width: 767px) {
  :is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper ul { grid-template-columns: minmax(0, 1fr); }
  :is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-quote { font-size: 19px !important; padding-left: 16px; }
  :is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-quote-by { padding-left: 20px; }
  :is(.leistungen-fuer-interim-manager, .mehrwert-fuer-unternehmen-und-provider) .item-page .content-wraper p.art-heading { font-size: 19px !important; margin-top: 32px !important; }
}
