*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#19292b;font-family:"DM Sans",Arial,sans-serif;background:#faf9f5}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 48px));margin:auto}.section{padding:110px 0}.topbar{background:#142429;color:#c8d6d3;font-size:12px;letter-spacing:.015em}.topinner{display:flex;justify-content:space-between;gap:16px;padding:10px 0}.topinner a{color:#fff;font-weight:700}.header{position:sticky;top:0;background:#faf9f5;z-index:40;border-bottom:1px solid #e6e6e0}.nav{height:86px;display:flex;align-items:center;gap:45px}.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;color:#122527}.brand-mark{width:46px;height:46px;background:#e46b3d;display:grid;place-items:center;color:#fff;font-weight:900;font-size:35px}.brand-mark svg{width:30px}.brand-type{font:800 17px/1.04 Manrope,sans-serif;letter-spacing:-.06em}.brand-type small{display:block;font-size:12px;font-weight:700;letter-spacing:.27em;margin-top:5px}.navlinks{margin-left:auto;display:flex;gap:32px}.navlinks a{font-weight:700;font-size:13px}.navlinks a:hover,.textlink:hover{color:#e46b3d}.btn{min-height:51px;padding:15px 23px;display:inline-flex;align-items:center;justify-content:center;gap:30px;font-weight:800;font-size:13px;border:0;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn span{font-size:18px}.btn-orange{background:#e66b3e;color:#fff}.btn-orange:hover{background:#cb542c}.btn-outline{border:1px solid rgba(255,255,255,.72);color:white}.btn-white{background:white;color:#172729}.menubtn{display:none}.hero{position:relative;background:#11262a;color:white;min-height:660px;overflow:hidden}.hero-photo{position:absolute;inset:0;background:url('images/IMG_3089.webp') center 52%/cover no-repeat}.hero-tint{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,27,30,.97) 0%,rgba(11,27,30,.91) 36%,rgba(11,27,30,.3) 78%),linear-gradient(0deg,rgba(11,27,30,.42),transparent 40%)}.hero-layout{position:relative;display:flex;justify-content:space-between;min-height:660px}.hero-content{padding:92px 0 45px;max-width:720px}.eyebrow{font-size:11px;letter-spacing:.19em;color:#bd5632;font-weight:800;margin:0 0 27px}.eyebrow.light{color:#ffac8d}.dot{display:inline-block;width:7px;height:7px;background:#ef7446;border-radius:50%;margin-right:9px}.hero h1,h2{font:800 clamp(40px,5vw,70px)/1.1 Manrope,sans-serif;letter-spacing:-.065em;margin:0}.hero h1{font-size:clamp(48px,6.25vw,84px)}.hero h1 em,h2 i{font-style:normal;color:#ef825b}.hero-content>p{font-size:17px;line-height:1.85;color:#dce3e2;max-width:565px;margin:27px 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-meta{display:flex;gap:29px;border-top:1px solid #ffffff35;margin-top:70px;padding-top:22px;flex-wrap:wrap;font-size:11px;font-weight:700;letter-spacing:.05em}.hero-meta b{color:#e98761;margin-right:6px}.hero-side{writing-mode:vertical-rl;letter-spacing:.2em;font-size:10px;align-self:center;color:#e8e3d9}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.intro h2{font-size:clamp(38px,4.3vw,60px)}.intro-copy p,.about-grid>div>p:not(.eyebrow){font-size:17px;line-height:1.9;color:#596765;margin:0 0 25px}.textlink{font-size:13px;font-weight:800;border-bottom:1px solid #dc734d;padding-bottom:9px}.textlink span{margin-left:25px}.service-section{background:#f0efe9}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.sectionhead>p{max-width:320px;line-height:1.8;color:#586764;margin:0 0 7px}.sectionhead h2{font-size:clamp(36px,4.5vw,60px)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{background:#fff;padding:32px 31px;min-height:300px;display:flex;flex-direction:column}.service-num{font-size:10px;letter-spacing:.15em;font-weight:800;color:#b1684e}.service-icon{font-size:36px;margin:22px 0 15px;color:#e56b40}.service-card h3{font:800 22px/1.25 Manrope;margin:0 0 12px;letter-spacing:-.04em}.service-card p{font-size:14px;color:#61706d;line-height:1.8;margin:0 0 24px}.service-card>a:not(.btn){margin-top:auto;font-size:12px;font-weight:800}.service-cta{background:#e66b3e;color:white}.service-cta .service-num,.service-cta p{color:#ffe4d7}.service-cta h3{font-size:28px;margin-top:45px}.service-cta .btn{align-self:flex-start;margin-top:auto}.projects-section{background:#faf9f5}.project-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.filter{padding:11px 18px;border:1px solid #d6d9d3;background:transparent;font-size:12px;font-weight:800;color:#243a3a}.filter.active{background:#192d2e;color:white;border-color:#192d2e}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project-item{margin:0;position:relative;overflow:hidden;height:335px;background:#223}.project-item.featured{grid-column:span 2}.project-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.project-item:hover img{transform:scale(1.04)}.project-item:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0b1b20c9)}.project-item figcaption{position:absolute;bottom:23px;left:24px;z-index:1;color:#fff}.project-item figcaption span{display:block;font-size:10px;color:#ffc1a6;letter-spacing:.16em;font-weight:800;margin-bottom:9px}.project-item figcaption strong{font:700 19px Manrope}.project-item[hidden]{display:none}.material-note{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.material-note>div{border-left:3px solid #e66b3e;padding-left:17px}.material-note b{font-size:11px;letter-spacing:.12em}.material-note p{color:#65706d;margin:7px 0;font-size:13px}.emergency{background:#182b30;color:#fff}.emergency-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.emergency h2{font-size:clamp(40px,4.3vw,59px)}.emergency-grid>div>p:not(.eyebrow):not(.fineprint){color:#c0cdca;line-height:1.9;font-size:16px;max-width:470px;margin:27px 0}.emergency .fineprint{font-size:11px;color:#98aaa7;margin-top:16px}.emergency-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.emergency-photos img{height:340px;width:100%;object-fit:cover}.emergency-photos img:last-child{height:275px}.before-section{background:#f2f0ea}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.compare-card{background:white}.compare{position:relative;height:360px;overflow:hidden;--split:50%;background:#172828}.compare img{width:100%;height:100%;object-fit:cover;object-position:center}.compare-after{position:absolute;inset:0}.compare-before{position:absolute;inset:0;width:var(--split);overflow:hidden}.compare-before img{width:calc(100% / var(--fraction));min-width:0;max-width:none}.compare-line{position:absolute;left:var(--split);height:100%;width:2px;background:white;transform:translateX(-50%);pointer-events:none}.compare-handle{position:absolute;left:var(--split);top:50%;transform:translate(-50%,-50%);width:40px;height:40px;display:grid;place-items:center;background:white;color:#152629;border-radius:50%;box-shadow:0 1px 8px #0005;pointer-events:none;font-weight:800;font-size:18px}.compare input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.tag{position:absolute;top:15px;background:#fff;color:#172527;font-size:9px;letter-spacing:.13em;font-weight:800;padding:8px;pointer-events:none}.beforetag{left:12px}.aftertag{right:12px}.compare-copy{padding:23px}.compare-copy span{color:#bd6847;font-size:10px;letter-spacing:.1em;font-weight:800}.compare-copy h3{font:800 17px Manrope;letter-spacing:-.04em;margin:8px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-photo{position:relative}.about-photo img{height:600px;width:100%;object-fit:cover}.photo-caption{position:absolute;bottom:0;left:0;background:#e66b3e;color:white;padding:20px 25px;font-size:10px;letter-spacing:.13em;font-weight:800}.about-grid h2{margin-bottom:25px;font-size:clamp(38px,4.5vw,60px)}.about-points{border-top:1px solid #d9ddd6;margin-top:30px}.about-points>div{display:flex;gap:23px;border-bottom:1px solid #d9ddd6;padding:21px 0}.about-points>div>span{color:#cb6843;font-size:13px;font-weight:800}.about-points h3{font:800 15px Manrope;margin:0 0 6px}.about-points p{color:#65716f;font-size:13px;line-height:1.7;margin:0}.contact{background:#1c3032;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px}.contact h2{font-size:clamp(44px,5vw,67px)}.contact-grid>div>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#c4d0cb;max-width:370px}.contact-phone{display:inline-block;font:800 clamp(24px,3vw,37px) Manrope;letter-spacing:-.05em;border-bottom:2px solid #ec7950;padding:17px 0;margin-top:30px}.contact-phone span{font-size:24px;color:#ef8058}.contact-area{font-weight:800;letter-spacing:.18em;font-size:10px;color:#aabfba;margin-top:60px}.contact-panel{background:#fff;color:#1b2c2b;padding:36px 40px}.contact-panel h3{font:800 28px Manrope;margin:0 0 10px;letter-spacing:-.04em}.contact-panel>p{font-size:13px;line-height:1.7;color:#6a7672;margin-bottom:22px}form label{display:block;font-weight:800;font-size:12px;margin:15px 0 7px}form input,form textarea,form select{width:100%;padding:12px 13px;background:#f7f7f4;border:1px solid #d8dfdb;color:#172829;border-radius:0;outline-offset:2px}form textarea{resize:vertical}form .full{width:100%;margin-top:24px}.form-note{font-size:11px;color:#6b7773;line-height:1.6}footer{background:#101f23;color:#fff;padding:65px 0 20px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:55px;padding-bottom:60px}.footer-brand{color:#fff}.footer-main>div:first-child p{color:#a4b6b2;max-width:260px;line-height:1.8;font-size:13px;margin-top:23px}.footer-main>div:not(:first-child){display:flex;flex-direction:column;gap:15px;font-size:13px;color:#c4d0cc}.footer-main b{font-size:10px;color:#fa9e78;letter-spacing:.17em;margin-bottom:10px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #3d4d4e;padding-top:20px;color:#98aaa7;font-size:11px}@media(max-width:900px){.nav{gap:20px}.navlinks{gap:17px}.navcta{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.emergency-grid,.about-grid,.contact-grid{gap:35px}.compare-grid{grid-template-columns:1fr 1fr}.compare-card:last-child{grid-column:span 2}.compare-card:last-child .compare{height:420px}}@media(max-width:650px){.container{width:min(100% - 32px,1180px)}.section{padding:70px 0}.topinner{font-size:10px}.topinner span{display:none}.topinner a{margin:auto}.nav{height:72px;justify-content:space-between}.brand-mark{height:39px;width:39px}.brand-type{font-size:15px}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;background:#faf9f5;padding:25px;box-shadow:0 15px 25px #0002}.navlinks.open{display:flex}.menubtn{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:8px}.menubtn span{display:block;width:24px;height:2px;background:#172b2e}.hero,.hero-layout{min-height:650px}.hero-content{padding:78px 0 30px}.hero h1{font-size:clamp(44px,11vw,68px)}.hero-side{display:none}.hero-meta{margin-top:55px;gap:14px}.hero-content>p{font-size:15px}.intro-grid,.emergency-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.sectionhead{display:block}.sectionhead>p{margin-top:18px}.service-grid,.project-grid,.compare-grid,.material-note{grid-template-columns:1fr}.service-card{min-height:270px}.project-item,.project-item.featured{grid-column:auto;height:330px}.emergency-photos img{height:300px}.emergency-photos img:last-child{height:240px}.compare-card:last-child{grid-column:auto}.compare-card:last-child .compare,.compare{height:390px}.about-photo img{height:390px}.contact-panel{padding:25px 20px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column}.hero-actions .btn{padding:14px 16px;gap:13px}.hero-meta span{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Interactive refinements */
.scroll-progress{position:fixed;z-index:110;top:0;left:0;height:3px;width:0;background:#e66b3e;transition:width .1s linear}.service-card{position:relative;transition:transform .25s,box-shadow .25s}.service-card:not(.service-cta):hover{transform:translateY(-5px);box-shadow:0 16px 30px #10242714}.service-card:not(.service-cta):before{content:"";width:35px;height:3px;background:#e66b3e;display:block;margin:24px 0 22px}.service-card h3{margin-top:5px}.gallery-count{font-size:12px;color:#71807c;margin:-8px 0 23px}.project-item{cursor:zoom-in;outline-offset:4px}.project-item:before{content:"View photo";position:absolute;right:20px;top:20px;z-index:3;background:#faf9f5;color:#122527;font:700 11px "DM Sans";letter-spacing:.04em;padding:11px 13px;opacity:0;transform:translateY(6px);transition:.2s}.project-item:hover:before,.project-item:focus-visible:before{opacity:1;transform:none}.emergency-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.emergency-gallery .photo-thumb{background:transparent;padding:0;border:0;overflow:hidden;position:relative;cursor:zoom-in}.emergency-gallery .photo-thumb img,.emergency-gallery .photo-thumb:last-child img{height:210px;width:100%;object-fit:cover;transition:transform .35s}.emergency-gallery .photo-thumb:hover img{transform:scale(1.05)}.emergency-gallery-label{font-size:10px;letter-spacing:.16em;color:#ffb397;font-weight:800;margin-bottom:15px}.faq-section{background:#f0efe9}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}.faq-grid h2{font-size:clamp(36px,4vw,60px)}.faq-intro{color:#596765;line-height:1.8;max-width:420px;margin:25px 0}.faq-items details{border-top:1px solid #cdd2cd;padding:20px 0}.faq-items details:last-child{border-bottom:1px solid #cdd2cd}.faq-items summary{font-weight:800;font-size:16px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary:after{content:"+";color:#d7623e;font-size:24px;line-height:1}.faq-items details[open] summary:after{content:"−"}.faq-items details p{font-size:14px;color:#67716d;line-height:1.8;max-width:560px}.lightbox{position:fixed;inset:0;background:rgba(8,19,22,.96);z-index:100;display:none;align-items:center;justify-content:center;gap:10px;padding:65px 65px 35px;color:#fff}.lightbox.visible{display:flex}.modal-open{overflow:hidden}.lightbox-body{margin:0;display:flex;align-items:center;flex-direction:column;gap:12px;max-width:min(100%,1050px);max-height:100%;min-width:0}.lightbox-body img{max-height:calc(100vh - 180px);max-width:100%;object-fit:contain;border-radius:2px}.lightbox-body figcaption{font:700 14px Manrope;text-align:center}.lightbox-body #lightbox-counter{font-size:11px;letter-spacing:.14em;color:#bccdca}.lightbox button{color:#fff;background:#ffffff16;border:1px solid #ffffff4d;padding:8px 15px;cursor:pointer}.lightbox button:hover{background:#e66b3e}.lightbox-close{position:absolute;right:25px;top:22px}.lightbox-arrow{font-size:34px;line-height:1;flex-shrink:0}.mobile-call{display:none}.fade-in{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}.fade-in.is-visible{opacity:1;transform:none}section{scroll-margin-top:90px}@media(max-width:900px){.faq-grid{grid-template-columns:1fr;gap:30px}}@media(max-width:650px){.lightbox{padding:80px 8px 45px;gap:4px}.lightbox-arrow{font-size:22px;padding:6px!important}.lightbox-body img{max-height:calc(100vh - 235px)}.emergency-gallery .photo-thumb img,.emergency-gallery .photo-thumb:last-child img{height:180px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:#e66b3e;z-index:38;text-align:center;box-shadow:0 -4px 22px #0002}.mobile-call a{display:block;padding:11px 14px;color:#fff;font-weight:800;font-size:13px}.mobile-call span{margin-left:10px}body{padding-bottom:43px}.project-item:before{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.fade-in{opacity:1;transform:none}}

/* DaVinci slate manufacturer-reference section */
.davinci-section{background:#f1f3ef}.davinci-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,5vw,72px);align-items:center}.davinci-visual img{width:100%;height:clamp(290px,38vw,500px);object-fit:cover;border-radius:10px;display:block}.davinci-copy h3{font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.14;margin:15px 0}.davinci-copy p{line-height:1.7}.davinci-copy .btn{margin:20px 0}.davinci-credit{font-size:.8rem;color:#596667;margin:12px 0;line-height:1.5}.davinci-credit a{color:#18586b;text-decoration:underline}@media(max-width:760px){.davinci-layout{grid-template-columns:1fr}}


/* Yellow brand refresh + logo integration */
:root{
  --brand-yellow:#f2b233;
  --brand-yellow-deep:#db9d20;
  --brand-yellow-soft:#ffe39a;
  --brand-yellow-pale:#fff5d5;
  --brand-dark:#122527;
}
.brand-logo-wrap{display:inline-flex;align-items:center}
.brand-logo{display:block;height:56px;width:auto;max-width:min(46vw,360px);object-fit:contain}
.footer-logo{height:64px;background:#fff;padding:8px 12px;border-radius:8px}
@media(max-width:650px){.brand-logo{height:44px;max-width:58vw}.footer-logo{height:56px}}

.brand-mark{background:var(--brand-yellow);}
.navlinks a:hover,.textlink:hover,.textlink,.contact-phone span{color:var(--brand-yellow-deep);}
.btn-orange{background:var(--brand-yellow);color:var(--brand-dark);}
.btn-orange:hover{background:var(--brand-yellow-deep);color:var(--brand-dark);}
.eyebrow{color:var(--brand-yellow-deep);}
.eyebrow.light{color:var(--brand-yellow-soft);}
.dot,.hero h1 em,h2 i,.hero-meta b,.service-icon,.project-item figcaption span,.service-card:not(.service-cta):before,.scroll-progress,.photo-caption,.contact-phone,.mobile-call,.mobile-call a{background-color:var(--brand-yellow);}
.dot{background:var(--brand-yellow);}
.hero h1 em,h2 i{color:var(--brand-yellow);}
.textlink{border-bottom-color:var(--brand-yellow);}
.service-num,.compare-copy span,.about-points>div>span,.footer-main b,.material-note b{color:var(--brand-yellow-deep);}
.service-cta{background:var(--brand-yellow);color:var(--brand-dark);}
.service-cta .service-num,.service-cta p{color:#5f4715;}
.filter.active{background:var(--brand-yellow);border-color:var(--brand-yellow);color:var(--brand-dark);}
.material-note>div{border-left-color:var(--brand-yellow);}
.photo-caption{color:var(--brand-dark);}
.contact-phone{border-bottom-color:var(--brand-yellow);background:none;}
.lightbox button:hover{background:var(--brand-yellow);color:var(--brand-dark);}
.faq-items summary:after{color:var(--brand-yellow-deep);}
.mobile-call{background:var(--brand-yellow);}
.mobile-call a{color:var(--brand-dark);}
.navcta,.hero-actions .btn-orange,.contact .btn-orange,.faq-section .btn-orange,.emergency .btn-orange,.service-cta .btn-white{box-shadow:0 10px 28px rgba(242,178,51,.18);}
/* Corrections for yellow theme overrides */
.hero h1 em,h2 i,.hero-meta b,.project-item figcaption span,.contact-phone span{background:none!important}
.scroll-progress,.dot,.service-card:not(.service-cta):before,.photo-caption,.mobile-call{background:var(--brand-yellow)!important}
.contact-phone{color:#fff}
.project-item figcaption span{color:var(--brand-yellow-soft)!important}

/* V5 logo visibility and hero cleanup */
.nav{height:106px;gap:26px}
.brand-logo{height:86px;width:auto;max-width:none;object-fit:contain}
.footer-logo{height:80px;width:auto}
.hero-side{display:none!important}
@media(max-width:900px){.brand-logo{height:72px}.nav{height:95px;gap:14px}.navlinks{gap:12px}}
@media(max-width:650px){.nav{height:78px}.brand-logo{height:62px;max-width:none}.navlinks{top:78px}.footer-logo{height:70px}}


/* V6 hero image framing fix */
.hero{min-height:620px}
.hero-layout{min-height:620px}
.hero-photo{
  background:#11262a url('images/IMG_3089.webp') right bottom/contain no-repeat !important;
  transform:none;
}
.hero-tint{
  background:linear-gradient(90deg,rgba(11,27,30,.96) 0%,rgba(11,27,30,.88) 34%,rgba(11,27,30,.45) 64%,rgba(11,27,30,.14) 100%),linear-gradient(0deg,rgba(11,27,30,.3),rgba(11,27,30,.12));
}
@media(max-width:1100px){
  .hero-photo{background-position:72% bottom !important;background-size:cover !important}
}
@media(max-width:650px){
  .hero,.hero-layout{min-height:580px}
  .hero-photo{background-position:center bottom !important;background-size:cover !important}
}
