/* Navigation, search and enquiry usability. Hero selectors and media are unchanged. */
.has-mega.mega-dismissed>.mega{opacity:0!important;visibility:hidden!important;pointer-events:none}
.has-mega:has(>a:focus-visible)>.mega{transition:none}
.search-page-form{display:grid;gap:10px;margin:0 0 22px}.search-page-form>label{font-weight:700}.search-page-form__row{display:flex;gap:12px;align-items:stretch}.search-page-form input{flex:1;min-width:0;padding:14px 16px;font:inherit;font-size:16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
[data-site-search-page] .site-search__results{max-height:none;padding:0;margin:0 0 32px}[data-site-search-page] .site-search__status{padding:0 0 16px}.site-search__more{padding:0 24px 24px;margin:0}.site-search__more a{font-weight:700;color:var(--brand)}.search-quicklinks{display:flex;flex-wrap:wrap;gap:12px 28px;padding-left:20px}
.form .form__status{flex-basis:100%}.form-errors{border-left:3px solid var(--fire);padding:12px 16px;background:#fff5f5;margin:0 0 16px}.form-errors p{margin:0 0 8px;font-weight:700}.form-errors ul{margin:0;padding-left:20px}.form-errors a{color:var(--ink);text-decoration:underline}.form-draft{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--bg,#f5f7fa)}.form-draft>p{margin:0 0 12px}.form-draft label{display:grid;gap:8px;font-weight:600;font-size:14px}.form-draft textarea{width:100%;min-height:170px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:16px;resize:vertical}.form-draft__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.form-draft .btn{font-size:14px;min-height:44px}.form .is-invalid :is(input,select,textarea){border-color:var(--fire)}.form .check{min-height:44px;align-items:start}.form .check input{margin-top:5px;flex-shrink:0}.form-delivery-note{font-size:14px;line-height:1.6}.form [aria-busy=true]{cursor:wait}
@media(max-width:560px){.search-page-form__row{flex-direction:column}.search-page-form__row .btn{width:100%}.form-draft{padding:14px}.form-draft__actions .btn{width:100%}.search-quicklinks{display:grid;gap:12px}}

.privacy-current{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--bg,#f5f7fa)}.privacy-current h2{font-size:clamp(22px,3vw,28px)}.privacy-current p:last-child{margin-bottom:0}

/* Consistent running text across all languages; keep headings, controls and hero styling. */
main :is(p,li):not(.journey *) :is(strong,b){font-weight:inherit}

/* Offer clarity and the enquiry path. The hero media and motion are unchanged. */
.video-journey #journey-context{display:none;font-size:14px;line-height:1.45;margin:0 0 18px;max-width:62ch}
.video-journey #journey-context span{display:block}
.video-journey:is([data-scene="0"],:not([data-scene])) #journey-context{display:block}
.enquiry-person{margin-top:24px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.enquiry-person::after{content:"";display:block;clear:both}
.enquiry-person__photo{float:right;width:80px;height:80px;margin:0 0 10px 14px;border-radius:50%;object-fit:cover;object-position:center 20%}
@media(max-width:380px){.enquiry-person__photo{width:64px;height:64px;margin-left:10px}}
.enquiry-person p{margin:0 0 8px;font-size:15px}.enquiry-person .enquiry-person__label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.enquiry-person>a{overflow-wrap:anywhere;color:var(--brand)}.enquiry-proof-links{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:14px;font-size:14px}
.customer-trust{background:var(--bg,#f5f7fa)}.customer-trust__grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.customer-trust__person,.customer-trust__references{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff}.customer-trust__person{display:grid;grid-template-columns:100px 1fr;gap:22px;align-items:start}.customer-trust__person img{display:block;width:100px;height:125px;object-fit:cover;object-position:center 20%;border-radius:12px}.customer-trust h3{font-size:22px;line-height:1.3}.customer-trust p{color:var(--slate)}.customer-trust__person a:not(.btn){overflow-wrap:anywhere}.customer-trust__actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:22px}.customer-trust__references ul{list-style:none;padding:0;margin:18px 0}.customer-trust__references li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--line)}.customer-trust__references li span{color:var(--muted);text-align:right}.customer-trust .customer-trust__note{font-size:12px;line-height:1.5;margin:16px 0 0}
@media(min-width:1101px) and (max-width:1350px){#leistungen .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.customer-trust__grid{grid-template-columns:1fr}}
@media(max-width:750px){
 .video-journey:is([data-scene="0"],:not([data-scene])) #journey-desc{display:block;font-size:14px;line-height:1.4;margin:8px 0}
 .video-journey:is([data-scene="0"],:not([data-scene])) #journey-context{display:block;font-size:12px;line-height:1.45;margin:0 0 6px;max-width:none}
 .customer-trust__person,.customer-trust__references{padding:20px}.customer-trust__person{grid-template-columns:72px minmax(0,1fr);gap:15px}.customer-trust__person img{width:72px;height:90px}.customer-trust h3{font-size:20px}.customer-trust__actions .btn{width:100%}
}
@media(max-width:750px) and (max-height:560px){.video-journey:is([data-scene="0"],:not([data-scene])) #journey-context{display:none}.video-journey:is([data-scene="0"],:not([data-scene])) #journey-desc{font-size:12px;line-height:1.3}.video-journey[data-scene="0"] .hero-copy h1{font-size:20px}}

/* Mobile layout: keep reference cards aligned and contact details readable. */
@media (max-width: 600px) {
  .compact-references main > .phero + .section { padding-top: 48px; }
  .compact-references .reference-filter-section .ref-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
  }
  .compact-references .ref-card__body { padding: 12px; min-width: 0; }
  .compact-references .ref-card h3 { font-size: 15px; line-height: 1.25; overflow-wrap: anywhere; }
  .compact-references .reference-place { font-size: 12px; line-height: 1.4; }
  .compact-references .reference-website { font-size: 12px; gap: 4px; }
  .compact-references .reference-image--logo img { padding: 10px; }
  a[href^="mailto:"] { display: inline-block; max-width: 100%; white-space: nowrap; overflow-x: auto; overflow-wrap: normal; vertical-align: bottom; }
  .enquiry-person { display: flow-root; }
  .enquiry-person__photo { width: 64px; height: 64px; margin: 0 0 10px 12px; }
  .enquiry-proof-links { clear: both; display: flex; flex-wrap: wrap; gap: 8px 16px; }
}
@media (max-width: 600px) {
  .compact-references main > .reference-filters { padding-top: 48px; }
  .compact-references main .ref-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .compact-references main .ref-grid > * { min-width: 0; }
}
@media (max-width: 600px) {
  .compact-references .reference-filters__buttons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .compact-references .reference-filter {
    width: 100%;
    min-width: 0;
    min-height: 48px;
    padding: 9px 8px;
    font-size: 13px;
    line-height: 1.25;
    text-align: center;
    overflow-wrap: normal;
  }
}
@media (max-width: 600px) {
  .alpha-proof .alpha-proof__track {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    overflow: visible;
    scroll-snap-type: none;
    padding: 8px 0 0;
  }
  .alpha-proof .alpha-proof__track span {
    min-width: 0;
    padding: 14px;
    font-size: 14px;
    line-height: 1.35;
    animation: none;
  }
  .alpha-proof .alpha-proof__track strong { font-size: 18px; }
  nav[aria-label="Blog-Kategorien"] > div {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px !important;
  }
  nav[aria-label="Blog-Kategorien"] .btn {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 8px;
    font-size: 14px;
    line-height: 1.25;
    text-align: center;
  }
}
@media (max-width: 600px) {
  nav[aria-label="Blog-Kategorien"] > div > a:first-child { grid-column: 1 / -1; }
}

/* Keep contact details fully visible on narrow screens. */
@media (max-width: 600px) {
  .customer-trust__person { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .customer-trust__person > * { min-width: 0; }
  .customer-trust__person a[href^="mailto:"], .enquiry-person a[href^="mailto:"], .contact-list a[href^="mailto:"] { font-size: 13px; max-width: 100%; }
  .enquiry-person__photo { float: none; display: block; margin: 0 0 12px; }
}
