/* One content source; layouts tailored to desktop, tablet and phone. */
.home-page .site-header{gap:20px}
.home-page .site-header nav{gap:20px}
.home-page .header-actions{position:relative;flex-shrink:0}
.home-page .language-switch{position:relative;right:auto!important;bottom:auto!important;z-index:42;margin:0;padding:3px;border-radius:14px;box-shadow:none;background:#f4f7f3}
.home-page .language-switch button{width:86px;min-width:86px;min-height:42px;height:42px}
.home-page .language-switch.open{position:absolute;inset-inline-end:0;top:0;box-shadow:0 12px 26px #042d241c}
.home-page .service-overview-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;border:0}
.home-page .service-overview-card{grid-column:span 2;min-height:248px;padding:28px;border:1px solid #c6d1c8;border-radius:20px;background:#ffffffb8}
.home-page .service-overview-card:nth-last-child(-n+2){grid-column:span 3}
.home-page .service-overview-card h3{max-width:28ch;margin:24px 0 14px;font-size:clamp(1.3rem,1.75vw,1.65rem);line-height:1.2;letter-spacing:-.025em}
.home-page .service-overview-card p{max-width:40ch;font-size:14px;line-height:1.65;font-weight:500}
.home-page .service-overview-heading{grid-template-columns:1.3fr 1fr;gap:18px 48px;align-items:end}
.home-page .service-overview-heading>div{grid-column:1/-1}
.home-page .service-overview-heading h2{font-size:clamp(2.5rem,4vw,4rem);line-height:1.06}
.home-page .service-overview-heading>p{font-size:16px;max-width:45ch}
.home-page .hero-scope-link,.home-page .service-overview-all{min-height:44px;align-items:center;font-size:12px}
.home-page .value-proposition-copy>p:not(.value-proposition-signature){max-width:58ch}
.home-page .value-proposition-copy h3{font-size:20px;line-height:1.3;margin:26px 0 10px;color:#123c31}
.home-page .value-proposition-copy h3:first-child{margin-top:0}
.home-page .value-proposition-copy>p{margin:0 0 22px}
@media(min-width:1001px){
  .home-page .hero{min-height:630px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .home-page .hero-copy{padding:64px clamp(40px,6vw,96px) 34px}
  .home-page .hero h1{font-size:clamp(3.25rem,4.6vw,5.25rem);line-height:1.05;max-width:12ch}
  .home-page .hero .lead{max-width:43ch;font-size:17px;line-height:1.75;margin-bottom:18px}
}
@media(min-width:761px) and (max-width:1000px){
  .home-page .site-header{gap:12px;padding-inline:3%}
  .home-page .site-header nav{gap:10px;font-size:12px}
  .home-page .nav-cta{min-width:0;padding-inline:12px}
  .home-page .language-switch button{width:74px;min-width:74px}
  .home-page .hero-copy{padding:48px 32px 28px}
  .home-page .hero h1{font-size:clamp(2.6rem,4.5vw,3.5rem);line-height:1.06}
  .home-page .service-overview-card{grid-column:span 3}
  .home-page .service-overview-card:last-child{grid-column:1/-1}
}
@media(max-width:760px){
  .home-page .site-header{padding-inline:5%;gap:12px}
  .home-page .header-actions{gap:10px;align-items:center}
  .home-page .language-switch button{width:82px;min-width:82px;padding-inline:8px;font-size:12px}
  .home-page .language-switch.open{inset-inline-end:54px}
  .home-page .hero{min-height:0}
  .home-page .hero-copy.hero-architecture-copy{min-height:0;padding:40px 6% 26px}
  .home-page .hero-copy .eyebrow{margin-bottom:22px;line-height:1.7;letter-spacing:.13em}
  .home-page .hero-copy h1{font-size:clamp(2.25rem,10.3vw,3.6rem);line-height:1.08;margin-bottom:24px;max-width:100%}
  .home-page .hero-copy .lead{font-size:16px;line-height:1.75;margin-bottom:0}
  .home-page .hero-scope-link{margin-top:18px}
  .home-page .hero-meta{margin-top:24px;padding-top:18px;font-size:8px;gap:14px}
  .home-page .leadership-carousel{height:460px}
  .home-page .service-overview{padding:44px 6%}
  .home-page .service-overview-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px}
  .home-page .service-overview-heading>div{grid-column:auto}
  .home-page .service-overview-heading h2{font-size:clamp(2.1rem,9vw,3rem);line-height:1.08}
  .home-page .service-overview-heading>p{font-size:16px;margin:0}
  .home-page .service-overview-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .home-page .service-overview-card,.home-page .service-overview-card:nth-last-child(-n+2){grid-column:auto;min-height:0;padding:24px;border-radius:18px}
  .home-page .service-overview-card h3{font-size:22px;line-height:1.25;margin:20px 0 10px}
  .home-page .service-overview-card p{font-size:15px;line-height:1.65}
  .home-page .service-overview-all{width:100%;justify-content:center;font-size:12px}
  .home-page .value-proposition{padding:44px 6%;gap:24px}
  .home-page .value-proposition-intro h2{font-size:clamp(2rem,8.7vw,3rem);line-height:1.1}
  .home-page .value-proposition-copy>p:not(.value-proposition-signature){font-size:16px;line-height:1.75}
  .home-page .contact-grid h2{font-size:clamp(2rem,9vw,3rem);line-height:1.1}
}
