/* Shared reflow rules, loaded after page styles. */
:root{--page-gutter:clamp(16px,2.2vw,40px)}
.container{width:min(var(--container),calc(100% - var(--page-gutter)*2))}
main :where(h1,h2,h3,p,li,a),.site-footer a{overflow-wrap:anywhere}
:where(.hero-grid,.service-hero-layout,.service-overview-grid,.service-deliverables-grid,
.story,.home-intro,.benefit-row,.template-contact,.form-grid,.phone-fields,
.footer-grid,.technology-grid,.platform-tool-grid,.internship-intro,.internship-benefits)>*{min-width:0}
main :where(input,select,textarea){min-width:0;max-width:100%}
.btn{max-width:100%;white-space:normal;text-align:center;height:auto;min-height:46px;padding-block:12px}
.hero-actions,.footer-bottom,.mega-bottom{flex-wrap:wrap}
.platform-diagram{width:100%;max-width:100%;margin-left:0}
.data-home .hero h1{font-size:clamp(32px,4.5vw,64px)}
.page-title h1{font-size:clamp(30px,3.7vw,52px)}
.service-heading h2,.internship-heading h2,.internship-intro h2{font-size:clamp(26px,3vw,34px)}
.service-detail-page .section,.home-section{padding-block:clamp(40px,5vw,76px)}
.service-section-nav a{display:flex;align-items:center;min-height:44px;flex-shrink:0}
.service-section-nav>.container{overscroll-behavior-x:contain;scroll-padding-inline:8px}
.contact-details>div>div,.internship-benefit>div,.platform-tool>div{min-width:0}
.mega-heading{flex-wrap:wrap}
.reference-header .services-dropdown.services-mega{overscroll-behavior-y:contain}
@media(max-width:1050px){
  main .field input,main .field select,main .field textarea{font-size:16px}
  .reference-header .site-nav{overscroll-behavior-y:contain}
}
@media(max-width:680px){
  .data-home .hero h1{font-size:clamp(32px,8vw,50px)}
  .service-detail-hero h1,.internship-hero h1{font-size:clamp(30px,7vw,39px)}
  .home-heading h2{font-size:clamp(26px,6vw,32px)}
  .cta-panel{padding:clamp(20px,5vw,32px)}
  .office-map{height:clamp(240px,65vw,320px)}
}
@media(max-width:420px){
  .mega-industries{grid-template-columns:1fr}
  .mega-service-grid{grid-template-columns:1fr}
  .reference-header .mega-industries button{font-size:13px;min-height:44px}
  .platform-tool-grid,.technology-grid{grid-template-columns:1fr}
  .platform-tool strong,.technology-tile strong{font-size:13px}
  .platform-tool small,.technology-tile small{font-size:11px}
  .footer-grid{grid-template-columns:1fr}
  .submission-success{flex-direction:column}
  .internship-registration{padding:24px 16px}
}
/* Preserve usable content space on laptop zoom and landscape displays. */
@media(min-width:1051px) and (max-height:650px){
  .service-detail-page .reference-header.scrolled,.reference-header,.reference-header.scrolled{padding:8px 0}
  .reference-header .nav-shell{height:64px;gap:16px}
  .reference-header .brand img{width:160px}
  .reference-header .site-nav{padding:6px}
  .reference-header .site-nav>a,.reference-header .nav-services>summary{font-size:14px;padding:10px}
  .reference-header .header-connect{font-size:14px;min-height:44px;padding:0 20px}
  .reference-header .services-dropdown.services-mega{max-height:calc(100dvh - 80px)}
  body.service-detail-page{--section-nav-height:52px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
