/* The shared masthead is deliberately loaded last, after the theme palette. */
.topline{background:#eee1c4;color:#72552d;border:0;padding:9px max(38px,calc((100vw - 1370px)/2));font-size:9px;line-height:1.5;letter-spacing:1.35px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.topline>a{font-size:11px;letter-spacing:.15px;color:#742b3d;white-space:nowrap}.topline>a>span{margin-left:12px}
.header{position:relative;z-index:100;isolation:isolate;display:block;overflow:visible;min-height:0;padding:0;background:#742b3d;border:0;border-bottom:2px solid #c2a05b;box-shadow:0 7px 24px #4515250c}
.header::after{display:none}
.header-masthead{max-width:1446px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:35px;padding:25px 38px 26px}
.header-signature{margin:0;padding-left:17px;border-left:1px solid #d4af6c70;color:#e8d4ba;font:17px/1.6 Georgia,'Times New Roman',serif}
.header-signature>em{display:block;color:#ecd298;font-size:21px;font-weight:400}
.header .brand{display:flex;align-items:center;justify-content:center;gap:19px;max-width:none;min-width:0;color:#fff5e6}
.header .brand>img{display:block;width:92px;height:92px;flex:0 0 92px;object-fit:cover;border-radius:50%;background:#fff8e8;padding:2px;border:1px solid #e9cb87;box-shadow:0 0 0 5px #d9b46b14,0 0 0 6px #e5c17d38;filter:none}
.header .brand>span{display:block;font:35px/1.18 Georgia,'Times New Roman',serif;letter-spacing:-.7px;color:#fff7e9;max-width:none;text-align:left}
.header .brand small{display:block;font:8px/1.5 'DM Sans',Arial,sans-serif;font-weight:400;color:#e3c995;letter-spacing:2.1px;margin-top:11px}
.header-assist{justify-self:end;text-align:right;display:flex;flex-direction:column;gap:4px}
.header-assist>span{font-size:8px;letter-spacing:1.6px;color:#dfc28d}
.header-assist>a{font:23px/1.4 Georgia,'Times New Roman',serif;color:#fff3dc;letter-spacing:.5px}
.header-assist>a:hover{color:#f1d49b}
.header-navrow{border-top:1px solid #d5b17138;background:#642337}
.header-navinner{max-width:1446px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:10px 38px;min-height:65px;overflow:visible}
.header-navnote{display:flex;align-items:center;gap:11px;color:#dec297;font-size:8px;letter-spacing:1.6px;white-space:nowrap}
.header-navnote>span{font:23px Georgia;color:#e2bf7b}
.header #navigation{display:flex;align-items:center;justify-content:center;gap:10px;margin:0;padding:0;border:0;width:auto;font-size:16px;color:#fff4e5}
.header #navigation>a,.header .services-toggle{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;padding:10px 18px;border:1px solid transparent;border-radius:24px;background:transparent;color:#f7e9dc;font:400 16px/1.4 'DM Sans',Arial,sans-serif;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.header #navigation>a::after,.header .services-toggle::after{display:none}
.header #navigation>a:hover,.header .services-toggle:hover{background:#fff2d80c;color:#f2d69d}
.header #navigation>a[aria-current],.header .current-service>.services-toggle,.header .services-toggle[aria-expanded=true]{border-color:#d4af6c65;background:#e5c17d12;color:#f1d49b}
.header .header-button{display:inline-flex;align-items:center;gap:20px;border-radius:30px;padding:7px 8px 7px 20px;min-height:43px;background:#ecd198;border:1px solid #e8c680;color:#622235;font:500 12px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.15px;white-space:nowrap;box-shadow:none}
.header .header-button>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#742b3d;color:#ffeac1;font:17px Arial}
.header .header-button:hover{background:#f7dfa9;border-color:#f7dfa9;color:#622235;transform:none;box-shadow:none}
.header .menu{display:none}
.header .services-nav{position:relative;display:block}
.dropdown-chevron{display:block;width:14px;height:14px;flex:0 0 14px;transform-origin:center;transition:transform .2s}
.services-toggle[aria-expanded=true]>.dropdown-chevron{transform:rotate(180deg)}
.header .services-menu{position:absolute;z-index:20;display:grid;grid-template-columns:1fr 1fr;gap:13px 28px;left:50%;top:calc(100% + 11px);transform:translateX(-50%);width:510px;min-width:0;max-height:min(510px,calc(100vh - 245px));overflow-y:auto;padding:24px 26px 0;margin:0;background:#fffdf6;color:#554331;border:1px solid #dac292;border-top:3px solid #c2a05b;border-radius:0 0 7px 7px;box-shadow:0 18px 40px #3b12272e}
.header .services-menu[hidden]{display:none!important}
.header .menu-heading{display:block;border:0;margin:0 0 12px;padding:0;font:500 9px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:1.7px;color:#977237}
.header .service-menu-group>a{display:block;padding:9px 0;margin:0;color:#5d4a38;font:400 14px/1.5 'DM Sans',Arial,sans-serif;white-space:normal;border:0}
.header .service-menu-group>a:hover{color:#742b3d;background:transparent;text-decoration:underline;text-decoration-color:#bea36e;text-underline-offset:5px}
.header .services-menu>.all-services{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:15px 26px;margin:3px -26px 0;background:#f3ead6;border-top:1px solid #e3d0aa;color:#742b3d;font:500 11px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.2px}
.header .services-menu>.all-services:hover{background:#ecdfc3}
.header a:focus-visible,.header button:focus-visible{outline:2px solid #ffe3a7;outline-offset:4px}
.header .services-menu a:focus-visible{outline-color:#742b3d}
@media(max-width:1200px){.header-masthead{gap:24px;padding:24px 32px}.header-signature{font-size:15px}.header-signature>em{font-size:18px}.header .brand>span{font-size:31px}.header .brand>img{width:84px;height:84px;flex-basis:84px}.header .brand small{font-size:7px;letter-spacing:1.7px}.header-assist>a{font-size:21px}.header-assist>span{font-size:7px;letter-spacing:1px}.header-navinner{padding-left:32px;padding-right:32px;gap:17px}.header-navnote{font-size:6px;letter-spacing:1px}.header #navigation{gap:4px}.header #navigation>a,.header .services-toggle{padding:10px 14px}}
@media(min-width:901px) and (max-width:1040px){.header-signature{display:none}.header-masthead{grid-template-columns:1fr auto}.header .brand{justify-content:flex-start}.header-navnote{display:none}.header #navigation{margin-right:auto}.header .brand>span{font-size:33px}}
@media(max-width:900px){.header-masthead{display:flex;justify-content:center;padding:23px 30px;gap:0}.header-signature,.header-assist{display:none}.header .brand{gap:18px;justify-content:center}.header .brand>img{width:84px;height:84px;flex-basis:84px}.header .brand>span{font-size:33px;max-width:none}.header .brand small{font-size:8px;letter-spacing:1.8px}.header-navinner{flex-wrap:wrap;gap:0 20px;padding:11px 30px;min-height:59px}.header-navnote{font-size:8px;letter-spacing:1.2px}.header-navnote>span{font-size:20px}.header .header-button{display:none}.header .menu{display:flex;align-items:center;gap:11px;background:transparent;border:1px solid #c5a46c80;border-radius:25px;color:#f7e7d0;font:400 12px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.2px;padding:9px 13px;min-height:36px;margin-left:auto}.menu-icon{display:block;position:relative;width:17px;height:14px}.menu-icon>i{position:absolute;left:0;top:4px;width:17px;height:1px;background:currentColor;transition:transform .2s}.menu-icon>i+i{top:10px}.menu[aria-expanded=true] .menu-icon>i:first-child{transform:translateY(3px) rotate(45deg)}.menu[aria-expanded=true] .menu-icon>i:last-child{transform:translateY(-3px) rotate(-45deg)}.header #navigation{display:none;width:100%;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:5px;padding:17px 0 8px;margin:12px 0 0;border-top:1px solid #dab9743d;font-size:16px}.header #navigation.open{display:flex}.header #navigation>a,.header .services-toggle{font-size:16px;line-height:1.5;justify-content:flex-start;padding:12px 14px;border-radius:5px}.header .services-toggle{width:100%;justify-content:space-between}.dropdown-chevron{margin-right:0}.header .services-menu{position:static;transform:none;width:100%;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;padding:22px 22px 0;margin:10px 0;border:1px solid #dbbf84;border-top:2px solid #d6b675;border-radius:4px;overflow:visible;box-shadow:none}.header .service-menu-group>a{font-size:14px;padding:10px 0}.header .menu-heading{font-size:8px;margin-bottom:10px}.header .services-menu>.all-services{padding:14px 22px;margin-left:-22px;margin-right:-22px;font-size:12px}}
@media(max-width:650px){.topline{padding:8px 18px;font-size:7px;letter-spacing:1px;justify-content:center}.topline>a{display:none}.header-masthead{padding:23px 20px}.header .brand{gap:15px;width:auto;max-width:100%;justify-content:center}.header .brand>img{width:76px;height:76px;flex-basis:76px;padding:2px}.header .brand>span{font-size:28px;letter-spacing:-.6px;line-height:1.15;max-width:280px}.header .brand small{font-size:8px;line-height:1.7;letter-spacing:1.1px;margin-top:9px}.header-navinner{padding:10px 20px;min-height:58px;gap:0 12px}.header-navnote{font-size:8px;letter-spacing:.9px;gap:9px}.header-navnote>span{font-size:19px}.header .menu{font-size:11px;padding:8px 12px;gap:9px;min-height:35px}.header #navigation{padding-top:14px;margin-top:10px}.header .services-menu{grid-template-columns:1fr;gap:20px;padding:21px 22px 0}.header .service-menu-group>a{font-size:14px;padding:10px 0}.header .service-menu-group+.service-menu-group{padding-top:18px;border-top:1px solid #e5d4b3}.header .services-menu>.all-services{margin-top:0}.header #navigation>a,.header .services-toggle{padding:11px 12px}.header .menu-heading{font-size:8px}}
@media(max-width:390px){.header-masthead{padding:21px 17px}.header .brand{gap:12px}.header .brand>img{width:68px;height:68px;flex-basis:68px}.header .brand>span{font-size:25px;max-width:230px}.header .brand small{font-size:7px;letter-spacing:.8px}.header-navinner{padding:9px 17px}.header-navnote{font-size:7px;letter-spacing:.8px;gap:8px}.header .menu{font-size:10px;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){.header *{transition:none!important}}

/* A compact, sticky navigation replaces the tall two-row masthead. */
html{scroll-padding-top:110px}
.topline{padding-top:6px;padding-bottom:6px;font-size:8px}
.header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:24px;min-height:94px;max-width:none;padding:10px max(38px,calc((100vw - 1370px)/2));background:#742b3d;box-shadow:0 5px 20px #3d14221c;overflow:visible}
.header-masthead,.header-navrow,.header-navinner{display:contents;max-width:none;padding:0;margin:0;min-height:0;border:0;background:none}
.header-signature,.header-assist,.header-navnote{display:none}
.header .brand{justify-content:flex-start;gap:14px;flex:0 1 auto;min-width:0;max-width:none}
.header .brand>img{width:72px;height:72px;flex:0 0 72px;box-shadow:0 0 0 3px #d9b46b14,0 0 0 4px #e5c17d38}
.header .brand>span{font-size:29px;line-height:1.15;max-width:none}
.header .brand small{font-size:7px;letter-spacing:1.5px;margin-top:7px}
.header #navigation{flex:0 0 auto;margin:0 0 0 auto;gap:4px;width:auto}
.header #navigation>a,.header .services-toggle{padding:10px 14px;font-size:16px}
.header .header-button{flex-shrink:0;font-size:12px;min-height:41px;padding:6px 7px 6px 17px;gap:15px}
.header .services-menu{top:calc(100% + 23px);max-height:calc(100vh - 115px);max-height:calc(100dvh - 115px)}
.service-grid article[id]{scroll-margin-top:12px}
@media(min-width:901px) and (max-width:1250px){.header{padding:10px 28px;min-height:90px;gap:20px}.header .brand>img{width:68px;height:68px;flex-basis:68px}.header .brand>span{font-size:27px}.header .brand{gap:12px}.header .brand small{font-size:6px;letter-spacing:1.2px}.header #navigation>a,.header .services-toggle{padding:10px 12px}.header .header-button{display:none}}
@media(min-width:901px) and (max-width:1040px){.header{padding-left:24px;padding-right:24px;gap:16px}.header .brand>span{font-size:25px}.header #navigation{gap:1px}.header #navigation>a,.header .services-toggle{padding-left:10px;padding-right:10px}}
@media(max-width:900px){html{scroll-padding-top:98px}.topline{display:none}.header{flex-wrap:wrap;justify-content:space-between;gap:0 18px;padding:10px 24px;min-height:86px}.header .brand{margin-right:auto;max-width:calc(100% - 89px);gap:13px}.header .brand>img{width:64px;height:64px;flex-basis:64px}.header .brand>span{font-size:27px;line-height:1.15;max-width:none}.header .brand small{display:none}.header .menu{display:flex;margin:0;min-height:39px;padding:9px 13px;font-size:12px;gap:10px;flex-shrink:0}.header .header-button{display:none}.header #navigation{display:none;flex:0 0 100%;width:100%;min-height:0;margin:9px 0 0;padding:12px 2px 4px;border-top:1px solid #dab9743d;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;scroll-padding:10px}.header #navigation.open{display:flex}.header #navigation>a,.header .services-toggle{font-size:16px;padding:11px 12px;flex-shrink:0}.header .services-nav{flex-shrink:0}.header .services-menu{position:static;top:auto;left:auto;transform:none;width:100%;max-height:none;overflow:visible;grid-template-columns:1fr 1fr;margin:10px 0;border-radius:4px}.header .service-menu-group+.service-menu-group{padding-top:0;border-top:0}.header a:focus-visible,.header button:focus-visible{outline-offset:2px}}
@media(max-width:650px){.header{padding:10px 18px;gap:0 12px;min-height:86px}.header .brand{gap:12px;max-width:calc(100% - 82px)}.header .brand>img{width:64px;height:64px;flex-basis:64px}.header .brand>span{font-size:24px;letter-spacing:-.5px;max-width:none}.header .menu{font-size:11px;min-height:39px;padding:9px 12px}.header .services-menu{grid-template-columns:1fr;gap:18px;padding:20px 20px 0}.header .service-menu-group+.service-menu-group{padding-top:16px;border-top:1px solid #e5d4b3}.header .services-menu>.all-services{margin-left:-20px;margin-right:-20px;padding:14px 20px}}
@media(max-width:390px){.header{padding:10px 14px;gap:0 10px}.header .brand{gap:10px;max-width:calc(100% - 76px)}.header .brand>img{width:62px;height:62px;flex-basis:62px}.header .brand>span{font-size:22px}.header .menu{font-size:10px;padding:9px 10px;gap:8px}}
@media(max-width:900px){.header{display:grid;grid-template-columns:minmax(0,1fr) auto}.header .brand{grid-column:1;grid-row:1;max-width:none;width:auto;margin:0}.header .brand>span{min-width:0}.header .menu{grid-column:2;grid-row:1}.header #navigation{grid-column:1/-1;grid-row:2}}

/* Each header branch name links to its verified Google Maps place. */
.topline-locations>a{font:inherit;letter-spacing:inherit;color:inherit;text-decoration:underline;text-decoration-color:#b4904870;text-underline-offset:3px}.topline-locations>a:hover{text-decoration-color:currentColor}.topline-locations>a:focus-visible{outline:2px solid #742b3d;outline-offset:3px}

/* Verified social profiles sit beside the main menu. */
.header .header-social{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex:0 0 auto;gap:8px;width:auto;min-width:0;margin:0;padding:0;border:0}
.header .header-social>a{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;min-height:0;padding:0;border:1px solid #d2b06d80;border-radius:50%;color:#edce93;background:transparent;line-height:1;text-decoration:none;transition:background .2s,border-color .2s}
.header .header-social>a::after{display:none}
.header .header-social svg{display:block;width:18px;height:18px}
.header .header-social>a:hover{background:#ffffff12;border-color:#edce93;color:#fff3d9}
.header .header-social>a:focus-visible{outline:2px solid #edce93;outline-offset:3px}
@media(max-width:900px){.header .header-social{display:none}.header #navigation.open{max-height:calc(100vh - 165px);max-height:calc(100dvh - 165px)}.header #navigation.open+.header-social{display:flex;grid-column:1/-1;grid-row:3;gap:10px;margin:5px 0 0;padding:12px 12px 5px;border-top:1px solid #dab9743d}.header .header-social>a{flex-basis:36px;width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.header .header-social>a{transition:none}}