#equipment_image .frame-type-html {
    height: 100%;
}

#equipment_image .image_container text {
    cursor: pointer;
    fill: #fff;
    stroke: #306f91;
    stroke-width: 0;
}

@media (max-width: 1023px) {
    #equipment_image .image_container .image_map {
        display: none;
    }
}

.theme_footer a {
    color: #fff !important;
}

.page .row-news-list .news-list-view > .col {
    margin-bottom: 2%;
}


.dark.bg-line .frame a {
    color: #ffffff !important;
}

.dark.bg-line .row-theme-stretched-content p {
    z-index: 100;
}

.dark p {
    z-index: 100;
    position: relative;
}

/**
 * Extension for the Image Gallery
 */
.ce-cols-2 {
    max-width: 50%;
    display: inline-block;
}

.ce-cols-3 {
    max-width: 33.33%;
    display: inline-block;
    padding: 3px;
}

.ce-cols-4 {
    max-width: 25%;
    display: inline-block;
}

.ce-cols-5 {
    max-width: 20%;
    display: inline-block;
}

.ce-cols-6 {
    max-width: 16.66%;
    display: inline-block;
}

.ce-cols-7 {
    max-width: 14.28%;
    display: inline-block;
}

.ce-cols-8 {
    max-width: 12.5%;
    display: inline-block;
}

@media all and (max-width: 576px) {
    .ce-cols-2,
    .ce-cols-3,
    .ce-cols-4,
    .ce-cols-5,
    .ce-cols-6,
    .ce-cols-7,
    .ce-cols-8 {
        max-width: 100% !important;
    }

    .frame-type-image.frame-layout-106 .ce-image img {
        max-height: 100% !important;
    }
}

.ce-cols-2 img, .ce-cols-3 img, .ce-cols-4 img, .ce-cols-5 img, .ce-cols-6 img, .ce-cols-7 img, .ce-cols-8 img {
    max-width: 100%;
    height: auto;
}

.frame-type-image.frame-layout-106 {
    display: flex;
    flex-flow: row wrap;
}

.frame-type-image.frame-layout-106 .ce-image img {
    max-height: 80px;
}

.frame-type-image.frame-layout-106 .ce-image {
    position: relative;
}

/*.frame-type-image.frame-layout-106 .ce-image .ce-image-description {
    position: absolute;
    bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0;
    font-weight: bold;
}*/

.frame-type-image.frame-layout-106 .ce-image .ce-image-description {
    padding-top: 3px;
    font-weight: bold;
}

/**
 * Adjust the Product Sidebar Menu
 */
ul.product_menu_sub {
    margin-top: 0!important;
}

ul.product_menu_sub > li > a,
ul.product_menu > li > a{
    margin-bottom:0!important;
}

ul.product_menu > li{
    margin-bottom:10px;
}

ul.product_menu_sub > li.current > a{
    color:#f17505!important;
}

ul.product_menu > li.active a{
    box-shadow:none!important;
}

.theme_footer .theme_cc_text .frame-layout-0{
    padding-top: 0px;
    padding-bottom: 0px;
    margin: 0;
}

.theme_footer .theme_cc_text .row-theme-stretched-content{
    display: block;	
}
/* WordPress-Gruppenblöcke: inneren Container aus dem Bootstrap-Raster nehmen */
.wp-block-group.row > .wp-block-group__inner-container,
.wp-block-group.container-fluid > .wp-block-group__inner-container,
.wp-block-group.container > .wp-block-group__inner-container { display: contents; }
.wp-block-group.row > .wp-block-group__inner-container { display: contents; }

/* Kontaktkarte über dem Slider */
.row-stretched .col-4-5.right_side { z-index: 20; }

/* SVG-Icons ohne feste Größe */
.ce-gallery img[src$=".svg"] { width: 36px; height: auto; display: block; }

/* Kopfbild auf Unterseiten immer volle Breite */
.row-slider img { width: 100%; height: auto; display: block; }
.row-slider figure { margin: 0; }

/* Karriere: Ansprechpartner-Karte rechts über dem Teaser-Bild */
.cc-distributor.layout-150 { position: relative; }
.cc-distributor.layout-150 > .inner { margin-left: auto; margin-right: 0; background: #fff; }
.cc-distributor.layout-150 > .inner > .row:first-child { flex-direction: row-reverse; }
/* Textband ohne Karte: volle Breite, keine Mindesthöhe */
.row-theme-stretched-content.no-card .col-7-5 { width: 100%; max-width: 100%; flex: 0 0 100%; min-height: 0; }

/* Textband (Karriere u. a.): Inhalt mittig im 1220px-Container */
.theme_cc_row.dark.theme_cc_row_career .container-fluid { max-width: 1220px; margin-left: auto; margin-right: auto; }
/* Bildteaser: Bild über die volle Fensterbreite */
.image-teaser { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw) !important; padding: 0; }
.image-teaser .img-fullrow { width: 100%; max-width: 100%; height: auto; display: block; }
.image-teaser .row, .image-teaser .col-12 { margin: 0; padding: 0; }

/* News-Detail */
.news-detail { padding-top: 40px; padding-bottom: 40px; }
.news-detail .news-detail-image { margin-bottom: 30px; }
.news-detail .news-detail-image img { max-width: 100%; height: auto; }
.news-detail .teaser-text p { font-size: 20px; font-weight: 600; }
.news-detail .news-backlink-wrap { margin-top: 40px; }
.page-news-detail .col-7-5.dark h1 { padding-left: 0; }

/* "3 gute Gründe": drei Spalten mit großen Ziffern */
@media (min-width: 992px) {
  .content:has(> .text-numeric) { display: flex; flex-wrap: wrap; }
  .content > .text-numeric { flex: 0 0 33.333%; max-width: 33.333%; padding: 0 30px 0 0 !important; margin-top: 40px !important; box-sizing: border-box; }
}
.text-numeric h2 { margin-top: 55px; font-size: 16px !important; }
.text-numeric h3.wp-block-heading.subheader { font-size: 206px; line-height: 1; color: #f2f3f3; position: absolute; z-index: -1; top: -35px; left: 12px; margin: 0; padding: 0; pointer-events: none; }
.text-numeric h3.wp-block-heading.subheader:before { display: none; }
.text-numeric { isolation: isolate; }

/* Standorte: Adresstabelle im Band und Ansprechpartner-Karten in einer Reihe */
.dark .wp-block-table table, .dark .wp-block-table td { border: 0 !important; }
.dark .wp-block-table { margin: 20px 0 0; }
.dark .wp-block-table td { padding: 0 30px 0 0; vertical-align: top; }
.dark .wp-block-table td h3 { font-size: 18px; line-height: 1.5; margin: 0; font-weight: 400; }
.dark .wp-block-table td a { color: #fff; }
@media (min-width: 992px) {
  .content:has(> .frame-layout-150) { display: flex; flex-wrap: wrap; }
  .content > .frame-layout-150 { flex: 0 0 33.333%; max-width: 33.333%; box-sizing: border-box; padding-right: 20px; }
  .content > .frame-layout-150 .cc-distributor.layout-150 > .inner { margin-left: 0; }
}
.dark .wp-block-table table { width: 100%; table-layout: fixed; }
.dark .wp-block-table td { padding-right: 30px !important; word-wrap: break-word; }


/* Textpic 104 (Bild mit Text darüber) */
.image-overlay { position: relative; padding: 0; }
.image-overlay img, .image-overlay .img-fullrow { display: block; width: 100%; height: auto; min-height: 300px; object-fit: cover; }
.image-overlay .container { position: absolute; top: 0; margin-top: 8% !important; left: 0; right: 0; margin: 0 auto; max-width: 1220px; padding: 0 30px 0 60px; }
.image-overlay h3 { color: #fff; font-size: 42px; }
.image-overlay p { color: #fff; max-width: 60%; }
@media (max-width: 991px) { .image-overlay .container { position: static; background: #454e53; padding: 20px; } }

.page-11 .theme_cc_row_career.frame-999 { padding-bottom: 85px !important; }

/* Halbbreite Elemente (frame-106) nebeneinander, wie im alten Flex-Raster */
@media (min-width: 768px) {
  .content:has(> .frame-106) { display: flex; flex-wrap: wrap; }
  .content:has(> .frame-106) > * { flex: 0 0 100%; max-width: 100%; }
  .content:has(> .frame-106) > .frame-106 { flex: 0 0 50% !important; max-width: 50% !important; margin: 30px 0 0 !important; padding: 0 30px 0 0 !important; box-sizing: border-box; }
}

/* Text-Layout 12 (graues Band): Inhalt mittig im 1200px-Raster */
.frame-layout-12 h1, .frame-layout-12 h2, .frame-layout-12 h3,
.frame-layout-12 .container { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; padding-left: 0 !important; padding-right: 0 !important; box-sizing: border-box; }
.frame-layout-12 h2 { padding-left: 53px !important; }
.frame-layout-12 .container p { max-width: 90%; }

/* Unternehmen › Menschen: Raster mit 4 Spalten (CEO 2 Spalten, übrige je 1) */
@media (min-width: 768px) {
  .content:has(> .image-human) { display: flex; flex-wrap: wrap; align-items: flex-start; }
  .content:has(> .image-human) > * { flex: 0 0 100%; max-width: 100%; }
  .content > .image-human.frame-103 { flex: 0 0 25% !important; max-width: 25% !important; padding: 0 18px 0 0 !important; margin: 0 0 35px !important; box-sizing: border-box; }
  .content > .image-human.frame-106 { flex: 0 0 50% !important; max-width: 50% !important; padding: 0 18px 0 0 !important; margin: 0 0 35px !important; box-sizing: border-box; }
}
.image-human img { width: 100%; height: auto; display: block; }

/* Seitenleiste (Kontakt, Standorte, ...): Flyout nach links beim Überfahren */
.cc_sidebar { right: -190px; width: 234px; overflow: visible !important; }
.cc_sidebar .item { display: flex; align-items: center; width: 234px; height: 40px; box-sizing: border-box; white-space: nowrap; overflow: hidden; margin-left: 0; }
.cc_sidebar .item img { flex: 0 0 40px; width: 40px; height: 40px; margin: 0 !important; }
.cc_sidebar .item span { display: block; margin: 0 !important; padding: 0 0 0 12px !important; line-height: 40px; font-size: 15px; }
.cc_sidebar .item.active { margin-left: -190px; }

/* Bild-Teaser: Mindesthöhe, Box im 1200px-Raster ausrichten */
.image-teaser .img-fullrow { min-height: 300px; object-fit: cover; }
.image-teaser:not(.right) .container { left: max(40px, calc(50vw - 600px)); }

/* Mediathek › Prospekte: Titelbilder dreispaltig */
.mediathek-prospect .ce-gallery img { display: block; width: 100%; height: auto; }
@media (min-width: 768px) {
  .content:has(> .frame-104 .mediathek-prospect) { display: flex; flex-wrap: wrap; }
  .content:has(> .frame-104 .mediathek-prospect) > * { flex: 0 0 100%; max-width: 100%; }
  .content > .frame-104.frame-type-textmedia { flex: 0 0 33.333% !important; max-width: 33.333% !important; padding: 0 55px 0 0 !important; margin: 0 0 30px !important; box-sizing: border-box; }
}

/* Mediathek › Links: Karte mit Button */
.image-distributor h3 { font-size: 18px; }
.image-distributor h3:before { width: 25px; display: inline-block; margin-right: 5px; }
.image-distributor p a.btn { margin-top: 10px; }

/* Händlersuche */
.cc_merch { margin: 30px 0; }
.cc_merch .search { background: #fff; box-shadow: 0 0 15px rgba(0,0,0,.1); padding: 20px; margin-bottom: 25px; }
.cc_merch .search label.merch-label, .cc_merch .search .label, .cc_merch .search label[for="merch-q"] { display: block; font-weight: 600; margin-bottom: 8px; text-transform: uppercase; font-size: 14px; }
.cc_merch .merch-q { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid #c9ced1; font: inherit; }
.cc_merch .merch-cats, .cc_merch .legend-icons { display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: center; }
.cc_merch .merch-cat, .cc_merch .merch-type { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; margin: 0 !important; font-weight: 400 !important; text-transform: none !important; }
.cc_merch .merch-cat img { width: 30px; height: 30px; }
.cc_merch .merch-type img { height: 30px; width: auto; }
.cc_merch .legend-icons { margin-top: 18px; padding-top: 15px; border-top: 1px solid #e4e6e7; }
.cc_merch .merch-map { position: relative; height: 420px; background: #454e53; margin-bottom: 20px; }
.cc_merch .merch-map-canvas { position: absolute; inset: 0; }
.cc_merch .merch-map-consent { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #fff; padding: 20px; }
.cc_merch .merch-map-consent p { color: #fff; max-width: 480px; }
.cc_merch .merch-map.active .merch-map-consent { display: none; }
.cc_merch .merch-map.loading .merch-map-load { opacity: .5; pointer-events: none; }
.cc_merch .merch-count { color: #959595; margin: 0 0 10px; }
.cc_merch .merch-list { display: flex; flex-wrap: wrap; gap: 20px; }
.cc_merch .merch-item { flex: 0 0 calc(50% - 10px); box-sizing: border-box; background: #fff; box-shadow: 0 0 15px rgba(0,0,0,.1); padding: 15px 20px; border-top: 3px solid transparent; }
.cc_merch .merch-item.merch-hq { border-top-color: #f17505; }
.cc_merch .merch-item h3 { font-size: 18px; margin: 0 0 6px; padding: 0; }
.cc_merch .merch-item h3:before { display: none; }
.cc_merch .merch-item .subheader { color: #959595; margin: 0 0 8px; }
.cc_merch .merch-item table { width: 100%; border-collapse: collapse; font-size: 15px; }
.cc_merch .merch-item td { padding: 2px 8px 2px 0; vertical-align: top; border: 0; }
.cc_merch .merch-item td.k { color: #959595; width: 36%; }
.cc_merch .merch-item a { color: #f17505; }
.cc_merch .merch-show { margin-top: 10px; background: none; border: 0; padding: 0; color: #f17505; cursor: pointer; text-decoration: underline; font: inherit; }
@media (max-width: 767px) { .cc_merch .merch-item { flex-basis: 100%; } .cc_merch .merch-map { height: 320px; } }
.cc_merch { padding: 0 20px; box-sizing: border-box; }

/* Händlersuche v2: zwei Panels, Dropdown, Legende */
.cc_merch .merch-panels { display: flex; flex-wrap: wrap; gap: 30px; margin-bottom: 30px; }
.cc_merch .search, .cc_merch .legend-icons { background: #fff; box-shadow: 0 0 15px rgba(0,0,0,.1); padding: 20px 25px; margin: 0; box-sizing: border-box; border-top: 0; }
.cc_merch .search { flex: 1 1 340px; } .cc_merch .legend-icons { flex: 1 1 340px; display: block; }
.cc_merch .merch-title { font-size: 22px; font-weight: 400; margin: 0 0 12px; padding: 0 0 0 0; }
.cc_merch .merch-title:before { content: ""; display: block; width: 26px; height: 4px; background: #f17505; margin-bottom: 8px; position: static; }
.cc_merch .merch-fields { display: flex; gap: 20px; flex-wrap: wrap; }
.cc_merch select.merch-cat { flex: 1 1 150px; padding: 9px 10px; border: 0; background: #ebebeb; font: inherit; }
.cc_merch .merch-fields .merch-q { flex: 1 1 150px; width: auto; border: 0; background: #ebebeb; }
.cc_merch .merch-legend { display: flex; flex-wrap: wrap; gap: 10px 25px; align-items: center; }
.cc_merch .merch-type { cursor: default; }
.cc_merch .merch-icons { display: flex; gap: 4px; margin: 0 0 14px; }
.cc_merch .merch-icons img { width: 40px; height: 40px; }
.cc_merch .merch-title:before { margin: 0 0 8px !important; left: auto !important; top: auto !important; right: auto !important; transform: none !important; float: none !important; position: static !important; }
.cc_merch .merch-title { margin-left: 0 !important; padding-left: 0 !important; text-indent: 0 !important; }
.cc_merch .merch-item { transition: background-color .25s, box-shadow .25s, border-color .25s; }
.cc_merch .merch-item.merch-active { background: #fff4e8; border-top-color: #f17505; box-shadow: 0 0 0 2px #f17505, 0 4px 18px rgba(241,117,5,.25); }
/* Händlersuche: zentriert, max. Inhaltsbreite */
.cc_merch { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; padding: 0 20px; }
.cc_merch .merch-panels { max-width: 1200px; margin-left: auto; margin-right: auto; }
.cc_merch .merch-result-title { font-size: 40px; margin: 10px 0 15px; }
.cc_merch .merch-list { justify-content: flex-start; }
.cc_merch .merch-item { flex: 0 0 calc(33.333% - 14px); }
@media (max-width: 991px) { .cc_merch .merch-item { flex-basis: calc(50% - 10px); } }
@media (max-width: 767px) { .cc_merch .merch-item { flex-basis: 100%; } }
/* Händlerkarte über die gesamte Seitenbreite */
.cc_merch .merch-map { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: 0; height: 480px; }
@media (max-width: 767px) { .cc_merch .merch-map { height: 340px; } }

/* Formulare */
.hohner-form { max-width: 760px; margin: 20px 0 30px; }
.hohner-form .hf-row { display: flex; flex-wrap: wrap; gap: 0 20px; }
.hohner-form .hf-field { flex: 0 0 100%; margin: 0 0 16px; box-sizing: border-box; }
.hohner-form .hf-field.hf-half { flex: 0 0 calc(50% - 10px); }
.hohner-form label { display: block; margin: 0 0 5px; font-size: 15px; }
.hohner-form input[type=text], .hohner-form input[type=email], .hohner-form input[type=tel], .hohner-form select, .hohner-form textarea { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid transparent; background: #ebebeb; font: inherit; color: #454e53; border-radius: 0; }
.hohner-form input:focus, .hohner-form select:focus, .hohner-form textarea:focus { outline: 2px solid #f17505; background: #fff; }
.hohner-form .hf-check { display: flex; gap: 10px; align-items: flex-start; cursor: pointer; }
.hohner-form .hf-check input { margin-top: 5px; flex: 0 0 auto; accent-color: #f17505; }
.hohner-form .hf-check a { color: #f17505; }
.hohner-form .hf-invalid input, .hohner-form .hf-invalid select, .hohner-form .hf-invalid textarea { border-color: #c0392b; }
.hohner-form .hf-error { color: #c0392b; font-size: 14px; display: block; margin-top: 4px; }
.hohner-form .hf-note { color: #959595; font-size: 14px; margin: 0 0 15px; }
.hohner-form .hf-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.hohner-form.hf-ok { padding: 20px 25px; background: #fff4e8; border-left: 4px solid #f17505; }
.hohner-form.hf-ok p { margin: 0 0 6px; }
.hohner-dialog { border: 0; padding: 25px 30px 10px; max-width: 680px; width: calc(100% - 30px); box-shadow: 0 10px 40px rgba(0,0,0,.35); max-height: 92vh; overflow: auto; }
.hohner-dialog::backdrop { background: rgba(69,78,83,.75); }
.hohner-dialog h3 { margin: 0 0 10px; }
.hohner-dialog .hf-close { position: absolute; top: 8px; right: 14px; background: none; border: 0; font-size: 32px; line-height: 1; cursor: pointer; color: #454e53; }
@media (max-width: 600px) { .hohner-form .hf-field.hf-half { flex-basis: 100%; } }
.hohner-dialog .hf-close { all: unset; position: absolute; top: 10px; right: 16px; font-size: 34px; line-height: 1; cursor: pointer; color: #454e53; }
.hohner-dialog .hf-close:hover { color: #f17505; }
.hohner-dialog .hf-close:focus-visible { outline: 2px solid #f17505; }
.hohner-form[hidden] { display: none !important; }
/* Stellenanzeigen (Karriere) */
.hohner-stellen { list-style: none; margin: 15px 0 25px; padding: 0; }
.hohner-stellen li { margin: 0 0 12px; padding: 0; }
.hohner-stellen li:before { display: none; }
.hohner-stelle { display: flex; justify-content: space-between; align-items: center; gap: 20px; background: #fff; box-shadow: 0 0 15px rgba(0,0,0,.1); border-left: 4px solid #f17505; padding: 16px 22px; text-decoration: none; color: #454e53; transition: background-color .2s; }
.hohner-stelle:hover { background: #fff4e8; }
.hohner-stelle .t { font-size: 20px; }
.hohner-stelle .m { color: #f17505; white-space: nowrap; text-transform: uppercase; font-size: 15px; }
@media (max-width: 600px) { .hohner-stelle { flex-direction: column; align-items: flex-start; gap: 6px; } }
.tpl-col-130 > .wp-block-group__inner-container > h2.wp-block-heading:last-of-type, .tpl-col-130 > h2.wp-block-heading { margin-top: 50px; }
.hohner-stellen li::before, .hohner-stellen li::marker { content: none !important; display: none !important; }
@media (min-width: 992px) { .hohner-stellen { max-width: calc(100% - 440px); } }
h2.wp-block-heading:has(+ .hohner-form), h2.wp-block-heading:has(+ .wp-block-shortcode .hohner-form) { margin-top: 60px !important; padding-top: 10px; }

/* Sitemap */
.hohner-sitemap ul{list-style:none;margin:0;padding-left:0}
.hohner-sitemap ul ul{padding-left:1.5rem;border-left:2px solid #e5e5e5;margin:.25rem 0 .5rem .25rem}
.hohner-sitemap li{margin:.35rem 0}
.hohner-sitemap>ul>li>a,.hohner-sitemap>ul+ul>li>a{font-weight:700}
.hohner-sitemap a{color:inherit;text-decoration:none}
.hohner-sitemap a:hover{color:#f17505;text-decoration:underline}

/* Produktbild mit Hotspots: SVG über die ganze Bildfläche legen (sonst wird es durch die WP-Gruppenwrapper auf 150px Höhe gekappt) */
#equipment_image .image_map svg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}

/* Produkt-Hero (dunkles Feld): Icon steht klein vor der Überschrift, der Text läuft darunter über die volle Breite */
.dark.bg-line .wp-block-media-text{display:block;overflow:hidden}
.dark.bg-line .wp-block-media-text__media{float:left;width:44px;margin:6px 14px 0 0}
.dark.bg-line .wp-block-media-text__media img{width:44px;height:auto;display:block}
.dark.bg-line .wp-block-media-text__content{display:block;padding:0}
.dark.bg-line .wp-block-media-text__content>h1,.dark.bg-line .wp-block-media-text__content>h2{overflow:hidden;margin-top:0}
.dark.bg-line .wp-block-media-text__content>h1::before,.dark.bg-line .wp-block-media-text__content>h2:first-child::before{display:none}
.dark.bg-line .wp-block-media-text__content>p{clear:both}
.dark.bg-line .wp-block-media-text__content>h1:before,.dark.bg-line .wp-block-media-text__content>h2:before{display:none!important;content:none!important}
.dark.bg-line .wp-block-media-text__content>h1,.dark.bg-line .wp-block-media-text__content>h2{padding-left:0!important;margin-left:0!important;text-indent:0}

/* Dokumentsuche (Bedienungsanleitungen, Ersatzteillisten) */
.hohner-dokumentsuche{background:#fff;box-shadow:0 0 22px rgba(0,0,0,.15);padding:24px 38px 30px;margin:40px 0}
.hohner-dokumentsuche .hds-title{font-size:1.6rem;font-weight:300;margin:0 0 22px;display:flex;align-items:center;gap:10px}
.hohner-dokumentsuche .hds-title::before{display:none!important}
.hohner-dokumentsuche .hds-icon{flex:0 0 30px;display:inline-block;width:30px;height:32px;background-size:contain;background-repeat:no-repeat;background-position:center}
.hohner-dokumentsuche input[type=search]{width:250px;max-width:100%;padding:8px 6px;border:1px solid #555;border-radius:0;font:inherit;display:block}
.hohner-dokumentsuche .hds-hint{display:block;font-size:.75rem;color:#555;margin-top:2px}
.hohner-dokumentsuche .hds-sub{margin:22px 0 14px;color:#444}
.hohner-dokumentsuche .hds-selects{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.hohner-dokumentsuche select{width:100%;padding:9px 8px;border:1px solid #555;border-radius:3px;font:inherit;background:#fff}
.hohner-dokumentsuche .hds-button{background:#f17505;color:#fff;border:0;padding:12px 30px;text-transform:uppercase;font:inherit;font-weight:600;letter-spacing:.02em;cursor:pointer}
.hohner-dokumentsuche .hds-button:hover{background:#d96600}
.hohner-dokumentsuche .hds-selects + p{margin-top:20px}
.hds .hds-results{margin:26px 0 0;padding-left:1.2rem}
.hds .hds-results li{margin:.35rem 0}
@media(max-width:900px){.hohner-dokumentsuche .hds-selects{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hohner-dokumentsuche{padding:18px}.hohner-dokumentsuche .hds-selects{grid-template-columns:1fr}}

/* „Wussten Sie schon“-Link in der Ansprechpartner-Karte */
.cc-distributor .distributor_faq p{margin:10px 0 0;display:flex;align-items:center;gap:8px}
.cc-distributor .distributor_faq .faq-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid #f17505;border-radius:50%;color:#f17505;font-weight:700;font-size:.8rem;line-height:1}

/* Produktkategorie: Dokumentsuche überlappt das Bildband darunter */
.page-product .hohner-dokumentsuche{position:relative;z-index:2}
.lay-12 .hohner-dokumentsuche{margin-bottom:-95px}
/* Einfache Produktseite: Technische Daten */
.technical_data table{width:100%;max-width:600px;border-collapse:collapse}

/* Unterüberschrift im dunklen Produkt-Kopfbereich */
.dark.bg-line .wp-block-media-text__content>h2.subheader{font-size:1.45rem;font-weight:400;margin:1.1rem 0 1rem;clear:both;color:#fff}
.dark.bg-line .wp-block-media-text__content>h2.subheader::before{display:none!important}

.hohner-dokumentsuche .hds-reset{font-size:.75rem;color:inherit;text-decoration:none;margin-left:2px}
.hohner-dokumentsuche .hds-reset:hover{color:#f17505}
/* Trefferliste: Titel fett, darunter Tags, Trennlinie */
.hds .hds-results{list-style:none;margin:30px 0 0;padding:0}
.hds .hds-results li{margin:0;padding:22px 18px 18px;border-bottom:1px solid #ccc}
.hds .hds-results li:last-child{border-bottom:0}
.hds .hds-results .hds-name{display:block;font-weight:700;color:#3d3d3d;text-decoration:none}
.hds .hds-results .hds-name:hover{color:#f17505}
.hds .hds-results .hds-tags{display:block;margin-top:8px;font-size:.8rem;color:#8a8a8a}

.hds .hds-results li::before,.hds .hds-results li::marker{content:none!important;display:none!important}
.hds .hds-results li{list-style:none}
.hds .hds-none{margin:24px 0 0}

/* Überschrift der Dokumentsuche: Icon bündig mit dem Suchfeld */
.hohner-dokumentsuche .hds-title{padding-left:0!important;margin-left:0!important;text-indent:0!important}
.hohner-dokumentsuche .hds-icon{margin-left:0!important}

/* Karriere: Ansprechpartner-Karte rechts über dem Teaserbild (volle Breite) */
.content:has(> .frame-layout-101 + .frame-layout-150){display:block!important}
.content > .frame-layout-101 + .frame-layout-150{flex:none;max-width:100%;padding:0}
@media (min-width:992px){
  .frame-layout-101 + .frame-layout-150{position:relative;height:0;margin:0!important;z-index:3}
  .frame-layout-101 + .frame-layout-150 .cc-distributor.layout-150{position:absolute;right:0;top:calc(-1 * max(300px, 26.58vw) + 64px);width:380px;margin:0!important}
  .frame-layout-101 + .frame-layout-150 .cc-distributor.layout-150 > .inner{margin:0!important;max-width:100%!important}
}

/* Service (page-11): Anordnung wie im Original */
@media (min-width: 992px) {
  /* Servicetechniker-Bild ragt in das graue Dokumentationsband */
  .page-11 .row.theme_cc_row.nopadding:has(+ .row-stretched > .frame-layout-12) { position: relative; z-index: 2; }
  .page-11 .row-stretched:has(> .frame-layout-12) { margin-top: -121px; }
  /* Ersatzteil-Management: Bild über die volle Breite, Text im 1200px-Raster */
  .page-11 #c406 .image-overlay { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }
  .page-11 #c406 .image-overlay .container { max-width: 1200px; padding: 0 !important; margin: 120px auto 0 !important; }
  .page-11 #c406 .image-overlay h3 { padding-left: 53px; margin-bottom: 18px; }
  .page-11 #c406 .image-overlay p { max-width: 95%; }
  /* Heftkopf-Reparatur: Band endet vor dem Bildrand, Hotline mit Abstand darunter */
  .page-11 .theme_cc_row_career.frame-999 { padding-bottom: 36px !important; }
  .page-11 .frame-layout-170 { margin-top: 69px !important; }
  .page-11 .theme_cc_row_career h2:before { margin-right: 10px; }
}

/* Referenzen: Zitate untereinander (Icon links, Überschrift, Text, Autor) */
.ref-list { margin: 18px -18px 0; }
.ref-item { display: flex; padding: 32px 18px 18px; border-bottom: 1px solid #dcdcdc; }
.ref-item:last-child { border-bottom: 0; padding-bottom: 16px; }
.ref-image { flex: 0 0 203px; }
.ref-image img { display: block; width: 117px; height: 117px; margin: 0; }
.ref-content { flex: 1; min-width: 0; }
.ref-content h2 { margin: 0 0 30px; }
.ref-content p { margin: 0 0 14px; }
.ref-content p.ref-author { margin-top: 20px; }
@media (max-width: 767px) {
  .ref-list { margin: 10px 0 0; }
  .ref-item { flex-direction: column; padding: 24px 0 14px; }
  .ref-image { flex: none; margin-bottom: 14px; }
}
/* Bild-Teaser: 20px Abstand zwischen orangem Kasten und Button (WP-Layout setzt Außenabstände zurück) */
.image-teaser .box { margin-bottom: 20px !important; }

/* Meilensteine (Unternehmen): Zeitleiste mit Karten, Lineal, Jahres-Pfeilen und Punkten */
.hohner-timeline { --tl-visible: 4; position: relative; width: 100vw; max-width: 100vw; margin: 0 0 0 calc(50% - 50vw); padding: 38px 0 11px; box-sizing: border-box; }
.tl-ruler { position: absolute; left: 0; right: 0; top: 204px; height: 45px; z-index: 0;
  background: repeating-linear-gradient(90deg, #c4c4c4 0 1px, transparent 1px 35px) 0 0 / 100% 100% no-repeat, repeating-linear-gradient(90deg, #d3d3d3 0 1px, transparent 1px 7px) 0 8px / 100% 26px no-repeat; }
.tl-viewport { position: relative; z-index: 1; margin: 0 auto; overflow: hidden; padding: 6px 3px 44px; box-sizing: content-box;
  width: calc(var(--tl-visible) * 264px + (var(--tl-visible) - 1) * 36px); max-width: calc(100vw - 6px); }
.tl-track { display: flex; align-items: flex-start; gap: 36px; transition: transform .45s ease; }
.tl-card { position: relative; flex: 0 0 264px; width: 264px; height: 430px; box-sizing: border-box; background: #fff; border-top: 4px solid #f17505; box-shadow: 0 0 12px rgba(0, 0, 0, .18); }
.tl-card.open { height: auto; min-height: 430px; padding-bottom: 44px; }
.tl-img { height: 185px; background: #eee; }
.tl-img img { display: block; width: 100%; height: 185px; object-fit: cover; margin: 0; }
.tl-body { padding: 0 18px; }
.tl-title { margin-top: 17px; font-size: 48px; line-height: 56px; font-weight: 300; color: #f17505; }
.tl-text { margin: 16px 0 0 !important; font-size: 15px; line-height: 24.5px; color: #666; }
.tl-more { position: absolute; left: 50%; bottom: -24px; width: 48px; height: 48px; margin-left: -24px; padding: 0; border: 0; border-radius: 50%; background: #f17505; color: #fff; cursor: pointer; box-shadow: 0 2px 8px rgba(0, 0, 0, .25); }
.tl-more:before, .tl-more:after { content: ""; position: absolute; left: 50%; top: 50%; background: #fff; transform: translate(-50%, -50%); }
.tl-more:before { width: 20px; height: 3px; }
.tl-more:after { width: 3px; height: 20px; }
.tl-card.open .tl-more:after { display: none; }
.tl-nav { position: absolute; z-index: 3; top: 204px; width: 100px; height: 45px; padding: 0; border: 0; background: #f17505; color: #fff; font: inherit; font-size: 15px; cursor: pointer; display: flex; align-items: center; justify-content: space-between; box-sizing: border-box; }
.tl-prev { left: 0; padding: 0 12px 0 19px; }
.tl-next { right: 0; padding: 0 19px 0 12px; }
.tl-nav.off { cursor: default; }
.tl-arrow { display: block; width: 18px; height: 18px; border-left: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); margin-left: 6px; }
.tl-next .tl-arrow { transform: rotate(-135deg); margin-left: 0; margin-right: 6px; }
.tl-dots { position: relative; z-index: 1; list-style: none; margin: 0 !important; padding: 0 !important; display: flex; justify-content: center; align-items: center; gap: 9px; }
.tl-dots li { margin: 0 !important; padding: 0 !important; list-style: none !important; display: flex; align-items: center; justify-content: center; height: 14px; }
.tl-dots li::marker { content: none; }
.tl-dots li:before { display: none !important; }
.tl-dots a { display: block; width: 5px; height: 5px; border-radius: 50%; background: #454e53; box-sizing: border-box; }
.tl-dots a.active { width: 12px; height: 12px; margin: 0 1px; background: transparent; border: 2px solid #f17505; }
@media (min-width: 1380px) { .tl-viewport { margin-left: calc(50vw - 600px); } }
@media (max-width: 1079px) { .tl-nav { width: 44px; } .tl-nav .tl-year { display: none; } .tl-prev, .tl-next { justify-content: center; padding: 0; } .tl-arrow { margin: 0 !important; } }
@media (max-width: 760px) { .hohner-timeline { padding-top: 24px; } .tl-ruler, .tl-nav { top: 190px; } }

/* Ansprechpartner-Karte über die gesamte Höhe des grauen Headers (wie im Original: height 100%) */
@media (min-width: 992px) {
  #theme_cid_distributor p:empty { display: none; }
  #theme_cid_distributor .frame-type-cc_distribution_pi1,
  #theme_cid_distributor .frame-type-cc_distribution_pi1 > .wp-block-group__inner-container,
  #theme_cid_distributor .cc-distributor { height: 100%; }
}

/* Einfache Produktseite (Layout 8): Kopfbereich, Tabelle "Technische Daten", Maschinenbild */
.dark.bg-line h1:has(+ h2.subheader) { margin-bottom: 18px !important; }
.dark.bg-line h2.subheader { line-height: 30px !important; margin: 0 0 18px !important; }
.dark.bg-line:has(h2.subheader) { padding-bottom: 70px; }
.technical_data .row-theme-stretched-content > .wp-block-group__inner-container { flex: 1 1 100%; width: 100%; }
.technical_data .wp-block-table { width: 100%; margin: 0 0 42px; }
.technical_data .wp-block-table table { width: 100%; max-width: 600px; border: 0; border-collapse: collapse; }
.technical_data .wp-block-table th, .technical_data .wp-block-table td { border: 0; padding: 5px 15px 5px 35px; font-size: 14px; line-height: 21px; color: #454e53; text-align: left; vertical-align: top; }
.technical_data .wp-block-table thead th { background: #454e53; color: #fff; font-weight: 700; font-size: 15px; padding-top: 6px; padding-bottom: 7px; }
.technical_data .wp-block-table tbody tr:nth-child(even) { background: #f2f2f2; }
.technical_data .wp-block-table td:first-child { width: auto; box-sizing: border-box; } /* Spaltenverteilung automatisch (Universal 52/8-S u. a.): erste Spalte bricht um, Wertespalten erhalten ihre Breite */
.technical_data .wp-block-table td + td, .technical_data .wp-block-table th + th { padding-left: 0; }
.lay-8 .image-block { display: flex; justify-content: center; align-items: flex-start; padding-top: 50px; box-sizing: border-box; }
.lay-8 .image-block #equipment_image_src { width: 440px; max-width: 100%; }
.lay-8 .image-block img { display: block; width: 100%; height: auto; }

/* Produktkacheln (Kategorieseiten): bündig im 1200px-Raster, drei je Zeile mit 10px Abstand */
.lay-12 .product-tiles { padding: 0 !important; margin: 50px 0 -5px !important; }
.lay-12 .product-tiles > [class*="col-"] { padding: 0 !important; }
.hohner-dialog .hf-intro { margin: 0 0 18px; }
.hohner-dialog .hf-dl { margin: 18px 0 14px; }

/* Ausstattungsbild (Produktseiten Layout 5): läuft vom Inhaltsbereich bis zum rechten Fensterrand, Überstand wird abgeschnitten */
.lay-5.theme_content { overflow-x: clip; }

/* Produktkacheln (Startseite/Produkte): beim Überfahren orange Overlay mit den Produkten der Kategorie */
.theme_cc_product_grid__item .col-sm-12 { position: relative; }
@media (hover: hover) {
  .theme_cc_product_grid__item .col-sm-12:hover > .theme_cc_product_grid__item--hidden { display: block; }
}
.theme_cc_product_grid__item--hidden { overflow: hidden; }
.theme_cc_product_grid__item--hidden ul { margin: 0; padding-left: 40px; }

/* Produktunterseite Technische Daten (page-56): Tabelle wie bei den einfachen Produktseiten, aber über die volle Inhaltsbreite */
.page-56 .wp-block-table { width: calc(100% + 29px); margin: 20px 0 0; }
.page-56 .wp-block-table table { width: 100%; border: 0; border-collapse: collapse; }
.page-56 .wp-block-table th, .page-56 .wp-block-table td { border: 0; padding: 5px 15px 5px 35px; font-size: 14px; line-height: 21px; color: #454e53; text-align: left; vertical-align: top; }
.page-56 .wp-block-table thead th { background: #454e53; color: #fff; font-weight: 700; font-size: 15px; padding-top: 6px; padding-bottom: 7px; }
.page-56 .wp-block-table thead th:nth-child(2) { display: none; }
.page-56 .wp-block-table tbody tr:nth-child(even) { background: #f2f2f2; }
.page-56 .wp-block-table td:first-child { width: 365px; box-sizing: border-box; }
.page-56 .wp-block-table td + td { padding-left: 0; }
/* Formate (page-55): Überschriften über den Bildern */
.page-55 .content h4 { margin: 30px 0 18px; }

/* Produktmenü (Seitenleiste): Maße wie im Original (Höhe 42 px, Abstand 10 px, Icon 10 px vom Rand) */
.sidebar ul.product_menu { margin: 30px 0 0; padding: 0; }
.sidebar ul.product_menu > li { list-style: none; margin: 0 0 10px; padding: 0; }
.sidebar ul.product_menu > li > a { display: block; line-height: 41px; height: 42px; padding: 0 10px 0 0; margin: 0 !important; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.sidebar ul.product_menu > li > a i { float: left; width: 30px; height: 30px; margin: 6px 0 0 10px; background-position: center; }
.sidebar ul.product_menu > li > a span { vertical-align: middle; padding-left: 10px; }

/* Produktmenü: Untermenü (z. B. Betriebsvarianten → Kreuzbruch, Falzhefter …) als dunkles Feld mit Puzzle-Icons */
.ic_puzzle_1 { display: inline-block; width: 30px; height: 30px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%23f17505' d='M3 7h5a3 3 0 1 1 6 0h5v5a3 3 0 1 1 0 6v5H3V7z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ic_puzzle_2 { display: inline-block; width: 30px; height: 30px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%238e24aa' d='M3 7h5a3 3 0 1 1 6 0h5v5a3 3 0 1 1 0 6v5H3V7z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ic_puzzle_3 { display: inline-block; width: 30px; height: 30px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%238dc63f' d='M3 7h5a3 3 0 1 1 6 0h5v5a3 3 0 1 1 0 6v5H3V7z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ic_puzzle_4 { display: inline-block; width: 30px; height: 30px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%23e6199b' d='M3 7h5a3 3 0 1 1 6 0h5v5a3 3 0 1 1 0 6v5H3V7z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ic_puzzle_5 { display: inline-block; width: 30px; height: 30px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%23f5b800' d='M3 7h5a3 3 0 1 1 6 0h5v5a3 3 0 1 1 0 6v5H3V7z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ic_puzzle_6 { display: inline-block; width: 30px; height: 30px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%232a47b8' d='M3 7h5a3 3 0 1 1 6 0h5v5a3 3 0 1 1 0 6v5H3V7z'/%3E%3C/svg%3E") center / contain no-repeat; }
ul.product_menu > li.active:has(> ul.product_menu_sub) { background: #454e53; box-shadow: 0 0 25px rgba(0, 0, 0, 0.25); }
ul.product_menu > li.active:has(> ul.product_menu_sub) > a { box-shadow: none !important; }
ul.product_menu > li > ul.product_menu_sub { list-style: none; margin: 0 !important; padding: 0 0 5px; background: #454e53; }
ul.product_menu > li > ul.product_menu_sub > li { list-style: none; margin: 0; padding: 0; background: transparent; }
ul.product_menu > li > ul.product_menu_sub > li > a { display: block; line-height: 41px; height: 42px; padding: 0 10px 0 0; margin: 0 !important; background: transparent !important; color: #fff; box-shadow: none !important; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
ul.product_menu > li > ul.product_menu_sub > li > a i { float: left; margin: 6px 0 0 10px; }
ul.product_menu > li > ul.product_menu_sub > li > a span { vertical-align: middle; padding-left: 10px; }
ul.product_menu > li > ul.product_menu_sub > li.current > a { color: #f17505 !important; }
ul.product_menu > li > ul.product_menu_sub > li > a:hover { color: #f17505; }

/* Bildbänder (Layout 90) im Inhaltsbereich der Produktunterseiten: nicht breiter als die Spalte */
.page-product .content .frame-layout-90 img { max-width: 100% !important; width: auto; height: auto; }

/* Produktunterseiten: Galerie-Bildunterschriften unter dem Bild statt als Verlauf darüber (Kombinationsmöglichkeiten) */
.page-product .content .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { position: static; background: none; color: #454e53; text-shadow: none; padding: 8px 0 0; margin: 0; font-size: 15px; line-height: 24px; text-align: left; max-height: none; overflow: visible; }
.page-product .content .wp-block-gallery.has-nested-images figure.wp-block-image { align-self: flex-start; }
.page-product .content .wp-block-gallery.has-nested-images figure.wp-block-image img { border-bottom-right-radius: 28px; }

/* Startseite: orange Striche vor den Überschriften der Bänder (Karriere, Second Life) und vor "News" */
.theme_cc_row_career h2:before, .theme_cc_row_career h4:before { content: ""; display: inline-block; position: relative; left: auto; width: 40px; height: 8px; background: #f17505; margin: 11px 10px 0 0; padding: 0; vertical-align: top; }
.theme_cc_row_career h4 { margin-top: 0; padding: 0 0 18px; color: #fff; font-size: 42px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.home .news h1 { position: relative; padding-left: 53px; }
.home .news h1:before { content: ""; display: block; position: absolute; left: 0; top: 18px; width: 40px; height: 8px; margin: 0; background: #f17505; }

/* Impressum (page-5) und Datenschutzhinweise (page-6): mehr Abstand zwischen grauem Kopfbereich und Text */
.page-5 .row-stretched + .row, .page-6 .row-stretched + .row { padding-top: 110px; }

/* Kategorieseiten mit genau zwei Kacheln: je 50 % der Inhaltsbreite (bündig mit der Dokumentensuche), Seitenverhältnis 390:270 bleibt erhalten */
@media (min-width: 992px) {
  .lay-12 .product-tiles:has(> :nth-child(2):last-child) { margin-left: -5px !important; margin-right: -5px !important; }
  .lay-12 .product-tiles:has(> :nth-child(2):last-child) > [class*="col-"] { flex: 0 0 50%; max-width: 50%; padding: 0 5px !important; box-sizing: border-box; }
  .lay-12 .product-tiles:has(> :nth-child(2):last-child) .ce-textpic-80 { margin-right: 0 !important; min-height: 0; aspect-ratio: 390 / 270; }
  .lay-12 .product-tiles:has(> :nth-child(2):last-child) .ce-textpic-80 img { width: 100%; height: 100%; min-height: 0; margin-left: 0; object-fit: cover; }
}

/* Ausstattungs-Popup (Nummern im Bild): immer mittig im Fenster, unabhängig von der Größe des Inhalts; unter 992 px füllt es das Fenster */
.PopupDialog { left: 50%; top: 50%; transform: translate(-50%, -50%); max-height: 100vh; }
@media (max-width: 991px) {
  .PopupDialog { left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important; max-height: 100% !important; transform: none !important; box-sizing: border-box; }
  .page-product .PopupDialog .PopupDialogInner { padding: 56px 20px 24px; height: 100%; box-sizing: border-box; overflow-y: auto; -webkit-overflow-scrolling: touch; }
  .PopupDialog .ce-textpic-70, .page-product .PopupDialog .PopupDialogInner .ce-textpic { max-width: 100%; width: 100%; height: auto; overflow: visible; }
  .page-product .PopupDialog .PopupDialogInner .ce-textpic.active { display: block; }
  .PopupDialog .ce-gallery, .PopupDialog .ce-bodytext { flex: none !important; width: 100%; max-width: 100%; }
  .PopupDialog .ce-gallery .ce-column { margin-right: 0 !important; }
  .page-product .PopupDialog .PopupDialogInner img { width: 100%; max-width: 100%; height: auto; display: block; }
  .page-product .PopupDialog .PopupDialogInner .ce-bodytext p { min-height: 0 !important; max-height: none !important; overflow: visible !important; }
  .PopupDialog .PopupClose { position: fixed; right: 0; top: 0; z-index: 3; }
  .PopupDialog .slider_navigation { margin-top: 16px; }
  .Popup { z-index: 2147483000 !important; }
  .PopupDialog { z-index: 2147483002 !important; } .PopupOverlay { z-index: 2147483001 !important; }
  .PopupDialog ol.ce-bullets li { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; }
  .PopupDialog ol.ce-bullets li h2 { margin: 0; font-size: 20px; line-height: 1.2; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; overflow-wrap: break-word; hyphens: auto; min-width: 0; flex: 1 1 auto; }
}

/* Ausstattungs-Popup: Überschrift etwas kleiner (vorher 42 px) */
.page-product .PopupDialog .PopupDialogInner .ce-textpic h2 { font-size: 32px; line-height: 1.2; }
@media (max-width: 767px) { .page-product .PopupDialog .PopupDialogInner .ce-textpic h2 { font-size: 26px; } }

/* Dokumentsuche: „Mehr anzeigen“ */
.hohner-dokumentsuche .hds-more { display: block; margin: 20px 0 0; background: transparent; border: 1px solid #f17505; color: #f17505; padding: 10px 28px; font: inherit; text-transform: uppercase; cursor: pointer; }
.hohner-dokumentsuche .hds-more:hover { background: #f17505; color: #fff; }
.hohner-dokumentsuche .hds-more[hidden], .hds-results li[hidden] { display: none !important; }

/* Tabellen aus TYPO3 (CSV-Tabelle, Klasse „striped“), z. B. Paper Conversion Sizes */
.hohner-striped { width: 100%; margin: 20px 0 0; }
.hohner-striped table { width: 100%; border: 0; border-collapse: collapse; }
.hohner-striped th, .hohner-striped td { border: 0; padding: 5px 15px 5px 35px; font-size: 14px; line-height: 21px; color: #454e53; text-align: left; vertical-align: top; }
.hohner-striped thead th { background: #454e53; color: #fff; font-weight: 700; font-size: 15px; padding-top: 6px; padding-bottom: 7px; }
.hohner-striped tbody tr:nth-child(even) { background: #f2f2f2; }
.hohner-striped th:first-child, .hohner-striped td:first-child { width: 42%; }
p.teaser { font-size: 22px; line-height: 27px; color: #454e53; margin: 0 0 20px; }

/* Paper Conversion Sizes (page-180): Download-Button abgesetzt von der Tabelle und mit Abstand zum Footer */
.page-180 .frame-type-cc_button_pi1 { margin: 50px 0 40px !important; }

/* News-Archiv (ältere als 2 Jahre) */
.hohner-news-archive{margin:40px 0 20px;border-top:1px solid #ccc;padding-top:20px}
.hohner-news-archive summary{cursor:pointer;font-size:24px;font-weight:700;list-style:none}
.hohner-news-archive summary::-webkit-details-marker{display:none}
.hohner-news-archive summary::before{content:'+';display:inline-block;width:28px;color:#e8731a}
.hohner-news-archive[open] summary::before{content:'\2013'}
.hohner-news-archive summary span{font-weight:400;color:#777;font-size:18px}
.hohner-news-archive .hna-hint{color:#777;margin:8px 0 0}
.hohner-news-archive h3{font-size:20px;margin:26px 0 8px}
.hohner-news-archive ul{list-style:none;margin:0;padding:0}
.hohner-news-archive li{display:flex;gap:20px;padding:8px 0;border-bottom:1px solid #eee}
.hohner-news-archive time{flex:0 0 90px;color:#777}
@media (max-width:767px){.hohner-news-archive li{flex-direction:column;gap:2px}}

/* Händlersuche: Gruppen- und Länderüberschriften, Länderfilter */
.cc_merch .merch-list .merch-group{flex:0 0 100%;margin:30px 0 0;padding:0 0 8px;font-size:24px;border-bottom:2px solid #f17505}
.cc_merch .merch-list .merch-group:first-child{margin-top:0}
.cc_merch .merch-list .merch-group:before{display:none}
.cc_merch .merch-list .merch-country{flex:0 0 100%;margin:14px 0 -6px;padding:0;font-size:18px;color:#959595;font-weight:700;letter-spacing:.02em}
.cc_merch .merch-list .merch-country:before{display:none}
.cc_merch select.merch-country-sel{flex:1 1 150px;padding:9px 10px;border:0;background:#ebebeb;font:inherit}

/* Seitensuche */
.hohner-suche form{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 24px}
.hohner-suche input[type=search]{flex:1 1 260px;padding:10px 12px;border:0;background:#ebebeb;font:inherit}
.hohner-suche .hs-count{color:#959595;margin:0 0 14px}
.hohner-suche .hs-results{list-style:none;margin:0;padding:0}
.hohner-suche .hs-results li{padding:14px 0;border-bottom:1px solid #eee}
.hohner-suche .hs-results li a{font-size:20px}
.hohner-suche .hs-results li p{margin:4px 0 0;color:#555}
.hohner-suche mark{background:#fde3c8;color:inherit}

/* Menü-Icon Rücklieferschein (Pfeil zurück) */
.ic_return { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%23454E53' d='M10.5 4.5 3.5 10.5l7 6v-4h4.2c2.1 0 3.6 1.2 3.6 3 0 1.3-.8 2.4-2.1 3h3.4c1.3-.9 2.1-2.4 2.1-4.1 0-3.2-2.7-5.4-6.2-5.4h-4.9z'/%3E%3C/svg%3E"); }
li.active a .ic_return, a:hover .ic_return { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25 25'%3E%3Cpath fill='%23FFFFFF' d='M10.5 4.5 3.5 10.5l7 6v-4h4.2c2.1 0 3.6 1.2 3.6 3 0 1.3-.8 2.4-2.1 3h3.4c1.3-.9 2.1-2.4 2.1-4.1 0-3.2-2.7-5.4-6.2-5.4h-4.9z'/%3E%3C/svg%3E"); }

/* Sprachwahl: breites graues Band oben, weiße Kacheln mit Flagge und Sprache */
body .cc_language .inner{max-width:none;width:100%;margin:0;background:#f2f2f2;padding:56px 20px 64px;box-shadow:0 6px 30px rgba(0,0,0,.25);box-sizing:border-box}
body .cc_language .inner > .row{max-width:1000px;margin:0 auto}
body .cc_language h2{margin:0 0 44px;text-align:center;font-size:44px;font-weight:400;color:#454e53;padding:0}
body .cc_language h2:before{display:none!important}
body .cc_language .row{gap:3.6%;flex-wrap:nowrap;justify-content:center}
body .cc_language .col{flex:1 1 0;min-width:0;text-align:left}
body .cc_language a.language-selection{display:block;background:#fff;border:1px solid #e3e3e3;padding:11px 10px 14px;color:#454e53;text-decoration:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}
body .cc_language a.language-selection:hover,.cc_language a.language-selection:focus{border-color:#f17505;box-shadow:0 0 0 1px #f17505}
body .cc_language a.language-selection p{margin:0;padding:0}
body .cc_language .col img{width:45px;max-width:100%;height:auto;border:0;display:block}
body .cc_language a.language-selection p:first-child{line-height:0}
body .cc_language a.language-selection p + p{margin-top:24px;font-size:15px;line-height:1.3}
body .cc_language .close{right:14px;top:12px;width:34px;height:34px;opacity:.9}
body .cc_language .close:before{color:#c4c4c4;font-size:34px;line-height:34px}
body .cc_language .close:hover:before{color:#454e53}
@media (max-width:767px){
  body .cc_language .inner{padding:44px 16px 36px;max-height:100vh;overflow-y:auto}
  body .cc_language h2{font-size:28px;margin-bottom:26px}
  body .cc_language .inner > .row{flex-wrap:wrap;gap:10px}
  body .cc_language .col{flex:0 0 calc(33.33% - 7px)}
  body .cc_language a.language-selection p + p{margin-top:14px}
}
body .cc_language{z-index:2147483000}
body .cc_language .inner > .row{max-width:940px!important;margin-left:auto!important;margin-right:auto!important;gap:32px!important}
body .cc_language .inner > .row:first-child{max-width:none!important}
@media (max-width:767px){body .cc_language .inner > .row{gap:10px!important}}
body .cc_language .inner > .row{min-width:0!important;width:100%}
body .cc_language .col{width:auto!important;max-width:none!important}
body .cc_language a.language-selection{width:100%!important}
@media (min-width:768px){body .cc_language a.language-selection p + p{white-space:nowrap}}
body .cc_language .col{padding:0!important}

/* Startseite: orange Sonderkachel (Individuelle Lösungen) */
.theme_cc_product_grid .theme_cc_product_grid__item.special .col-sm-12{min-height:400px;padding-top:20px}
.theme_cc_product_grid .theme_cc_product_grid__item.special h3{position:relative;padding-top:10px;line-height:1.15}
/* Mit Trefferliste darunter darf die Suchbox nichts verdecken */
.lay-12 .hds:has(.hds-results) .hohner-dokumentsuche{margin-bottom:40px}

/* Händlersuche: Vorschaubild (statische Weltkarte mit Standorten) statt dunkler Fläche – erst "Karte laden" lädt OpenStreetMap */
.cc_merch .merch-map { background: #eef0f1 url("../img/merch/map-preview.svg") center / cover no-repeat; }
.cc_merch .merch-map-consent { background: transparent; color: #454e53; }
.cc_merch .merch-map-consent p { color: #454e53; background: rgba(255,255,255,.92); padding: 16px 22px 14px; margin: 0; max-width: 520px; box-shadow: 0 0 22px rgba(0,0,0,.12); }
.cc_merch .merch-map-consent .merch-map-load { margin-top: 16px; box-shadow: 0 6px 18px rgba(0,0,0,.22); }

/* Kontaktseite: Headquarter-Band über die volle Breite, Inhalt wie die Kontaktkarten im 1200-px-Raster, Tabelle ohne Rahmen */
.page-4 .frame-layout-10{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important;box-sizing:border-box;padding:34px 20px 40px}
@media (min-width:1240px){.page-4 .frame-layout-10{padding-left:calc((100vw - 1200px)/2 + 20px);padding-right:calc((100vw - 1200px)/2 + 20px)}}
.page-4 .frame-layout-10 h2{padding-left:0!important;margin-left:0!important;text-indent:0}
.page-4 .frame-layout-10 table{width:100%;border:0!important;border-collapse:collapse;table-layout:fixed;margin:18px 0 0;background:transparent}
.page-4 .frame-layout-10 td,.page-4 .frame-layout-10 th{border:0!important;padding:0 24px 0 0;vertical-align:top;background:transparent}
.page-4 .frame-layout-10 td p{margin:0}
@media (max-width:767px){.page-4 .frame-layout-10 table,.page-4 .frame-layout-10 tbody,.page-4 .frame-layout-10 tr,.page-4 .frame-layout-10 td{display:block;width:100%}.page-4 .frame-layout-10 td{padding:0 0 14px}}
.page-4 .frame-layout-10 h2{padding-left:52px!important}
@media (max-width:767px){.page-4 .frame-layout-10 h2{padding-left:46px!important}}
/* Kontaktseite: reine Kartenansicht */
.cc_merch.merch-only{margin:0}
.cc_merch.merch-only .merch-map{margin-bottom:0}
/* Kontaktseite: Headquarter-Band und Karte im normalen Fluss (nicht absolut über den Footer) */
.page-4 .image_container, .page-4 .row-stretched > .frame, .page-4 .row-stretched .frame-type-list{position:relative!important;top:auto!important;left:auto!important}
.page-4 .image_container{position:static!important;width:auto!important;max-width:none!important;left:auto!important;right:auto!important}
.page-4 .frame-999, .page-4 .frame-999 > .wp-block-group__inner-container{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important}
body .cc_merch.merch-only{margin:0 auto!important;max-width:1200px;width:100%}

/* Second-Life (pid 16): Kacheln bündig im 1200px-Raster (380px breit, 20px Abstand), Hintergrundband über volle Breite, Kacheln ragen 78px hinein */
.page-16 .product-tiles { padding: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; position: relative; z-index: 2; }
.page-16 .product-tiles > [class*="col-"] { padding: 0 !important; }
.page-16 .image-used-machines { margin: 30px 0 0 !important; }
.page-16 .image-used-machines .inner .col-12 img.img { display: block; width: 100%; aspect-ratio: 380 / 314; height: auto; object-fit: cover; }
.page-16 .content .frame-layout-90 { width: 100vw !important; max-width: 100vw !important; margin: -78px 0 0 calc(50% - 50vw) !important; position: relative; z-index: 0; }
.page-16 .frame-layout-90 img.img { display: block; width: 100%; height: auto; min-width: 100%; }
.page-16 .theme_content { overflow-x: clip; }
@media (max-width: 991px) { .page-16 .image-used-machines { margin: 20px 0 0 !important; } .page-16 .content .frame-layout-90 { margin-top: 0 !important; margin-left: 0 !important; } }

/* Bildband (Layout 90: Zahnräder unter der Dokumentsuche, „Position in der Vollversion“ im Fuß der Futura-Seiten): über die volle Fensterbreite wie im TYPO3-Original.
   Den linken Versatz (Elternspalte nicht zentriert) setzt assets/js/fullbleed.js; ohne Skript greift die zentrierte Näherung. */
body .content .frame-layout-90 { width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; position: relative; z-index: 0; }
body .content .frame:has(+ .frame-layout-90) { position: relative; z-index: 2; }
body .content .frame-layout-90 img { display: block; width: 100% !important; min-width: 100%; max-width: none !important; height: auto; }
/* Zahnrad-Band: überlappt das Suchfeld oben, mehr Luft nach unten */
body .content .frame:has(.hds-button) + .frame-layout-90 { margin-top: -95px !important; margin-bottom: 100px !important; }
body .theme_content { overflow-x: clip; }
@media (max-width: 991px) { body .content .frame-layout-90 { margin: 20px 0 40px 0 !important; width: 100% !important; max-width: 100% !important; } body .content .frame:has(.hds-button) + .frame-layout-90 { margin-top: 20px !important; margin-bottom: 40px !important; } }

/* Produktübersicht: leere Überschrift über der ersten Kachel (ergab nur einen orangen Strich) ausblenden – alle Sprachen */
body .theme_cc_product_grid_title:has(h2:empty), body .theme_cc_product_grid_title h2:empty { display: none !important; }

/* Bilder auf Produktunterseiten (HSB/HHS-Futura: Formate, Betriebsvarianten, Digitalverarbeitung, Kreuzbruch …): ohne Kartenrahmen/Schatten direkt auf der Seite.
   Prospekt-Karten mit „Prospekt anfragen“-Link (.ce-bodytext) behalten den Schatten. */
body .mediathek-prospect:not(:has(.ce-bodytext)) .ce-gallery { box-shadow: none !important; -webkit-box-shadow: none !important; }

/* Bild-Vergrößerung (Kombinationsmöglichkeiten) */
.hohner-lb-trigger { cursor: zoom-in; }
body.hohner-lb-open { overflow: hidden; }
.hohner-lb { position: fixed; inset: 0; z-index: 100000; background: rgba(30, 36, 40, .88); display: flex; align-items: center; justify-content: center; padding: 24px; }
.hohner-lb-inner { max-width: min(1400px, 100%); max-height: 100%; display: flex; flex-direction: column; align-items: center; gap: 14px; }
.hohner-lb-inner img { max-width: 100%; max-height: calc(100vh - 120px); width: auto; height: auto; background: #fff; box-shadow: 0 0 30px rgba(0, 0, 0, .5); cursor: default; }
.hohner-lb-inner p { margin: 0; color: #fff; text-align: center; font-size: 16px; }
.hohner-lb-close { position: absolute; top: 12px; right: 16px; width: 44px; height: 44px; border: 0; background: transparent; color: #fff; font-size: 38px; line-height: 44px; cursor: pointer; }

/* Lohnfertigung (pid 137): Foto „Der Mensch macht's“ ragt 70px in das graue Band „Präzision von Klein bis Groß“ hinein (Bildübergang wie im TYPO3-Original) */
@media (min-width: 992px) {
  body.page-137 .frame-type-textpic { position: relative; z-index: 2; }
  body.page-137 .row-stretched:has(.frame-999) { margin-top: -120px; }
}

/* Chinesisch: Zitat neben dem Bild kleiner, damit es nicht über die Schaltfläche hinausläuft */
html[lang^="zh"] body .image-quote h3 { font-size: 26px; line-height: 1.5; }
