/* Shared desktop dropdown and mobile navigation. */
.menu-toggle,.mobile-estimate{display:none}
.nav-services{position:relative}
.nav-services-control{display:flex;align-items:center;gap:4px}
.services-toggle{display:grid;place-items:center;width:28px;min-height:38px;cursor:pointer;color:var(--forest)}
.services-toggle svg{transition:transform .2s}
.services-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.services-dropdown{position:absolute;top:100%;left:-22px;min-width:340px;max-width:calc(100vw - 30px);padding:12px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--brown);box-shadow:0 18px 40px #17211126;z-index:30;list-style:none}
.nav .services-dropdown a{display:block;white-space:normal;border:0;padding:11px 14px;font-size:13px;line-height:1.5;letter-spacing:.02em;text-transform:none;font-weight:600}
.nav .services-dropdown li:first-child a{color:var(--brown);border-bottom:1px solid var(--line);margin-bottom:5px;padding-bottom:15px}
.nav .services-dropdown a:hover,.nav .services-dropdown a[aria-current="page"]{background:var(--cream);color:var(--brown)}
.header :is(a,button):focus-visible{outline:2px solid var(--brown);outline-offset:4px}
.nav>a[aria-current="page"],.nav-services-control>a[aria-current]{border-color:var(--brown)}
@media(900px<width<=1100px){.header .nav-wrap{gap:22px}.header .logo{width:220px}.header .nav{gap:18px}.header .btn-small{padding-inline:15px}}
@media(width<=900px){
 .header{height:auto;position:relative}
 .header .nav-wrap{flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:16px}
 .header .logo-link{margin-right:auto;width:auto;justify-content:flex-start}
 .header .logo{width:220px}
 .header .menu-toggle{display:inline-flex;align-items:center;gap:10px;min-width:44px;min-height:44px;padding:8px;color:var(--forest);cursor:pointer;font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
 .menu-toggle-icon{width:22px;display:grid;gap:5px}
 .menu-toggle-icon span{display:block;width:22px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}
 .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:first-child{transform:translateY(7px) rotate(45deg)}
 .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:nth-child(2){opacity:0}
 .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:last-child{transform:translateY(-7px) rotate(-45deg)}
 .header .btn-small{display:none}
 .header .nav{display:flex;flex-direction:column;align-items:stretch;order:3;width:100%;padding-top:12px;gap:0;border-top:1px solid var(--line);font-size:13px;letter-spacing:.1em}
 .header.navigation-ready .nav{display:none}
 .header.navigation-ready[data-menu-open="true"] .nav{display:flex}
 .header .nav>a:not(.btn){display:block;padding:14px 4px;border:0;border-bottom:1px solid var(--line)}
 .nav-services{border-bottom:1px solid var(--line)}
 .nav-services-control{justify-content:space-between}
 .nav-services-control>a{flex:1;border:0;padding:14px 4px}
 .services-toggle{width:48px;min-height:48px}
 .services-dropdown{position:static;min-width:0;max-width:none;border:0;border-left:2px solid var(--brown);box-shadow:none;background:var(--cream);padding:5px 8px;margin:0 0 16px 4px}
 .nav .services-dropdown a{padding:12px;font-size:14px}
 .header .nav .mobile-estimate{display:inline-flex;align-self:flex-start;margin:20px 0 5px}
}
@media(width<=380px){.header .logo{width:190px}.header .nav-wrap{gap:8px}}
@media(prefers-reduced-motion:reduce){.menu-toggle-icon span,.services-toggle svg{transition:none}}
