/* Homepage opening: a larger story and a deliberate glimpse of the services. */
.page-home{--opening-header:88px;--opening-tail:204px}
.page-home .workplace-hero{display:flex;align-items:center;min-height:calc(100svh - var(--opening-header) - var(--opening-tail));padding:28px 0 0}
.page-home .workplace-hero .container{width:min(calc(100% - 96px),var(--max))}
.page-home .workplace-hero .home-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:center;gap:clamp(24px,2.6vw,40px)}
.page-home .workplace-hero .home-hero-copy{min-width:0;padding:0}
.page-home .workplace-hero h1{font-size:clamp(88px,6.3vw,116px);line-height:1.02;letter-spacing:-.058em;margin:0 0 24px}
.page-home .workplace-hero .hero-subtitle{font-size:28px;line-height:1.42;letter-spacing:-.65px;font-weight:550;max-width:100%;margin:0 0 22px;text-wrap:balance}
.page-home .workplace-hero .hero-lede{font-size:20px;line-height:1.6;max-width:670px;margin:0;text-wrap:pretty}
.page-home .workplace-hero .hero-actions{margin-top:28px;gap:28px}
.page-home .workplace-hero .hero-actions .btn{min-height:52px}
.page-home .workplace-hero .workplace-visual{width:100%;max-width:460px;min-height:0;margin:0;justify-self:end;align-self:center}
.page-home .workplace-hero .workplace-scene{max-width:none}
.page-home .connected-services{padding-top:62px!important}
@media(min-width:1600px){.page-home .workplace-hero .container{width:min(calc(100% - 140px),1400px)}}
@media(min-width:1101px) and (max-height:760px){
 .page-home{--opening-header:80px}
 .page-home .workplace-hero{padding-top:16px}
 .page-home .workplace-hero h1{font-size:clamp(84px,13vh,100px);margin-bottom:20px}
 .page-home .workplace-hero .hero-subtitle{font-size:24px;line-height:1.5;margin-bottom:20px}
 .page-home .workplace-hero .hero-lede{font-size:20px;line-height:1.55}
 .page-home .workplace-hero .hero-actions{margin-top:24px}
 .page-home .workplace-hero .workplace-visual{max-width:430px}
}
@media(min-width:1101px) and (max-height:680px){
 .page-home .workplace-hero h1{font-size:clamp(64px,11.8vh,82px);margin-bottom:18px}
 .page-home .workplace-hero .hero-subtitle{font-size:22px;line-height:1.4;margin-bottom:16px}
 .page-home .workplace-hero .hero-lede{font-size:18px;line-height:1.5}
 .page-home .workplace-hero .hero-actions{margin-top:18px}
 .page-home .workplace-hero .workplace-visual{max-width:390px}
}
@media(min-width:721px) and (max-width:1100px){
 .page-home .workplace-hero{min-height:0;padding:30px 0 10px}
 .page-home .workplace-hero .container{width:calc(100% - 64px)}
 .page-home .workplace-hero .home-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px}
 .page-home .workplace-hero h1{font-size:clamp(56px,6.4vw,74px);line-height:1.04;margin-bottom:22px}
 .page-home .workplace-hero .hero-subtitle{font-size:22px;line-height:1.4;margin-bottom:18px}
 .page-home .workplace-hero .hero-lede{font-size:17px;line-height:1.65}
 .page-home .workplace-hero .hero-actions{margin-top:24px;gap:18px 22px}
 .page-home .workplace-hero .workplace-visual{max-width:390px}
}
@media(max-width:720px){
 .page-home{--opening-header:72px;--opening-tail:223px}
 .page-home .workplace-hero{min-height:0;padding:20px 0 0}
 .page-home .workplace-hero .container{width:calc(100% - 40px)}
 .page-home .workplace-hero .home-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:20px}
 .page-home .workplace-hero h1{font-size:clamp(48px,12.4vw,68px);line-height:1.05;letter-spacing:-.058em;margin-bottom:20px}
 .page-home .workplace-hero .hero-subtitle{font-size:20px;line-height:1.4;margin-bottom:16px;max-width:100%}
 .page-home .workplace-hero .hero-lede{font-size:16px;line-height:1.65;max-width:100%}
 .page-home .workplace-hero .hero-actions{margin-top:22px;gap:16px 20px}
 .page-home .workplace-hero .hero-actions .btn{min-height:49px}
 .page-home .workplace-hero .workplace-visual{width:min(100%,190px);max-width:190px;margin:0 auto}
 .page-home .connected-services{padding-top:90px!important}
}

/* The marked widths give the business a broad line and supporting copy compact blocks. */
.page-home .workplace-hero h1 .hero-primary-line{display:block;font-size:clamp(96px,8.4vw,140px);line-height:.94}
.page-home .workplace-hero h1 em{display:block;font-size:clamp(90px,6vw,108px);line-height:1;margin-top:6px}
.page-home .workplace-hero .hero-subtitle{font-size:22px;max-width:450px;margin-bottom:18px}
.page-home .workplace-hero .hero-lede{font-size:17.5px;max-width:440px}
@media(min-width:1101px) and (max-height:760px){
 .page-home .workplace-hero h1 .hero-primary-line{font-size:clamp(96px,8.2vw,124px);line-height:.9}
 .page-home .workplace-hero h1 em{font-size:clamp(86px,5.7vw,90px);line-height:.73}
 .page-home .workplace-hero .hero-subtitle{font-size:20px;line-height:1.3;max-width:400px;margin-bottom:16px}
 .page-home .workplace-hero .hero-lede{font-size:16.5px;max-width:440px}
}
@media(min-width:1101px) and (max-height:680px){
 .page-home .workplace-hero h1{margin-bottom:14px}
 .page-home .workplace-hero h1 .hero-primary-line{font-size:clamp(100px,8vw,120px)}
 .page-home .workplace-hero h1 em{font-size:clamp(86px,5.7vw,90px);line-height:.8}
 .page-home .workplace-hero .hero-subtitle{font-size:17px;margin-bottom:12px}
 .page-home .workplace-hero .hero-lede{font-size:15.5px;line-height:1.5}
 .page-home .workplace-hero .hero-actions{margin-top:16px}
}
@media(min-width:721px) and (max-width:1100px){
 .page-home .workplace-hero h1 .hero-primary-line{font-size:clamp(60px,7vw,82px);line-height:1.04}
 .page-home .workplace-hero h1 em{font-size:clamp(46px,5.1vw,62px);line-height:1.04}
 .page-home .workplace-hero .hero-subtitle{font-size:20px;max-width:400px}
 .page-home .workplace-hero .hero-lede{font-size:16px;max-width:440px}
}
@media(max-width:720px){
 .page-home .workplace-hero h1 .hero-primary-line{font-size:clamp(44px,13vw,70px);line-height:1.05}
 .page-home .workplace-hero h1 em{font-size:clamp(36px,10.3vw,54px);line-height:1.05;margin-top:12px}
 .page-home .workplace-hero .hero-subtitle{font-size:19px;max-width:100%;margin-bottom:16px}
 .page-home .workplace-hero .hero-lede{font-size:15px;max-width:100%}
}
