.contact-hero{background:linear-gradient(125deg,#fff9fa 0%,#fff0f5 60%,#f8dbe5 100%)}
.contact-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;padding-block:92px}
.contact-hero h1{font-size:clamp(34px,3.8vw,50px);color:#271d24;margin-bottom:22px}
.contact-hero p:not(.eyebrow){font-size:18px;color:#54454d;max-width:640px}
.contact-hero .button{margin-top:15px}
.contact-phone-card{padding:44px 38px;background:#fff;border-top:6px solid #d21d49;box-shadow:12px 12px 0 #edb9ca}
.contact-phone-card span{display:block;color:#a92950;font-size:15px;font-weight:600;margin-bottom:18px}
.contact-phone-card>a{display:block;color:#2b1f27;font-size:clamp(30px,3.5vw,45px);font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap}
.contact-phone-card>a:hover{text-decoration:underline}
.contact-phone-card p{font-size:16px!important;color:#62535c!important;margin:22px 0 0}
.contact-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.contact-topic-grid article{padding:28px;background:#fff;border:1px solid #ead4dc;border-top:4px solid #d21d49}
.contact-topic-grid span{display:block;color:#b4224b;font-size:14px;font-weight:600;margin-bottom:20px}
.contact-topic-grid h3{font-size:21px;color:#2b2027;margin-bottom:12px}
.contact-topic-grid p{font-size:16px;color:#5a4c54;margin:0}
.contact-region{padding-block:80px;background:#fff7f9}
.contact-region-grid{display:flex;justify-content:space-between;align-items:center;gap:35px}
.contact-region-grid>div{max-width:740px}
.contact-region h2{font-size:clamp(28px,2.6vw,36px);color:#281c24;margin-bottom:17px}
.contact-region p:not(.eyebrow){font-size:17px;color:#594a52;margin:0}
.contact-region .text-link{flex:none}
.contact-region+.final-cta{margin-top:75px}
@media(max-width:900px){.contact-hero-grid{gap:30px}.contact-phone-card{padding:32px 28px}.contact-topic-grid{grid-template-columns:1fr}}
@media(max-width:700px){.contact-hero-grid{grid-template-columns:1fr;padding-block:65px}.contact-hero p:not(.eyebrow){font-size:16px}.contact-phone-card{max-width:540px}.contact-region{padding-block:65px}.contact-region-grid{align-items:flex-start;flex-direction:column}.contact-region p:not(.eyebrow){font-size:16px}.contact-region+.final-cta{margin-top:60px}}
@media(max-width:430px){.contact-phone-card>a{font-size:30px}.contact-phone-card{padding:27px 22px}}
