/* Office addresses use readable, semantic lines at every screen size. */
.office-section{padding:48px 0 88px;border-top:1px solid #d8d8ce;scroll-margin-top:84px}
.office-section-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin-bottom:26px}
.office-section-heading h2{margin:0;font-size:clamp(28px,3.4vw,42px)}
.office-section-meta{font-size:11px;color:#666e63}
.office-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0 0}
.office-section-heading+.office-grid{margin-top:0}
.office-card{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:34px;border:1px solid #354134;border-radius:24px;background:#20291f;color:#f7f5ef}
.office-eyebrow{font-size:11px;font-weight:700;color:#bfcbb7;line-height:1.6}
.office-card h3{margin:16px 0 22px;font-size:clamp(25px,2.6vw,32px);text-wrap:balance}
.office-address{margin:0 0 30px;font-style:normal;font-size:20px;line-height:1.85;text-align:left;color:#f2f4ee;word-break:normal;overflow-wrap:break-word}
.office-address-line{display:block}
.office-address-latin{font-size:15px;line-height:1.9}
.office-address-line+.office-address-line{margin-top:5px}
.office-directions{display:inline-flex;align-items:center;margin-top:auto;padding:12px 19px;border-radius:99px;background:#d7f36b;color:#182417;text-decoration:none;font-size:13px;line-height:1.6;font-weight:700}
.office-directions:hover{background:#e7ff91}
.office-directions:focus-visible,.office-feature a:focus-visible{outline:3px solid #72a278;outline-offset:5px}
.office-feature{margin:24px 0 0;overflow:hidden;border-radius:24px;background:#e8ede3;border:1px solid #d5ddcf}
.office-photo-link{display:block;overflow:hidden;background:#d7e3df}
.office-photo-link img{display:block;width:100%;height:auto;max-height:580px;object-fit:cover;object-position:center 53%}
.office-feature figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px;font-size:13px;line-height:1.7;color:#354431}
.office-feature figcaption a{color:inherit;font-weight:700;text-decoration:none}
.office-feature figcaption a:hover{text-decoration:underline}
.office-contact-link a{color:#345a40}
@media(max-width:800px){
 .office-grid{grid-template-columns:1fr;gap:16px}
 .office-card{padding:28px}
 .office-section{padding:36px 0 60px}
 .office-feature{margin-top:20px}
}
@media(max-width:480px){
 .office-card{padding:26px 22px;border-radius:20px}
 .office-card h3{font-size:26px;margin:14px 0 18px}
 .office-address{font-size:clamp(16px,4.8vw,18px);margin-bottom:24px}
 .office-address-latin{font-size:14px;line-height:1.85}
 .office-feature{border-radius:20px}
 .office-feature figcaption{padding:16px 18px;flex-wrap:wrap;font-size:12px}
}
