/* ==========================================================================
   SCHLEPPERFREUNDE SCHWITTEN – FRONTEND 2.14.7
   Konsolidierte Qualitäts-/Responsive-Schicht.
   Ersetzt die einzelnen Front-End-Overrides aus 2.14.0–2.14.6.
   ========================================================================== */

/* ===== Konsolidierte Artikel-Qualitätsregeln ===== */
.article-page .article-copy{max-width:960px;margin-left:auto;margin-right:auto;font-size:15px;line-height:1.75;color:#394c43}.article-page .article-copy>p:first-child{font-size:clamp(17px,1.45vw,20px);line-height:1.65;color:#243e33}.article-page .article-copy p{margin:0 0 1.05em}.article-page .article-copy h2,.article-page .article-copy h3{color:#16372a;font-family:Georgia,serif;line-height:1.12}.article-page .article-copy h2{margin:1.7em 0 .55em;font-size:clamp(27px,3vw,38px)}.article-page .article-copy h3{margin:1.45em 0 .5em;font-size:clamp(21px,2.2vw,28px)}.article-page .article-copy img{display:block;width:auto;max-width:100%;height:auto;margin:22px auto;border:1px solid #d8cdb9;box-shadow:0 8px 24px rgba(37,49,41,.08)}.article-page .article-copy figure{max-width:100%;margin:24px auto}.article-page .article-copy figcaption{margin-top:6px;color:#7b837e;font-size:10px;text-align:center}.article-page .article-copy blockquote{margin:24px 0;padding:17px 20px;border-left:4px solid #c99a30;background:#f5ecd7;color:#294438}.article-page .article-copy ul,.article-page .article-copy ol{padding-left:22px}.article-page .article-copy a{overflow-wrap:anywhere}.sf2120-news-card .sf2120-news-copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-page>header,.article-page .sf2120-article-type{min-width:0}@media(max-width:700px){.article-page .article-copy{font-size:14px;line-height:1.68}.article-page .article-copy>p:first-child{font-size:16px}.article-page .article-copy img{margin:16px auto}}


/* ===== Konsolidiert aus layout-fixes-2-14-1.css ===== */
/* ==========================================================================
   Schlepperfreunde Schwitten 2.14.1
   Visueller Feinschliff nach Desktop-/Mobilprüfung
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. AKTUELLES
   Die Kategorie ist eine kleine Kennzeichnung – nicht das Hauptmotiv.
   Der alte Fallback-Selektor war spezifischer und machte auch das Badge
   riesig. Dieser Block trennt Icon und Badge eindeutig.
   -------------------------------------------------------------------------- */

.sf2120-news-image.is-fallback {
  display: grid;
  place-items: center;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% 38%, rgba(224,190,105,.16), transparent 34%),
    linear-gradient(135deg, #294b3a 0%, #17392c 100%);
}

/* Nur das eigentliche große Fallback-Icon. */
.sf2120-news-image.is-fallback > span:not(.sf2120-news-type) {
  position: static;
  z-index: 1;
  font-size: clamp(38px, 4vw, 54px);
  line-height: 1;
  opacity: .88;
  filter: saturate(.82);
  transform: translateY(-5px);
}

/* Kategorie-Badge: bewusst klein, ruhig und kompakt. */
.sf2120-news-image > .sf2120-news-type,
.sf2120-news-image.is-fallback > .sf2120-news-type {
  position: absolute;
  z-index: 3;
  left: 14px;
  right: auto;
  bottom: 13px;
  width: auto;
  max-width: calc(100% - 28px);
  min-height: 28px;
  padding: 6px 10px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(10, 39, 28, .92);
  border: 1px solid rgba(229, 190, 91, .36);
  color: #efd075;
  font-family: inherit;
  font-size: 9px !important;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
  opacity: 1 !important;
  box-sizing: border-box;
  transform: none;
}

.sf2120-news-type-icon {
  flex: 0 0 auto;
  font-size: 13px;
  line-height: 1;
}

.sf2120-news-type-label {
  min-width: 0;
  font-size: inherit;
  line-height: inherit;
  white-space: nowrap;
}

/* Etwas kompaktere Bildhöhe lässt ältere Beiträge weniger klobig wirken. */
.sf2120-news-grid:not(:has(.sf2120-news-card.is-large)) .sf2120-news-image {
  height: clamp(190px, 18vw, 225px);
}

/* Das Intro rechts oben soll optisch zum Raster gehören. */
.sf2120-news-magazine > header p {
  max-width: 470px;
  justify-self: end;
  font-size: 13px;
  line-height: 1.6;
}

/* --------------------------------------------------------------------------
   2. TERMIN – ANMELDUNG GESCHLOSSEN
   Eine spätere alte CSS-Regel hatte die geschlossene Box wieder in zwei
   Spalten gezwungen. Dadurch stand der Titel in einer extrem schmalen Spalte.
   -------------------------------------------------------------------------- */

.event-registration.event-registration-closed {
  grid-template-columns: minmax(0, 1fr) !important;
  justify-items: center;
  align-items: center;
  min-height: 330px;
  padding: clamp(40px, 6vw, 72px);
  text-align: center;
}

.event-registration.event-registration-closed > div:first-child {
  width: min(100%, 900px);
  max-width: 900px !important;
  margin: 0 auto;
}

.event-registration.event-registration-closed .section-kicker {
  margin-left: auto;
  margin-right: auto;
}

.event-registration.event-registration-closed h2 {
  width: 100%;
  max-width: none;
  margin: 8px auto 0;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1.02;
  letter-spacing: -.025em;
  text-align: center;
  white-space: normal;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
}

.event-registration.event-registration-closed h2 em {
  display: inline;
}

.event-registration.event-registration-closed > div:first-child > p:last-child {
  max-width: 650px;
  margin: 22px auto 0;
  font-size: 14px;
  line-height: 1.7;
  text-align: center;
}

/* --------------------------------------------------------------------------
   3. GÄSTEBUCH / KOMMENTAR CTA
   Text + Button sind jetzt als bewusster Mittelblock angeordnet und stehen
   nicht mehr verloren ganz links auf einer breiten Fahrzeugseite.
   -------------------------------------------------------------------------- */

.sf-community-cta-2116 {
  width: min(1100px, calc(100% - 44px));
  margin: 34px auto !important;
  padding: clamp(24px, 3.5vw, 38px);
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  justify-content: center;
  gap: 17px;
  text-align: center;
  box-sizing: border-box;
}

.sf-community-cta-2116 > div {
  width: min(100%, 760px);
  margin: 0 auto;
}

.sf-community-cta-2116 span {
  text-align: center;
}

.sf-community-cta-2116 strong {
  max-width: 760px;
  margin: 4px auto 0;
  text-align: center;
}

.sf-community-cta-2116 p {
  max-width: 680px;
  margin: 8px auto 0;
  text-align: center;
  line-height: 1.65;
}

.sf-community-cta-2116 .button {
  width: auto;
  min-width: 220px;
  margin: 0 auto;
  justify-content: center;
  text-align: center;
}

/* --------------------------------------------------------------------------
   4. Tablet
   -------------------------------------------------------------------------- */
@media (max-width: 950px) {
  .sf2120-news-magazine > header p {
    justify-self: start;
    max-width: 720px;
  }

  .event-registration.event-registration-closed {
    min-height: 280px;
    padding: 42px 28px;
  }

  .event-registration.event-registration-closed h2 {
    font-size: clamp(38px, 7vw, 56px);
  }
}

/* --------------------------------------------------------------------------
   5. Smartphone
   -------------------------------------------------------------------------- */
@media (max-width: 700px) {
  .sf2120-news-image.is-fallback > span:not(.sf2120-news-type) {
    font-size: 38px;
    transform: translateY(-3px);
  }

  .sf2120-news-image > .sf2120-news-type,
  .sf2120-news-image.is-fallback > .sf2120-news-type {
    left: 10px;
    bottom: 10px;
    max-width: calc(100% - 20px);
    min-height: 27px;
    padding: 6px 8px;
    gap: 5px;
    font-size: 8px !important;
    letter-spacing: .055em;
  }

  .sf2120-news-type-icon {
    font-size: 11px;
  }

  .sf2120-news-type-label {
    white-space: normal;
    overflow-wrap: break-word;
  }

  .event-registration.event-registration-closed {
    min-height: 245px;
    padding: 34px 18px;
  }

  .event-registration.event-registration-closed h2 {
    font-size: clamp(34px, 10vw, 46px);
    line-height: 1.04;
  }

  .event-registration.event-registration-closed h2 em {
    display: block;
    margin-top: 3px;
  }

  .event-registration.event-registration-closed > div:first-child > p:last-child {
    margin-top: 17px;
    font-size: 13px;
  }

  .sf-community-cta-2116 {
    width: calc(100% - 20px);
    margin: 20px auto !important;
    padding: 22px 16px;
    gap: 14px;
  }

  .sf-community-cta-2116 strong {
    font-size: clamp(20px, 6vw, 24px);
  }

  .sf-community-cta-2116 p {
    font-size: 12px;
  }

  .sf-community-cta-2116 .button {
    width: 100%;
    min-width: 0;
  }
}

/* --------------------------------------------------------------------------
   6. Sehr kleine Smartphones
   -------------------------------------------------------------------------- */
@media (max-width: 390px) {
  .event-registration.event-registration-closed h2 {
    font-size: 34px;
  }

  .sf2120-news-image > .sf2120-news-type,
  .sf2120-news-image.is-fallback > .sf2120-news-type {
    font-size: 10.5px !important;
  }
}


/* ===== Konsolidiert aus ui-system-2-14-4.css ===== */
/* ==========================================================================
   Schlepperfreunde Schwitten – 3.0.10
   Einheitliches UI-System – KEINE neuen Funktionen
   ========================================================================== */

.sf-quality-2147 {
  --sf-ui-green: #153a2c;
  --sf-ui-green-dark: #0f2f24;
  --sf-ui-gold: #c99a30;
  --sf-ui-gold-hover: #ddb34f;
  --sf-ui-paper: #fffdf8;
  --sf-ui-cream: #f6f0df;
  --sf-ui-line: #ddd2bd;
  --sf-ui-ink: #233d32;
  --sf-ui-muted: #68756d;
  --sf-ui-danger: #a8463e;
  --sf-ui-warning: #a97516;
  --sf-ui-success: #477f57;
  --sf-ui-radius: 3px;
  --sf-ui-control-h: 54px;
  --sf-ui-card-pad: clamp(20px, 2.5vw, 30px);
  --sf-ui-page-x: clamp(20px, 6vw, 110px);
  --sf-ui-section-y: clamp(52px, 7vw, 92px);
  --sf-ui-gap: clamp(14px, 2vw, 22px);
}

/* --------------------------------------------------------------------------
   1. BUTTONS – one height, typography and interaction model
   -------------------------------------------------------------------------- */
.sf-quality-2147 .button,
.sf-quality-2147 a.button,
.sf-quality-2147 button.button,
.sf-quality-2147 input[type="submit"].button,
.sf-quality-2147 .sf2120-submit-row button[type="submit"],
.sf-quality-2147 .sf-community-submit-row-2116 .button,
.sf-quality-2147 .sf-community-composer-card-2116 .comment-form input[type="submit"],
.sf-quality-2147 .fleet-filter-actions .button,
.sf-quality-2147 .sf-comparison-actions .button {
  min-height: var(--sf-ui-control-h) !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  border-radius: var(--sf-ui-radius) !important;
  box-sizing: border-box;
  font-family: Arial, sans-serif !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
  letter-spacing: .09em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

.sf-quality-2147 .button-primary {
  border: 1px solid var(--sf-ui-gold) !important;
  background: var(--sf-ui-gold) !important;
  color: #172117 !important;
}
.sf-quality-2147 .button-primary:hover,
.sf-quality-2147 .button-primary:focus-visible {
  border-color: var(--sf-ui-gold-hover) !important;
  background: var(--sf-ui-gold-hover) !important;
  color: #172117 !important;
  transform: translateY(-1px) !important;
}
.sf-quality-2147 .button-dark {
  border: 1px solid var(--sf-ui-green) !important;
  background: var(--sf-ui-green) !important;
  color: #fff !important;
}
.sf-quality-2147 .button-light,
.sf-quality-2147 .button-outline,
.sf-quality-2147 .button:not(.button-primary):not(.button-dark) {
  border: 1px solid rgba(21,58,44,.28) !important;
}
.sf-quality-2147 .button:focus-visible,
.sf-quality-2147 button:focus-visible,
.sf-quality-2147 a:focus-visible {
  outline: 3px solid rgba(201,154,48,.30);
  outline-offset: 2px;
}

/* Existing text-only action links stay text links, but use one interaction rhythm. */
.sf-quality-2147 .text-button,
.sf-quality-2147 .sf2120-partner-actions a,
.sf-quality-2147 .archive-card-link {
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .10em;
  text-transform: uppercase;
}

/* --------------------------------------------------------------------------
   2. FORMS – same controls, labels, validation and notices
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) label {
  color: #59685f !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form,
  .fleet-filter,
  .fleet-filter-advanced,
  .sf2120-news-filter,
  .sf2120-partner-filter,
  .site-search-form,
  .search-page-form
) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]), select) {
  width: 100%;
  min-height: var(--sf-ui-control-h) !important;
  padding: 0 15px !important;
  border: 1px solid var(--sf-ui-line) !important;
  border-radius: var(--sf-ui-radius) !important;
  background: var(--sf-ui-paper) !important;
  color: var(--sf-ui-ink) !important;
  box-sizing: border-box;
  font-family: Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
  box-shadow: none !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) textarea {
  width: 100%;
  min-height: 150px;
  padding: 14px 15px !important;
  border: 1px solid var(--sf-ui-line) !important;
  border-radius: var(--sf-ui-radius) !important;
  background: var(--sf-ui-paper) !important;
  color: var(--sf-ui-ink) !important;
  box-sizing: border-box;
  font-family: Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  resize: vertical;
  box-shadow: none !important;
}

.sf-quality-2147 :is(input,select,textarea):focus {
  border-color: var(--sf-ui-gold) !important;
  outline: 3px solid rgba(201,154,48,.13) !important;
  outline-offset: 0;
}
.sf-quality-2147 :is(input,select,textarea)[aria-invalid="true"] {
  border-color: var(--sf-ui-danger) !important;
  outline-color: rgba(168,70,62,.13) !important;
}
.sf-quality-2147 form p {
  min-width: 0;
}
.sf-quality-2147 .sf2120-form-row,
.sf-quality-2147 .form-grid {
  gap: 14px !important;
}

.sf-quality-2147 :is(.form-notice,.sf2120-public-notice,.sf2121-forum-safety-note) {
  margin: 0 0 18px;
  padding: 15px 17px !important;
  border: 1px solid var(--sf-ui-line);
  border-left-width: 4px !important;
  border-radius: var(--sf-ui-radius);
  background: #fffdf8;
  font-size: 13px;
  line-height: 1.6;
}
.sf-quality-2147 :is(.form-notice-success,.sf2120-public-notice.is-ok) {
  border-left-color: var(--sf-ui-success) !important;
  background: #edf6ef !important;
}
.sf-quality-2147 :is(.form-notice-error,.sf2120-public-notice.is-warning) {
  border-left-color: var(--sf-ui-danger) !important;
  background: #fbefec !important;
}

/* --------------------------------------------------------------------------
   3. MOBILE/TABLET SPACING – same page gutters/card rhythm/touch targets
   -------------------------------------------------------------------------- */
@media (max-width: 1150px) {
  .sf-quality-2147 :is(
    .subpage-section,
    .sf2120-news-magazine,
    .sf2120-forum-shell,
    .sf2120-contact-layout,
    .sf2120-partner-shell,
    .vehicle-details,
    .vehicle-story,
    .gallery-section,
    .event-detail,
    .event-registration,
    .search-page
  ) {
    padding-left: clamp(18px, 4vw, 34px) !important;
    padding-right: clamp(18px, 4vw, 34px) !important;
  }

  .sf-quality-2147 :is(
    .tractor-grid,
    .full-tractor-grid,
    .sf2120-news-grid,
    .sf2120-partner-grid,
    .search-results-grid,
    .sf2120-forum-list
  ) {
    gap: 14px !important;
  }

  .sf-quality-2147 :is(.button,button,input[type="submit"],select,.site-search-form input) {
    min-height: 54px;
  }
}

@media (max-width: 700px) {
  .sf-quality-2147 {
    --sf-ui-page-x: 14px;
    --sf-ui-section-y: 44px;
    --sf-ui-card-pad: 18px;
  }

  .sf-quality-2147 :is(
    .subpage-section,
    .sf2120-news-magazine,
    .sf2120-forum-shell,
    .sf2120-contact-layout,
    .sf2120-partner-shell,
    .vehicle-details,
    .vehicle-story,
    .gallery-section,
    .event-detail,
    .event-registration,
    .search-page
  ) {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .sf-quality-2147 .button {
    width: 100%;
    min-height: 56px !important;
  }
}

/* --------------------------------------------------------------------------
   4. HEADING HIERARCHY
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(.page-hero,.vehicle-hero,.article-page) h1 {
  font-size: clamp(44px, 6vw, 78px);
  line-height: .98;
  letter-spacing: -.025em;
}
.sf-quality-2147 :is(
  .section-heading,
  .sf2120-news-magazine > header,
  .sf2120-forum-replies > header,
  .sf2120-partner-shell > header
) h2 {
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1.02;
  letter-spacing: -.018em;
}
.sf-quality-2147 :is(
  .sf2120-news-card,
  .sf2120-partner-card,
  .archive-card,
  .search-result-card,
  .sf2120-forum-topic
) h2 {
  line-height: 1.08;
}
.sf-quality-2147 :is(.section-kicker,.eyebrow,.sf2120-kicker) {
  margin-bottom: 18px !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
.sf-quality-2147 :is(.page-hero,.section-heading,.sf2120-news-magazine > header) > p:last-child {
  line-height: 1.7;
}

/* --------------------------------------------------------------------------
   5. CARDS – same structure and spacing without erasing page identity
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-news-card,
  .sf2120-partner-card,
  .search-result-card,
  .archive-card,
  .sf2120-forum-topic,
  .sf-community-comment-2116
) {
  min-width: 0;
  border: 1px solid var(--sf-ui-line) !important;
  border-radius: var(--sf-ui-radius) !important;
  box-shadow: 0 5px 18px rgba(35,47,39,.05);
}

.sf-quality-2147 :is(
  .sf2120-news-copy,
  .sf2120-partner-main > div:last-child,
  .search-result-body
) {
  padding: var(--sf-ui-card-pad) !important;
}

.sf-quality-2147 :is(.sf2120-news-image,.search-result-card img) {
  height: clamp(205px, 22vw, 260px);
  object-fit: cover;
}

.sf-quality-2147 :is(
  .sf2120-news-card,
  .sf2120-partner-card,
  .search-result-card,
  .archive-card,
  .sf2120-forum-topic
):hover {
  box-shadow: 0 14px 34px rgba(19,41,31,.10);
}

/* Vehicle cards deliberately keep their photo-overlay design, but borders/tool
   buttons follow the common sizing rhythm. */
.sf-quality-2147 .tractor-card {
  border-radius: var(--sf-ui-radius);
}
.sf-quality-2147 :is(.vehicle-favorite-button,.vehicle-compare-button) {
  min-width: 44px;
  min-height: 44px;
}

/* --------------------------------------------------------------------------
   6. FILTERS / SEARCH
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .fleet-filter,
  .fleet-filter-advanced,
  .sf2120-news-filter,
  .sf2120-partner-filter,
  .search-page-form
) {
  border: 1px solid var(--sf-ui-line) !important;
  border-radius: var(--sf-ui-radius);
  background: var(--sf-ui-cream) !important;
  box-sizing: border-box;
}

.sf-quality-2147 :is(
  .fleet-filter label span,
  .sf2120-news-filter label,
  .sf2120-partner-filter label
) {
  color: #68756d !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}

.sf-quality-2147 .site-search-form {
  align-items: stretch;
  gap: 8px;
}
.sf-quality-2147 .site-search-form button {
  min-height: var(--sf-ui-control-h) !important;
  border-radius: var(--sf-ui-radius);
}
.sf-quality-2147 :is(.fleet-filter-actions,.sf-comparison-actions) {
  gap: 10px !important;
}

/* --------------------------------------------------------------------------
   7. BADGES / STATUSES – same typography, height and radius
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .status-badge,
  .vehicle-group-badge,
  .sf2120-news-type,
  .sf2120-team-badge,
  .sf2120-accepted-badge,
  .sf-community-reference-badge-2116,
  .sf-community-team-badge-2116
) {
  min-height: 28px;
  padding: 6px 9px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border-radius: 2px !important;
  box-sizing: border-box;
  font-family: Arial, sans-serif !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  white-space: nowrap;
}
.sf-quality-2147 .sf2120-accepted-badge {
  background: #e9f3eb !important;
  color: #356d46 !important;
}
.sf-quality-2147 .sf2120-team-badge {
  background: #f2e6c7 !important;
  color: #765714 !important;
}

/* --------------------------------------------------------------------------
   8. EMPTY / ERROR STATES
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-empty,
  .search-empty,
  .fleet-filter-empty,
  .empty-event,
  .sf-event-admin-no-results
) {
  width: 100%;
  min-height: 190px;
  padding: clamp(28px, 5vw, 54px) !important;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 8px;
  box-sizing: border-box;
  border: 1px dashed #cfc3ac !important;
  border-radius: var(--sf-ui-radius);
  background: var(--sf-ui-cream) !important;
  color: var(--sf-ui-ink);
  text-align: center;
}
.sf-quality-2147 :is(.sf2120-empty,.search-empty,.fleet-filter-empty,.empty-event) strong,
.sf-quality-2147 :is(.sf2120-empty,.search-empty,.fleet-filter-empty,.empty-event) h2 {
  margin: 0 !important;
  font-family: Georgia, serif;
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.08;
}
.sf-quality-2147 :is(.sf2120-empty,.search-empty,.fleet-filter-empty,.empty-event) p {
  max-width: 620px;
  margin: 4px auto 0 !important;
  color: var(--sf-ui-muted) !important;
  line-height: 1.65;
}

/* --------------------------------------------------------------------------
   10. SINGLE MOBILE/TABLET NAVIGATION – supersedes 2.14.2/2.14.3 layers
   -------------------------------------------------------------------------- */
@media screen and (max-width: 1150px) {
  .sf-quality-2147 .site-header .mobile-menu {
    display: block;
    position: relative;
    z-index: 1200;
    justify-self: end;
  }
  .sf-quality-2147 .site-header .mobile-menu > summary {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px;
    min-height: 52px;
    margin: 0;
    padding: 0 !important;
    display: grid !important;
    place-content: center !important;
    justify-items: center !important;
    gap: 6px !important;
    list-style: none;
    cursor: pointer;
    border: 0;
    background: transparent;
    touch-action: manipulation;
  }
  .sf-quality-2147 .site-header .mobile-menu > summary::-webkit-details-marker { display:none; }
  .sf-quality-2147 .site-header .mobile-menu > summary span {
    width: 29px !important;
    height: 2px !important;
    margin: 0 !important;
    background: var(--sf-ui-green) !important;
  }
  .sf-quality-2147 .site-header .mobile-menu > nav {
    position: absolute !important;
    right: 0 !important;
    top: 64px !important;
    width: min(440px, calc(100vw - 48px)) !important;
    max-width: calc(100vw - 48px) !important;
    max-height: min(760px, calc(100dvh - 112px)) !important;
    margin: 0 !important;
    padding: 16px !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 9px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: var(--sf-ui-cream) !important;
    border: 1px solid rgba(22,54,42,.18) !important;
    border-radius: var(--sf-ui-radius);
    box-shadow: 0 18px 55px rgba(0,0,0,.22) !important;
    box-sizing: border-box;
  }
  .sf-quality-2147 .site-header .mobile-menu > nav .site-search-form {
    width: 100% !important;
    margin: 0 0 6px !important;
    padding: 0 0 13px !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    border-bottom: 1px solid rgba(22,54,42,.16);
  }
  .sf-quality-2147 .site-header .mobile-menu > nav :is(ul,.menu) {
    display: contents !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .sf-quality-2147 .site-header .mobile-menu > nav li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .sf-quality-2147 .site-header .mobile-menu > nav a {
    width: 100% !important;
    min-height: 60px !important;
    margin: 0 !important;
    padding: 11px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(21,54,41,.14) !important;
    border-radius: var(--sf-ui-radius) !important;
    background: rgba(255,253,247,.78) !important;
    color: var(--sf-ui-green) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: normal !important;
    word-break: normal !important;
    touch-action: manipulation;
  }
  .sf-quality-2147 .site-header .mobile-menu > nav :is(.current-menu-item,.current_page_item) > a,
  .sf-quality-2147 .site-header .mobile-menu > nav a[aria-current="page"] {
    background: var(--sf-ui-green) !important;
    border-color: var(--sf-ui-green) !important;
    color: #fff !important;
  }
}

@media screen and (max-width:700px) {
  .sf-quality-2147 .site-header .mobile-menu > nav {
    right: -5px !important;
    top: 60px !important;
    width: min(94vw,390px) !important;
    max-width: calc(100vw - 18px) !important;
    max-height: calc(100dvh - 96px) !important;
    padding: 12px !important;
    gap: 8px !important;
  }
  .sf-quality-2147 .site-header .mobile-menu > nav a {
    min-height: 58px !important;
    padding: 10px 13px !important;
    font-size: 15px !important;
  }
}


/* ===== Konsolidiert aus readability-2-14-5.css ===== */
/* ==========================================================================
   Schlepperfreunde Schwitten – Version 3.0.10
   Lesbarkeit für Desktop, Tablet und Smartphone
   Keine neuen Funktionen.
   ========================================================================== */

.sf-quality-2147 {
  --sf-r-text: #24382f;
  --sf-r-muted: #52645b;
  --sf-r-muted-dark: rgba(255,255,255,.82);
  --sf-r-label: #4f6258;
  --sf-r-label-dark: rgba(255,255,255,.88);
  --sf-r-helper: #5f7167;
  --sf-r-helper-dark: rgba(255,255,255,.78);
  --sf-r-field-gap: 11px;
  --sf-r-row-gap: 24px;
}

/* --------------------------------------------------------------------------
   A. ALLGEMEINE LESBARKEIT
   Kleine Meta-/Hilfstexte werden nicht mehr mit 7–10 px dargestellt.
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .announcement,
  .brand small,
  .footer-brand small,
  .site-footer nav,
  .hero-caption span,
  .hero-caption small,
  .hero-stats span,
  .year-stamp span,
  .home-event-label span,
  .home-event-label small,
  .home-event-facts small,
  .status-badge,
  .tractor-info small,
  .tractor-info em,
  .fleet-filter label span,
  .fleet-filter-result,
  .archive-card-meta,
  .archive-card-link,
  .detail-specs dt,
  .vehicle-maintenance-list span,
  .vehicle-gallery-controls span,
  .vehicle-gallery-link span,
  .vehicle-gallery-dialog figcaption,
  .source-note a,
  .next-item small,
  .event-detail-grid span,
  .event-calendar-header nav a,
  .event-calendar-header nav strong,
  .event-calendar-years > span,
  .event-calendar-weekday,
  .event-calendar-day a small,
  .event-calendar-day a .event-calendar-type,
  .event-calendar-legend li,
  .about-welcome figcaption,
  .guest-meta,
  .forum-groups li small,
  .partner-grid em,
  .legal-date,
  .search-result-body small,
  .comment-meta,
  .sf-comparison-dock-heading span,
  .sf-comparison-table-wrap tbody th span,
  .sf-comparison-mobile-row h3,
  .sf2120-news-type,
  .vehicle-group-badge,
  .vehicle-group-card dt
) {
  font-size: 12px !important;
  line-height: 1.45 !important;
  letter-spacing: .055em !important;
}

.sf-quality-2147 :is(.eyebrow,.section-kicker,.sf2120-kicker) {
  font-size: 12px !important;
  line-height: 1.4 !important;
  letter-spacing: .11em !important;
}

.sf-quality-2147 :is(
  .values-grid p,
  .source-note p,
  .event-calendar-legend,
  .guestbook-cta > p:not(.section-kicker),
  .sf2121-contact-crosslinks p,
  .sf2120-vehicle-contact p
) {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.sf-quality-2147 .values-grid span {
  font-size: 14px !important;
}

/* Small helper text anywhere in content should remain readable. */
.sf-quality-2147 main small:not(
  .sf2120-news-type *,
  .status-badge *,
  .vehicle-group-badge *
) {
  line-height: 1.5;
}

/* More contrast on dark green surfaces. */
.sf-quality-2147 :is(
  .hero-lead,
  .section-heading > p,
  .guestbook-cta > p,
  .event-registration-form label,
  .event-registration-deadline,
  .sf-submission-final-note,
  .sf-guest-submission-form small,
  .sf-guest-submission-form label,
  .sf2120-vehicle-contact p
) {
  color: var(--sf-r-muted-dark) !important;
}

/* --------------------------------------------------------------------------
   B. HOME/KONTAKT-SCHNELLZUGRIFFE
   Der Bereich aus dem Screenshot bleibt garantiert als Kartenraster erhalten,
   selbst wenn ein älteres Feature-Stylesheet nicht greifen sollte.
   -------------------------------------------------------------------------- */
.sf-quality-2147 .sf2121-home-contact {
  text-align: center;
}

.sf-quality-2147 .sf2121-home-contact > p {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

.sf-quality-2147 .sf2121-home-connect {
  width: min(1240px, calc(100% - 44px)) !important;
  margin: 34px auto 0 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 0 !important;
  border: 1px solid rgba(215,171,67,.55) !important;
  background: rgba(6,35,25,.42) !important;
}

.sf-quality-2147 .sf2121-home-connect a {
  min-width: 0;
  min-height: 126px !important;
  padding: 22px 20px !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0,1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  row-gap: 6px !important;
  align-content: center !important;
  text-align: left !important;
  border-right: 1px solid rgba(215,171,67,.35) !important;
  color: #fff !important;
}

.sf-quality-2147 .sf2121-home-connect a:last-child {
  border-right: 0 !important;
}

.sf-quality-2147 .sf2121-home-connect a > span {
  grid-row: 1 / 3 !important;
  align-self: center;
  font-size: 26px !important;
}

.sf-quality-2147 .sf2121-home-connect strong {
  min-width: 0;
  font: 700 18px/1.25 Georgia,serif !important;
  color: #fff;
  overflow-wrap: break-word;
}

.sf-quality-2147 .sf2121-home-connect small {
  margin: 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  overflow-wrap: break-word;
}

/* --------------------------------------------------------------------------
   C. FORMULARSYSTEM – ABSTÄNDE, LABELS, HILFSTEXTE, KEINE ÜBERLAPPUNGEN
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) {
  font-size: 16px;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) :is(p,.sf2120-field,.form-field) {
  min-width: 0;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) label {
  display: block;
  margin: 0 0 var(--sf-r-field-gap) !important;
  color: var(--sf-r-label) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.45 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  overflow-wrap: break-word;
}

.sf-quality-2147 :is(
  .sf-guest-submission-form,
  .event-registration-form,
  .comment-form
) label {
  color: var(--sf-r-label-dark) !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form,
  .fleet-filter,
  .fleet-filter-advanced,
  .sf2120-news-filter,
  .sf2120-partner-filter,
  .site-search-form,
  .search-page-form
) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),select) {
  min-height: 58px !important;
  padding: 0 16px !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) textarea {
  min-height: 170px !important;
  padding: 15px 16px !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) :is(small,.description,.field-help,.form-help) {
  display: block;
  margin-top: 10px !important;
  color: var(--sf-r-helper) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.sf-quality-2147 :is(
  .sf-guest-submission-form,
  .event-registration-form,
  .comment-form
) :is(small,.description,.field-help,.form-help) {
  color: var(--sf-r-helper-dark) !important;
}

/* Form grids: enough room between text and controls. */
.sf-quality-2147 :is(
  .sf-guest-submission-form .form-grid,
  .sf2120-contact-form .sf2120-form-row,
  .sf2120-forum-form .sf2120-form-row,
  .sf2120-forum-reply-form .sf2120-form-row,
  .event-registration-form .form-grid,
  .sf-community-field-row-2116
) {
  column-gap: 28px !important;
  row-gap: var(--sf-r-row-gap) !important;
  align-items: start !important;
}

/* --------------------------------------------------------------------------
   D. GASTFAHRZEUG-FORMULAR – gezielt aus den Screenshots
   -------------------------------------------------------------------------- */
.sf-quality-2147 .sf-submission-page {
  padding-top: clamp(48px,6vw,78px);
  padding-bottom: clamp(54px,7vw,90px);
}

.sf-quality-2147 .sf-submission-public-intro,
.sf-quality-2147 .sf-guest-submission-form {
  width: min(1500px, 100%);
  margin-left: auto;
  margin-right: auto;
}

.sf-quality-2147 .sf-guest-submission-form {
  padding: clamp(34px,4vw,58px) !important;
  gap: 40px !important;
}

.sf-quality-2147 .sf-guest-submission-form fieldset {
  margin: 0 !important;
  padding: 0 0 36px !important;
}

.sf-quality-2147 .sf-guest-submission-form legend {
  margin: 0 0 28px !important;
  color: #e2b84c !important;
  font: 700 27px/1.2 Georgia,serif !important;
}

.sf-quality-2147 .sf-guest-submission-form legend span,
.sf-quality-2147 .sf-guest-submission-form label span {
  color: rgba(255,255,255,.80) !important;
  font-size: .82em !important;
}

.sf-quality-2147 .sf-guest-submission-form .form-grid > p,
.sf-quality-2147 .sf-guest-submission-form fieldset > p {
  display: grid;
  align-content: start;
  gap: 0;
  margin: 0 !important;
}

.sf-quality-2147 .sf-guest-submission-form input:not([type="checkbox"]),
.sf-quality-2147 .sf-guest-submission-form select,
.sf-quality-2147 .sf-guest-submission-form textarea {
  border-color: rgba(255,255,255,.42) !important;
  background: #fffdf8 !important;
  color: #20362c !important;
}

.sf-quality-2147 .sf-guest-submission-form input::placeholder,
.sf-quality-2147 .sf-guest-submission-form textarea::placeholder {
  color: #718078 !important;
  opacity: 1;
}

.sf-quality-2147 .sf-guest-submission-form input[type="file"] {
  min-height: 64px !important;
  padding: 13px 14px !important;
  display: flex;
  align-items: center;
  color: #20362c !important;
}

.sf-quality-2147 .sf-guest-submission-form small {
  margin-top: 11px !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.sf-quality-2147 .sf-submission-consents {
  display: grid;
  gap: 16px !important;
}

.sf-quality-2147 .sf-submission-consents label {
  min-height: 54px;
  margin: 0 !important;
  padding: 12px 14px;
  display: grid !important;
  grid-template-columns: 24px minmax(0,1fr);
  align-items: start;
  gap: 13px !important;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.035);
  color: rgba(255,255,255,.90) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.sf-quality-2147 .sf-submission-consents input[type="checkbox"] {
  width: 22px !important;
  height: 22px !important;
  margin: 1px 0 0 !important;
}

.sf-quality-2147 .sf-submission-consents a {
  color: #efca69 !important;
  font-weight: 750;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.sf-quality-2147 .sf-guest-submission-form > .button {
  min-height: 58px !important;
  padding: 0 25px !important;
  font-size: 12px !important;
}

.sf-quality-2147 .sf-submission-final-note {
  max-width: 900px;
  margin: -8px 0 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* --------------------------------------------------------------------------
   E. COMMUNITY / GÄSTEBUCH / FORUM
   -------------------------------------------------------------------------- */
.sf-quality-2147 .sf-community-cta-2116 span,
.sf-quality-2147 .sf-community-feed-head-2116 span {
  font-size: 11px !important;
  line-height: 1.4 !important;
}

.sf-quality-2147 .sf-community-cta-2116 p,
.sf-quality-2147 .sf-community-form-note-2116,
.sf-quality-2147 .sf-community-reference-field > small {
  font-size: 14px !important;
  line-height: 1.65 !important;
}

.sf-quality-2147 .sf-community-form-2116 label,
.sf-quality-2147 .sf-community-reference-field > label {
  font-size: 12px !important;
}

.sf-quality-2147 .sf-community-comment-head-2116 time {
  font-size: 12px !important;
}

.sf-quality-2147 .sf-community-reference-badge-2116 {
  font-size: 11px !important;
}

/* --------------------------------------------------------------------------
   F. KONTAKT / PARTNER / IMPRESSUM / DATENSCHUTZ
   -------------------------------------------------------------------------- */
.sf-quality-2147 .sf2121-contact-crosslinks {
  width: min(1320px, calc(100% - 44px));
}

.sf-quality-2147 .sf2121-contact-crosslinks > header span {
  font-size: 11px !important;
}

.sf-quality-2147 .sf2121-contact-crosslinks p {
  font-size: 14px !important;
}

.sf-quality-2147 .sf2121-contact-crosslinks strong {
  font-size: 17px !important;
}

.sf-quality-2147 .sf2121-contact-crosslinks small,
.sf-quality-2147 .sf2121-contact-crosslinks em {
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.sf-quality-2147 .sf-imprint-intro-2123 > div > span,
.sf-quality-2147 .sf-imprint-content-2123 section > span,
.sf-quality-2147 .sf-imprint-side-2123 section > span {
  font-size: 11px !important;
}

.sf-quality-2147 .sf-imprint-nav-2123 a,
.sf-quality-2147 .sf-imprint-provider-2123 small,
.sf-quality-2147 .sf-imprint-provider-2123 em,
.sf-quality-2147 .sf-imprint-data-list-2123 dt,
.sf-quality-2147 .sf-imprint-side-2123 p,
.sf-quality-2147 .sf-imprint-side-2123 a {
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* --------------------------------------------------------------------------
   G. DESKTOP – 1151px+
   -------------------------------------------------------------------------- */
@media (min-width: 1151px) {
  .sf-quality-2147 .desktop-nav {
    font-size: 14px;
  }

  .sf-quality-2147 .header-cta,
  .sf-quality-2147 .header-search > summary {
    font-size: 12px;
  }

  .sf-quality-2147 .sf-guest-submission-form .form-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }

  .sf-quality-2147 .sf-guest-submission-form label {
    min-height: 19px;
  }
}

/* --------------------------------------------------------------------------
   H. TABLET – eigenständige Anordnung
   -------------------------------------------------------------------------- */
@media (min-width: 701px) and (max-width: 1150px) {
  .sf-quality-2147 {
    --sf-r-field-gap: 10px;
    --sf-r-row-gap: 21px;
  }

  .sf-quality-2147 :is(.eyebrow,.section-kicker,.sf2120-kicker) {
    font-size: 11.5px !important;
  }

  .sf-quality-2147 .sf2121-home-connect {
    width: min(760px, calc(100% - 34px)) !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }

  .sf-quality-2147 .sf2121-home-connect a {
    min-height: 118px !important;
    border-bottom: 1px solid rgba(215,171,67,.35) !important;
  }

  .sf-quality-2147 .sf2121-home-connect a:nth-child(2n) {
    border-right: 0 !important;
  }

  .sf-quality-2147 .sf2121-home-connect a:nth-last-child(-n+2) {
    border-bottom: 0 !important;
  }

  .sf-quality-2147 .sf-guest-submission-form {
    width: min(920px,100%);
    padding: 34px 30px !important;
  }

  /* On normal tablets, one field per row is easier for older users. */
  .sf-quality-2147 .sf-guest-submission-form .form-grid {
    grid-template-columns: 1fr !important;
  }

  .sf-quality-2147 :is(
    .sf2120-contact-form,
    .sf2120-forum-form,
    .sf2120-forum-reply-form,
    .sf-guest-submission-form,
    .event-registration-form
  ) label {
    font-size: 13px !important;
  }

  .sf-quality-2147 :is(
    .sf2120-contact-form,
    .sf2120-forum-form,
    .sf2120-forum-reply-form,
    .sf-guest-submission-form,
    .event-registration-form
  ) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),select,textarea) {
    font-size: 16px !important;
  }
}

/* --------------------------------------------------------------------------
   I. SMARTPHONE – eigenständige Anordnung
   -------------------------------------------------------------------------- */
@media (max-width: 700px) {
  .sf-quality-2147 {
    --sf-r-field-gap: 9px;
    --sf-r-row-gap: 19px;
  }

  .sf-quality-2147 :is(
    .announcement,
    .brand small,
    .footer-brand small,
    .site-footer nav,
    .hero-caption span,
    .hero-caption small,
    .hero-stats span,
    .year-stamp span,
    .fleet-filter-result,
    .archive-card-meta,
    .detail-specs dt,
    .event-detail-grid span,
    .event-calendar-weekday,
    .guest-meta,
    .legal-date,
    .comment-meta
  ) {
    font-size: 11.5px !important;
    line-height: 1.5 !important;
  }

  .sf-quality-2147 :is(.eyebrow,.section-kicker,.sf2120-kicker) {
    margin-bottom: 16px !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    letter-spacing: .085em !important;
  }

  .sf-quality-2147 .sf2121-home-contact > p {
    padding: 0 14px;
    font-size: 15px !important;
  }

  .sf-quality-2147 .sf2121-home-connect {
    width: calc(100% - 20px) !important;
    grid-template-columns: 1fr !important;
  }

  .sf-quality-2147 .sf2121-home-connect a {
    min-height: 92px !important;
    padding: 17px 16px !important;
    grid-template-columns: 34px minmax(0,1fr) !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(215,171,67,.35) !important;
  }

  .sf-quality-2147 .sf2121-home-connect a:last-child {
    border-bottom: 0 !important;
  }

  .sf-quality-2147 .sf2121-home-connect strong {
    font-size: 17px !important;
  }

  .sf-quality-2147 .sf2121-home-connect small {
    font-size: 13.5px !important;
  }

  .sf-quality-2147 .sf-submission-page {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .sf-quality-2147 .sf-guest-submission-form {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 26px 18px !important;
    gap: 32px !important;
  }

  .sf-quality-2147 .sf-guest-submission-form fieldset {
    padding-bottom: 30px !important;
  }

  .sf-quality-2147 .sf-guest-submission-form legend {
    margin-bottom: 23px !important;
    font-size: 24px !important;
  }

  .sf-quality-2147 .sf-guest-submission-form .form-grid {
    grid-template-columns: 1fr !important;
    gap: 19px !important;
  }

  .sf-quality-2147 :is(
    .sf2120-contact-form,
    .sf2120-forum-form,
    .sf2120-forum-reply-form,
    .sf-guest-submission-form,
    .event-registration-form,
    .sf-community-form-2116,
    .sf-community-composer-card-2116 .comment-form
  ) label {
    font-size: 12.5px !important;
    line-height: 1.45 !important;
  }

  .sf-quality-2147 :is(
    .sf2120-contact-form,
    .sf2120-forum-form,
    .sf2120-forum-reply-form,
    .sf-guest-submission-form,
    .event-registration-form,
    .sf-community-form-2116,
    .sf-community-composer-card-2116 .comment-form
  ) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),select) {
    min-height: 58px !important;
    font-size: 16px !important;
  }

  .sf-quality-2147 :is(
    .sf2120-contact-form,
    .sf2120-forum-form,
    .sf2120-forum-reply-form,
    .sf-guest-submission-form,
    .event-registration-form,
    .sf-community-form-2116,
    .sf-community-composer-card-2116 .comment-form
  ) :is(small,.description,.field-help,.form-help) {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
  }

  .sf-quality-2147 .sf-submission-consents label {
    min-height: 0;
    padding: 13px 12px;
    font-size: 13.5px !important;
  }

  .sf-quality-2147 .sf-guest-submission-form > .button {
    width: 100% !important;
    min-height: 58px !important;
  }

  .sf-quality-2147 .sf-submission-final-note {
    font-size: 13.5px !important;
  }

  .sf-quality-2147 .sf2121-contact-crosslinks {
    width: calc(100% - 20px);
    padding: 17px !important;
  }

  .sf-quality-2147 .sf2121-contact-crosslinks > div {
    gap: 10px;
  }
}

/* Very narrow phones: no horizontal collision from long labels/links. */
@media (max-width: 390px) {
  .sf-quality-2147 .sf-guest-submission-form {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .sf-quality-2147 .sf-submission-consents label {
    grid-template-columns: 22px minmax(0,1fr);
    gap: 11px !important;
  }

  .sf-quality-2147 :is(input,select,textarea,button,a) {
    max-width: 100%;
  }
}


/* ===== Konsolidiert aus home-quicklinks-2-14-6.css ===== */
/* ==========================================================================
   Schlepperfreunde Schwitten – 3.0.10
   Schnellzugriffe direkt unter Hauptbild/Hero
   ========================================================================== */

.sf2146-hero-quicklinks {
  position: relative;
  z-index: 4;
  width: 100%;
  padding: clamp(28px, 3.3vw, 46px) clamp(26px, 6vw, 110px);
  background: #f7f3e8;
  border-top: 1px solid #ddd2bd;
  border-bottom: 1px solid #ddd2bd;
  box-sizing: border-box;
}

.sf2146-hero-quicklinks .sf2146-home-connect {
  width: min(1240px, 100%) !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1px solid rgba(201,154,48,.72) !important;
  background: #123428 !important;
  box-shadow: 0 12px 28px rgba(24,44,35,.08);
}

.sf2146-hero-quicklinks .sf2146-home-connect a {
  min-width: 0;
  min-height: 112px !important;
  padding: 20px 22px !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0,1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  row-gap: 6px !important;
  align-content: center !important;
  text-align: left !important;
  border-right: 1px solid rgba(201,154,48,.45) !important;
  border-bottom: 0 !important;
  background: #123428 !important;
  color: #fff !important;
  text-decoration: none !important;
  box-sizing: border-box;
  transition: background-color .18s ease, transform .18s ease;
}

.sf2146-hero-quicklinks .sf2146-home-connect a:last-child {
  border-right: 0 !important;
}

.sf2146-hero-quicklinks .sf2146-home-connect a:hover,
.sf2146-hero-quicklinks .sf2146-home-connect a:focus-visible {
  background: #194736 !important;
  transform: translateY(-2px);
}

.sf2146-hero-quicklinks .sf2146-home-connect a > span {
  grid-row: 1 / 3 !important;
  align-self: center;
  font-size: 25px !important;
  line-height: 1 !important;
}

.sf2146-hero-quicklinks .sf2146-home-connect strong {
  min-width: 0;
  color: #fff !important;
  font: 700 18px/1.2 Georgia, serif !important;
  overflow-wrap: break-word;
}

.sf2146-hero-quicklinks .sf2146-home-connect small {
  margin: 0 !important;
  color: rgba(255,255,255,.82) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  overflow-wrap: break-word;
}

/* Keine ungewollte zusätzliche Lücke vor "Wer wir sind". */
.sf2146-hero-quicklinks + .intro {
  margin-top: 0 !important;
}

/* Tablet: 2 x 2 */
@media (min-width: 701px) and (max-width: 1150px) {
  .sf2146-hero-quicklinks {
    padding: 26px clamp(20px, 4vw, 36px);
  }

  .sf2146-hero-quicklinks .sf2146-home-connect {
    width: min(780px, 100%) !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect a {
    min-height: 108px !important;
    border-bottom: 1px solid rgba(201,154,48,.45) !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect a:nth-child(2n) {
    border-right: 0 !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect a:nth-last-child(-n+2) {
    border-bottom: 0 !important;
  }
}

/* Smartphone: untereinander */
@media (max-width: 700px) {
  .sf2146-hero-quicklinks {
    padding: 18px 10px;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect {
    width: 100% !important;
    grid-template-columns: 1fr !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect a {
    min-height: 86px !important;
    padding: 16px 15px !important;
    grid-template-columns: 34px minmax(0,1fr) !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(201,154,48,.45) !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect a:last-child {
    border-bottom: 0 !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect strong {
    font-size: 17px !important;
  }

  .sf2146-hero-quicklinks .sf2146-home-connect small {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
  }
}

/* ==========================================================================
   Version 3.0.10 – FINALER QUALITÄTSDURCHGANG
   Einheitlicher Rhythmus, Typografie, Karten, Formulare, Responsive,
   Überlaufschutz und eindeutige Aktions-Hierarchie.
   ========================================================================== */

.sf-quality-2147 {
  --sf247-space-xs: 8px;
  --sf247-space-sm: 12px;
  --sf247-space-md: 18px;
  --sf247-space-lg: 28px;
  --sf247-space-xl: clamp(44px, 6vw, 76px);
  --sf247-page-x: clamp(20px, 6vw, 110px);
  --sf247-body: 16px;
  --sf247-small: 13px;
  --sf247-line: 1.65;
}

/* --------------------------------------------------------------------------
   1 / 2. GLOBALER ABSTAND + TYPOGRAFIE
   -------------------------------------------------------------------------- */
.sf-quality-2147 main {
  min-width: 0;
}

.sf-quality-2147 main :is(section, article, div, aside, form, fieldset, header, footer, nav) {
  min-width: 0;
}

.sf-quality-2147 main :is(p, li, dd, address, figcaption, small) {
  overflow-wrap: anywhere;
}

.sf-quality-2147 main :is(img, video, iframe, svg) {
  max-width: 100%;
}

.sf-quality-2147 :is(
  .intro.section,
  .home-event.section,
  .fleet.section,
  .project.section,
  .news.section,
  .subpage-section,
  .vehicle-story,
  .vehicle-details,
  .gallery-section,
  .event-detail,
  .event-registration
) {
  scroll-margin-top: 110px;
}

.sf-quality-2147 :is(
  .intro.section,
  .home-event.section,
  .fleet.section,
  .project.section,
  .news.section
) {
  padding-top: clamp(72px, 8vw, 118px);
  padding-bottom: clamp(72px, 8vw, 118px);
}

.sf-quality-2147 :is(
  .intro-grid,
  .section-heading,
  .news-header,
  .fleet-filter-heading
) {
  margin-bottom: clamp(34px, 4vw, 56px);
}

.sf-quality-2147 :is(
  .intro-copy p,
  .project-lead,
  .home-event-copy > p:not(.section-kicker),
  .section-heading > p,
  .contact > p:not(.section-kicker),
  .wp-content p,
  .article-copy p
) {
  font-size: 16px;
  line-height: 1.72;
}

.sf-quality-2147 :is(
  .hero h1,
  .page-hero h1,
  .vehicle-hero h1,
  .article-page h1
) {
  text-wrap: balance;
}

.sf-quality-2147 :is(
  .section h2,
  .section-heading h2,
  .news-header h2,
  .sf2120-news-magazine > header h2,
  .sf2120-forum-shell h2,
  .sf2120-contact-layout h2,
  .sf2120-partner-shell h2
) {
  text-wrap: balance;
}

.sf-quality-2147 h3 {
  line-height: 1.18;
  text-wrap: balance;
}

/* Never return to micro typography for visitor-facing information. */
.sf-quality-2147 :is(
  .sf2120-news-magazine > header span,
  .sf2120-news-categories > header span,
  .sf2120-partner-related > header span,
  .sf2120-partner-events > header span,
  .sf2120-related-news > header span,
  .sf2120-forum-stats span,
  .sf2120-category-grid small,
  .sf2120-topic-composer header small,
  .sf2120-forum-reply-form header small,
  .sf2120-topic-meta span,
  .sf2120-topic-meta b,
  .sf2120-topic-content > small,
  .sf2120-topic-numbers span,
  .sf2120-topic-numbers small,
  .sf2120-side-green > span,
  .sf2120-side-card > a small,
  .sf2120-forum-breadcrumb,
  .sf2120-topic-flags span,
  .sf2120-topic-byline,
  .sf2120-topic-relation span,
  .sf2120-topic-relation a,
  .sf2120-forum-replies > header span,
  .sf2120-forum-reply-body time,
  .sf2120-forum-reply footer button,
  .sf2120-submit-row span,
  .sf2120-news-toolbar > div span,
  .sf2120-news-toolbar a,
  .sf2120-news-copy > small,
  .sf2120-news-copy em,
  .sf2120-news-copy > strong,
  .sf2120-news-categories a small,
  .sf2120-article-type span,
  .sf2120-article-type small,
  .sf2120-article-relations > div:first-child span,
  .sf2120-relation-cards small,
  .sf2120-relation-cards span,
  .sf2120-contact-hero-card span,
  .sf2120-contact-hero-card a,
  .sf2120-privacy-check,
  .sf2120-contact-options p,
  .sf2120-contact-side details p,
  .sf2120-contact-side details a,
  .sf2120-partner-filter > div span,
  .sf2120-partner-filter a,
  .sf2120-partner-main small,
  .sf2120-partner-main em,
  .sf2120-partner-actions a,
  .sf2120-partner-cta span,
  .sf2120-partner-detail-head > div:last-child > span,
  .sf2120-partner-detail-grid > article > span,
  .sf2120-partner-events a > span,
  .sf2120-vehicle-related-grid small,
  .sf2120-vehicle-related-grid span,
  .sf2120-vehicle-contact span,
  .sf2121-forum-notify small,
  .sf2121-forum-safety-note small,
  .sf-community-form-2116 label,
  .sf-community-reference-field > label,
  .sf-community-feed-head-2116 span,
  .sf-community-sort-2116 label,
  .sf-community-comment-head-2116 time,
  .sf-community-reference-badge-2116,
  .sf-community-side-card-2116 > header small,
  .sf-community-mini-list-2116 small,
  .sf-community-popular-list-2116 small,
  .sf-community-mini-list-2116 time,
  .sf-community-topic-list-2116 a,
  .sf-community-cta-2116 span
) {
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.sf-quality-2147 :is(
  .sf2120-team-badge,
  .sf2120-accepted-badge,
  .sf2120-news-type,
  .vehicle-group-badge,
  .sf-community-team-badge-2116
) {
  font-size: 10.5px !important;
}

/* Privacy / Impressum: still compact, but readable for older visitors. */
.sf-quality-2147 :is(
  .sf-privacy-overview-2123 > div > span,
  .sf-privacy-content-2123 section > span,
  .sf-privacy-side-2123 section > span,
  .sf-privacy-service-public dt,
  .sf-privacy-service-public dd,
  .sf-privacy-banner-2123 span,
  .sf-privacy-modal-card header span,
  .sf-privacy-floating-2123,
  .sf-imprint-intro-2123 > div > span,
  .sf-imprint-content-2123 section > span,
  .sf-imprint-side-2123 section > span,
  .sf-imprint-nav-2123 a,
  .sf-imprint-provider-2123 small,
  .sf-imprint-provider-2123 em,
  .sf-imprint-data-list-2123 dt
) {
  font-size: 12.5px !important;
  line-height: 1.55 !important;
}

/* --------------------------------------------------------------------------
   3 / 7. RESPONSIVE GUTTERS + ECHTE TABLET-/HANDY-REGELN
   -------------------------------------------------------------------------- */
@media (min-width: 701px) and (max-width: 1150px) {
  .sf-quality-2147 {
    --sf247-page-x: clamp(24px, 4.5vw, 46px);
  }

  .sf-quality-2147 :is(
    .intro.section,
    .home-event.section,
    .fleet.section,
    .project.section,
    .news.section,
    .subpage-section,
    .vehicle-story,
    .vehicle-details,
    .gallery-section,
    .event-detail,
    .event-registration,
    .sf2120-news-magazine,
    .sf2120-forum-shell,
    .sf2120-contact-layout,
    .sf2120-partner-shell,
    .search-page
  ) {
    padding-left: var(--sf247-page-x) !important;
    padding-right: var(--sf247-page-x) !important;
  }

  .sf-quality-2147 :is(
    .tractor-grid,
    .full-tractor-grid,
    .sf2120-news-grid,
    .sf2120-partner-grid,
    .search-results-grid
  ) {
    gap: 16px !important;
  }
}

@media (max-width: 700px) {
  .sf-quality-2147 {
    --sf247-page-x: 14px;
  }

  .sf-quality-2147 :is(
    .intro.section,
    .home-event.section,
    .fleet.section,
    .project.section,
    .news.section,
    .subpage-section,
    .vehicle-story,
    .vehicle-details,
    .gallery-section,
    .event-detail,
    .event-registration,
    .sf2120-news-magazine,
    .sf2120-forum-shell,
    .sf2120-contact-layout,
    .sf2120-partner-shell,
    .search-page
  ) {
    padding-left: var(--sf247-page-x) !important;
    padding-right: var(--sf247-page-x) !important;
  }

  .sf-quality-2147 :is(
    .intro.section,
    .home-event.section,
    .fleet.section,
    .project.section,
    .news.section
  ) {
    padding-top: 54px;
    padding-bottom: 54px;
  }

  .sf-quality-2147 :is(.intro-grid,.section-heading,.news-header,.fleet-filter-heading) {
    margin-bottom: 30px;
  }

  .sf-quality-2147 :is(
    .intro-copy p,
    .project-lead,
    .home-event-copy > p:not(.section-kicker),
    .section-heading > p,
    .contact > p:not(.section-kicker),
    .wp-content p,
    .article-copy p
  ) {
    font-size: 15.5px;
    line-height: 1.7;
  }
}

/* --------------------------------------------------------------------------
   3 / 5. FORMULARE – saubere Label/Feld/Hilfe-Rhythmik ohne Überlagerungen
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) :is(p,.sf2120-field,.form-field) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) label + :is(input,select,textarea,.sf-upload-field) {
  margin-top: 0 !important;
}

.sf-quality-2147 :is(
  .sf2120-contact-form,
  .sf2120-forum-form,
  .sf2120-forum-reply-form,
  .sf-guest-submission-form,
  .event-registration-form,
  .sf-community-form-2116,
  .sf-community-composer-card-2116 .comment-form
) :is(input,select,textarea) + :is(small,.description,.field-help,.form-help) {
  margin-top: 10px !important;
}

.sf-quality-2147 input[type="file"] {
  max-width: 100%;
}

.sf-quality-2147 :is(input,select,textarea,button) {
  box-sizing: border-box;
}

/* --------------------------------------------------------------------------
   3. BUTTON- UND LINK-HIERARCHIE
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(.text-link,.text-button,.archive-card-link,.sf2120-partner-actions a) {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  line-height: 1.35;
}

.sf-quality-2147 :is(.button,.button-primary,.button-dark,.button-light,.button-outline) {
  max-width: 100%;
}

.sf-quality-2147 .button-primary {
  box-shadow: 0 4px 0 rgba(109,77,12,.22);
}

.sf-quality-2147 .button-dark {
  box-shadow: 0 4px 0 rgba(5,20,13,.14);
}

/* --------------------------------------------------------------------------
   3. KARTEN: gleichmäßige Höhe, aber vorhandenes Design bleibt erhalten
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-news-grid,
  .sf2120-partner-grid,
  .search-results-grid
) {
  align-items: stretch;
}

.sf-quality-2147 .sf2120-news-card {
  display: flex;
  flex-direction: column;
}

.sf-quality-2147 .sf2120-news-card .sf2120-news-copy {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

.sf-quality-2147 .sf2120-news-card .sf2120-news-copy > p {
  flex: 1 1 auto;
}

.sf-quality-2147 .sf2120-news-card .sf2120-news-copy > strong {
  margin-top: auto;
  padding-top: 15px;
}

.sf-quality-2147 .sf2120-partner-main > div:last-child {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.sf-quality-2147 .sf2120-partner-main > div:last-child > p {
  flex: 1 1 auto;
}

.sf-quality-2147 .sf2120-partner-main > div:last-child > em {
  margin-top: auto;
  padding-top: 12px;
}

.sf-quality-2147 .search-result-body {
  min-width: 0;
}

/* --------------------------------------------------------------------------
   4. STARTSEITE: klarer Seitenrhythmus
   -------------------------------------------------------------------------- */
.sf-quality-2147 .hero + .sf2146-hero-quicklinks {
  margin-top: 0 !important;
}

.sf-quality-2147 .sf2146-hero-quicklinks + .intro {
  border-top: 0;
}

.sf-quality-2147 .values-grid {
  margin-top: clamp(48px, 6vw, 72px);
}

.sf-quality-2147 .home-event-facts {
  gap: 12px;
}

.sf-quality-2147 .home-event-facts span {
  min-height: 66px;
  box-sizing: border-box;
}

.sf-quality-2147 .contact {
  padding-top: clamp(78px, 9vw, 128px);
  padding-bottom: clamp(78px, 9vw, 128px);
}

/* --------------------------------------------------------------------------
   11. RESPONSIVE ÜBERLAUFSCHUTZ
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .tractor-grid,
  .full-tractor-grid,
  .news-grid,
  .sf2120-news-grid,
  .sf2120-partner-grid,
  .sf2120-contact-layout,
  .sf2120-forum-layout,
  .event-detail-grid,
  .vehicle-details-grid,
  .values-grid,
  .intro-grid
) > * {
  min-width: 0;
}

.sf-quality-2147 :is(
  .sf2120-news-card,
  .sf2120-partner-card,
  .search-result-card,
  .archive-card,
  .sf2120-forum-topic,
  .tractor-card,
  .vehicle-group-card
) {
  max-width: 100%;
  overflow: hidden;
}

.sf-quality-2147 :is(
  .sf2120-news-card h2,
  .sf2120-partner-card h2,
  .search-result-body strong,
  .sf2120-forum-topic h2,
  .vehicle-group-card h2,
  .tractor-info strong
) {
  overflow-wrap: break-word;
  word-break: normal;
}

.sf-quality-2147 :is(
  .sf-comparison-table-wrap,
  .wp-content table,
  .article-copy table
) {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* --------------------------------------------------------------------------
   8. Empty/Error States – no raw/unstyled WordPress-looking gaps
   -------------------------------------------------------------------------- */
.sf-quality-2147 :is(
  .sf2120-empty,
  .search-empty,
  .fleet-filter-empty,
  .empty-event
) {
  margin-block: 20px;
}

.sf-quality-2147 :is(
  .sf2120-empty,
  .search-empty,
  .fleet-filter-empty,
  .empty-event
) :is(p,small) {
  font-size: 15px !important;
  line-height: 1.65 !important;
}

/* --------------------------------------------------------------------------
   Mobile: action rows become deliberate full-width touch targets.
   -------------------------------------------------------------------------- */
@media (max-width: 700px) {
  .sf-quality-2147 :is(
    .hero-actions,
    .fleet-filter-actions,
    .sf-comparison-actions,
    .sf2120-submit-row,
    .sf-community-submit-row-2116
  ) {
    width: 100%;
    gap: 10px !important;
  }

  .sf-quality-2147 :is(
    .hero-actions .button,
    .fleet-filter-actions .button,
    .sf-comparison-actions .button,
    .sf2120-submit-row .button,
    .sf-community-submit-row-2116 .button
  ) {
    width: 100% !important;
  }

  .sf-quality-2147 .home-event-facts span {
    width: 100%;
  }
}
