/* The Pactes home masthead: type, place, people. Scoped to the home page. */
.home-typographic .hero{background:var(--cream)}
.home-typographic .home-masthead{padding-top:38px;padding-bottom:28px}
.home-typographic .hero-masthead-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
.home-typographic .hero-masthead-top>.label{margin:0;font-size:12px;letter-spacing:.12em;color:var(--teal)}
.home-typographic .hero-location{display:inline-flex;align-items:center;gap:22px;min-height:34px;font-size:13px;color:var(--ink)}
.home-typographic .hero-location>span{font-size:18px;color:var(--teal)}
.home-typographic .hero-location:hover{text-decoration:underline;text-underline-offset:5px}
.home-typographic .home-masthead h1{font-family:var(--display);font-size:clamp(70px,9.35vw,128px);line-height:.98;font-weight:900;letter-spacing:-.055em;text-wrap:initial;margin:28px 0 31px;max-width:none}
.home-typographic .hero-local{color:var(--teal)}
.home-typographic .hero-city{position:relative;display:inline-block;isolation:isolate}
.home-typographic .hero-city:after{content:"";position:absolute;inset:auto 0 .025em;height:.075em;background:var(--signature);z-index:-1}
.home-typographic .hero-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center}
.home-typographic .hero-lead{max-width:580px;font-size:17px;line-height:1.7;margin:0;color:var(--text)}
.home-typographic .hero-contact-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:14px 25px;margin:0}
.home-typographic .hero-contact-actions>.button{font-size:14px;min-height:54px;padding:14px 21px;gap:25px;white-space:nowrap}
.home-typographic .hero-phone{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:500;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;white-space:nowrap}
.home-typographic .hero-phone:hover{color:var(--teal)}
.home-typographic .hero-masthead-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:31px;padding-top:17px;border-top:1px solid var(--line)}
.home-typographic .hero-meet{display:inline-flex;gap:28px;align-items:center;min-height:44px;font-size:13px;color:var(--teal)}
.home-typographic .hero-meet>span{font-size:19px;transition:transform .18s}
.home-typographic .hero-meet:hover>span{transform:translateY(3px)}
.home-typographic .hero-regard{width:330px;max-width:100%}
.home-typographic .regard-card{grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:0;border:0;border-radius:0;background:transparent;min-height:51px}
.home-typographic .regard-card:hover{background:transparent}
.home-typographic .regard-kicker{font-size:12px;letter-spacing:.12em;line-height:1.5;margin:0 0 4px;color:var(--teal)}
.home-typographic .hero-regard h2{font-size:22px;line-height:1.15;letter-spacing:-.035em}
.home-typographic .regard-card:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.home-typographic .regard-end{flex-direction:row;gap:12px}
.home-typographic .regard-motion{width:36px;flex-shrink:0}
.home-typographic .regard-discover{font-size:0;gap:0}
.home-typographic .regard-discover>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--signature);font-size:17px}
.home-typographic .regard-card:hover .regard-discover>span{background:var(--aqua)}
.home-typographic .trust-inner{padding-top:16px;padding-bottom:16px}
.home-typographic .home-team{padding:34px 0;background:var(--aqua);border-bottom:1px solid var(--line)}
.home-typographic .home-team>.container{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,2fr);gap:44px;align-items:center}
.home-typographic .home-team .home-section-heading{display:block;margin:0}
.home-typographic .home-team .label{font-size:12px;margin:0 0 12px;letter-spacing:.09em}
.home-typographic .home-team .home-section-heading h2{font-size:28px;line-height:1.12;text-wrap:initial}
.home-typographic .home-team .home-section-heading>.text-link{font-size:12px;line-height:1.6;display:inline-block;margin-top:13px;max-width:230px}
.home-typographic .home-principals{gap:28px}
.home-typographic .home-person{grid-template-columns:104px minmax(0,1fr);gap:20px;padding:0;border:0;border-radius:0;background:transparent}
.home-typographic .home-person>img{width:104px;height:132px;background:#f4f7f3;border-radius:2px 16px 2px 2px}
.home-typographic .home-person h3{font-size:22px;line-height:1.12;text-wrap:initial}
.home-typographic .home-person p{font-size:14px;line-height:1.5;margin-top:9px}
.home-typographic .home-person .text-link{display:inline-flex;align-items:center;min-height:36px;margin-top:5px;font-size:13px}
.home-typographic .home-needs{padding-top:48px}
@media(min-width:1500px){
 .home-typographic .home-masthead{padding-top:44px;padding-bottom:30px}
 .home-typographic .home-masthead h1{font-size:136px}
}
@media(max-width:1100px){
 .home-typographic .hero-summary{gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}
 .home-typographic .hero-lead{font-size:16px}
 .home-typographic .hero-lead>br{display:none}
 .home-typographic .hero-contact-actions{gap:8px 20px}
 .home-typographic .home-team>.container{grid-template-columns:1fr;gap:26px}
 .home-typographic .home-team .home-section-heading{display:flex;gap:25px;align-items:end}
 .home-typographic .home-team .home-section-heading>.text-link{max-width:260px;margin:0}
 .home-typographic .home-team .home-section-heading h2>br{display:none}
 .home-typographic .home-principals{gap:40px}
 .home-typographic .home-person{grid-template-columns:105px minmax(0,1fr)}
}
@media(max-width:740px){
 .home-typographic .home-masthead{padding-top:25px;padding-bottom:21px}
 .home-typographic .hero-masthead-top{align-items:start;gap:18px}
 .home-typographic .hero-masthead-top>.label{font-size:12px;letter-spacing:.085em;max-width:200px;line-height:1.6}
 .home-typographic .hero-location{font-size:12px;gap:12px;min-height:30px;white-space:nowrap}
 .home-typographic .home-masthead h1{font-size:clamp(38px,9.6vw,70px);line-height:1.02;letter-spacing:-.045em;margin:25px 0 23px}
 .home-typographic .hero-summary{grid-template-columns:1fr;gap:22px}
 .home-typographic .hero-lead{font-size:16px;line-height:1.65;max-width:480px}
 .home-typographic .hero-contact-actions{justify-content:flex-start;gap:15px 23px}
 .home-typographic .hero-contact-actions>.button{font-size:14px;gap:20px;padding:13px 17px;min-height:52px}
 .home-typographic .hero-phone{font-size:14px}
 .home-typographic .hero-masthead-bottom{gap:20px;margin-top:25px;padding-top:17px}
 .home-typographic .hero-meet{font-size:12px;gap:12px;max-width:140px;line-height:1.5}
 .home-typographic .hero-regard{width:260px}
 .home-typographic .hero-regard h2{font-size:20px}
 .home-typographic .regard-card{gap:14px}
 .home-typographic .regard-end{gap:8px}
 .home-typographic .regard-motion{width:30px}
 .home-typographic .regard-discover>span{width:28px;height:28px;font-size:16px}
 .home-typographic .trust-inner{padding-top:15px;padding-bottom:15px}
 .home-typographic .home-team{padding:28px 0}
 .home-typographic .home-team>.container{gap:23px}
 .home-typographic .home-team .home-section-heading{align-items:start;gap:20px}
 .home-typographic .home-team .home-section-heading h2{font-size:27px;max-width:300px}
 .home-typographic .home-team .home-section-heading>.text-link{max-width:155px;font-size:12px}
 .home-typographic .home-principals{grid-template-columns:1fr 1fr;gap:25px}
 .home-typographic .home-person{grid-template-columns:80px minmax(0,1fr);gap:15px}
 .home-typographic .home-person>img{width:80px;height:110px}
 .home-typographic .home-person h3{font-size:20px}
 .home-typographic .home-person p{font-size:13px}
 .home-typographic .home-needs{padding-top:35px}
}
@media(max-width:570px){
 .home-typographic .hero-masthead-top{display:block}
 .home-typographic .hero-masthead-top>.label{max-width:none}
 .home-typographic .hero-location{gap:12px;font-size:12px;min-height:32px;margin-top:3px}
 .home-typographic .home-masthead h1{margin-top:17px}
 .home-typographic .hero-masthead-bottom{display:block}
 .home-typographic .hero-meet{max-width:none;min-height:38px;gap:18px}
 .home-typographic .hero-regard{width:100%;margin-top:10px;padding-top:15px;border-top:1px solid var(--line)}
 .home-typographic .regard-card{min-height:45px}
 .home-typographic .hero-regard h2{font-size:22px}
 .home-typographic .regard-motion{width:36px}
 .home-typographic .regard-end{gap:14px}
 .home-typographic .trust-inner{gap:7px}
 .home-typographic .trust-inner>a{gap:7px;font-size:13px}
 .home-typographic .home-team .home-section-heading{display:block}
 .home-typographic .home-team .home-section-heading h2>br{display:initial}
 .home-typographic .home-team .home-section-heading>.text-link{max-width:none;margin-top:12px;min-height:30px}
 .home-typographic .home-principals{grid-template-columns:1fr;gap:19px}
 .home-typographic .home-person{grid-template-columns:85px minmax(0,1fr);gap:19px}
 .home-typographic .home-person+ .home-person{padding-top:19px;border-top:1px solid var(--line)}
 .home-typographic .home-person>img{width:85px;height:114px}
 .home-typographic .home-person h3{font-size:22px}
 .home-typographic .home-person p{font-size:14px}
 .home-typographic .home-person .text-link{min-height:39px;margin-top:2px}
}
@media(max-width:380px){
 .home-typographic .home-masthead h1{font-size:clamp(32px,9.5vw,38px)}
 .home-typographic .hero-lead{font-size:15px}
 .home-typographic .hero-contact-actions{gap:9px 18px}
 .home-typographic .hero-contact-actions>.button{font-size:13px;gap:14px;padding:13px 14px}
 .home-typographic .hero-phone{font-size:13px}
 .home-typographic .trust-inner>a{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
 .home-typographic .hero-meet>span{transition:none}
}
