/* Contact invitation first. The supplied dimensional mark and wordmark form
   one joined, lower brand signature; the service line stays beneath it. */
.contacts.section{padding-top:95px;overflow:hidden}
.contact-finale{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:7vw;align-items:start;min-height:0}
.contacts .contact-heading{display:block;align-self:start;width:100%}
.contacts .contact-heading h2{font-size:clamp(54px,5.5vw,92px);line-height:1.12}
.contacts .contact-heading .kicker{font-size:15px;margin-bottom:25px;max-width:420px;line-height:1.55}
.contacts .contact-heading .button{margin-top:32px;font-size:16px}
.contacts .contact-details{display:flex;flex-direction:column;gap:36px;margin:0;padding:4px 0 0;border:0}
.contacts .contact-label{font-size:15px;color:#d3dfca}
.contacts .address{font-size:clamp(30px,3.1vw,48px);line-height:1.22;margin-top:13px}
.contacts .direct-contacts{align-self:stretch;gap:15px}
.contacts .direct-contacts>a:first-child{font-size:clamp(24px,2.7vw,40px);letter-spacing:-.025em}
.contacts .direct-contacts>a:nth-child(2){font-size:clamp(22px,2.3vw,34px)}
.contacts .line-link{font-size:15px}
.brand-lockup{display:grid;grid-template-columns:minmax(200px,.29fr) minmax(0,1fr);align-items:center;gap:1.8vw;min-height:370px;margin-top:68px;padding:19px 0 14px;border-top:1px solid #c9d8bb44}
.footer-art{position:relative;width:100%;height:355px;isolation:isolate}
.footer-art img{display:block;width:94%;height:100%;object-fit:contain;margin:auto;opacity:.9}
.brand-model-ready .footer-art img{visibility:hidden}
.finale-signature{min-width:0;align-self:center;padding:14px 0 15px}
.finale-wordmark{min-width:0;font-family:var(--display);font-variation-settings:'SHRP' 60;font-weight:310;font-size:clamp(65px,9.1vw,172px);letter-spacing:-.06em;line-height:1.12;padding:0;border:0;color:#edf2e3;white-space:nowrap}
.finale-wordmark>span{display:inline-block;vertical-align:baseline}
.finale-wordmark>.wordmark-first{font-weight:500;font-variation-settings:'SHRP' 25;color:#bed5a4}
.finale-wordmark>.wordmark-second{font-weight:275;font-variation-settings:'SHRP' 80;margin-left:-.018em}
.finale-tagline{display:flex;align-items:center;gap:18px;margin:22px 0 0 .12em;font-family:var(--font);font-size:clamp(17px,1.55vw,24px);font-weight:350;line-height:1.45;letter-spacing:-.015em;color:#d4dfc7}
.finale-tagline::before{content:'';display:block;flex:none;width:clamp(30px,4vw,68px);height:1px;background:#a3c287}
.contacts footer{display:flex;align-items:center;gap:24px;padding:25px 100px 31px 0;border-top:1px solid #c9d8bb44}
.contacts footer>span{font-size:14px;color:#c5d5bb;line-height:1.6;max-width:680px}
@media(min-width:1700px){.brand-lockup{grid-template-columns:minmax(270px,.3fr) minmax(0,1fr)}.finale-wordmark{font-size:clamp(140px,8.9vw,185px)}}
@media(max-width:1100px){.contact-finale{gap:5vw}.brand-lockup{grid-template-columns:minmax(170px,.29fr) minmax(0,1fr);min-height:320px;margin-top:55px;gap:1vw}.footer-art{height:295px}.finale-wordmark{font-size:9vw}}
@media(max-width:780px){.contacts.section{padding-top:74px}.contact-finale{grid-template-columns:1fr;gap:45px}.contacts .contact-heading h2{font-size:clamp(48px,7.6vw,68px)}.contacts .contact-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:30px}.contacts .direct-contacts>a:first-child{font-size:clamp(22px,3.4vw,30px)}.contacts .direct-contacts>a:nth-child(2){font-size:clamp(21px,3.1vw,27px)}.brand-lockup{grid-template-columns:minmax(145px,.3fr) minmax(0,1fr);min-height:270px}.footer-art{height:245px}.finale-wordmark{font-size:8.8vw}.finale-tagline{font-size:17px;gap:12px;margin-top:16px}.finale-tagline::before{width:30px}}
@media(max-width:600px){
 .contacts.section{padding-top:64px}
 .contact-finale{gap:39px}
 .contacts .contact-heading h2{font-size:clamp(40px,11vw,58px)}
 .contacts .contact-heading .button{margin-top:26px}
 .contacts .contact-details{display:flex;gap:32px;padding:0}
 .contacts .address{font-size:39px}
 .contacts .direct-contacts>a:first-child{font-size:29px}.contacts .direct-contacts>a:nth-child(2){font-size:25px}
 .brand-lockup{grid-template-columns:1fr;gap:0;min-height:0;margin-top:44px;padding:12px 0 28px;text-align:center}
 .footer-art{height:225px;width:66%;max-width:260px;justify-self:center}
 .finale-wordmark{font-size:12.1vw;line-height:1.14;margin-top:0}
 .finale-signature{padding:0}
 .finale-tagline{font-size:15px;gap:8px;margin-top:12px}
 .finale-tagline::before{width:19px}
 .contacts footer{align-items:flex-start;gap:19px;padding:24px 0 84px}
 .contacts footer>span{font-size:14px;max-width:72%}
}
