.header-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.mobile-site-search{display:none}
.site-search{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}
.site-search input{min-width:0;height:46px;padding:0 15px;border:1px solid rgba(24,53,47,.28);border-right:0;border-radius:0;background:#fff;color:#292b28;font:500 .86rem "DM Sans",Arial,sans-serif;outline:0}
.site-search input:focus{border-color:#826e44;box-shadow:inset 0 0 0 1px #826e44}
.site-search button{height:46px;padding:0 18px;border:1px solid #18352f;border-radius:0;background:#18352f;color:#fff;cursor:pointer;font:700 .69rem "DM Sans",Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.site-search button:hover{background:#244a42}
.drawer-site-search{max-width:100%;margin:26px 0 0}
.drawer-site-search input{height:50px;background:rgba(255,255,255,.7)}.drawer-site-search button{height:50px;background:#b29a67;border-color:#b29a67;color:#142721}
.results-site-search{max-width:760px;margin:0 0 30px}.search-summary{color:#686963;margin-bottom:25px}.search-result-list{display:grid;gap:16px}.search-result-card{padding:27px 30px;background:#fff;border:1px solid rgba(24,53,47,.16)}.search-result-card .section-label{margin-bottom:8px}.search-result-card h2{margin:0 0 10px;font:normal clamp(1.65rem,2.5vw,2.4rem)/1.15 "Libre Caslon Display",Georgia,serif}.search-result-card h2 a{color:#18352f}.search-result-card p:not(.section-label){margin:0 0 13px}.no-search-results{padding:35px;background:#fff;border:1px solid rgba(24,53,47,.16)}
@media(max-width:760px){html body header.site-header{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;inset:auto!important;width:100%!important;min-height:0!important;flex-wrap:wrap!important;padding:14px 5vw!important;gap:12px!important;background:#f5f1e8!important;z-index:999!important}html body header.site-header .brand{display:block!important;visibility:visible!important;opacity:1!important;flex:0 0 100%!important;width:100%!important;max-width:none!important;margin:0!important}html body header.site-header .brand .brand-lockup{display:block!important;visibility:visible!important;width:min(100%,440px)!important;max-width:100%!important;height:auto!important;margin:0 auto!important}html body header.site-header .header-actions{display:grid!important;visibility:visible!important;opacity:1!important;grid-template-columns:minmax(0,1fr) auto!important;width:100%!important;margin:0!important;gap:9px!important}html body header.site-header .header-quote{display:none!important}html body header.site-header .mobile-site-search{display:grid!important;visibility:visible!important;opacity:1!important}.mobile-site-search input,.mobile-site-search button{height:42px}.mobile-site-search button{padding:0 12px}html body header.site-header .menu-toggle{display:flex!important;visibility:visible!important;opacity:1!important;align-self:stretch;height:42px}.menu-open .site-header .menu-toggle{height:auto}.drawer-site-search{margin-top:22px}}
@media(max-width:430px){.mobile-site-search button{font-size:0;width:44px;padding:0}.mobile-site-search button:after{content:'⌕';font-size:21px;line-height:1}.site-search input{padding-left:11px;font-size:.78rem}}

/* Equal-height craftsmanship gallery cards. */
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.gallery figure,.gallery figure.wide{display:flex;flex-direction:column;min-width:0;height:100%}
.gallery img,.gallery .wide img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.gallery figcaption{align-items:center;gap:16px;min-height:64px;margin-top:auto}
.gallery figcaption span{white-space:nowrap}
@media(max-width:1000px){.gallery{grid-template-columns:1fr}.gallery img,.gallery .wide img{height:auto;aspect-ratio:16/10}}

/* Complete mobile frame. Independent edge overlays avoid Safari dropping the left border. */
@media(max-width:600px){.service-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;position:relative!important;width:100%!important;max-width:100%!important;overflow:hidden!important;border-left:0!important;border-right:0!important;border-top:1px solid rgba(255,255,255,.32)!important;border-bottom:1px solid rgba(255,255,255,.32)!important}.service-grid:before,.service-grid:after{content:""!important;display:block!important;position:absolute!important;top:0!important;bottom:0!important;width:1px!important;background:rgba(255,255,255,.32)!important;z-index:5!important;pointer-events:none!important}.service-grid:before{left:0!important}.service-grid:after{right:0!important}.service-grid .service-card,.service-grid .service-card:first-child{position:relative!important;z-index:1!important;min-width:0!important;width:100%!important;padding:27px 24px!important;border-left:0!important;border-right:0!important;border-top:0!important;border-bottom:1px solid rgba(255,255,255,.32)!important}.service-grid .service-card:last-child{border-bottom:0!important}}
