/* TPS responsive fixes — loaded last on every public page */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
main,section,article,div,figure,figcaption,nav{min-width:0}
img,video,svg,canvas{max-width:100%;height:auto}

@media (max-width:1180px){
  .centrif-head-inner{width:calc(100% - 32px)!important;gap:18px!important}
  .centrif-logo{width:240px!important}
  .centrif-nav{gap:18px!important}
  .centrif-nav a{font-size:.88rem!important}
  .technology-row{grid-template-columns:220px minmax(0,1fr)!important}
  .technology-image{height:190px!important}
  .request-grid,.detail-grid,.split-callout{gap:36px!important}
}

@media (max-width:900px){
  html{scroll-padding-top:84px!important}
  body,body.chi-page,.careers-new{padding-top:84px!important}
  .centrif-home-header{height:84px!important;min-height:84px!important}
  .centrif-head-inner{width:100%!important;height:84px!important;min-height:84px!important;padding:0 16px!important}
  .centrif-logo{width:205px!important;height:70px!important;max-width:68vw!important}
  .centrif-nav{top:84px!important;max-height:calc(100dvh - 84px)!important}
  .container,.chi-wrap,.careers-new .container{width:calc(100% - 36px)!important}
  .page-hero,.other-hero,.request-hero{min-height:0!important;padding:60px 0 54px!important}
  .page-hero .container,.other-hero .container,.request-hero .container{width:calc(100% - 36px)!important}
  .page-hero h1,.other-hero h1,.request-hero h1{font-size:clamp(2.55rem,8.5vw,4.8rem)!important}
  .section,.family-list,.other-families,.cta-section{padding:64px 0!important}
  .technology-row{grid-template-columns:180px minmax(0,1fr)!important;gap:0!important;padding:0!important}
  .technology-image{width:100%!important;height:100%!important;min-height:180px!important}
  .technology-content{padding:26px!important}
  .technology-content h3{font-size:1.35rem!important}
  .request-grid,.detail-grid,.process-grid,.split-callout,.other-family-grid{grid-template-columns:1fr!important}
  .cta-actions .btn{width:min(100%,320px)!important;min-width:0!important}
  #settori .sectors-grid{grid-template-columns:1fr!important;gap:34px!important}
  #settori .sector-list{grid-template-columns:1fr 1fr!important}
  .tps-hero-slider,.tps-hero-track{min-height:1320px!important}
  .tps-hero-slider[data-active-slide="1"],.tps-hero-slider[data-active-slide="1"] .tps-hero-track{min-height:1040px!important}
  .tps-hero-slider[data-active-slide="2"],.tps-hero-slider[data-active-slide="2"] .tps-hero-track{min-height:980px!important}
  .tps-hero-slide{grid-template-columns:1fr!important;align-content:start!important;padding:50px 28px 88px!important;gap:28px!important}
  .tps-slide-home-reference{grid-template-columns:1fr!important;grid-template-rows:auto 300px auto!important;padding:0!important}
  .tps-slide-home-reference .tps-home-copy{grid-column:1!important;grid-row:1!important;padding:42px 28px 30px!important}
  .tps-slide-home-reference h1{font-size:clamp(2.15rem,7vw,3.5rem)!important;margin:34px 0 22px!important}
  .tps-home-company{white-space:normal!important}
  .tps-home-pump-visual{grid-column:1!important;grid-row:2!important;min-height:300px!important}
  .tps-home-features{grid-column:1!important;grid-row:3!important;grid-template-columns:1fr 1fr!important;min-height:0!important;padding-bottom:48px!important}
  .tps-home-feature{position:relative!important;min-height:170px!important;padding:24px 20px!important}
  .tps-home-feature>div{position:static!important;width:auto!important;max-width:280px!important;transform:none!important}
  .tps-pitstop-slide,.tps-management-slide{grid-template-columns:1fr!important}
  .tps-pitstop-split{min-height:360px!important}
  .tps-management-visual{min-height:410px!important}
  .chi-hero-inner,.chi-grid,.careers-hero-grid,.careers-build-grid,.careers-dream-grid{grid-template-columns:1fr!important}
  .chi-hero h1,.careers-copy h1{font-size:clamp(2.55rem,9vw,4.6rem)!important;line-height:1.04!important}
}

@media (max-width:640px){
  .container,.chi-wrap,.careers-new .container,.page-hero .container,.other-hero .container,.request-hero .container{width:calc(100% - 28px)!important}
  .centrif-head-inner{padding:0 14px!important}
  .centrif-logo{width:178px!important;max-width:65vw!important}
  .tps-mobile-toggle{min-width:44px!important;min-height:44px!important}
  .page-hero,.other-hero,.request-hero{padding:42px 0!important}
  .page-hero h1,.other-hero h1,.request-hero h1{font-size:clamp(2.2rem,11vw,3.4rem)!important;line-height:1.04!important}
  .page-hero p,.other-hero p,.request-hero p{font-size:1rem!important;line-height:1.55!important}
  .section,.family-list,.other-families,.cta-section{padding:52px 0!important}
  .section-heading h2,.other-heading h2,.cta-box h2{font-size:clamp(2rem,10vw,3rem)!important}
  .technology-row{grid-template-columns:1fr!important}
  .technology-image{height:210px!important;min-height:210px!important;border-bottom:1px solid #d7e0e8!important}
  .technology-content{padding:24px 20px 26px!important}
  .technology-content h3{font-size:1.28rem!important}
  .technology-content p{font-size:1rem!important;line-height:1.6!important}
  .technology-cta{min-height:44px!important;align-items:center!important}
  #settori .sector-list{grid-template-columns:1fr!important}
  #settori .sector-list span{white-space:normal!important;min-height:58px!important}
  .cta-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .cta-actions .btn{width:100%!important}
  .tps-hero-slider,.tps-hero-track{min-height:1640px!important}
  .tps-hero-slider[data-active-slide="1"],.tps-hero-slider[data-active-slide="1"] .tps-hero-track{min-height:1040px!important}
  .tps-hero-slider[data-active-slide="2"],.tps-hero-slider[data-active-slide="2"] .tps-hero-track{min-height:980px!important}
  .tps-hero-slide{padding:38px 18px 82px!important}
  .tps-slide-home-reference{grid-template-rows:auto 245px auto!important;padding:0!important}
  .tps-slide-home-reference .tps-home-copy{padding:32px 18px 26px!important}
  .tps-home-company{font-size:clamp(1.55rem,8vw,2.25rem)!important;letter-spacing:.08em!important}
  .tps-home-claim-row{grid-template-columns:24px minmax(0,1fr) 24px!important;gap:9px!important;margin-top:20px!important}
  .tps-home-claim-row strong{font-size:.68rem!important;white-space:normal!important;text-align:center!important;line-height:1.35!important}
  .tps-slide-home-reference h1{font-size:clamp(1.9rem,9.2vw,2.75rem)!important;line-height:1.08!important;margin:28px 0 20px!important}
  .tps-slide-home-reference .tps-home-copy>p{font-size:1rem!important;line-height:1.55!important}
  .tps-home-actions{display:grid!important;grid-template-columns:1fr!important}
  .tps-home-actions a{width:100%!important;height:auto!important;min-height:54px!important;min-width:0!important;padding:12px 16px!important}
  .tps-home-about-link{gap:16px!important;padding:17px!important}
  .tps-home-features{grid-template-columns:1fr!important}
  .tps-home-feature{min-height:145px!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.13)!important}
  .tps-home-feature:last-child{border-bottom:0!important}
  .tps-pitstop-copy h2{font-size:clamp(1.65rem,7vw,2.9rem)!important;line-height:1.04!important}
  .tps-management-copy h2{font-size:clamp(2.5rem,12vw,4rem)!important;line-height:.98!important}
  .tps-pitstop-benefits{grid-template-columns:1fr!important}
  .tps-pitstop-benefits>div{min-height:48px!important}
  .tps-pitstop-question{white-space:normal!important;line-height:1.3!important}
  .tps-pitstop-split{min-height:310px!important}
  .tps-management-visual{min-height:430px!important;overflow:hidden!important}
  .tps-dashboard-window{min-width:0!important;width:100%!important}
  .tps-dashboard-user{display:none!important}
  .tps-dashboard-topbar{grid-template-columns:54px 1fr!important}
  .tps-dashboard-title{font-size:12px!important}
  .tps-dashboard-subtitle{font-size:8px!important}
  .chi-hero,.careers-hero{min-height:0!important}
  .chi-hero-inner,.careers-hero-grid{padding-top:48px!important;padding-bottom:48px!important}
  .chi-hero h1,.careers-copy h1{font-size:clamp(2.3rem,11vw,3.4rem)!important;line-height:1.06!important}
  .chi-specialization{font-size:clamp(1.75rem,8vw,2.35rem)!important;line-height:1.08!important}
  .chi-dna,.chi-flow,.careers-values-grid,.careers-bottom-grid{grid-template-columns:1fr!important}
  .chi-section,.careers-build,.careers-values,.careers-dream,.careers-join{padding-top:52px!important;padding-bottom:52px!important}
  .request-form{padding:20px!important}
  .split-callout{padding:24px!important}
  .footer{padding:38px 0!important}
}

@media (max-width:390px){
  .centrif-logo{width:158px!important}
  .tps-hero-slider,.tps-hero-track{min-height:1700px!important}
  .tps-hero-slider[data-active-slide="1"],.tps-hero-slider[data-active-slide="1"] .tps-hero-track{min-height:1080px!important}
  .tps-hero-slider[data-active-slide="2"],.tps-hero-slider[data-active-slide="2"] .tps-hero-track{min-height:1020px!important}
  .tps-slide-home-reference h1{font-size:1.82rem!important}
  .technology-image{height:190px!important;min-height:190px!important}
}

@media (hover:none){
  .btn,.centrif-nav a,.technology-cta,.tps-home-actions a,.tps-hero-actions a{min-height:44px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
