/* Production navigation and keyboard access; the approved LP layout is home.css. */
.skip-link{position:fixed;left:16px;top:-100px;background:var(--ink);color:#fff;padding:10px 18px;z-index:100}
.skip-link:focus{top:12px}
button{font:inherit;color:inherit}
button:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
#main:focus{outline:none}
.photo-caption{margin-inline:auto}
[id]{scroll-margin-top:20px}
.menu-toggle{display:none}
.header-inner{gap:20px}
.header-nav{margin-left:auto;gap:24px}
.header-consult{font-size:16px;min-height:48px;padding:10px 20px;flex-shrink:0}
.button:hover{box-shadow:0 0 0 2px var(--ink)}
.entry-link:hover,.service-card .button:hover{background:#fffbe4}
.header-nav a:hover{text-decoration:underline;text-underline-offset:5px}
.contact-phone:hover,.contact-mail:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){.header-nav{gap:16px}.header-consult{padding-inline:14px}}
@media(max-width:900px){
 .header-inner{flex-wrap:wrap;gap:12px}
 .header-brand{flex:1}
 .header-consult{order:2;font-size:15px;padding:8px 14px;min-height:46px;gap:6px}
 .header-consult .arrow{display:none}
 .header-nav{order:4;width:100%;margin:0;display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--line)}
 .header-nav>a:not(.button){display:block;padding:10px 12px;min-height:44px}
 .has-js .header-nav{display:none}
 .has-js .header-nav.is-open{display:flex}
 .has-js .menu-toggle{order:3;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:6px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:16px;cursor:pointer}
}
@media(max-width:360px){.header-inner{gap:8px}.header-consult{font-size:14px;padding-inline:10px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
