/* Location section and address footer, scoped to the homepage. */
.office-section{--ink:#112b3a;--muted:#65747d;--blue:#254ee0;--line:#dbe2e6;background:#f6f7f8;color:var(--ink);padding:72px 28px;margin-bottom:36px}
.office-section>.wrap{width:100%;margin:auto}
.office-section .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:40px}
.office-section .section-head h2{margin-top:16px;max-width:760px;font-size:clamp(35px,3.8vw,54px);font-weight:500;letter-spacing:-.045em;line-height:1.12}
.office-section .section-head>p{max-width:290px;font-size:16px;line-height:1.65;margin:0;color:var(--muted)}
.office-section .eyebrow{font-size:11px;letter-spacing:.15em;font-weight:600;text-transform:uppercase;line-height:1.5;margin:0}
.office-section .blue{color:var(--blue)}
.office-list{margin-top:55px}
.office-row{display:grid;grid-template-columns:1.18fr 1fr;gap:70px;align-items:center;border-top:1px solid #ccd8e0;padding:50px 0}
.office-row:first-child{padding-top:0;border-top:0}
.office-map{position:relative;background:#e8edf0;border:1px solid #cbd7df}
.office-map-static{height:auto;display:block}
.office-map-static>a.static-map-image{position:static;display:block;padding:0;border:0;box-shadow:none;background:none}
.static-map-image img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;image-rendering:auto}
.office-map-static .google-map-footer{position:static;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;background:white;border-top:1px solid #d4dfe5}
.google-map-footer .map-status{padding:0;font-size:10px;line-height:1.6;color:#61798b;background:none;margin:0}
.google-map-footer a{font-size:11px;color:var(--blue);white-space:nowrap}
.office-index{display:flex;justify-content:space-between;color:var(--blue);font-size:10px;letter-spacing:.11em}
.office-copy h3{font-size:45px;font-weight:500;line-height:1.12;margin:24px 0 18px;letter-spacing:-.035em}
.office-copy h3>span{color:#6e8595;font-weight:400}
.office-function{font-size:13px;margin:0 0 22px}
.office-copy address{font-style:normal;font-size:15px;line-height:1.8;color:var(--muted)}
.office-copy address strong{font-weight:500;color:var(--ink)}
footer.locations-footer{display:block}
.locations-footer .footer-locations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;background:#112b3a;border-top:1px solid #38505d;padding:36px 28px 40px;margin-bottom:26px}
.locations-footer .footer-locations .eyebrow{color:#a8c9ff;font-size:10px;letter-spacing:.09em;line-height:1.5;text-transform:uppercase;font-weight:600;margin:0}
.locations-footer .footer-locations address{font-style:normal;color:#c4d2da;font-size:13px;line-height:1.8;margin:14px 0}
.locations-footer .footer-locations address strong{color:white;font-size:15px;font-weight:500}
.locations-footer .footer-locations a{font-size:11px;color:#b7cde6;display:inline-block;padding:5px 0}
.locations-footer .footer-locations a:hover{color:white;text-decoration:underline;text-underline-offset:4px}
.locations-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}
@media(max-width:1150px){.office-row{gap:45px}.office-copy h3{font-size:40px}}
@media(max-width:980px){.office-copy h3{font-size:35px}.office-section .section-head{gap:30px}}
@media(max-width:760px){
  .office-section{padding:40px 18px;margin-bottom:25px}
  .office-section .section-head{display:block;margin-bottom:30px}
  .office-section .section-head h2{font-size:37px}
  .office-section .section-head>p{font-size:15px;margin-top:22px;max-width:none}
  .office-list{margin-top:35px}
  .office-row{grid-template-columns:1fr;gap:28px;padding:36px 0}
  .office-copy h3{font-size:37px;margin-top:17px}
  .office-copy h3 br{display:none}
  .office-copy h3>span{display:block;font-size:28px;margin-top:7px}
  .office-index{font-size:9px}
  .office-function{font-size:12px;margin-bottom:17px}
  .office-copy address{font-size:14px}
  .office-map-static .google-map-footer{padding:14px 12px;gap:9px}
  .google-map-footer a{font-size:10px}
  .google-map-footer .map-status{font-size:9px}
  .locations-footer .footer-locations{grid-template-columns:1fr;gap:25px;padding:30px 20px}
  .locations-footer .footer-locations>div+div{border-top:1px solid #263f4d;padding-top:23px}
  .locations-footer .footer-bottom{display:block}
}
