
/* Shared navigation and service content */
.service-menu{position:relative;text-align:left;}
.service-menu summary{cursor:pointer;list-style:none;padding:8px 12px;font-size:14px;font-weight:500;}
.service-menu summary::-webkit-details-marker{display:none;}
.service-menu summary::after{content:" +";margin-left:5px;}
.service-menu[open] summary::after{content:" −";}
.service-menu-links{position:absolute;right:0;top:calc(100% + 10px);width:270px;max-width:calc(100vw - 32px);max-height:70svh;overflow:auto;background:#fff;color:#1a2622;padding:10px;border:1px solid #dce2de;border-radius:8px;box-shadow:0 16px 40px #0002;}
nav .service-menu-links a,.service-menu-links a{display:block;color:#1a2622!important;text-decoration:none;font-size:14px;padding:11px 12px;border-radius:4px;}
nav .service-menu-links a:hover,.service-menu-links a:hover{background:#edf1ee;}
nav.on-dark .service-menu summary{color:#fff;}
.nav-actions{display:flex;gap:16px;align-items:center;}
.nav-phone{color:inherit;text-decoration:none;font-size:14px;}
.trust-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;font-size:12px;line-height:1.6;}
.trust-strip>span+span::before{content:"•";margin-right:24px;opacity:.45;}
.p-services{background:#f5f6f4;justify-content:center;gap:36px;padding:100px 24px 64px;}
.p-services .panel-top{padding-top:0;}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:min(100%,920px);text-align:left;}
.service-card{display:block;text-decoration:none;color:#1a2622;padding:28px;background:#fff;border:1px solid #dde4df;border-radius:8px;transition:border-color .2s,background .2s;}
.service-card:hover{background:#edf2ee;border-color:#6b8175;}
.service-card h3{font-weight:500;font-size:22px;margin-bottom:10px;}
.service-card p{color:#5a625e;font-size:14px;line-height:1.6;}
.service-card .card-link{display:block;margin-top:18px;font-size:13px;}
:focus-visible{outline:3px solid #b58a36;outline-offset:5px;}
@media(max-width:640px){nav{padding:12px 16px;}nav .wordmark{font-size:12px;letter-spacing:.12em;gap:8px;}.nav-actions{gap:4px;}.nav-phone{display:none;}.trust-strip{gap:5px 14px;}.trust-strip>span+span::before{display:none;}.service-grid{grid-template-columns:1fr;}.service-card{padding:22px;}.p-services{gap:24px;} .p-hero .panel-top{padding-top:16svh;}}
@media(prefers-reduced-motion:reduce){.snap,html{scroll-behavior:auto!important;}}

.service-page{margin:0;font:16px/1.7 'Inter',sans-serif;color:#1a2622;background:#f5f6f4;-webkit-font-smoothing:antialiased;}
.service-page *{box-sizing:border-box;}
.service-page a{color:inherit;}
.service-page nav{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px max(24px,calc((100vw - 1160px)/2));background:#fff;border-bottom:1px solid #dde4df;position:relative;z-index:10;}
.service-page .wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;text-transform:uppercase;font-size:14px;font-weight:600;letter-spacing:.18em;line-height:1.4;}
.service-page .nav-mark{width:28px;height:auto;}
.service-page h1,.service-page h2,.service-page h3{font-weight:500;line-height:1.14;margin:0;}
.service-page h1{font-size:clamp(38px,5.5vw,66px);letter-spacing:-.025em;max-width:16ch;}
.service-page h2{font-size:clamp(28px,3vw,40px);letter-spacing:-.02em;}
.service-page p{margin:18px 0 0;}
.service-hero{background:#1a2622;color:#fff;padding:36px max(24px,calc((100vw - 1160px)/2)) 64px;}
.breadcrumbs{font-size:12px;color:#c4d0c9;margin-bottom:44px;}
.breadcrumbs a{text-underline-offset:4px;}
.service-eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:11px;color:#cad4ce;margin-bottom:16px;}
.hero-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:72px;align-items:center;}
.service-intro{color:#d0dbd4;max-width:57ch;}



.service-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.service-btn{display:inline-block;padding:13px 22px;border-radius:4px;background:#fff;color:#1a2622!important;text-decoration:none;font-size:14px;font-weight:500;}
.service-btn.secondary{background:transparent;color:inherit!important;border:1px solid #8c9d93;}
.service-hero .trust-strip{justify-content:flex-start;margin-top:48px;color:#cbd6ce;}
.service-content{max-width:1208px;margin:auto;padding:72px 24px;}
.section-intro{max-width:720px;margin-bottom:32px;}
.section-intro p,.detail-card p,.process li,.service-faq p{color:#5a625e;}
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.detail-card{border-top:1px solid #acbcb2;padding:24px 0;}
.detail-card h3{font-size:21px;}
.process{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:48px;padding:40px;background:#e8eee9;border-radius:6px;}
.process ol{margin:0;padding-left:24px;}
.process li{padding-left:8px;margin-bottom:16px;}
.service-faq{max-width:800px;margin-top:72px;}
.service-faq h2{margin-bottom:24px;}
.service-faq details{border-bottom:1px solid #cbd5ce;padding:18px 0;}
.service-faq summary{cursor:pointer;font-weight:500;}
.service-faq p{padding-right:16px;}
.service-contact{margin-top:72px;padding-top:40px;border-top:1px solid #cbd5ce;}
.service-contact .service-btn{background:#1a2622;color:#fff!important;}
.service-contact .service-btn.secondary{background:transparent;color:#1a2622!important;}
.service-footer{background:#e8eee9;padding:36px max(24px,calc((100vw - 1160px)/2));font-size:13px;}
.service-footer-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin:18px 0 30px;}
.service-footer a{text-underline-offset:4px;}
@media(max-width:700px){.service-page nav{padding:16px;}.service-page .wordmark{font-size:11px;letter-spacing:.1em;}.hero-layout,.detail-grid,.process{grid-template-columns:1fr;gap:24px;}.service-hero{padding:24px 24px 40px;}.breadcrumbs{margin-bottom:32px;}.service-content{padding:44px 24px;}.process{padding:24px;margin-top:24px;}.service-faq,.service-contact{margin-top:48px;}.service-page .service-actions{flex-direction:column;align-items:stretch;}.service-btn{text-align:center;}.service-hero .trust-strip{margin-top:32px;}}

.trust-strip a{color:inherit;text-decoration:none;}
.trust-strip a:hover{text-decoration:underline;text-underline-offset:4px;}
.p-hero .trust-strip{color:#fff;}

/* Client-supplied project and crew photography */
.service-photo{margin:0;min-width:0;}
.service-photo img{display:block;width:100%;height:390px;object-fit:cover;border-radius:6px;}
.service-photo figcaption{font-size:12px;line-height:1.5;color:#c4d0c9;margin-top:12px;}
.p-team{background:#edf1ed;justify-content:center;padding:90px 32px 48px;}
.team-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;width:min(100%,1000px);text-align:left;}
.team-photo{display:block;width:100%;height:min(70svh,620px);object-fit:cover;object-position:center 62%;border-radius:6px;}
.team-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.16em;margin-bottom:18px;color:#5a625e;}
.team-copy h2{font-size:clamp(32px,4vw,48px);}
.team-copy>p:not(.team-eyebrow){margin-top:20px;color:#5a625e;line-height:1.7;max-width:42ch;}
.team-copy .btn{margin-top:28px;}
.contact-portrait{display:block;width:100px;height:124px;object-fit:cover;object-position:center 20%;border-radius:6px;margin:0 auto 24px;}
@media(max-width:700px){.service-photo img{height:300px;}.team-layout{grid-template-columns:1fr;gap:26px;max-width:480px;}.team-photo{height:420px;}.p-team{padding:88px 24px 48px;}.team-copy .btn{width:100%;}}
@media(max-width:640px){.p-hero .bg{background-image:url('/img/lighting-installation.jpg');background-position:center 46%;}.p-hero .panel-top{padding-top:12svh;}.p-hero .hero-mark{height:48px;margin-bottom:16px;}.p-photo .bg{background-image:url('/img/recessed-lighting-install.jpg');background-position:center 40%;}.p-hero .shade{background:linear-gradient(rgba(19,28,24,.4),rgba(19,28,24,.03) 40%,rgba(19,28,24,.12) 55%,rgba(26,38,34,.85) 100%);}}
