/* Readable service and legal content with responsive layout adjustments. */
.dsl-service-section__grid > *,
.dsl-service-cta__inner > *,
.legal-layout > * { min-width: 0; max-width: 100%; }
.dsl-service-section__content { overflow-wrap: anywhere; }
.dsl-service-page :is(h1,h2,h3),
.legal-hero :is(h1,h2,h3),
.legal-main :is(h1,h2,h3) {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  -webkit-hyphens: auto !important;
  hyphens: auto !important;
  hyphenate-limit-chars: 7 3 3;
}
.legal-main :is(p,li,td,th,a) { overflow-wrap: anywhere; }
@media (max-width: 900px) {
  .legal-layout { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 840px) {
  .dsl-service-section__grid,
  .dsl-service-cta__inner { grid-template-columns: minmax(0,1fr); }
}

/* Informative maps, models and screenshots retain their complete contents. */
.dsl-service-section__media img.dsg-image-contain{object-fit:contain;background:#f3f5f2;}

/* Mobile reading order, compact section rhythm and usable action targets. */
.site-footer .foot-cta{color:#1d1d1b;min-height:48px}
@media(max-width:840px){
 .dsl-service-section__grid .dsl-service-section__content{order:0!important}
 .dsl-service-section__grid .dsl-service-section__media{order:1!important}
 .dsl-service-section{padding:36px 0}
 .dsl-service-section__grid{gap:22px}
 .dsl-service-section__number{font-size:1.7rem;margin-bottom:10px}
 .dsl-service-section h2{margin-bottom:14px}
 .dsl-service-section__media{width:100%;max-width:520px;max-height:340px;justify-self:center}
}
@media(max-width:660px){
 .site-header .burger{min-width:44px;min-height:44px;flex-basis:44px}
 .site-header .nav .btn-header{min-height:44px;max-width:34vw;font-size:clamp(.68rem,3.1vw,.8rem);padding:8px}
 .dsl-service-hero__inner{padding-top:56px;padding-bottom:48px}
 .dsl-service-hero__intro{margin-bottom:24px}
 .dsl-service-section__media{max-height:280px;aspect-ratio:4/3}
 .dsl-service-section__media:has(img[alt="Platzhalter: Bild folgt"]),
 .dsl-service-section__media:has(.dsl-service-image-placeholder){max-height:160px;aspect-ratio:2/1}
 .dsl-service-section__media:has(img[alt="Platzhalter: Bild folgt"]) img{object-fit:contain;background:#1d1d1b}
 .dsl-service-benefits,.dsl-service-cta{padding:44px 0}
}

/* Keep the full desktop menu readable at intermediate widths. */
.site-header .nav .btn-header{min-height:44px}
@media(min-width:921px){
 .site-header .nav{max-width:1340px;gap:12px}
 .site-header .nav-links{gap:16px;margin-left:auto;margin-right:0}
}
@media(min-width:921px) and (max-width:1259px){
 .site-header .nav{display:grid;grid-template-columns:minmax(0,1fr) auto;height:auto;gap:6px 16px;padding-top:10px;padding-bottom:6px}
 .site-header .site-branding{grid-column:1;grid-row:1}
 .site-header .btn-header{grid-column:2;grid-row:1;justify-self:end}
 .site-header .nav-links{grid-column:1/-1;grid-row:2;width:100%;justify-content:space-between;gap:10px;margin:0;font-size:.86rem}
 .site-header .nav-links>li{height:auto!important}
 .site-header .nav-links>li>a{min-height:44px;display:flex;align-items:center}
}

/* Prevent the brand dot shrinking into an oval beside wrapping category text. */
.dsl-service-eyebrow::before,.dsl-service-kicker::before{flex:0 0 9px;min-width:9px;max-width:9px;min-height:9px;max-height:9px;aspect-ratio:1;border-radius:50%}
/* Mobile entries use the existing Hardware and Software page destinations. */
.site-header .nav-links>li.dsg-mobile-only{display:none!important}
@media(max-width:920px){
 .site-header .nav-links>li.dsg-desktop-hardware-software{display:none!important}
 .site-header .nav-links>li.dsg-mobile-only{display:block!important}
}
