/* Homepage editorial hierarchy; the shared site shell remains in global-shell.css. */
.corporate-home .cp-hero,.corporate-home .cp-hero-inner{min-height:550px}
.corporate-home .cp-hero-inner{padding-top:69px;padding-bottom:82px}
.corporate-home .cp-hero-copy{max-width:760px}
.corporate-home .cp-hero h1{font-size:clamp(36px,3vw,46px);line-height:1.24;letter-spacing:-.5px;margin-bottom:19px}
.corporate-home .cp-hero-lead{font-size:16px;max-width:620px;line-height:1.75}
.corporate-home .cp-hero-shade{background:linear-gradient(90deg,#11232cf5 0%,#142933e8 31%,#162b37a8 57%,#172c3b17 100%)}
.corporate-home .cp-wave{display:none}

.corporate-home .cp-services{padding:77px 0 88px;background:#f5f8fa}
.corporate-home .cp-services-head{align-items:end;margin-bottom:29px}
.corporate-home .cp-services-head h2{font-size:clamp(31px,2.8vw,43px);margin-bottom:9px}
.corporate-home .cp-services-head p:last-child{max-width:670px;margin:0;color:#63727c;font-size:15px}
.corporate-home .cp-service-grid{display:grid;grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;overflow:visible;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.corporate-home .cp-service{position:relative;display:flex;min-width:0;min-height:228px;flex-direction:column;align-items:flex-start;overflow:hidden;padding:0 0 18px;border:1px solid #dfe8ee;border-radius:13px;background:#fff;text-align:left;box-shadow:0 12px 28px #172c3a09;transition:transform .2s,box-shadow .2s,border-color .2s}
.corporate-home .cp-service:hover,.corporate-home .cp-service:focus-visible{transform:translateY(-4px);border-color:#efb58e;box-shadow:0 22px 38px #172c3a19}
.corporate-home .cp-service img{width:100%;height:151px;aspect-ratio:auto;border-radius:0;object-fit:cover;transition:transform .35s}
.corporate-home .cp-service:hover img{transform:scale(1.04)}
.corporate-home .cp-service strong{margin:15px 17px 1px;font-size:17px;line-height:1.3;font-weight:600}
.corporate-home .cp-service small{margin:0 17px;color:#697983;font-size:11px}
.corporate-home .cp-service:after{position:absolute;right:16px;bottom:18px;color:#e46625;content:'↗';font:24px Arial,sans-serif}

.corporate-home .cp-company-grid{min-height:450px}
.corporate-home .cp-company-copy{padding-block:75px}
.corporate-home .cp-company h2{font-size:clamp(29px,2.7vw,39px)}
.corporate-home .cp-government-grid{padding-block:77px}
.corporate-home .cp-solutions{padding:83px 0 78px}
.corporate-home .cp-solutions .cp-section-head h2,.corporate-home .cp-projects .cp-section-head h2{font-size:clamp(31px,2.8vw,42px)}

.corporate-home .cp-workflow{padding:83px 0 88px;background:#20323c;color:#fff}
.corporate-home .cp-workflow .cp-kicker{color:#ff9c65}
.corporate-home .cp-workflow .cp-section-head{margin-bottom:39px}
.corporate-home .cp-workflow .cp-section-head h2{max-width:760px;font-size:clamp(31px,2.8vw,42px)}
.corporate-home .cp-workflow .cp-section-head>p{color:#bfd0d8;font-size:15px}
.corporate-home .cp-workflow-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px}
.corporate-home .cp-workflow-grid li{min-height:190px;padding:24px 27px;border:1px solid #ffffff24;border-radius:13px;background:#ffffff0d;box-shadow:none}
.corporate-home .cp-workflow-grid li:nth-child(3n):after{display:none}
.corporate-home .cp-workflow-grid li:not(:last-child):after{right:-17px;top:69px;content:'→';color:#fb884b;font:25px Arial,sans-serif}
.corporate-home .cp-workflow-grid li>div{justify-content:space-between;margin-bottom:22px}
.corporate-home .cp-workflow-grid li b{display:block;width:auto;height:auto;border-radius:0;color:#fa843f;background:none;box-shadow:none;font-size:40px;line-height:1;font-weight:600}
.corporate-home .cp-workflow-grid li svg{width:38px;height:38px;color:#ff9a61;stroke-width:1.4}
.corporate-home .cp-workflow-grid h3{margin-bottom:5px;color:#fff;font-size:21px;font-weight:600}
.corporate-home .cp-workflow-grid p{color:#bfd0d8;font-size:14px}
.corporate-home .cp-workflow-grid p br{display:none}

.corporate-home .cp-projects{padding:81px 0 89px;background:#f5f8fa}
.corporate-home .cp-project-toolbar{margin-bottom:24px}
body.corporate-home main .cp-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:20px}
body.corporate-home main .cp-project-card{grid-column:auto;border:1px solid #dfe8ee;border-radius:12px;background:#fff;box-shadow:0 8px 24px #172c3a08;transition:transform .2s,box-shadow .2s,border-color .2s}
body.corporate-home main .cp-project-card:hover{transform:translateY(-3px);border-color:#efb58e;box-shadow:0 16px 30px #172c3a12}
body.corporate-home main .cp-project-link{display:flex;flex-direction:column;height:100%;text-decoration:none}
body.corporate-home main .cp-project-link:focus-visible{outline-offset:-3px;border-radius:12px}
body.corporate-home main .cp-project-card img{width:100%;aspect-ratio:8/5;object-fit:cover}
body.corporate-home main .cp-project-info{display:flex;flex-direction:column;flex:1;min-width:0;padding:20px}
body.corporate-home main .cp-project-card small{display:block;align-self:flex-start;padding:0;margin:0 0 10px;background:none;border-radius:0;font-size:11px;line-height:1.6;color:#b6521f}
body.corporate-home main .cp-project-card h3{font-size:18px;font-weight:500;line-height:1.5;margin-bottom:8px}
body.corporate-home main .cp-project-card p{font-size:13px;line-height:1.7;color:#637580;margin:0 0 18px}
body.corporate-home main .cp-project-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid #edf1f3;font-size:12px;color:#bd541d}
body.corporate-home main .cp-project-action svg{width:18px;height:18px}
@media(max-width:1000px){body.corporate-home main .cp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(max-width:560px){body.corporate-home main .cp-project-grid{grid-template-columns:1fr;gap:18px;grid-auto-rows:auto}body.corporate-home main .cp-project-info{padding:18px}}
@media(prefers-reduced-motion:reduce){body.corporate-home main .cp-project-card{transition:none}body.corporate-home main .cp-project-card:hover{transform:none}}

@media(max-width:1000px){
  .corporate-home .cp-hero,.corporate-home .cp-hero-inner{min-height:525px}
  .corporate-home .cp-hero h1{font-size:clamp(32px,4vw,40px)}
  .corporate-home .cp-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
  .corporate-home .cp-service{min-height:196px}
  .corporate-home .cp-service img{height:125px}
  .corporate-home .cp-service strong{font-size:14px;margin-inline:12px}
  .corporate-home .cp-service small{margin-inline:12px}
  .corporate-home .cp-service:after{right:9px;bottom:15px;font-size:19px}
}
@media(max-width:800px){
  .corporate-home .cp-services,.corporate-home .cp-solutions,.corporate-home .cp-workflow,.corporate-home .cp-projects{padding-block:61px}
  .corporate-home .cp-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .corporate-home .cp-service img{height:158px}
  .corporate-home .cp-workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .corporate-home .cp-workflow-grid li:nth-child(3n):after{display:block}
  .corporate-home .cp-workflow-grid li:nth-child(2n):after{display:none}
  .corporate-home .cp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .corporate-home .cp-project-card,.corporate-home .cp-project-card:nth-child(-n+2){grid-column:auto}
  .corporate-home .cp-project-card:nth-child(-n+2) img{aspect-ratio:1.75}
}
@media(max-width:560px){
  .corporate-home .cp-hero,.corporate-home .cp-hero-inner{min-height:535px}
  .corporate-home .cp-hero-inner{padding-top:49px}
  .corporate-home .cp-hero h1{font-size:27px;line-height:1.25}
  .corporate-home .cp-hero-lead{font-size:14px}
  .corporate-home .cp-hero-shade{background:linear-gradient(90deg,#10222bf5,#10222bcb 67%,#10222b77)}
  .corporate-home .cp-services,.corporate-home .cp-solutions,.corporate-home .cp-workflow,.corporate-home .cp-projects{padding-block:49px}
  .corporate-home .cp-services-head{display:block;margin-bottom:21px}
  .corporate-home .cp-services-head h2,.corporate-home .cp-solutions .cp-section-head h2,.corporate-home .cp-workflow .cp-section-head h2,.corporate-home .cp-projects .cp-section-head h2{font-size:28px}
  .corporate-home .cp-services-head p:last-child{font-size:13px;line-height:1.6}
  .corporate-home .cp-services-head .cp-text-link{display:inline-flex;margin-top:13px}
  .corporate-home .cp-service-grid{grid-auto-columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding:0}
  .corporate-home .cp-service{min-height:175px;padding-bottom:17px}
  .corporate-home .cp-service img{height:104px}
  .corporate-home .cp-service strong{font-size:13px;margin:11px 10px 1px}
  .corporate-home .cp-service small{font-size:10px;margin-inline:10px}
  .corporate-home .cp-service:after{right:7px;bottom:13px;font-size:17px}
  .corporate-home .cp-company-copy{padding-block:37px 13px}
  .corporate-home .cp-government-grid{padding-block:46px}
  .corporate-home .cp-workflow .cp-section-head{margin-bottom:22px}
  .corporate-home .cp-workflow .cp-section-head>p{font-size:13px}
  .corporate-home .cp-workflow-grid{grid-template-columns:1fr;gap:10px;margin:0;padding:0;border:0}
  .corporate-home .cp-workflow-grid li{display:grid;grid-template-columns:63px 1fr;min-height:115px;gap:0 12px;padding:15px 17px}
  .corporate-home .cp-workflow-grid li:before{display:none}
  .corporate-home .cp-workflow-grid li:nth-child(3n):after{display:none}
  .corporate-home .cp-workflow-grid li>div{grid-row:1/3;align-items:flex-start;justify-content:center;gap:4px;margin:0}
  .corporate-home .cp-workflow-grid li b{font-size:31px}
  .corporate-home .cp-workflow-grid li svg{width:24px;height:24px}
  .corporate-home .cp-workflow-grid h3{font-size:17px;align-self:end}
  .corporate-home .cp-workflow-grid p{font-size:12px}
  .corporate-home .cp-project-grid{grid-template-columns:1fr;gap:13px}
  .corporate-home .cp-project-card img,.corporate-home .cp-project-card:nth-child(-n+2) img{aspect-ratio:1.8}
  .corporate-home .cp-project-card>div{padding:14px 16px}
  .corporate-home .cp-project-card h3{font-size:16px}
  .corporate-home .cp-project-card p{font-size:12px}
}
@media(max-width:360px){.corporate-home .cp-hero h1{font-size:26px}}

/* Keep every homepage section heading below the banner heading at each viewport. */
.corporate-home{--cp-section-heading-size:32px}
.corporate-home :is(.cp-services-head h2,.cp-company h2,.cp-government h2,.cp-solutions .cp-section-head h2,.cp-workflow .cp-section-head h2,.cp-projects .cp-section-head h2,.cp-consultation h2){font-size:var(--cp-section-heading-size);line-height:1.3}
@media(max-width:1000px){.corporate-home{--cp-section-heading-size:25px}}
@media(max-width:560px){.corporate-home{--cp-section-heading-size:21px}}
