.branch-landing { color: #161a1f; }
.branch-landing p { font-size: 16px; line-height: 1.65; color: #4d5d68; }
.branch-landing .section { padding-block: 48px; }
.branch-landing h2 { font-size: clamp(30px, 3.3vw, 44px); line-height: 1.12; letter-spacing: -1.5px; font-weight: 660; }
.branch-hero { padding: 24px 0 36px; background: linear-gradient(#f5f9fc, #fff); }
.branch-hero .breadcrumbs { margin-bottom: 18px; }
.branch-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 36px; min-height: 520px; }
.branch-hero-copy { min-width: 0; }
.branch-hero h1 { margin: 14px 0 18px; font-size: clamp(42px, 4.2vw, 60px); line-height: 1.06; letter-spacing: -2.7px; font-weight: 690; }
.branch-hero h1 span { color: #258bc9; }
.branch-hero-copy > p { max-width: 580px; margin: 0; }
.branch-trust { display: flex; flex-wrap: wrap; gap: 9px 18px; margin: 20px 0; }
.branch-trust li { font-size: 13px; color: #3c5564; }
.branch-trust li::before { content: '✓'; margin-right: 7px; color: #268953; font-weight: 750; }
.branch-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.branch-route-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; color: #197fb9; font-size: 14px; font-weight: 670; }
.branch-hero-address { display: grid; gap: 5px; margin-top: 22px; padding-top: 16px; border-top: 1px solid #dfe8ee; }
.branch-hero-address strong { font-size: 17px; }
.branch-hero-address > span { color: #526572; font-size: 14px; }
.branch-hero-photo { position: relative; min-width: 0; height: 490px; border-radius: 26px; overflow: hidden; background: #e9eef1; }
.branch-hero-photo img { width: 100%; height: 100%; object-fit: cover; }
.branch-hero-photo figcaption { position: absolute; left: 18px; right: 18px; bottom: 18px; display: grid; gap: 5px; padding: 17px 19px; border: 1px solid #ffffff80; border-radius: 17px; background: #ffffffed; color: #1d3546; }
.branch-hero-photo figcaption > span { font-size: 12px; color: #487189; }
.branch-hero-photo figcaption strong { font-size: 17px; }
.branch-direction-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.branch-direction { display: flex; flex-direction: column; min-width: 0; padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: #fff; transition: border-color .2s, background .2s; }
.branch-direction:hover { background: #f6fbfe; border-color: #a5d2ee; }
.branch-direction h3 { font-size: 21px; font-weight: 680; letter-spacing: -.5px; }
.branch-direction p { margin: 8px 0 18px; font-size: 14px; }
.branch-direction > span { margin-top: auto; font-size: 13px; color: #207eb4; font-weight: 650; }
.branch-direction i { font-style: normal; }
.branch-pricing, .branch-benefits, .branch-seo { background: #f5f8fa; }
.branch-model-label { display: grid; gap: 7px; min-width: 250px; color: #526572; font-size: 13px; }
.branch-model-label select { padding: 12px 14px; color: #1d3546; background: #fff; border: 1px solid #d7e3eb; border-radius: 12px; }
.branch-table-wrap { overflow: hidden; border: 1px solid #dce5eb; border-radius: 20px; background: #fff; }
.branch-price-table { width: 100%; border-collapse: collapse; text-align: left; }
.branch-price-table caption { padding: 20px 24px; text-align: left; font-size: 18px; font-weight: 680; color: #23648b; background: #edf7fd; }
.branch-price-table th, .branch-price-table td { padding: 16px 24px; border-bottom: 1px solid #e7edf1; font-size: 16px; }
.branch-price-table thead th { font-size: 13px; color: #526572; font-weight: 600; }
.branch-price-table tbody th { font-weight: 550; }
.branch-price-table td:last-child { white-space: nowrap; font-weight: 680; }
.branch-price-table tr:last-child > * { border-bottom: 0; }
.branch-price-note { max-width: 760px; margin: 18px 0 22px; }
.branch-contact-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 48px; }
.branch-contact-copy h2 { margin: 12px 0 24px; }
.branch-contact-copy dl { display: grid; gap: 12px; }
.branch-contact-copy dl > div { display: grid; grid-template-columns: 92px 1fr; gap: 10px; }
.branch-contact-copy dt { font-size: 14px; color: #68717d; }
.branch-contact-copy dd { margin: 0; font-size: 16px; font-weight: 550; }
.branch-contact-copy dd a { color: #1676ac; }
.branch-contact-copy p { margin: 22px 0; }
.branch-landing .branch-map { min-width: 0; }
.branch-landing .branch-map-frame { position: relative; height: 330px; min-height: 0; border-radius: 22px; overflow: hidden; background: #eef5f9; }
.branch-landing .branch-map-frame iframe { width: 100%; height: 100%; border: 0; }
.branch-landing .branch-map-placeholder { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 26px; text-align: center; background: radial-gradient(ellipse at center, #fff, #eef5f9); }
.branch-landing .branch-map-placeholder > strong { font-size: 21px; }
.branch-landing .branch-map-placeholder > span:not(.branch-map-pin) { color: #506675; font-size: 14px; }
.branch-map-pin { width: 50px; height: 50px; border-radius: 15px; background: #deedf7; color: #1f7bb2; font-size: 34px; line-height: 50px; }
.branch-landing .branch-map-placeholder small { max-width: 330px; font-size: 11px; color: #647b8b; line-height: 1.5; }
.branch-map-placeholder small a { text-decoration: underline; }
.branch-landing .branch-map.is-loaded .branch-map-placeholder { display: none; }
.branch-benefit-grid, .branch-process { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.branch-benefit-grid article > span, .branch-process li > span { display: block; color: #268bc7; font-size: 14px; font-weight: 700; margin-bottom: 14px; }
.branch-benefit-grid h3, .branch-process h3 { font-size: 20px; line-height: 1.25; font-weight: 650; letter-spacing: -.5px; }
.branch-benefit-grid p, .branch-process p { margin-top: 10px; }
.branch-process li { padding-top: 18px; border-top: 2px solid #c8e4f4; }
.branch-seo-inner { max-width: 1180px; }
.branch-seo-inner > h2 { margin: 12px 0 26px; }
.branch-seo-copy { columns: 2; column-gap: 48px; }
.branch-seo-copy h2 { font-size: 24px; letter-spacing: -.7px; }
.branch-seo-copy h3 { font-size: 21px; font-weight: 650; margin-top: 23px; }
.branch-seo-copy p { margin: 12px 0; }
.branch-seo-copy ul { padding-left: 20px; list-style: disc; }
.branch-seo-copy li { color: #4d5d68; font-size: 16px; line-height: 1.7; }
.branch-final-cta { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 30px; padding: 34px; border: 1px solid #cde4f3; border-radius: 25px; background: #eaf6fd; }
.branch-final-cta h2 { margin-top: 10px; max-width: 720px; }
.branch-final-cta p { max-width: 700px; margin: 14px 0 18px; }
.branch-final-cta strong { font-size: 14px; color: #526572; }
.branch-final-cta .branch-actions { flex-direction: column; align-items: stretch; }
@media (max-width: 1020px) {
  .branch-hero h1 { font-size: 48px; }
  .branch-hero-grid { gap: 26px; }
  .branch-direction-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .branch-benefit-grid, .branch-process { grid-template-columns: 1fr 1fr; }
  .branch-contact-grid { gap: 28px; }
  .branch-final-cta { grid-template-columns: 1fr; }
  .branch-final-cta .branch-actions { flex-direction: row; }
}
@media (max-width: 760px) {
  .branch-landing .section { padding-block: 32px; }
  .branch-hero { padding-block: 20px 26px; }
  .branch-hero-grid { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 24px; }
  .branch-hero h1 { font-size: clamp(36px, 8.7vw, 48px); letter-spacing: -1.7px; }
  .branch-hero-photo { height: 270px; }
  .branch-trust { gap: 8px 12px; margin-block: 16px; }
  .branch-hero-address { margin-top: 16px; }
  .branch-direction-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .branch-direction { padding: 18px; }
  .branch-model-label { width: 100%; min-width: 0; }
  .branch-pricing .section-heading { align-items: stretch; flex-direction: column; }
  .branch-price-table caption { padding: 16px; font-size: 17px; }
  .branch-price-table th, .branch-price-table td { padding: 13px 10px; font-size: 13px; }
  .branch-price-table th:first-child { width: 48%; }
  .branch-price-table td:last-child { font-size: 14px; }
  .branch-contact-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .branch-landing .branch-map-frame { height: 280px; }
  .branch-seo-copy { columns: 1; }
  .branch-process { grid-template-columns: 1fr; gap: 20px; }
  .branch-final-cta { padding: 24px; }
  .branch-landing h2 { font-size: 32px; letter-spacing: -1px; }
}
@media (max-width: 430px) {
  .branch-hero-copy > .branch-actions { display: grid; grid-template-columns: 1fr; }
  .branch-direction h3 { font-size: 19px; }
  .branch-direction p { font-size: 13px; }
  .branch-benefit-grid { grid-template-columns: 1fr; gap: 24px; }
  .branch-hero-address > span { font-size: 13px; }
  .branch-final-cta .branch-actions { display: grid; grid-template-columns: 1fr; }
}
