/* Shared header/footer for legacy content templates. Content keeps its existing styles. */
.vm-legacy-page .vm-legacy-layout{width:100%;max-width:none;padding:0;margin:0}
.vm-legacy-page .middle{width:calc(100% - 80px);max-width:1160px;margin:32px auto 50px}
.vm-header,.vm-footer{font:18px/1.6 "Segoe UI",Arial,sans-serif;color:#17364b;box-sizing:border-box}
.vm-header *,.vm-footer *{box-sizing:border-box}
.vm-header .vm-shell,.vm-footer.vm-shell{width:calc(100% - 80px);max-width:1160px;margin-inline:auto}
.vm-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid #d9e5ec}
.vm-header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px 30px;padding-block:18px 10px}
.vm-header a,.vm-footer a{color:#245c85;text-underline-offset:4px}
.vm-header a:hover,.vm-footer a:hover{background:transparent;text-decoration:underline}
.vm-header a:focus-visible,.vm-footer a:focus-visible{outline:3px solid #926200;outline-offset:4px}
.vm-header .vm-brand{grid-column:1;grid-row:1;display:block;line-height:1;text-decoration:none}
.vm-header .vm-brand img{display:block;width:300px;max-width:100%;height:auto}
.vm-header .vm-header-phone{grid-column:2;grid-row:1;justify-self:center;font-size:24px;font-weight:600;text-decoration:none;white-space:nowrap}
.vm-header .vm-header-book{grid-column:3;grid-row:1;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;background:#337ab7;color:#fff;border:1px solid #337ab7;border-radius:8px;text-decoration:none;font-size:16px;font-weight:600;line-height:1.4}
.vm-header .vm-header-book:hover{background:#286090}
.vm-header nav{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:center;gap:28px;font-size:18px}
.vm-header nav a{display:inline-flex;align-items:center;min-height:44px;color:#17364b;text-decoration:none}
.vm-footer{border-top:1px solid #d9e5ec;padding-block:28px 45px;display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:16px}
.vm-footer p{margin:7px 0 0;color:#344754}
.vm-footer strong{font-weight:600}
.vm-footer nav{display:flex;flex-wrap:wrap;gap:12px 22px;align-content:start}
.vm-footer .vm-small{font-size:16px;color:#344754}
.vm-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1100px){.vm-header .vm-brand img{width:270px}.vm-header-inner{gap:8px 20px}}
@media(max-width:800px){.vm-header .vm-shell,.vm-footer.vm-shell,.vm-legacy-page .middle{width:calc(100% - 40px)}.vm-header .vm-brand img{width:230px}.vm-header .vm-header-phone{font-size:22px}.vm-header-inner{gap:8px 16px}.vm-header nav{gap:20px;font-size:16px}}
@media(max-width:600px){.vm-header .vm-shell,.vm-footer.vm-shell,.vm-legacy-page .middle{width:calc(100% - 36px)}.vm-header-inner{grid-template-columns:1fr auto;padding-block:12px 8px;gap:8px}.vm-header .vm-brand img{width:200px}.vm-header .vm-header-book{grid-column:2;grid-row:1;font-size:14px;padding:9px 12px}.vm-header .vm-header-phone{grid-column:1/-1;grid-row:2;justify-self:start;font-size:22px}.vm-header nav{grid-row:3;justify-content:flex-start;gap:2px 16px;flex-wrap:wrap;font-size:14px}.vm-header nav a{min-height:32px}.vm-footer{grid-template-columns:1fr;padding-bottom:50px}.vm-legacy-page .middle{margin-block:25px 35px}}
a[href^="tel:"]{white-space:nowrap}
