.mobile-menu-toggle{display:none}
@media(max-width:800px){
 html{scroll-padding-top:20px}body{font-size:15px}main,section,form,header nav{min-width:0}
 header{height:auto!important;min-height:90px!important;padding:16px 5%!important;display:flex;flex-wrap:wrap;justify-content:space-between!important;gap:12px!important}
 header .brand-logo{width:clamp(160px,45vw,215px)!important;max-width:100%}
 .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--rose);background:var(--paper);color:var(--ink);font-size:14px}
 header nav{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0!important;padding:10px 0 0;border-top:1px solid var(--line);font-size:13px}
 header.nav-ready nav{display:none}header.nav-ready.menu-open nav{display:flex}
 header nav>a:not(.nav-cta){display:block!important;padding:14px 12px;min-height:48px;font-size:12px}
 header nav .nav-cta{display:flex!important;margin-top:12px;min-height:48px;font-size:13px;white-space:normal}
 header nav .gallery-menu>summary{display:flex;align-items:center;justify-content:space-between;padding:14px 12px;min-height:48px;font-size:12px}
 header nav .gallery-submenu,header .services-menu .gallery-submenu,header .gallery-menu:not(.services-menu) .gallery-submenu{position:static;left:auto;right:auto;top:auto;transform:none;width:100%;max-height:none;overflow:visible;box-shadow:none;border:0;border-left:2px solid var(--rose);padding:0 0 4px;background:#eee4e0}
 header nav .gallery-submenu a{min-height:46px;display:flex!important;align-items:center;padding:12px 16px;font-size:13px;line-height:1.5}
 header .services-menu .community-submenu>summary{min-height:46px;padding:12px 16px;font-size:13px}
 .hero{padding:20px 6% 45px!important}.hero-copy{padding:30px 0!important}.hero h1{font-size:clamp(48px,11vw,78px)!important;letter-spacing:-1.5px}.hero-copy p:not(.eyebrow){max-width:34em}
 .intro{padding:50px 6%}.intro h2{font-size:clamp(30px,7vw,44px)}
 .about,.contact{grid-template-columns:minmax(0,1fr);gap:30px;padding:45px 6%}.about h2,.contact h2{font-size:clamp(36px,9vw,54px)}.victoria-frame{max-width:min(100%,330px)}
 .experience{padding:45px 6%}.experience h2,.section-top h2{font-size:clamp(34px,8vw,48px)}.event-link{gap:15px}.event-link h3{font-size:clamp(25px,6vw,34px)}.event-link .arrow{flex-shrink:0}
 .contact form{grid-template-columns:minmax(0,1fr);gap:22px}.contact label{font-size:12px}.contact input,.contact select,.contact textarea{font-size:16px;min-height:48px;max-width:100%;min-width:0}.contact textarea{min-height:130px}.contact .note{font-size:12px}.button{min-height:48px;line-height:1.6;max-width:100%;white-space:normal}.button span{margin-left:14px}
 .service-page-main{padding:40px 6% 55px}.service-page-main h1,.event-heading h1{font-size:clamp(36px,9vw,60px);overflow-wrap:break-word}.service-lead{font-size:clamp(26px,6vw,34px)}.event-heading{padding:40px 6% 25px}.event-details{padding:0 6%;margin-bottom:30px}
 .event-photo-section{padding-left:5%;padding-right:5%}.event-photo-grid{column-gap:12px}.event-photo{margin-bottom:12px}
 #event-lightbox{padding:8px;width:96vw;max-width:96vw;max-height:96dvh}#event-lightbox img{max-height:calc(96dvh - 85px);width:100%;object-fit:contain}.lightbox-toolbar{gap:12px}.lightbox-toolbar button{min-height:46px;min-width:46px}
 footer{padding:30px 6%;flex-direction:column;text-align:center;gap:18px}footer .brand-logo{max-width:75vw}
}
