/* Shared public navigation; independent of the embedded pricing form. */
.header{position:sticky;top:0;z-index:60;box-shadow:0 1px 0 #ffffff0a}
.header .brand-logo{object-fit:contain}
.header .header-actions{gap:24px}
.header .nav-menu summary{border:1px solid #64715a;border-radius:6px;padding:10px 14px;min-height:44px;gap:14px;white-space:nowrap;font-size:.8125rem;transition:background .15s}
.header .nav-menu summary:hover,.header .nav-menu[open] summary{background:#263523}
.header .nav-menu summary::after{content:'';width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px;font-size:inherit}
.header .nav-menu[open] summary::after{transform:rotate(225deg);margin-top:4px}
.header .nav-menu .menu-panel{position:absolute;right:-110px;top:calc(100% + 16px);width:350px;max-width:calc(100vw - 32px);padding:24px;background:#faf9f3;color:#18231a;border:1px solid #d4dcc9;border-radius:10px;box-shadow:0 18px 45px #0d120f30;max-height:calc(100dvh - 130px);overflow:auto;z-index:70}
.header .nav-menu:not([open]) .menu-panel{display:none}
.menu-label{font-size:.6875rem;font-weight:700;letter-spacing:.13em;color:#78856b;margin:0 0 12px;line-height:1.5}
.header .nav-menu .menu-panel>.menu-label:not(:first-child){margin-top:22px}
.header .nav-menu .menu-panel nav{position:static;display:grid;width:auto;max-width:none;max-height:none;overflow:visible;gap:0;padding:0;background:transparent;color:inherit;border:0;box-shadow:none}
.header .nav-menu .menu-panel nav>a{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:44px;padding:12px 0;border-bottom:1px solid #e2e6d9;line-height:1.4;font-size:.875rem;font-weight:500}
.header .nav-menu .menu-panel nav>a:last-child{border:0}
.header .nav-menu .menu-panel nav>a>span{color:#a76634;font-weight:400}
.header .nav-menu .menu-panel nav>a:hover{color:#39522c;background:transparent;text-decoration:underline;text-underline-offset:4px}
.header .button.small{border-radius:6px;min-height:44px}
main section[id]{scroll-margin-top:120px}
.site-footer{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px 8%;padding:58px max(5%,calc((100% - 1296px)/2)) 25px!important;align-items:start}
.site-footer .brand{font-size:1.65rem}
.site-footer .footer-brand>p{color:#bfc9b4;font-size:.875rem;line-height:1.85;margin:20px 0}
.site-footer .footer-contact{font-size:.875rem;color:#f3eadc;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.site-footer .menu-label{color:#b4c1a4;margin-bottom:14px}
.site-footer nav{display:grid!important;gap:0!important;align-items:start;font-weight:400!important;font-size:.8125rem}
.site-footer nav a{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;padding:10px 0;color:#e2e7d8;line-height:1.5}
.site-footer nav a>span{color:#b3bfaa}
.site-footer nav a:hover{color:var(--copper-light);text-decoration:underline;text-underline-offset:4px}
.site-footer .footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #35432e;padding-top:24px;margin-top:8px;color:#bac6af;font-size:.75rem;line-height:1.7}
.site-footer .footer-bottom>a{color:var(--copper-light);min-height:44px;display:flex;align-items:center;gap:12px;font-size:.8125rem;white-space:nowrap}
@media(max-width:720px){.header .header-actions{gap:12px}.header .nav-menu summary{padding:10px 12px;gap:10px}.header .nav-menu .menu-panel{right:-100px;width:320px;top:calc(100% + 14px);padding:20px}.site-footer{grid-template-columns:1fr 1fr;gap:34px 24px;padding:44px 6% 22px!important}.site-footer .footer-brand{grid-column:1/-1}.site-footer .footer-brand>p{margin:14px 0}.site-footer .footer-bottom{display:block;padding-top:20px;margin:0}.site-footer .footer-bottom>a{margin-top:8px}.site-footer nav a{font-size:.8125rem}}
@media(max-width:360px){.header .nav-menu summary{font-size:.75rem;padding:10px}.header .header-actions{gap:9px}.header .nav-menu .menu-panel{right:-90px;max-width:calc(100vw - 24px)}}
@media(prefers-reduced-motion:reduce){.header .nav-menu summary{transition:none}}

#handy-quote-frame{scroll-margin-top:120px}
