.site-search-button{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;flex:0 0 54px;width:54px;height:54px;padding:5px 4px 4px;border:1px solid #dfe4e7;border-radius:11px;background:#fff;color:#30383d;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.site-search-button:hover,.site-search-button:focus-visible{border-color:#72a93b;box-shadow:0 6px 18px rgba(35,65,28,.12);transform:translateY(-1px);outline:none}
.site-search-button.floating{position:fixed;right:18px;top:18px;z-index:55;box-shadow:0 8px 24px rgba(20,40,52,.16)}
.site-search-button-label{display:block;font-size:.64rem;font-weight:800;line-height:1;white-space:nowrap}
.header-identity-group{display:flex;flex:0 0 175px;flex-direction:column;align-items:center;justify-content:center}
.header-identity-group>a:first-child{display:block;line-height:0}
.header-identity-group .logo{display:block;width:145px;height:auto}
.header-offer-group{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}
.header-offer-links{display:flex;align-items:center;justify-content:center;gap:14px}
.header-offer-links>.site-home-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:7px 12px;
  border:1px solid #d9dfe2;
  border-radius:9px;
  background:#fff;
  color:#40484d!important;
  font-size:.92rem;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.header-offer-links>.site-home-link:hover,
.header-offer-links>.site-home-link:focus-visible{
  border-color:#a36a38;
  background:#f7f3ef;
  color:#70431e!important;
  outline:none;
}
.nav-dropdown{position:relative}
.nav-dropdown>summary{display:inline-flex;align-items:center;gap:5px;padding:8px 3px;border-radius:8px;font-size:.92rem;font-weight:800;line-height:1.2;list-style:none;cursor:pointer;white-space:nowrap}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary::after{content:"⌄";font-size:.72rem;color:currentColor;transition:transform .18s ease}
.nav-dropdown[open]>summary::after{transform:rotate(180deg)}
.nav-dropdown>summary:hover,.nav-dropdown>summary:focus-visible{background:#f2f4f5;outline:none}
.nav-dropdown-concepts>summary{color:#7a4b24!important}
.nav-dropdown-training>summary{color:#4e8127!important}
.nav-dropdown-consulting>summary{color:#b02e2e!important}
.nav-dropdown-products>summary{color:#555!important}
.nav-dropdown-menu{position:absolute;z-index:80;top:calc(100% + 8px);left:0;display:none;min-width:270px;max-width:min(430px,92vw);padding:8px;border:1px solid #dfe4e7;border-radius:13px;background:#fff;box-shadow:0 15px 38px rgba(20,40,52,.18)}
.nav-dropdown[open]>.nav-dropdown-menu,.nav-dropdown:focus-within>.nav-dropdown-menu{display:grid}
@media(hover:hover) and (pointer:fine){
  .nav-dropdown:hover>.nav-dropdown-menu{display:grid}
}
.nav-dropdown-training>.nav-dropdown-menu{grid-template-columns:repeat(2,minmax(180px,1fr));min-width:430px}
.nav-dropdown-menu a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 30px 9px 11px;border-radius:8px;color:#3e484e!important;text-align:left!important;text-decoration:none;font-size:.82rem!important;font-weight:650!important;line-height:1.25!important;white-space:normal!important}
.nav-dropdown-menu a::after{content:"→";position:absolute;right:10px;color:#788288;font-weight:900}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible{background:#f2f6ef;color:#345f20!important;outline:none}
.nav-dropdown-menu .nav-dropdown-overview{grid-column:1/-1;margin-bottom:3px;border-bottom:1px solid #e6eaec;border-radius:7px 7px 0 0;font-weight:850!important}
.nav-dropdown-consulting>.nav-dropdown-menu,.nav-dropdown-products>.nav-dropdown-menu{left:50%;transform:translateX(-50%)}
.header-offer-links>.nav-dropdown{display:inline-flex;align-items:center}
.primary-nav>.nav-dropdown-products,.nav>.nav-dropdown-products{display:inline-flex;align-items:center}
.subpage-menu-button{display:none;align-items:center;justify-content:center;width:46px;height:43px;margin-left:auto;border:1px solid #d9dfe2;border-radius:11px;background:#fff;color:#30383d;font-size:1.45rem;line-height:1;cursor:pointer}
.subpage-menu-button:hover,.subpage-menu-button:focus-visible{border-color:#72a93b;background:#f3f7f1;outline:none}
.mobile-home-link{display:none}
.product-overview-grid>figure[id],.product-gallery>h2[id]{scroll-margin-top:120px}
.header-more{position:relative}
.header-more>summary{display:inline-flex;align-items:center;gap:5px;padding:7px 8px;border-radius:9px;color:#555;font-size:.92rem;font-weight:800;line-height:1.2;list-style:none;cursor:pointer;white-space:nowrap}
.header-more>summary::-webkit-details-marker{display:none}
.header-more>summary::after{content:"⌄";font-size:.8rem;transition:transform .18s ease}
.header-more[open]>summary::after{transform:rotate(180deg)}
.header-more>summary:hover,.header-more>summary:focus-visible{background:#f2f4f5;outline:none}
.header-more-menu{position:absolute;z-index:40;top:calc(100% + 9px);right:0;display:grid;min-width:210px;padding:8px;border:1px solid #e1e5e7;border-radius:13px;background:#fff;box-shadow:0 14px 36px rgba(20,40,52,.16)}
.header-more-menu a{display:block;padding:10px 12px;border-radius:9px;color:#424b50!important;text-align:left!important;text-decoration:none;font-size:.9rem;font-weight:750!important;white-space:nowrap}
.header-more-menu a:hover,.header-more-menu a:focus-visible{background:#f1f5ef;color:#345f20!important;outline:none}
header .site-search-button{border-color:transparent;background:transparent;box-shadow:none}
header .site-search-button:hover,header .site-search-button:focus-visible{border-color:transparent;background:#f2f4f5;box-shadow:none;transform:none}
header .lang button,header .flag-nav a{border-color:transparent!important;background:transparent!important;box-shadow:none!important;padding:6px 7px!important}
header .lang button:hover,header .lang button:focus-visible,header .flag-nav a:hover,header .flag-nav a:focus-visible{background:#f2f4f5!important;outline:none}
header .lang button.active{background:#eef1f2!important}

/* Einheitliche Fachfarben: Konzepte = Braun, Schulungen = Grün, Beratungen = Rot */
.pillar.green{border-top-color:#a36a38!important}.pillar.green .label,.q-card.green .q,.detail-card.green h3{color:#7a4b24!important}
.pillar.orange{border-top-color:#72a93b!important}.pillar.orange .label,.q-card.orange .q,.detail-card.orange h3{color:#4e8127!important}
.pillar.blue{border-top-color:#d45454!important}.pillar.blue .label,.q-card.blue .q,.detail-card.blue h3{color:#b02e2e!important}
body.green .eyebrow,body.green .card h2{color:#7a4b24!important}
body.orange .eyebrow,body.orange .card h2{color:#4e8127!important}
body.blue .eyebrow,body.blue .card h2{color:#b02e2e!important}

/* Einheitliche Typografie für sämtliche Kachelüberschriften */
.q-card .q,
.detail-card h3,
.pillar .label,
.card h2,
.price-card h2,
.contact-card h2,
.contact-pricing-card h2,
.solution-card h2,
.link-card h2,
.resources .link-card h3,
.product-seo h3,
.product-hover>strong{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
  font-size:1.35rem!important;
  font-weight:700!important;
  line-height:1.25!important;
  letter-spacing:normal!important;
}
/* Produktnamen so kompakt wie die darunterliegenden Detailverweise */
.product-seo h3{
  font-size:1rem!important;
  line-height:1.3!important;
}
.product-seo .product-detail-link{
  font-size:.67rem!important;
  line-height:1.35!important;
}
.site-search-icon{position:relative;width:17px;height:17px;border:2px solid currentColor;border-radius:50%}
.site-search-icon::after{content:"";position:absolute;width:8px;height:2px;right:-6px;bottom:-3px;border-radius:2px;background:currentColor;transform:rotate(45deg);transform-origin:left center}
.site-search-overlay{position:fixed;inset:0;z-index:1000;display:none;align-items:flex-start;justify-content:center;padding:7vh 18px 24px;background:rgba(16,25,30,.72);backdrop-filter:blur(4px)}
.site-search-overlay.open{display:flex}
.site-search-dialog{width:min(760px,100%);max-height:86vh;display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.site-search-head{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #e3e7ea}
.site-search-input-wrap{position:relative;flex:1}
.site-search-input{width:100%;height:50px;padding:0 16px 0 46px;border:2px solid #dce3e6;border-radius:13px;background:#fff;color:#15191d;font:inherit;font-size:1.05rem}
.site-search-input:focus{border-color:#72a93b;outline:none;box-shadow:0 0 0 4px rgba(114,169,59,.12)}
.site-search-input-wrap .site-search-icon{position:absolute;left:17px;top:15px;color:#657078}
.site-search-close{width:44px;height:44px;border:0;border-radius:50%;background:#f1f4f5;color:#30383d;font-size:1.55rem;line-height:1;cursor:pointer}
.site-search-status{padding:13px 22px;color:#667079;font-size:.9rem;border-bottom:1px solid #edf0f2}
.site-search-results{overflow:auto;padding:10px 12px 18px}
.site-search-result{display:block;padding:15px 14px;border-radius:14px;color:inherit;text-decoration:none}
.site-search-result:hover,.site-search-result:focus-visible{background:#f3f7f1;outline:none}
.site-search-result+.site-search-result{border-top:1px solid #edf0f2}
.site-search-result-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px;color:#4e8127;font-size:.74rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.site-search-result h2{margin:0 0 4px;font-size:1.08rem;line-height:1.3;color:#1a2024}
.site-search-result p{margin:0;color:#667079;font-size:.91rem;line-height:1.45}
.site-search-empty{padding:34px 20px;text-align:center;color:#667079}
.site-search-hint{margin-top:8px;font-size:.82rem;color:#7b858b}
body.search-open{overflow:hidden}
@media(max-width:1180px){
  header .head{position:relative;min-height:74px;flex-wrap:nowrap}
  .mobile-home-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:86px;
    height:68px;
    margin-left:auto;
    padding:8px 12px;
    border:1px solid #d9dfe2;
    border-radius:13px;
    background:#fff;
    color:#40484d!important;
    font-size:1rem;
    font-weight:850;
    line-height:1;
    text-decoration:none;
    white-space:nowrap;
  }
  .subpage-menu-button,
  .menu-btn{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    width:68px;
    height:68px;
    padding:0!important;
    border-radius:13px!important;
    font-size:1.8rem!important;
  }
  .mobile-home-link+.subpage-menu-button,
  .mobile-home-link+.menu-btn{margin-left:7px}
  header .head>.nav .site-home-link,
  .primary-nav .site-home-link{display:none}
  header.mobile-menu-expanded{position:relative}
  header.mobile-menu-expanded .head,
  header.mobile-menu-expanded .header-row{flex-wrap:wrap}
  header.mobile-menu-expanded .head>.nav,
  header.mobile-menu-expanded .header-row>.primary-nav{
    position:static;
    flex:0 0 100%;
    width:100%;
    max-height:none;
    border-top:1px solid #dfe4e7;
  }
  .subpage-menu-button{display:inline-flex}
  header .head>.nav{
    position:absolute;
    z-index:120;
    top:100%;
    right:0;
    left:0;
    display:none;
    max-height:calc(100vh - 75px);
    margin:0;
    padding:18px;
    overflow-y:auto;
    grid-template-columns:minmax(150px,1fr) auto auto 58px;
    align-items:center;
    gap:12px 16px;
    border:1px solid #dfe4e7;
    border-top:0;
    border-radius:0 0 16px 16px;
    background:#fff;
    box-shadow:0 18px 36px rgba(20,40,52,.18);
  }
  header .head>.nav.mobile-open{display:grid}
  .primary-nav.open{display:grid!important;grid-template-columns:minmax(150px,1fr) auto auto 58px;align-items:center;gap:12px 16px}
  header .head>.nav>.header-offer-group,
  .primary-nav>.header-offer-group{
    grid-column:1/-1;
    width:100%;
    align-items:stretch;
  }
  header .head>.nav .header-offer-links,
  .primary-nav .header-offer-links{
    position:relative;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:100%;
    gap:10px;
    align-items:stretch;
  }
  .header-offer-links>.nav-dropdown{position:static;width:auto!important}
  .header-offer-links>.nav-dropdown-concepts{grid-column:1;grid-row:1}
  .header-offer-links>.nav-dropdown-consulting{grid-column:2;grid-row:1}
  .header-offer-links>.nav-dropdown-training{grid-column:3;grid-row:1}
  .header-offer-links>.nav-dropdown>summary{
    justify-content:center;
    width:100%;
    min-height:42px;
    padding:8px 5px;
    text-align:center;
  }
  .header-offer-links>.nav-dropdown>.nav-dropdown-menu{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    left:0;
    width:100%;
    min-width:0;
    max-width:none;
    margin:0;
    transform:none;
    box-shadow:0 15px 38px rgba(20,40,52,.18);
  }
  .primary-nav>.nav-dropdown-products,
  header .head>.nav>.nav-dropdown-products{grid-column:1;grid-row:2;width:auto}
  .primary-nav>.header-more,
  header .head>.nav>.header-more{grid-column:2;grid-row:2;width:auto}
  .primary-nav>.lang,
  header .head>.nav>.flag-nav{grid-column:3;grid-row:2;margin:0}
  .primary-nav>.site-search-button,
  header .head>.nav>.site-search-button{grid-column:4;grid-row:2;margin:0}
  .primary-nav>.nav-dropdown-products>summary,
  header .head>.nav>.nav-dropdown-products>summary,
  .primary-nav>.header-more>summary,
  header .head>.nav>.header-more>summary{justify-content:center;min-height:42px;padding:8px 5px}
  .primary-nav .site-search-button,.nav .site-search-button{order:90}
  .primary-nav .header-offer-group{align-items:flex-start;gap:7px}
  .primary-nav .header-offer-links{flex-direction:column;align-items:flex-start;gap:15px}
  .header-more{width:100%}
  .header-more>summary{padding-left:0}
  .header-more-menu{position:static;width:min(300px,100%);margin-top:5px;box-shadow:none}
  .nav-dropdown{width:100%}
  .nav-dropdown>summary{width:100%;justify-content:flex-start;padding:7px 0}
  .nav-dropdown-menu,.nav-dropdown-training>.nav-dropdown-menu,.nav-dropdown-consulting>.nav-dropdown-menu,.nav-dropdown-products>.nav-dropdown-menu{position:static;grid-template-columns:1fr;width:min(430px,100%);min-width:0;max-width:none;margin:4px 0 8px;transform:none;box-shadow:none}
  .header-offer-links>.nav-dropdown,.primary-nav>.nav-dropdown-products,.nav>.nav-dropdown-products{display:block}
}
@media(max-width:560px){
  header .head>.nav,
  .primary-nav.open{
    grid-template-columns:minmax(120px,1fr) auto auto 50px;
    gap:9px 8px;
    padding-inline:12px;
  }
  .header-offer-links>.nav-dropdown>summary{font-size:.82rem}
  .header-offer-links>.site-home-link{font-size:.78rem;padding-inline:8px}
  .nav-dropdown-products>summary,.header-more>summary{font-size:.8rem}
  header .lang{gap:1px}
  header .lang button,header .flag-nav a{padding-inline:4px!important;font-size:.78rem}
  header .site-search-button{width:48px;flex-basis:48px}
  .primary-nav>.nav-dropdown-products[open],
  header .head>.nav>.nav-dropdown-products[open]{grid-column:1/-1}
}
@media(hover:none),(pointer:coarse){
  a,.nav-dropdown>summary,.header-more>summary,.subpage-menu-button,.menu-btn{
    touch-action:manipulation;
  }
  .pillar-link:hover .pillar,
  .q-card:hover,
  .detail-card-link:hover .detail-card,
  .detail-link:hover .card{
    transform:none!important;
  }
}
@media(max-width:600px){
  .header-identity-group{flex-basis:140px;width:140px}
  .header-identity-group .logo{width:125px}
  .nav .header-offer-links{gap:9px}
  .site-search-overlay{padding:0}
  .site-search-dialog{width:100%;height:100dvh;max-height:none;border-radius:0}
  .site-search-head{padding:14px}
  .site-search-status{padding-inline:16px}
  .site-search-results{padding-inline:8px}
}
@media(max-width:1180px) and (pointer:coarse){
  .site-search-overlay{padding:0}
  .site-search-dialog{
    width:100%;
    height:100dvh;
    max-height:100dvh;
    border-radius:0;
  }
  .site-search-head{flex:0 0 auto;padding:12px 14px}
  .site-search-status{flex:0 0 auto;padding:9px 16px}
  .site-search-results{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding:6px 8px max(18px,env(safe-area-inset-bottom));
  }
}
