/* SDS Premium v4.9.23 — cross-device finishing pass.
   Respect native text wrapping, consistent gutters, flexible media and controls. */
:root{--sds23-page-gutter:clamp(18px,4.2vw,64px)}
html{overflow-x:clip}
body{min-width:0}
.sds-v47 h1,.sds-v47 h2,.sds-v47 h3,
.sds-page-banner h1,.sds-page-section h2,.sds-page-section h3{
  overflow-wrap:normal;word-break:normal;hyphens:manual;text-wrap:balance;
}
.sds-v47 p,.sds-page-section p,.sds-page-banner p{overflow-wrap:break-word}
.sds-v47 .v47-approach h2{max-width:22ch!important;white-space:normal!important}
.sds-v47 .v47-approach .v47-approach-inner,
.sds-v47 .sds49-about-grid,.sds-v47 .v47-sector-layout{min-width:0}
.sds-v47 .v47-approach-copy,.sds-v47 .sds49-about-copy,
.sds-v47 .v47-sector-intro{min-width:0}
.sds-v47 .v47-device-image img,.sds-v47 .sds49-about-visual img,
.sds-page-banner img,.sds-detail-media img,.sds-solution-media img{
  max-width:100%;height:auto;
}
/* Larger heading text should never become artificially glued together. */
.sds-v47 .v47-approach h2{letter-spacing:-.025em!important}
.sds-v47 .sds49-home-studio-inner h2{letter-spacing:-.025em!important}
.sds-v47 .sds49-about-copy h2{letter-spacing:-.025em!important}

@media(max-width:1100px){
 .sds-v47 .v47-sector-layout{grid-template-columns:1fr!important}
 .sds-v47 .v47-sector-viewport{min-width:0!important}
 .sds-v47 .v47-sector-track{max-width:100%}
 .sds-solution-row{grid-template-columns:1fr!important}
 .sds-solution-row .sds-solution-copy,.sds-solution-row .sds-solution-media{order:initial!important}
}
@media(max-width:760px){
 .sds-v47 .v47-approach h2,
 .sds-v47 .v47-sector-intro h2,
 .sds-v47 .sds49-home-studio-inner h2,
 .sds-v47 .sds49-about-copy h2{
   font-size:clamp(28px,7vw,39px)!important;
   line-height:1.16!important;
   letter-spacing:-.023em!important;
   margin-block:12px 18px!important;
 }
 .sds-v47 .v47-approach-copy h2{max-width:100%!important}
 .sds-v47 .v47-approach-inner{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:20px!important}
 .sds-v47 .v47-approach-copy{order:0!important;padding-block:10px 0!important}
 .sds-v47 .v47-device-image{order:1!important;width:100%!important;aspect-ratio:auto!important;height:auto!important;border-radius:16px!important;overflow:hidden}
 .sds-v47 .v47-device-image img{width:100%!important;height:auto!important;object-fit:contain!important}
 .sds-v47 .v47-solution-row{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
 .sds-v47 .v47-solution{padding:14px 16px!important;min-height:62px;align-items:center}
 .sds-v47 .v47-solution b{font-size:14px!important}
 .sds-v47 .v47-solution small{font-size:12px!important}
 .sds-v47 .v47-approach p{line-height:1.65!important;margin-bottom:18px!important}
 .sds-v47 .v47-sectors{padding-block:38px!important}
 .sds-v47 .v47-sector-card{height:clamp(210px,57vw,265px)!important}
 .sds-v47 .v47-sector-card>img{object-fit:cover!important}
 .sds-v47 .sds49-about-columns{grid-template-columns:1fr!important;gap:14px!important}
 .sds-v47 .sds49-about-col + .sds49-about-col{border:0!important;padding:0!important}
 .sds-v47 .sds49-about-visual img{height:auto!important;object-fit:contain!important}
 .sds-page-banner-grid,.sds-detail-grid,.sds-rich-content,.sds-contact-layout{grid-template-columns:minmax(0,1fr)!important}
 .sds-page-banner-grid{gap:26px!important;padding-top:42px!important;padding-bottom:42px!important}
 .sds-page-banner h1{font-size:clamp(32px,7.7vw,46px)!important;line-height:1.12!important}
 .sds-page-banner p{font-size:clamp(14px,3.7vw,17px)!important}
 .sds-page-hero-photo{height:auto!important;aspect-ratio:1.75;overflow:hidden}
 .sds-page-hero-photo img{height:100%!important;width:100%!important;object-fit:cover}
 .sds-topic-grid,.sds-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sds-solution-media{aspect-ratio:1.65}
 .sds-solution-copy h3{font-size:clamp(26px,6.2vw,38px)!important}
 .sds-footer-grid{min-width:0}
}
@media(max-width:540px){
 .sds-v47 .v47-approach{padding-block:31px 40px!important}
 .sds-v47 .v47-approach>.v47-shell,.sds-v47 .v47-sectors>.v47-shell,
 .sds-v47 .sds49-about-home>.v47-shell,.sds-v47 .sds49-home-studio-teaser>.v47-shell{
  padding-inline:clamp(18px,5vw,25px)!important
 }
 .sds-v47 .v47-approach h2{font-size:clamp(29px,7vw,35px)!important;max-width:100%!important}
 .sds-v47 .v47-approach p{font-size:14px!important}
 .sds-v47 .v47-sector-card{flex-basis:min(78%,310px)!important}
 .sds-v47 .sds49-home-studio-links{flex-direction:column!important;align-items:stretch!important}
 .sds-v47 .sds49-home-studio-links a{width:100%!important;min-height:44px}
 .sds-page-section{padding:40px 0!important}
 .sds-topic-grid,.sds-feature-grid{grid-template-columns:minmax(0,1fr)!important}
 .sds-topic-card,.sds-solution-row,.sds-landing-family{min-width:0}
 .sds-solution-media{border-radius:15px;aspect-ratio:1.55}
 .sds-footer-v482 .sds-footer-wrap{padding-inline:20px!important}
 .sds-footer-grid{gap:25px 15px}
 .sds-footer-base{flex-direction:column;align-items:flex-start!important}
}
@media(max-width:380px){
 .sds-header-wrap{grid-template-columns:auto 1fr auto!important;padding-inline:10px!important;gap:7px!important}
 .sds-header-logo img{width:97px!important}
 .sds-header-actions{gap:5px!important}
 .sds-header-cta{font-size:9px!important;padding:0 8px!important;min-height:37px!important;gap:3px!important}
 .sds-header-hamburger{width:36px!important;height:36px!important;padding:7px!important}
 .sds-header-review-badge:not(.is-connected){display:none!important}
 .sds-v47 .v47-approach h2{font-size:29px!important}
 .sds-v47 .v47-benefits{max-width:100%}
}
