/* Sitewide responsive improvements; loaded last, after all legacy style sheets. */
:root{color-scheme:light}html,body{max-width:100%;min-width:0;overflow-x:clip}*{box-sizing:border-box}img,svg,video,canvas{max-width:100%}img{height:auto}main{min-width:0}.wrap,.lwc-inner{max-width:100%}.header .wrap,.lwc-header .lwc-inner{min-width:0}.header .brand.home-brand{flex:0 0 auto}.header .nav{min-width:0}.header .brand.home-brand strong{white-space:nowrap}.photo-banner,.banner-content,.section,.contact-columns,.calendar-workarea,.contact-info-row,.service-grid,.blog-grid,.prices,.footgrid{min-width:0}.contact-columns>*{min-width:0}.formpanel input,.formpanel textarea,.formpanel select,.field input,.field textarea{max-width:100%}.card,.price-card,.service-card,.blog-card{min-width:0}
@media(max-width:1150px){.header .wrap{gap:13px}.header .nav{gap:13px}.header .nav>a{font-size:11px}.header .brand.home-brand{font-size:19px}.header .brand.home-brand strong span{font-size:15px}.header .btn.small{padding:9px 12px;white-space:nowrap}}
@media(max-width:900px){.header{height:70px;top:0;position:sticky}.header>.wrap{height:70px;display:flex;align-items:center;position:relative;justify-content:space-between;gap:10px}.header .nav{display:none!important;position:absolute;top:70px;left:-16px;right:-16px;background:#fff;padding:15px 22px;box-shadow:0 14px 27px #103b2322;z-index:100;align-items:stretch;flex-direction:column;gap:0}.header .nav.open{display:flex!important}.header .nav>a{display:block;font-size:14px;padding:11px}.header .menu{display:block;border:0;background:transparent;font-size:26px;line-height:1.2;cursor:pointer}.header .btn.small{font-size:11px;padding:8px 12px}.header .brand.home-brand{font-size:18px}.header .brand.home-brand strong span{font-size:14px}.header .brand.home-brand .brandmark,.header .brand.home-brand img{width:39px;height:39px}.service-grid,.blog-grid,.prices{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-banner{background-position:center!important}.footgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.wrap{width:calc(100% - 28px);margin-inline:auto}.section{padding:27px 0}.service-grid,.blog-grid,.prices,.contact-columns,.contact-info-row{grid-template-columns:minmax(0,1fr)}.header>.wrap{gap:6px}.header .btn.small{font-size:10px;padding:8px}.header .brand.home-brand{font-size:15px}.header .brand.home-brand strong span{font-size:12px}.header .brand.home-brand .brandmark,.header .brand.home-brand img{width:34px;height:34px}.banner-content h1{font-size:clamp(29px,8vw,39px)}.banner-content p{font-size:13px}.footer .footgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.footer .bottom{display:flex;flex-wrap:wrap;gap:4px}.footer .bottom span{display:block}.home-lwc .lwc-shell{width:100%;border-radius:0;max-width:none}.home-lwc .lwc-header-inner{height:68px}.home-lwc .lwc-header{min-height:68px}.home-lwc .lwc-brand{font-size:17px}.home-lwc .lwc-brand strong span{font-size:13px}.home-lwc .lwc-brand img{width:38px;height:38px}.home-lwc .lwc-hero-copy{max-width:100%}}
@media(max-width:365px){.header .btn.small{font-size:9px}.header .brand.home-brand{font-size:14px}.header .brand.home-brand strong span{font-size:11px}.footer .footgrid{grid-template-columns:minmax(0,1fr)}}
