
/* Contact v2: responsive, editorial layout and clean form integrations */
.sfpc-contact-v2{--sfpc-red:#a71930;--sfpc-black:#141518;--sfpc-border:#e2e4e8;color:#141518}
.sfpc-contact-v2 .sfpc-extra-hero{background:linear-gradient(120deg,#101010,#292020)!important}
.sfpc-contact-v2 .sfpc-extra-hero :is(h1,p,.sfpc-extra-kicker){color:#fff!important;text-align:left!important}
.sfpc-contact-v2 .sfpc-extra-hero p{color:#e8e8e8!important}
.sfpc-contact-main{padding:clamp(75px,9vw,130px) 0;background:#fff}
.sfpc-contact-columns{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(40px,6vw,115px);align-items:start}
.sfpc-contact-information{text-align:left!important;padding-top:16px}
.sfpc-contact-v2 .sfpc-extra-kicker{color:#a71930;font-size:12px;letter-spacing:.16em;font-weight:800;text-align:left!important}
.sfpc-contact-information h2{font-size:clamp(36px,4vw,58px)!important;line-height:1.1!important;letter-spacing:-.045em!important;margin:22px 0!important;color:#141518!important;text-align:left!important}
.sfpc-contact-lead{font-size:18px!important;line-height:1.75!important;color:#1b1b1b!important;max-width:550px;margin:0 0 35px!important;text-align:left!important}
.sfpc-contact-methods{border-top:1px solid var(--sfpc-border)}
.sfpc-contact-method{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid var(--sfpc-border);text-align:left!important}
.sfpc-contact-icon{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;background:#f6eef0;color:#a71930;font-size:22px}
.sfpc-contact-method>div{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.sfpc-contact-method strong{font-size:14px;color:#141518}
.sfpc-contact-method a,.sfpc-contact-method span:not(.sfpc-contact-icon){font-size:18px;font-weight:700;color:#141518!important;overflow-wrap:anywhere;text-decoration:none}
.sfpc-contact-method a:hover{color:#a71930!important}
.sfpc-contact-method small{color:#303030!important;font-size:13px;line-height:1.5}
.sfpc-contact-urgent{margin-top:30px;padding:24px 26px;background:#17191c;color:#fff;border-left:4px solid #a71930;text-align:left!important}
.sfpc-contact-urgent strong{font-size:17px;color:#fff}
.sfpc-contact-urgent p{font-size:14px;line-height:1.65;color:#f1f1f1!important;margin:10px 0!important;text-align:left!important}
.sfpc-contact-urgent a{color:#fff!important;font-weight:800;text-decoration:none}
.sfpc-contact-form-card{background:#f7f7f8;border:1px solid #e5e5e5;padding:clamp(28px,4vw,55px);position:relative;box-shadow:0 22px 70px rgba(10,10,15,.075);text-align:left!important}
.sfpc-contact-form-accent{position:absolute;top:0;left:0;width:85px;height:5px;background:#a71930}
.sfpc-contact-form-card h2{font-size:clamp(30px,3vw,43px)!important;line-height:1.15!important;letter-spacing:-.035em!important;margin:14px 0!important;color:#141518!important;text-align:left!important}
.sfpc-contact-form-card>p{font-size:16px!important;color:#1b1b1b!important;line-height:1.65!important;margin-bottom:28px!important;text-align:left!important}
.sfpc-contact-form-empty{border:1px dashed #b5b8be;background:#fff;padding:42px 25px;text-align:left!important}
.sfpc-contact-form-empty strong{font-size:20px;color:#151515}
.sfpc-contact-form-empty p{font-size:15px!important;color:#242424!important;line-height:1.65!important;text-align:left!important}
.sfpc-contact-form-empty span{font-size:12px;color:#555}
.sfpc-contact-embedded-form :is(input:not([type=checkbox]):not([type=radio]),select,textarea){box-sizing:border-box!important;width:100%!important;max-width:100%!important;background:#fff!important;color:#111!important;border:1px solid #c9cbd0!important;border-radius:2px!important;min-height:49px!important;padding:12px 15px!important;box-shadow:none!important}
.sfpc-contact-embedded-form :is(label,legend){color:#111!important;font-weight:650!important;font-size:14px!important}
.sfpc-contact-embedded-form textarea{min-height:125px!important}
.sfpc-contact-embedded-form :is(button[type=submit],input[type=submit],.gform_button,.wpforms-submit){background:#a71930!important;color:#fff!important;border:0!important;border-radius:2px!important;padding:16px 26px!important;font-weight:800!important;min-height:50px!important;cursor:pointer}
.sfpc-contact-embedded-form :is(button[type=submit],input[type=submit],.gform_button,.wpforms-submit):hover{background:#861126!important}
.sfpc-contact-locations{padding:90px 0 110px;background:#f2f3f5}
.sfpc-contact-section-head{text-align:left!important;max-width:780px;margin-bottom:40px}
.sfpc-contact-section-head h2{font-size:clamp(34px,3.5vw,48px)!important;color:#141518!important;letter-spacing:-.035em!important;line-height:1.15!important;margin:14px 0!important;text-align:left!important}
.sfpc-contact-section-head p{color:#171717!important;font-size:17px!important;line-height:1.65!important;text-align:left!important}
.sfpc-contact-location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sfpc-contact-location-grid article{background:#fff;border:1px solid #dfe1e5;border-bottom:3px solid #a71930;padding:32px 30px;min-height:195px;text-align:left!important}
.sfpc-contact-location-mark{font-size:26px;color:#a71930}
.sfpc-contact-location-grid h3{font-size:21px!important;line-height:1.3!important;color:#151515!important;text-align:left!important;margin:18px 0 12px!important}
.sfpc-contact-location-grid p{font-size:14px!important;line-height:1.6!important;color:#171717!important;text-align:left!important}
@media(max-width:900px){.sfpc-contact-columns{grid-template-columns:1fr;gap:45px}.sfpc-contact-location-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sfpc-contact-main{padding:60px 0}.sfpc-contact-locations{padding:65px 0}.sfpc-contact-location-grid{grid-template-columns:1fr}.sfpc-contact-method{gap:13px}}

/* v1.0.3: replace crosshair location glyph with consistent map-pin SVG. */
.sfpc-contact-icon .sfpc-map-pin,.sfpc-contact-location-mark .sfpc-map-pin{display:block;width:24px;height:24px;color:#a71930;flex-shrink:0}
.sfpc-contact-location-mark{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;background:#f6eef0;border-radius:8px}
.sfpc-contact-location-mark .sfpc-map-pin{width:26px;height:26px}
