/* T&S GROUP v2-4-2 — cross-page visual audit and true responsive compact desktop. */
html{overflow-x:hidden}
body.ts-public-page{overflow-x:hidden}
body.ts-public-page main,
body.ts-public-page section,
body.ts-public-page .shell,
body.ts-public-page [class*="__grid"],
body.ts-public-page [class$="-grid"]{min-width:0}
body.ts-public-page :is(.industry-card,.service-card,.principle-card-img,.management-card,.text-card,.ip-card,.sp-card,.pr-card,.pr-result-card,.services-hub-card){min-width:0;max-width:100%;overflow-wrap:anywhere}
body.ts-public-page :is(img,video,picture,svg,canvas,iframe){max-width:100%}
body.ts-public-page :is(h1,h2,h3,h4,p,li,a,[data-cms-id]){overflow-wrap:break-word;word-break:normal}
body.ts-public-page :is(.industry-grid,.service-grid,.principle-grid,.management-grid,.format-grid,.competence-grid,.pr-grid,.pr-result__grid){align-items:stretch}

/* Media frames: preserve the complete source composition and keep rows aligned. */
.industry-card>img{aspect-ratio:16/9!important;height:auto!important;object-fit:cover!important;background:#e8eef3}
.service-card>img,.principle-card-img img{aspect-ratio:4/3!important;height:auto!important;object-fit:cover!important;background:#e8eef3}
.ip-hero-media,.ip-dark-hero .ip-hero-media{aspect-ratio:auto!important;height:auto!important;background:#e8eef3}
.ip-hero-media img,.ip-spec-media img,.sp-hero-media img,.sp-service-media img,.pr-card>img,.pr-hero__media img{object-fit:cover!important;object-position:center!important;filter:saturate(.94) contrast(1.02)}
.ip-spec-media,.ip-spec-grid-4 .ip-spec-media,.sp-service-media{aspect-ratio:4/3!important;height:auto!important;background:#e8eef3}
.sp-hero-media{aspect-ratio:auto!important;height:auto!important;background:#e8eef3}
.pr-card>img{aspect-ratio:4/3!important}.pr-hero__media img{aspect-ratio:4/3!important}
.hero-media-stage{aspect-ratio:3/2!important}
.hero-media-stage>img{object-fit:cover!important;object-position:center center!important}

/* Services hub is no longer visually empty. */
.services-hub-card{overflow:hidden;padding:0!important;display:flex;flex-direction:column}
.services-hub-card__image{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#e8eef3;filter:saturate(.94) contrast(1.02)}
.services-hub-card>span,.services-hub-card>h2,.services-hub-card>p,.services-hub-card>em{margin-left:30px!important;margin-right:30px!important}
.services-hub-card>span{margin-top:28px}.services-hub-card>em{margin-bottom:30px}

/* Stable ordinary grids — no scroll/parallax card scenes remain. */
body.ts-public-page .service-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}
body.ts-public-page .service-card{height:auto!important;transform:none!important}
body.ts-public-page .service-card>img{transform:none!important}

/* Principles teaser on the home page. */
body.ts-public-page .principles-home-teaser{padding:96px 0 104px}
body.ts-public-page .principles-home-teaser__grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);gap:72px;align-items:center}
body.ts-public-page .principles-home-teaser__copy h2{font-size:52px;line-height:1.02;font-weight:400;letter-spacing:-.025em;margin:12px 0 25px}
body.ts-public-page .principles-home-teaser__copy p{font-size:17px;line-height:1.68;color:#58738d;max-width:660px;margin:0 0 30px}
body.ts-public-page .principles-home-teaser__media{margin:0;overflow:hidden;background:#e8eef3}
body.ts-public-page .principles-home-teaser__media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}

/* 13–14 inch desktops (1400×900 / 1440×900): real compact breakpoint, no CSS zoom. */
@media (min-width:1021px) and (max-width:1599px){
  body.ts-public-page{font-size:13px!important}
  body.ts-public-page :is(.shell,.industry-shell,.service-shell,.ts-global-header__inner,.ts-global-footer__shell){width:min(calc(100% - 56px),1200px)!important;max-width:1200px!important;margin-left:auto!important;margin-right:auto!important}
  body.ts-public-page .ts-global-header{--ts-h-height:72px!important;--ts-h-scroll-height:72px!important;--ts-h-shell:1200px!important;--ts-h-gutter:28px!important;--ts-h-logo-size:16px!important;--ts-h-nav-size:12px!important;--ts-h-nav-gap:38px!important;--ts-h-cta-height:40px!important;--ts-h-cta-min:168px!important;--ts-h-cta-size:12px!important}
  body.ts-public-page .ts-global-footer{--ts-f-shell:1200px!important;--ts-f-gutter:28px!important;--ts-f-pad-top:60px!important;--ts-f-pad-bottom:20px!important;--ts-f-text-size:11px!important;--ts-f-link-size:10.5px!important;--ts-f-heading-size:9.5px!important;--ts-f-logo-size:12px!important;--ts-f-bottom-size:9px!important}
  .hero__grid{min-height:610px!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:44px!important}
  .hero h1{font-size:54px!important;margin-bottom:30px!important}.hero__lead{font-size:17px!important;margin-bottom:28px!important}.hero__media{padding:14px 14px 0!important}.hero__media figcaption{height:42px!important;font-size:9px!important}
  .industries,.services{padding:78px 0 88px!important}.section-head{margin-bottom:54px!important}.section-head h2{font-size:40px!important}.section-head p{font-size:16px!important}.industry-grid,.service-grid{gap:18px!important}
  .industry-card,.service-card{min-height:0!important}.card-body,.service-card .card-body{padding:22px!important}.industry-card h3,.service-card h3{font-size:19px!important;margin-bottom:16px!important}.industry-card p,.service-card p{font-size:12px!important;margin-bottom:16px!important}.industry-card li,.service-card li{font-size:10.5px!important;padding:8px 0!important}
  .participation{padding:78px 0 88px!important}.participation__photo{height:auto!important;aspect-ratio:2.65/1;object-fit:cover;margin-bottom:42px!important}.text-card{padding:32px!important;min-height:250px!important}.text-card h3{font-size:25px!important}.text-card p{font-size:14px!important}.participation__formats{margin-top:58px!important}.participation__formats h2{font-size:40px!important}.format-grid article{min-height:240px!important;padding:30px!important}.format-grid p{font-size:14px!important}
  .management{padding:70px 0 74px!important}.management__title{font-size:46px!important;margin-bottom:32px!important}.management__intro p{padding:32px!important;font-size:14px!important;min-height:220px!important}.management-grid{gap:20px!important}.management-card{padding:27px!important;min-height:265px!important}.management-card h3{font-size:22px!important}.management-card p{font-size:13.5px!important}
  .competence-dark{padding:62px 0!important}.competence-panel{padding:56px 70px 60px!important;border-radius:36px!important}.competence-panel h2{font-size:45px!important}.competence-intro p,.competence-grid article{padding:27px!important;font-size:13.5px!important;min-height:176px!important}.competence-grid h3{font-size:22px!important}
  .diagnostics{padding:80px 0 72px!important}.diagnostic-box{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important}.diagnostic-photo{min-height:560px!important}.diagnostic-form{padding:40px 54px!important}.diagnostic-form h2{font-size:32px!important}.diagnostic-form input,.diagnostic-form select{height:44px!important}

  .ip-breadcrumb,.sp-breadcrumb{font-size:11px!important}.ip-hero{padding-bottom:76px!important}.ip-hero-grid{grid-template-columns:minmax(0,1fr) 464px!important;gap:52px!important;padding-top:42px!important}.ip-hero h1{font-size:54px!important;line-height:1.04!important;margin-bottom:22px!important}.ip-hero-copy>p{font-size:15px!important}.ip-hero-media,.ip-dark-hero .ip-hero-media{width:464px!important;max-width:464px!important}.ip-section{padding:68px 0!important}.ip-section h2{font-size:34px!important}.ip-section-lead{font-size:14px!important;margin-bottom:32px!important}.ip-info-card{padding:27px!important;min-height:196px!important}.ip-info-card h3{font-size:16px!important}.ip-info-card p{font-size:12px!important}.ip-spec-copy{padding:22px!important;min-height:220px!important}.ip-spec-copy h3{font-size:17px!important}.ip-spec-copy p{font-size:12px!important}.ip-diagnostic-box{min-height:480px!important}.ip-diagnostic-photo{min-height:480px!important}.ip-diagnostic-form{padding:38px 42px!important}.ip-diagnostic-form h2{font-size:31px!important}

  .sp-breadcrumb{padding:22px 0 42px!important}.sp-hero{padding-bottom:72px!important}.sp-hero-grid{grid-template-columns:minmax(0,1fr) minmax(390px,512px)!important;gap:56px!important}.sp-hero-copy h1{font-size:54px!important}.sp-hero-copy p{font-size:15px!important}.sp-section{padding:76px 0!important}.sp-section h2,.services-hub h1{font-size:35px!important}.services-hub h1{font-size:51px!important}.sp-section-lead{font-size:15px!important;margin-bottom:38px!important}.sp-info-card,.sp-step{padding:24px!important;min-height:232px!important}.sp-info-card h3,.sp-step h3{font-size:16px!important}.sp-info-card p,.sp-step p{font-size:12.5px!important}.sp-service-copy{padding:22px 24px 27px!important}.sp-service-copy h3{font-size:19px!important}.sp-service-copy p{font-size:12.5px!important}.sp-diagnostics{padding:76px 0 88px!important}.sp-diagnostic-photo{min-height:520px!important}.sp-diagnostic-form{padding:38px 42px!important}.sp-diagnostic-form h2{font-size:34px!important}.services-hub{padding:36px 0 88px!important}.services-hub-grid{gap:16px!important;margin-top:40px!important}.services-hub-card h2{font-size:22px!important}.services-hub-card p{font-size:13px!important}

  .pr-hero{padding:60px 0 86px!important}.pr-hero__grid{grid-template-columns:minmax(0,.92fr) minmax(390px,1.08fr)!important;gap:60px!important}.pr-breadcrumb{margin-bottom:40px!important}.pr-hero h1{font-size:51px!important}.pr-hero p{font-size:14px!important}.pr-foundation,.pr-principles,.pr-result{padding:74px 0!important}.pr-foundation__grid{gap:90px!important}.pr-foundation h2{font-size:35px!important}.pr-foundation p{font-size:14px!important}.pr-principles__head h2{font-size:40px!important}.pr-card__body{padding:24px 26px 27px!important;min-height:224px!important}.pr-card h3{font-size:21px!important}.pr-card p{font-size:12.5px!important}.pr-result__intro h2{font-size:37px!important}.pr-result-card{padding:24px!important;min-height:224px!important}.pr-result-card h3{font-size:18px!important}.pr-result-card p{font-size:12px!important}

  body.ts-public-page .principles-home-teaser{padding:76px 0 82px!important}.principles-home-teaser__grid{gap:56px!important}.principles-home-teaser__copy h2{font-size:42px!important}.principles-home-teaser__copy p{font-size:14px!important}
}

/* Full HD: moderate compact geometry without zoom, preserving the 2K composition. */
@media (min-width:1600px) and (max-width:1999px){
  body.ts-public-page :is(.shell,.industry-shell,.service-shell,.ts-global-header__inner,.ts-global-footer__shell){width:min(calc(100% - 72px),1320px)!important;max-width:1320px!important;margin-left:auto!important;margin-right:auto!important}
  .hero h1{font-size:61px!important}.hero__lead{font-size:19px!important}.section-head h2{font-size:45px!important}.section-head p{font-size:18px!important}
  .ip-hero h1{font-size:61px!important}.sp-hero-copy h1{font-size:61px!important}.pr-hero h1{font-size:58px!important}
}
@media(max-width:1020px){body.ts-public-page .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.principles-home-teaser__grid{grid-template-columns:1fr!important;gap:34px!important}}
@media(max-width:640px){body.ts-public-page .service-grid{grid-template-columns:1fr!important}.principles-home-teaser{padding:70px 0!important}.principles-home-teaser__copy h2{font-size:38px!important}.principles-home-teaser__copy p{font-size:15px!important}}


/* v2-4-2 — stable Principles teaser and exact editor/public geometry. */
body.ts-public-page .principles-home-teaser__grid{
  grid-template-columns:minmax(0,1fr) minmax(360px,560px)!important;
  gap:64px!important;align-items:center!important;
}
body.ts-public-page .principles-home-teaser__media{
  width:100%!important;max-width:560px!important;justify-self:end!important;
  aspect-ratio:4/3!important;overflow:hidden!important;background:#e8eef3!important;
}
body.ts-public-page .principles-home-teaser__media img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;
}
.cms-editor-page .cms-preview{overflow-x:hidden!important;min-width:0!important}
.cms-editor-page .cms-preview :is(main,section,.shell,.industry-shell,.service-shell,[class*="__grid"],[class$="-grid"]){min-width:0}
.cms-editor-page .cms-preview :is(img,video,picture,svg,canvas,iframe){max-width:100%}

@media (min-width:1021px) and (max-width:1599px){
  body.ts-public-page .principles-home-teaser__grid{grid-template-columns:minmax(0,1fr) minmax(320px,470px)!important;gap:48px!important}
  body.ts-public-page .principles-home-teaser__media{max-width:470px!important}
}
@media (max-width:1020px){
  body.ts-public-page .principles-home-teaser__grid{grid-template-columns:1fr!important;gap:30px!important}
  body.ts-public-page .principles-home-teaser__media{max-width:720px!important;justify-self:start!important}
}
@media (max-width:640px){
  body.ts-public-page .principles-home-teaser{padding:54px 0 60px!important}
  body.ts-public-page .principles-home-teaser__grid{gap:24px!important}
  body.ts-public-page .principles-home-teaser__copy h2{font-size:34px!important;line-height:1.04!important;margin:8px 0 18px!important}
  body.ts-public-page .principles-home-teaser__copy p{font-size:14px!important;line-height:1.6!important;margin-bottom:22px!important}
  body.ts-public-page .principles-home-teaser__media{max-width:none!important;width:100%!important}
}
