/* Customer review, 20 October 2026. Native Gutenberg markup. */
main h2,main h3,.editor-styles-wrapper h2,.editor-styles-wrapper h3{font-weight:700!important}
main h1{hyphens:none}
main p a:not(.wp-element-button),main li a:not(.wp-element-button){color:#a9000b;text-decoration:underline;text-underline-offset:3px}
main .support-card p a,main .cta-cover p a{color:#fff}
.featured-card__btn .wp-block-button__link{font-size:14px;line-height:1.35;padding:12px 18px;min-height:0}
.featured-card__content>.koci-inline-buttons{width:auto;align-self:flex-start}
.card-slide__content h3{font-weight:700;margin:0 0 20px}
.card-slide__content p{margin:0;line-height:1.6}
.product-card__title,.product-card__title a{color:#171717!important;font-weight:700;text-decoration:none}
.product-card__title{margin:0 0 24px!important}
.product-card__content>.koci-inline-buttons{margin-top:auto;padding-top:24px}
.product-card__content .product-card__btn{padding-top:0}
.page-card__image{aspect-ratio:4/3;overflow:hidden}
.page-card__image>.koci-native-group,.page-card__image figure,.page-card__image figure>a{height:100%;width:100%;margin:0}
.page-card__image img{display:block;width:100%;height:100%;object-fit:cover}
.page-card__image .page-card__title{margin:0;z-index:2}
.page-card__content>.koci-inline-buttons{margin-top:24px}
.page-card__content .page-card__btn{margin-top:0}
main .wp-block-group.is-layout-flex:has(>figure img[src*="E-Handwerk"]){max-width:850px;margin:32px auto;padding:24px;gap:48px;justify-content:center}
.wp-block-group.is-layout-flex:has(>figure img[src*="E-Handwerk"])>figure{flex:0 1 280px;max-width:280px}
.wp-block-group.is-layout-flex:has(>figure img[src*="E-Handwerk"])>div{flex:0 1 360px;padding:0}
.wp-block-group.is-layout-flex:has(>figure img[src*="E-Handwerk"]) img[src*="TUEV"]{width:90px}
.koci-native-accordion{border:1px solid #ddd;border-radius:0;margin:0 0 12px!important;background:#fff}
.koci-native-accordion>summary{padding:22px 64px 22px 24px;background:#f1f1f1;color:#242424;font-size:18px;font-weight:700;line-height:1.5;transition:background .2s,color .2s}
.koci-native-accordion>summary:hover,.koci-native-accordion[open]>summary{background:#e30613;color:#fff}
.koci-native-accordion>summary:after{right:24px;top:18px;color:inherit}
.koci-native-accordion>summary~*{margin:24px!important;padding-inline:0}
.koci-native-accordion>summary~.wp-block-group>*+*{margin-top:24px}
.koci-native-accordion>summary~.wp-block-group ul{padding-left:24px}
.timeline{position:relative;padding-left:30px;border-left:2px dotted #aaa}
.timeline .koci-native-accordion{position:relative;border:0;margin-bottom:10px!important}
.timeline .koci-native-accordion:before{content:'';position:absolute;left:-40px;top:27px;width:18px;height:18px;border:4px solid #fff;border-radius:50%;background:#333;box-sizing:border-box}
.timeline .koci-native-accordion[open]:before{background:#e30613}
.timeline figure{overflow:hidden}.timeline figure img{transition:transform .6s ease}
.timeline figure:hover img{transform:scale(1.035)}
.image-slider__image{aspect-ratio:4/3;background:transparent;overflow:hidden}
.image-slider__image>.koci-native-group,.image-slider__image figure,.image-slider__image figure>a{height:100%;width:100%;margin:0}
.image-slider__image img{display:block;height:100%;width:100%;object-fit:cover}
.image-slider .swiper-slide{height:auto}.image-slider .swiper-wrapper{align-items:stretch}
.page-id-398 main h3,.page-id-435 main h3{margin-bottom:20px!important}
.page-id-396 .koci-native-accordion,.page-id-442 .koci-native-accordion{border:2px solid #e30613}
.page-id-396 .koci-native-accordion>summary,.page-id-442 .koci-native-accordion>summary{background:#e30613;color:#fff}
.koci-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),.koci-form select,.koci-form textarea{border:1px solid #b9b9b9;border-radius:5px}
.koci-form [hidden]{display:none!important}
.koci-form .ff-el-input--label:after{content:none!important}
.koci-form .ff-el-is-required label:after{content:' *';color:#a9000b}
.koci-form .koci-step-nav{margin-top:24px}
.koci-form .koci-step-status{color:#333;font-weight:600}
.koci-motion .koci-enter{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--koci-delay,0ms)}
.koci-motion .koci-enter.koci-entered{opacity:1;transform:none}
.koci-hero-line{display:block;animation:koci-hero-line .8s both;animation-delay:var(--koci-delay,0ms)}
@keyframes koci-hero-line{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}
.banner__keyvisual.koci-triangle-enter{animation:koci-triangle-enter 1s .15s both}
@keyframes koci-triangle-enter{from{opacity:0;transform:translateY(65%)}to{opacity:1;transform:none}}
@media(max-width:600px){.koci-native-accordion>summary{padding:18px 48px 18px 18px;font-size:17px}.koci-native-accordion>summary:after{right:18px;top:13px}.koci-native-accordion>summary~*{margin:20px!important}.timeline{padding-left:20px}.timeline .koci-native-accordion:before{left:-30px}.wp-block-group.is-layout-flex:has(>figure img[src*="E-Handwerk"]){flex-wrap:wrap;gap:24px!important}}
@media(prefers-reduced-motion:reduce){.koci-hero-line,.banner__keyvisual.koci-triangle-enter{animation:none}.koci-motion .koci-enter{opacity:1;transform:none;transition:none}.timeline figure img{transition:none}}

.featured-card__btn .wp-block-button__link br{display:none}

/* Override inherited pill-button styling on native Details summaries. */
main .koci-native-accordion>summary{display:block;width:100%;box-sizing:border-box;border:0;border-radius:0;text-transform:none}
main .koci-native-accordion>summary:before{content:none!important}
main .timeline{border-left:0;padding-left:36px}
main .timeline:before{content:'';position:absolute;left:8px;top:0;bottom:0;border-left:2px dotted #aaa}
main .timeline .koci-native-accordion:before{left:-36px}

.gallery__image figure{overflow:hidden}
.gallery__image figure:hover img{transform:scale(1.08);opacity:.8}
@media(prefers-reduced-motion:reduce){.gallery__image figure:hover img{transform:none}}

/* Service tiles are navigation controls, not underlined text links. */
main .service-card__title a:not(.wp-element-button),main .service-card__title a:hover,main .service-card__title a:focus{color:inherit;text-decoration:none}
@media(prefers-reduced-motion:no-preference){
 .koci-motion .service-card__link.koci-enter{transform:translate3d(0,100px,0);transition:opacity 700ms,transform 600ms;transition-delay:var(--koci-delay,0ms)}
 .koci-motion .service-card__link.koci-enter.koci-entered{transform:translate3d(0,0,0)}
}

/* Match the original hero: the Cover reset must not remove its viewport minimum. */
.wp-block-cover.koci-native-cover.hero{min-height:75vh}
/* Set the off-screen start position immediately; animate only when revealed. */
@media(prefers-reduced-motion:no-preference){
 .koci-motion .service-card__link.koci-enter:not(.koci-entered){transition:none}
}

/* Accordion tables and downloads: original KC100 presentation, native blocks. */
main .koci-native-accordion a:not(.wp-element-button){color:#000;text-decoration:none}
main .koci-native-accordion a:not(.wp-element-button):hover{text-decoration:underline}
.koci-native-accordion .wp-block-table{overflow-x:auto;margin:0}
.koci-native-accordion .wp-block-table table{table-layout:auto;width:100%;border-collapse:collapse;border:0}
.koci-native-accordion .wp-block-table th,.koci-native-accordion .wp-block-table td{padding:.6rem;border:0;border-top:1px solid #ddd;text-align:left;vertical-align:top}
.koci-native-accordion .wp-block-table thead{border:0}
.koci-native-accordion .wp-block-table thead th,.koci-native-accordion .wp-block-table thead td{background:#e30613;color:#fff;font-weight:700;border:0}
.koci-native-accordion .wp-block-table tbody tr:nth-child(odd) td{background:#fff}
.koci-native-accordion .wp-block-table tbody tr:nth-child(even) td{background:#f9f9f9}
.koci-native-accordion .wp-block-table tbody tr:hover td{background:#f3f3f3}
.koci-native-accordion>summary~.wp-block-group:has(>.wp-block-table){margin:24px 0!important}
.koci-native-accordion ul.is-style-icon-file{list-style:none;padding-left:0!important}
.koci-native-accordion ul.is-style-icon-file>li{position:relative;list-style:none;padding-left:40px}
.koci-native-accordion ul.is-style-icon-file>li:before{content:'\e906';font-family:icons!important;font-size:32px;position:absolute;left:0;top:-.1em;border:0;color:#000}

.koci-form [data-koci-field="k_datenschutz"] .wpcf7-list-item,.koci-form [data-koci-field="k_agb"] .wpcf7-list-item{margin:0}
.koci-form label:has(>.koci-consent-text){display:flex;align-items:flex-start;gap:12px}
.koci-form label:has(>.koci-consent-text)>input{flex:0 0 auto;margin:4px 0 0}
.koci-form .koci-consent-text{font-size:14px;line-height:1.7;color:#000}
main .koci-form .koci-consent-text a{color:#000;text-decoration:underline}

/* Configurator follows the original continuous, conditional form. */
.koci-continuous .koci-step-nav,.koci-continuous .koci-step>legend{display:none!important}
.koci-continuous .wpcf7-radio{display:flex!important;flex-wrap:wrap;gap:12px 28px}
.koci-continuous .wpcf7-radio .wpcf7-list-item{display:inline-block!important;margin:0}
.koci-continuous .wpcf7-radio label{display:inline-flex;align-items:center;gap:8px}
.koci-continuous .wpcf7-radio input{margin:0}

.site-footer .koci-footer-credit{margin:40px 0 0;padding-top:20px;border-top:1px solid #ddd;font-size:13px;line-height:1.7;text-align:center}.site-footer .koci-footer-credit a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* Original comparison 2026-10-27: only product reveals, related services,
   accordion frames, company chronology and contact email hover. */
body:is(.page-id-392,.page-id-450) .product-card__title a:hover,
body:is(.page-id-392,.page-id-450) .product-card__title a:focus-visible{color:#e30613!important;text-decoration:none}
@media(prefers-reduced-motion:no-preference){
 .koci-motion body:is(.page-id-392,.page-id-450) .product-card.koci-enter{transform:translate3d(0,100px,0);transition:none}
 .koci-motion body:is(.page-id-392,.page-id-450) .product-card.koci-entered{transform:translate3d(0,0,0);transition:opacity 700ms ease,transform 600ms ease;transition-delay:var(--koci-delay,0ms)}
}
main .related-pages__grid-item>.koci-native-group>p a,
main .related-pages__grid-item>.koci-native-group>p a:hover,
main .related-pages__grid-item>.koci-native-group>p a:focus-visible{color:#fff;text-decoration:none}
main .related-pages__grid-item>.koci-native-group>p{transition:transform 300ms ease}
main .related-pages__grid-item:hover>.koci-native-group>p,
main .related-pages__grid-item:focus-within>.koci-native-group>p{transform:translateY(-5px)}
main .related-pages__grid-item:hover img,
main .related-pages__grid-item:focus-within img{transform:scale(1.04)}
main details.koci-native-accordion{border:0!important}
main .timeline{padding-left:0;border:0;overflow:hidden}
main .timeline:before{content:none}
main .timeline .koci-native-accordion{position:relative;margin:0 0 8px!important}
main .timeline .koci-native-accordion:before{content:none}
main .timeline .koci-native-accordion:after{content:'';position:absolute;z-index:1;pointer-events:none;left:32px;top:0;bottom:-8px;width:2px;background-image:radial-gradient(circle at 1px 4.5px,#000 1px,transparent 1.2px);background-size:2px 9px}
main .timeline .koci-native-accordion:first-child:after{top:38px}
main .timeline .koci-native-accordion:last-child:after{bottom:auto;height:38px}
main .timeline .koci-native-accordion>summary{position:relative;padding:24px 60px 24px 66px;background:#f5f5f5;color:#000;font-size:var(--base-font-size);line-height:var(--base-line-height);transition:background 300ms ease,color 300ms ease}
main .timeline .koci-native-accordion[open]>summary{background:#f5f5f5;color:#000}
main .timeline .koci-native-accordion>summary:hover{background:#ededed;color:#000}
main .timeline .koci-native-accordion>summary:before{content:''!important;position:absolute;z-index:2;left:24px;top:calc(50% - 9px);margin:0;transform:none;width:18px;height:18px;border:0;border-radius:50%;background:#000;transition:background 250ms ease}
main .timeline .koci-native-accordion>summary:hover:before,
main .timeline .koci-native-accordion[open]>summary:before{background:#e30613}
main .timeline .koci-native-accordion>summary:after{top:50%;right:20px;transform:translateY(-50%);font-family:icons;font-size:24px;font-weight:normal;line-height:1;content:'\e92a'}
main .timeline .koci-native-accordion[open]>summary:after{content:'\e929';transform:translateY(-50%) rotate(180deg)}
main .timeline .koci-native-accordion>summary~*{margin:0!important;padding:30px 0 30px 68px;box-sizing:content-box;max-width:49rem}
body:is(.page-id-24,.page-id-448) main a[href^="mailto:"]:hover,
body:is(.page-id-24,.page-id-448) main a[href^="mailto:"]:focus-visible{color:#e30613;text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:.15em}
@media(prefers-reduced-motion:reduce){main .related-pages__grid-item>.koci-native-group>p{transition:none}}
/* Mobile headings: use language-aware hyphenation, never arbitrary letter breaks. */
@media (max-width: 767px) {
  body h1, body h2, body h3, body h4, body h5, body h6 {
    word-break: normal !important;
    overflow-wrap: normal !important;
    -webkit-hyphens: auto !important;
    hyphens: auto !important;
  }
  .featured-card__title, .page-card__title, .product-card__title {
    min-width: 0;
    max-width: 100%;
  }
}
