/* Contact Us page (page-contact-us.php). Loads after about-us.css. Scoped to .ct. */

/* hero: compass close-up, shorter hero, photo boxed right */
.w54.ct .hero{min-height:min(600px,78vh)}
.w54.ct .hero::before{background-image:url(/wp-content/uploads/2016/09/Contact-Banner-New.jpg);background-position:40% 50%;width:72%}
.w54.ct .fig-n{white-space:nowrap}

/* map + address */
.ct .ct-visit{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;margin-top:40px;align-items:stretch}
@media (max-width:860px){.ct .ct-visit{grid-template-columns:1fr}}
.ct .ct-map{position:relative;min-height:380px;border-radius:6px;overflow:hidden;border:1px solid var(--line);background:var(--line)}
.ct .ct-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ct .ct-where{background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:6px;padding:26px 28px;display:flex;flex-direction:column;gap:12px}
.ct .ct-where h3{font-size:24px}
.ct .ct-addr{font-size:16px;line-height:1.55}
.ct .ct-addr a{color:var(--accent-ink);font-weight:700}
.ct .ct-dl{margin:6px 0 0;border-top:1px solid var(--line)}
.ct .ct-dl div{padding:12px 0;border-bottom:1px solid var(--line)}
.ct .ct-dl dt{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ct .ct-dl dd{margin:4px 0 0;font-size:15px;line-height:1.5}

/* department cards */
.ct .ct-depts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
@media (max-width:860px){.ct .ct-depts{grid-template-columns:1fr}}
.ct .ct-depts .more{text-decoration:none;word-break:break-word}

/* brokers by region */
.ct .ct-region{font-family:var(--f-mono);font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:40px 0 0;padding-bottom:10px;border-bottom:1px solid var(--line)}
.ct .ct-team{display:flex;flex-wrap:wrap;margin-top:18px}
.ct .ct-team .mate{flex:0 0 calc(20% - 16px);background:var(--bg)}
@media (max-width:1000px){.ct .ct-team .mate{flex-basis:calc(33.333% - 14px)}}
@media (max-width:640px){.ct .ct-team .mate{flex-basis:calc(50% - 10px)}}
.ct a[href^="tel:"]{white-space:nowrap}

/* single-broker regions side by side */
.ct .ct-others{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}
@media (max-width:760px){.ct .ct-others{grid-template-columns:1fr}}
.ct .ct-others .ct-team .mate{flex:0 0 100%;max-width:280px}
@media (max-width:760px){.ct .ct-others .ct-team .mate{max-width:none;flex-basis:calc(50% - 10px)}}
.ct #brokers .mate{background:var(--bg)}
