.mobile-header-actions,.mobile-primary{display:none}.site-header{background:var(--bg)}
a:focus-visible,button:focus-visible{outline:3px solid #596d5d;outline-offset:3px}
.skip{z-index:30}.skip:focus{position:fixed;top:8px;left:8px}
.gallery-page .gallery-jumps{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:0 24px 32px;margin:auto;max-width:1180px}
.gallery-page .gallery-jumps a{border:1px solid #87917f;padding:12px 18px;min-height:48px;display:flex;align-items:center;justify-content:center;font-size:15px}
.gallery-page .reset,.gallery-page #empty-reset,.gallery-page .more,.gallery-page .close,.hero-bottom button{min-height:48px;min-width:48px}
.gallery-page .reset{font-size:14px;padding:10px 8px}
.gallery-page .chips button{min-height:48px}
.gallery-page dialog{overscroll-behavior:contain}
.gallery-page .close{position:sticky;top:0;z-index:3;background:#faf9f5;border-color:#87917f;box-shadow:0 2px 8px #0001}
.gallery-page .work-card .tags,.gallery-page .result-count,.gallery-page .sub{font-size:14px;line-height:1.9}
.gallery-page .materials-grid span{flex-wrap:wrap;gap:5px 12px}
.gallery-page .contact-actions a{overflow-wrap:anywhere}
.gallery-page .inline-gallery-link{text-decoration:underline;text-underline-offset:4px}
.shop-section a[href^="tel:"],.shop-section a[href^="mailto:"],.business-details a,footer a{display:inline-flex;align-items:center;min-height:48px}
@media(max-width:700px){
 .site-header{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:6px 20px 0;gap:0 12px;min-height:0}
 .brand img{width:82px;height:40px}.brand{display:flex;align-items:center;min-height:48px}
 .mobile-header-actions{display:flex;align-items:center;gap:10px}
 .mobile-header-actions a,.menu-toggle{min-height:48px;display:inline-flex;align-items:center;justify-content:center;color:#292b25;font-size:14px;letter-spacing:.02em;background:transparent;border:1px solid #999b8f;padding:0 12px}
 .mobile-header-actions a{background:#f0ede5}.menu-toggle{gap:8px;min-width:92px}
 .menu-icon{width:15px;height:10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-icon:after{content:'';position:absolute;left:0;right:0;top:4px;border-top:1px solid currentColor}
 .site-header nav{display:none;width:100%;margin:0;padding:10px 0 4px;max-height:calc(100dvh - 90px);overflow:auto}
 .site-header.menu-open nav{display:grid;grid-template-columns:1fr;gap:0}
 .site-header #site-navigation .desktop-primary{display:none}
 .site-header .mobile-primary{display:grid;grid-template-columns:1fr 1fr 1fr;flex-basis:calc(100% + 40px);width:calc(100% + 40px);margin:6px -20px 0;border-top:1px solid var(--line)}
 .mobile-primary a{display:flex;align-items:center;justify-content:center;min-height:50px;padding:10px 5px;font-size:14px;letter-spacing:.02em;line-height:1.5;text-align:center;white-space:nowrap}
 .mobile-primary a+a{border-left:1px solid var(--line)}
 .mobile-primary a:nth-child(2){background:#f0ede5}
 .mobile-primary a:focus-visible{outline-offset:-4px}
 .site-header nav a,.site-header nav .nav-hours{display:flex;align-items:center;min-height:48px;font-size:16px;padding:12px 4px;letter-spacing:.04em;border:0;border-bottom:1px solid var(--line);background:transparent}
 .site-header nav a[aria-current=page]{font-weight:600;text-decoration:underline;text-underline-offset:5px}
 .site-header nav a:focus-visible{outline-offset:-3px}
 #content,.gallery-page .section{scroll-margin-top:124px}
 .hero{height:clamp(300px,58svh,430px)}.hero-bottom{right:16px;bottom:16px}.hero-bottom button{font-size:14px;padding:10px 14px}
 .page-head{padding:36px 6% 32px}.page-head h1{font-size:28px}
 .gallery-page .page-intro{display:block;padding:36px 20px 24px}.gallery-page .page-intro h1{font-size:30px;margin:12px 0 20px}.gallery-page .page-intro>p:last-child{font-size:15px}
 .gallery-page .gallery-jumps{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 20px 30px}
 .gallery-page .gallery-jumps a{font-size:14px;padding:12px 8px;letter-spacing:0}
 .gallery-page .chips button{font-size:15px;padding:10px 14px}
 .gallery-page dialog{padding:14px;width:94vw;max-height:92dvh}.gallery-page .detail-layout{display:block}.gallery-page .detail-text{padding-top:18px}
 .gallery-page .detail-text h2{font-size:23px}.gallery-page .contact-actions{gap:10px}.gallery-page .contact-actions a{width:100%;font-size:15px;text-align:center}
 .business-details dd{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:360px){.site-header{padding:6px 14px 0;gap:0 8px}.mobile-header-actions{gap:8px}.mobile-header-actions a,.menu-toggle{padding:0 9px}.menu-toggle{min-width:84px}.site-header .mobile-primary{flex-basis:calc(100% + 28px);width:calc(100% + 28px);margin-left:-14px;margin-right:-14px}.mobile-primary a{font-size:13px}}
@media(prefers-reduced-motion:reduce){.gallery-page .work-card img{transition:none}.gallery-page .work-card button:hover img{transform:none}}
