/* FixKlar mobile/tablet UX — 08.11.2026. Desktop rules remain unchanged. */
@media (max-width: 1024px) {
  html body.fk-design .site-content :is(main,section,article,form,fieldset) { min-width: 0; }
  html body.fk-design .site-content :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),select,textarea) {
    max-width: 100%; box-sizing: border-box; font-size: 16px !important;
  }
  html body.fk-design .site-content :is(button,summary,input[type="submit"],input[type="button"]) {
    box-sizing: border-box; min-height: 44px;
  }
  html body.fk-design .site-content summary { cursor: pointer; }
  html body.fk-design .fk-sample-grid { grid-template-columns: minmax(0,1fr) !important; gap: 20px; }
  html body.fk-design .fk-sample-sidebar { display: none !important; }
  html body.fk-design .fk-sample-mobile-toc {
    display: block !important; border: 1px solid #d7e4ef; border-radius: 8px;
    padding: 0 16px; margin-bottom: 18px; background: #fff;
  }
  html body.fk-design .fk-sample-mobile-toc summary {
    padding: 12px 0; min-height: 48px; font-size: 16px; font-weight: 700; color: #0c426d;
  }
  html body.fk-design .fk-sample-mobile-toc nav { padding-bottom: 14px; }
  html body.fk-design .fk-sample-mobile-toc li { font-size: 15px; line-height: 1.6; margin-bottom: 8px; }
  html body.fk-design .fk-sample-mobile-toc a { display: inline-block; padding-block: 4px; }
  html body.fk-design .fk-sample-hero-grid { grid-template-columns: minmax(0,1fr) !important; gap: 20px !important; }
  html body.fk-design .fk-sample-hero-image { aspect-ratio: 16/9; max-height: 340px; }
  html body.fk-design .fk-sample .fk-sample-section,
  html body.fk-design .fk-sample .fk-sample-intro,
  html body.fk-design .fk-sample .fk-sample-cta { padding-inline: 22px; }
  html body.fk-design .fk-sample-table,
  html body.fk-design .fk-company-table,
  html body.fk-design .fk-native-form {
    max-width: 100%; box-sizing: border-box;
  }
  html body.fk-design .fk-sample-table { overflow-x: auto; overscroll-behavior-x: contain; }
  html body.fk-design .fk-pro-nav { flex-wrap: wrap; }
  html body.fk-design .fk-pro-nav a { min-width: 0; overflow-wrap: break-word; }
  html body.fk-design .fk-pro-overview-group > summary,
  html body.fk-design .fk-pro-service-more > summary,
  html body.fk-design .fk-company-card__services > summary,
  html body.fk-design .fk-branch-card__services > summary { min-height: 44px !important; padding-block: 8px !important; }
  html body.fk-design .fk-sitemap__alphabet a { min-width: 36px; min-height: 44px; }
  html body.fk-design .fk-module__table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
}
@media (max-width: 767px) {
  html body.fk-design .site-content :is(h1,h2,h3) { overflow-wrap: break-word; hyphens: auto; }
  html body.fk-design .site-content h1 { font-size: clamp(26px,7.2vw,32px) !important; line-height: 1.18 !important; }
  html body.fk-design .site-content h2 { font-size: clamp(22px,5.8vw,26px) !important; line-height: 1.28 !important; }
  html body.fk-design .site-content h3 { font-size: clamp(18px,4.9vw,21px) !important; line-height: 1.35 !important; }
  html body.fk-design .fk-sample-container { width: calc(100% - 24px) !important; }
  html body.fk-design .fk-sample .fk-sample-section,
  html body.fk-design .fk-sample .fk-sample-intro,
  html body.fk-design .fk-sample .fk-sample-cta { padding: 20px 16px !important; margin-bottom: 18px !important; }
  html body.fk-design .fk-sample .fk-sample-section-heading h2 { font-size: 18px !important; }
  html body.fk-design .fk-sample .fk-sample-section-heading { gap: 9px; padding-bottom: 12px; margin-bottom: 18px; }
  html body.fk-design .fk-sample-topic :is(p,li) { font-size: 16px !important; line-height: 1.7; }
  html body.fk-design .fk-sample-benefits small { font-size: 13px !important; }
  html body.fk-design .fk-sample-topic figcaption { font-size: 14px !important; line-height: 1.5; }
  html body.fk-design .fk-sample-hero { padding-block: 24px 28px; }
  html body.fk-design .fk-sample-hero-image { max-height: 240px; }
  html body.fk-design .fk-sample .fk-sample-button,
  html body.fk-design .fk-sample .fk-sample-outline { min-height: 44px; padding: 11px 14px; font-size: 15px; }
  html body.fk-design .fk-sample-related { padding: 20px 16px; }
  html body.fk-design .fk-sample-mobile-toc li { font-size: 14px; }
  html body.fk-design.single-firma .fk-company-page.fk-pro-profile { width: calc(100% - 24px) !important; margin-inline: auto !important; }
  html body.fk-design.single-firma .fk-company-page.fk-pro-profile .fk-pro-identity h1 { font-size: 28px !important; }
  html body.fk-design.single-firma .fk-company-page.fk-pro-profile :is(.fk-pro-card,.fk-pro-description,.fk-pro-contact) { padding-inline: 16px !important; }
  html body.fk-design.single-firma .fk-pro-nav {
    display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 4px; overflow: visible !important; margin-block: 12px 18px;
  }
  html body.fk-design.single-firma .fk-pro-nav a {
    min-width: 0; min-height: 44px !important; padding: 10px 8px !important;
    white-space: normal; font-size: 14px !important; line-height: 1.35;
  }
  html body.fk-design.single-firma .fk-pro-badges > details > summary,
  html body.fk-design.single-firma .fk-pro-badges > details > summary.fk-company-card__badge { min-height: 44px !important; }
  html body.fk-design :is(.fk-company-card__services,.fk-company-card__service-details) > summary { min-height: 44px !important; padding-block: 8px !important; }
  html body.fk-design :is(.fk-pro-contact,.fk-company-contact) a { overflow-wrap: anywhere; }
  html body.fk-design:is(.single-region,.single-leistung,.single-branchenregion) .fk-native-single { width: calc(100% - 24px) !important; max-width: none !important; margin-inline: auto !important; padding-inline: 0 !important; }
  html body.fk-design .fk-gt-hero__copy { padding-inline: 16px !important; }
  html body.fixklar-theme.fk-design #content.site-content .fk-company-card .fk-company-card__head h3.fk-company-card__name { font-size: 20px !important; line-height: 1.3 !important; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; overflow-wrap: anywhere !important; }
  html body.fk-design .fk-native-form { padding-inline: 14px !important; }
  html body.fk-design .fk-sitemap { width: calc(100% - 24px) !important; }
  html body.fk-design .fk-sitemap__alphabet { padding-inline: 12px; }
  html body.fk-design .fk-sitemap__card li a { min-height: 44px; align-items: center; padding-block: 9px; }
  html body.fk-design .fk-sitemap .fk-sitemap__cta { min-height: 44px; display: flex; align-items: center; justify-content: center; }
  html body.fk-design .fk-native-news__hero { padding-inline: 12px; }
  html body.fk-design .fk-native-news__body { padding-inline: 12px; }
  html body.fk-design.home #fixklar-gateway .wrap { width: calc(100% - 24px) !important; }
  html body.fk-design.home #fixklar-gateway .hero-search { padding: 14px !important; }
  html body.fk-design :is(.fk-pro-gallery,.fk-standard-profile .fk-pro-gallery) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html body.fk-design .fk-pro-overview-group > summary { font-size: 16px; }
  html body.fk-design.fixklar-guide-archive .site-content > .ast-container { padding-inline: 12px !important; }
  html body.fk-design.fixklar-guide-archive .ast-archive-description { padding: 24px 16px !important; border-radius: 14px !important; }
  html body.fk-design.fixklar-guide-archive .site-main > .ast-row { grid-template-columns: minmax(0,1fr) !important; }
  html body.fk-design .fk-jobs__wrap { padding-inline: 12px; }
  html body.fk-design :is(.fk-jobs__hero,.fk-jobs__search,.fk-jobs__card,.fk-jobs__detail) { padding-inline: 16px; }
  html body.fk-design.single-regionalbeitrag .site-content .fk-article-template { width: 100% !important; max-width: 100% !important; padding-inline: 0 !important; }
  html body.fk-design.single-regionalbeitrag .site-content .fk-article-template .fk-article > .fk-hero { padding: 24px 16px !important; }
  html body.fk-design.single-regionalbeitrag .site-content .fk-article-template .fk-topic-panel { padding-inline: 10px !important; }
  html body.fk-design.single-regionalbeitrag .site-content .fk-article-template .fk-topic-panel > .fk-module--text { padding: 16px !important; }
  html body.fk-design.single-regionalbeitrag .site-content .fk-topic-tabs__nav { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px !important; overflow: visible !important; }
  html body.fk-design.single-regionalbeitrag .site-content .fk-topic-tab { min-width: 0 !important; width: 100% !important; min-height: 44px; max-width: none !important; padding: 10px !important; font-size: 14px !important; }
}
@media (max-width: 380px) {
  html body.fk-design .fk-mobile-header { gap: 6px; padding-inline: 10px; }
  html body.fk-design .fk-mobile-brand > span { font-size: 24px; }
  html body.fk-design .fk-mobile-brand > small { font-size: 10px; max-width: 118px; }
  html body.fk-design .fk-mobile-account { padding-inline: 8px; font-size: 13px; }
  html body.fk-design .fk-mobile-menu > summary { min-width: 70px; padding-inline: 8px; }
  html body.fk-design .fk-pro-identity { gap: 12px; }
  html body.fk-design .fk-sample-section-heading > span { flex-basis: 27px; height: 27px; }
}
