
/* FINAL CORPORATE PASS — compact heroes, readable copy, meaningful visual panels */
.hero,.inner-hero{overflow:hidden;isolation:isolate}
.hero{height:620px!important;min-height:620px!important}
.inner-hero{height:525px!important;min-height:525px!important}
.hero-video{display:block!important;object-fit:cover!important;object-position:center 42%!important}
.hero-shade{background:linear-gradient(90deg,rgba(5,9,13,.94) 0%,rgba(5,9,13,.78) 34%,rgba(5,9,13,.34) 65%,rgba(5,9,13,.12) 100%),linear-gradient(0deg,rgba(5,9,13,.38),transparent 45%)!important}
.hero-content,.inner-hero .hero-content{padding-top:145px!important;padding-bottom:58px!important;max-width:1120px!important}
.hero h1,.inner-hero h1{font-size:clamp(42px,5.2vw,72px)!important;line-height:1.02!important;letter-spacing:-2.8px!important;max-width:760px!important;margin-bottom:20px!important}
.hero-content p,.inner-hero p{font-size:17px!important;line-height:1.52!important;max-width:650px!important;margin:18px 0 24px!important}
.hero-ctas{gap:12px!important}
.hero-bottom,.inner-hero .hero-bottom{bottom:18px!important;padding-top:11px!important;font-size:10px!important}
.visual-story{padding:78px max(6vw,60px)!important;background:#fff}
.visual-story .vs-wrap{max-width:1380px!important;margin:auto!important;grid-template-columns:minmax(280px,.9fr) minmax(280px,1fr)!important;gap:42px!important;align-items:center!important}
.visual-story .vs-visual-image-wrap{grid-row:span 2!important;margin:0!important;max-height:390px!important;overflow:hidden!important;border-radius:2px!important;background:#0b1722!important;box-shadow:0 18px 45px rgba(5,12,18,.13)!important}
.visual-story .vs-visual-image{width:100%!important;height:390px!important;object-fit:cover!important;display:block!important}
.visual-story .vs-copy{max-width:650px!important;font-size:17px!important;line-height:1.65!important;color:#586168!important}
.visual-story .vs-diagram{min-height:270px!important}
.location-hero-visual{max-height:330px!important;object-fit:cover!important}
/* Keep all important copy visible at tablet sizes. */
@media(max-width:900px){
 .hero{height:570px!important;min-height:570px!important}.inner-hero{height:500px!important;min-height:500px!important}
 .hero-content,.inner-hero .hero-content{padding:125px 42px 62px!important}
 .hero h1,.inner-hero h1{font-size:clamp(40px,7vw,58px)!important;max-width:700px!important}
 .visual-story .vs-wrap{grid-template-columns:1fr!important}.visual-story .vs-visual-image-wrap{grid-row:auto!important}.visual-story .vs-visual-image{height:330px!important}
}
@media(max-width:700px){
 .hero{height:590px!important;min-height:590px!important}.inner-hero{height:520px!important;min-height:520px!important}
 .hero-content,.inner-hero .hero-content{padding:118px 24px 65px!important}
 .hero h1,.inner-hero h1{font-size:clamp(36px,10.5vw,52px)!important;letter-spacing:-1.8px!important}
 .hero-content p,.inner-hero p{font-size:15.5px!important;line-height:1.55!important}
 .hero-bottom,.inner-hero .hero-bottom{left:24px!important;right:24px!important}
 .visual-story{padding:55px 24px!important}.visual-story .vs-visual-image{height:260px!important}
}
/* LAST HOUR — hierarchy, compactness, premium corporate rhythm */
:root{--wc-red:#d71920;--wc-navy:#0b1724;--wc-ink:#101820;--wc-muted:#5d6872;--wc-line:#dfe4e8}
body{background:#fff;color:var(--wc-ink)}
.hero{height:500px!important;min-height:500px!important}
.inner-hero{height:430px!important;min-height:430px!important}
.hero-content,.inner-hero .hero-content{padding-top:105px!important;padding-bottom:44px!important}
.hero h1,.inner-hero h1{max-width:780px!important;font-size:clamp(40px,4.6vw,66px)!important;line-height:1.02!important;letter-spacing:-2.35px!important}
.hero-content p,.inner-hero p{max-width:650px!important;font-size:16px!important;line-height:1.55!important}
.hero-bottom,.inner-hero .hero-bottom{bottom:12px!important}
.page-main{overflow:hidden}
.page-main section{position:relative}
.page-main h2{letter-spacing:-1.25px}
.page-main h3{letter-spacing:-.35px}
/* Keep each section visually purposeful: heading, explanation, evidence, action. */
.content-band,.clarity-band,.visual-story,.page-explainer{scroll-margin-top:90px}
.content-band{padding-top:56px!important;padding-bottom:56px!important}
.clarity-band{padding:52px 0!important;background:#fff!important}
.clarity-head{margin-bottom:28px!important}
.clarity-head h2{max-width:620px!important}
.clarity-head p{max-width:560px!important}
.visual-story{padding:58px 0!important}
.visual-story .vs-visual-image-wrap{max-height:390px!important}
.visual-story .vs-visual-image{min-height:320px!important;max-height:390px!important}
/* Stronger CTA hierarchy */
.cta-band,.final-cta{padding-top:48px!important;padding-bottom:48px!important}
.cta-band h2,.final-cta h2{max-width:820px!important}
/* Metrics: proof without oversized dashboard feeling */
.metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.metric{padding:22px!important}
.metric strong{font-size:34px!important;letter-spacing:-1px!important}
/* Cards stay editorial rather than application-like */
.editorial-grid,.card-grid,.process-grid{gap:14px!important}
.editorial-card,.process-card,.pe-card{border-radius:2px!important;box-shadow:0 8px 24px rgba(8,27,43,.055)!important}
/* Location pages: make the proposition explicit */
.location-seo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important}
.location-seo-grid article{min-height:150px}
/* Hide redundant utility labels that read like template scaffolding */
.page-main .template-label,.page-main .debug-label{display:none!important}
@media(max-width:900px){.hero{height:520px!important;min-height:520px!important}.inner-hero{height:470px!important;min-height:470px!important}.hero-content,.inner-hero .hero-content{padding-top:100px!important}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.hero{height:540px!important;min-height:540px!important}.inner-hero{height:500px!important;min-height:500px!important}.hero-content,.inner-hero .hero-content{padding:100px 24px 50px!important}.metrics{grid-template-columns:1fr!important}.content-band,.clarity-band{padding-top:44px!important;padding-bottom:44px!important}}


/* FINAL INTEGRATED ART-DIRECTION PASS */
main section { position: relative; }
main section > .container, main section > .section-inner { max-width: 1180px; margin-inline: auto; }
main section p { max-width: 760px; line-height: 1.72; }
main section h2 { max-width: 820px; letter-spacing: -0.02em; }
main section h3 { letter-spacing: -0.01em; }
main section img { display:block; width:100%; height:auto; object-fit:cover; }
.hero-content p { max-width: 680px; }
@media (max-width: 900px){ main section p { max-width: 100%; } }

/* FINAL COLOR OVERRIDE */
header, .header, #header,
footer, .footer, #footer {
  background-color: #7A0F16;
}
/* Keep Job Posting / job-posting tabs blue */
.job-posting, .job-posting-tab, .job-posting-btn,
.job-posting a, a.job-posting, button.job-posting {
  background-color: #0B63CE;
  border-color: #0B63CE;
  color: #FFFFFF;
}
.job-posting-tab.active, .job-posting.active {
  background-color: #0B63CE;
  color: #FFFFFF;
}
