:root{--teal:#7ddcd1;--teal-light:#bbfaf2;--teal-dark:#1f7a70;--ink:#111111;--charcoal:#2d2d2d;--grey:#54595f;--grey-light:#ececec;--white:#ffffff;--radius:6px;--max:1200px;--gutter:20px;--header-h:76px;--font-body:"Archivo", "Roboto", system-ui, -apple-system, "Segoe UI", sans-serif;--font-head:"Anybody", "Archivo", system-ui, sans-serif;--font-btn:"Teko", "Archivo", sans-serif}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--ink);background:var(--white)}img{max-width:100%;height:auto;display:block}a{color:var(--teal-dark)}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}h1,h2,h3,h4,h5,h6{font-family:var(--font-head);line-height:1.15;margin:0 0 .5em;color:var(--ink)}p{margin:0 0 1em}figure{margin:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}.section-container{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.section-heading-lg{font-size:clamp(2rem, 6vw, 3.25rem);font-weight:700}.two-col-text p{color:#333}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:var(--white);box-shadow:0 1px 0 rgb(0 0 0 / .08)}.header-inner{max-width:var(--max);margin:0 auto;height:var(--header-h);padding:0 var(--gutter);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.header-nav-col{display:flex;align-items:center}.header-logo-col{display:flex;justify-content:center}.header-logo-link img{width:64px;height:64px;object-fit:contain}.header-cta-col{display:flex;justify-content:flex-end}.page-top-spacer{height:var(--header-h)}.main-nav{display:none}.main-nav ul,.dropdown-nav ul{list-style:none;margin:0;padding:0}.main-nav ul{display:flex;gap:28px}.main-nav a,.dropdown-nav a{font-family:var(--font-btn);font-size:1.35rem;letter-spacing:.02em;text-transform:uppercase;text-decoration:none;color:var(--ink)}.main-nav a:hover,.main-nav a.active{color:var(--teal-dark)}.main-nav a.active{box-shadow:inset 0 -2px 0 var(--teal)}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:10px;border:0;border-radius:var(--radius);background:#fff0;color:var(--ink);cursor:pointer}.menu-toggle svg{width:24px;height:24px;fill:currentColor}.menu-toggle .icon-close{display:none}.site-header.menu-open .menu-toggle .icon-open{display:none}.site-header.menu-open .menu-toggle .icon-close{display:block}.dropdown-nav{display:none;position:absolute;top:var(--header-h);left:0;right:0;background:var(--white);border-top:1px solid var(--grey-light);box-shadow:0 10px 20px rgb(0 0 0 / .08)}.site-header.menu-open .dropdown-nav{display:block}.dropdown-nav li{border-bottom:1px solid var(--grey-light)}.dropdown-nav a{display:block;padding:14px var(--gutter)}.dropdown-nav a.active{background:var(--teal-light)}.btn-call-now{display:inline-block;padding:8px 16px;border-radius:var(--radius);background:var(--ink);color:var(--white);text-decoration:none;font-family:var(--font-btn);font-size:1.25rem;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.btn-call-now:hover{background:var(--teal-dark)}@media (min-width:1025px){:root{--header-h:96px}.main-nav{display:block}.menu-toggle,.dropdown-nav,.site-header.menu-open .dropdown-nav{display:none}.header-logo-link img{width:84px;height:84px}.btn-call-now{padding:10px 24px;font-size:1.4rem}}.btn-teko,.btn-estimate-dark,.btn-form-submit{display:inline-block;padding:10px 32px;border:2px solid var(--ink);border-radius:var(--radius);background:var(--teal);color:var(--ink);text-decoration:none;cursor:pointer;font-family:var(--font-btn);font-size:1.5rem;line-height:1.2;letter-spacing:.03em;text-transform:uppercase}.btn-teko:hover,.btn-form-submit:hover{background:var(--ink);color:var(--white)}.btn-estimate-dark{background:var(--ink);color:var(--white)}.btn-estimate-dark:hover{background:var(--teal);color:var(--ink)}.anim-grow,.anim-shrink{transition:transform .25s ease}.anim-grow:hover{transform:scale(1.06)}.anim-shrink:hover{transform:scale(.92)}.social-icons{display:flex;gap:12px;margin-top:8px}.social-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--white)}.social-icon-btn svg{width:20px;height:20px;fill:currentColor}.social-icon-btn:hover{background:var(--teal-dark)}.follow-heading,.about-follow-heading{font-size:1rem;margin:24px 0 4px;text-transform:uppercase;letter-spacing:.08em}.home-hero{position:relative;color:var(--white);background:#1b1b1b url(/wp-content/uploads/deft-site/assets/images/bg1.jpg) center / cover no-repeat}.home-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgb(0 0 0 / .72),rgb(0 0 0 / .35))}.home-hero-inner{position:relative;max-width:var(--max);margin:0 auto;padding:72px var(--gutter) 88px;min-height:70vh;display:flex;flex-direction:column;justify-content:center}.home-hero-spacer{height:0}.home-hero-subtitle{color:var(--teal-light);font-family:var(--font-btn);font-weight:500;font-size:1.6rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.25em}.home-hero-title{color:var(--white);font-size:clamp(2.4rem, 8vw, 4.75rem);font-weight:700;max-width:14ch}.home-hero-tagline{font-size:clamp(1.05rem, 2.6vw, 1.35rem);max-width:38ch;color:#f1f1f1}.home-hero-cta{margin-top:12px}.home-about,.about-story-section{padding:64px 0}.home-about-grid{display:grid;gap:32px;align-items:center}.home-about-img-col img,.about-story-img-col img{border-radius:var(--radius);width:100%}.home-about-lead,.about-story-sub{font-family:var(--font-btn);font-size:1.6rem;color:var(--grey);text-transform:uppercase;letter-spacing:.03em}@media (min-width:768px){.home-about-grid{grid-template-columns:1fr 1fr;gap:56px}}.stair-cta-banner{position:relative;color:var(--white);text-align:center;background:var(--charcoal) url(/wp-content/uploads/deft-site/assets/images/bg-2.jpg) center / cover no-repeat}.stair-cta-banner::before{content:"";position:absolute;inset:0;background:rgb(0 0 0 / .6)}.stair-cta-inner{position:relative;max-width:900px;margin:0 auto;padding:72px var(--gutter)}.stair-cta-title,.about-cta-title{color:var(--white);font-size:clamp(1.8rem, 5vw, 2.75rem);margin-bottom:24px}.home-services{padding:64px 0;background:var(--grey-light)}.home-services-header{text-align:center;margin-bottom:32px}.home-services-subtitle{color:var(--grey);font-size:1.1rem}.services-cards-grid{display:grid;gap:24px}.service-card{background:var(--white);border-radius:var(--radius);overflow:hidden;padding-bottom:20px;box-shadow:0 2px 10px rgb(0 0 0 / .06);text-align:center}.service-card-img-wrap img{width:100%;aspect-ratio:1 / 1;object-fit:cover}.service-card-title{font-size:1.5rem;margin:18px 16px 6px}.service-card-desc{margin:0 16px;color:#444}.home-services-footer{text-align:center;margin-top:36px}.home-services-note{margin-top:16px;color:var(--grey);font-size:.95rem}@media (min-width:768px){.services-cards-grid{grid-template-columns:repeat(3,1fr)}}.home-testimonials{padding:64px 0;background:var(--charcoal);color:var(--white)}.testimonials-heading{color:var(--white);text-align:center;font-size:clamp(2rem, 6vw, 3rem);margin-bottom:32px}.testimonials-grid{display:grid;gap:24px}.testimonial-card{position:relative;background:#383838;border-radius:var(--radius);padding:28px 24px 24px;border-top:4px solid var(--teal)}.testimonial-text{color:#e8e8e8;margin-bottom:20px}.testimonial-author{display:flex;align-items:center;gap:12px}.testimonial-author img{width:56px;height:56px;border-radius:50%;object-fit:cover}.testimonial-name{font-weight:700;color:var(--teal-light)}.testimonial-quote-icon{position:absolute;top:18px;right:20px;width:30px;height:30px;opacity:.35}.testimonial-quote-icon svg{width:100%;height:100%;fill:var(--teal)}@media (min-width:900px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}.counter-section{padding:56px 0;background:var(--teal);text-align:center}.counter-title{font-family:var(--font-btn);font-size:2rem;text-transform:uppercase;letter-spacing:.05em}.counter-number-wrap{font-family:var(--font-head);font-weight:700;font-size:clamp(3.5rem, 14vw, 6rem);line-height:1}.home-portfolio{padding:64px 0}.home-portfolio-inner{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);text-align:center}.portfolio-heading{font-size:clamp(2rem, 6vw, 3rem)}.portfolio-desc{max-width:760px;margin:0 auto 28px;color:#444}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px}.gallery-item{position:relative;display:block;overflow:hidden;border-radius:4px;background:var(--grey-light)}.gallery-item img{width:100%;aspect-ratio:1 / 1;object-fit:cover;transition:transform .35s ease}.gallery-overlay{position:absolute;inset:0;background:#fff0;transition:background .25s ease}.gallery-item:hover .gallery-overlay,.gallery-item:focus-visible .gallery-overlay{background:rgb(0 0 0 / .25)}.hover-grow .gallery-item:hover img{transform:scale(1.06)}.bordered-services .gallery-item,.bordered-projects .gallery-item{border:3px solid var(--white);box-shadow:0 0 0 1px var(--grey-light)}@media (min-width:600px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:900px){.gallery-grid{grid-template-columns:repeat(4,1fr);gap:10px}.gallery-grid.cols-5{grid-template-columns:repeat(5,1fr)}}.home-contact{padding:64px 0;background:var(--grey-light);scroll-margin-top:var(--header-h)}.home-contact-container{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);display:grid;gap:40px}.contact-heading{font-size:clamp(2rem, 6vw, 3rem)}.contact-intro{color:#333}.contact-form{display:grid;gap:16px}.form-field{display:grid;gap:6px}.form-label{font-weight:700}.required{color:#b42318}.form-row-two{display:grid;gap:12px;grid-template-columns:1fr 1fr}.form-input,.form-textarea{width:100%;padding:12px;font:inherit;color:var(--ink);background:var(--white);border:1px solid #bdbdbd;border-radius:var(--radius)}.form-input:focus,.form-textarea:focus{outline:2px solid var(--teal);border-color:var(--teal-dark)}.form-textarea{min-height:140px;resize:vertical}.form-sublabel{font-size:.85rem;color:var(--grey);margin-top:4px}.btn-form-submit{justify-self:start}.form-status:empty{display:none}.form-status{font-weight:600}.contact-info-col{display:grid;align-content:start;gap:8px}.contact-phone-label,.contact-socials-heading{font-size:1.25rem;margin:0}.contact-phone-number{font-size:1.5rem;font-weight:700;margin-bottom:16px}.contact-phone-number a{color:var(--ink);text-decoration:none}.contact-phone-number a:hover{color:var(--teal-dark)}@media (min-width:900px){.home-contact-container{grid-template-columns:2fr 1fr;gap:64px}}.services-hero,.projects-hero{background:var(--charcoal);color:var(--white);text-align:center}.services-hero-inner{max-width:900px;margin:0 auto;padding:64px var(--gutter)}.services-hero-title,.projects-hero-title{color:var(--white);font-size:clamp(2.4rem, 8vw, 4rem);margin:0}.services-hero-subtitle{color:var(--teal-light);font-size:1.15rem;margin:12px 0 0}.projects-hero{padding:56px 0}.service-category-section{padding:40px 0}.service-category-section:nth-of-type(even){background:#f6f6f6}.service-category-section.first-category{padding-top:56px}.service-category-section.last-category{padding-bottom:72px}.service-category-inner{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.services-main-heading{font-size:clamp(2rem, 6vw, 3rem);text-align:center}.services-main-sub{text-align:center;color:var(--grey);max-width:720px;margin:0 auto 40px}.category-title{font-size:clamp(1.6rem, 4.5vw, 2.25rem);border-left:6px solid var(--teal);padding-left:12px}.category-desc{max-width:900px;color:#333;margin-bottom:20px}.about-hero-section{background:var(--charcoal);color:var(--white)}.about-hero-grid{max-width:var(--max);margin:0 auto;display:grid}.about-hero-text-col{padding:56px var(--gutter);display:flex;flex-direction:column;justify-content:center}.about-hero-spacer{height:0}.about-hero-title{color:var(--white);font-size:clamp(2.2rem, 7vw, 3.75rem)}.about-hero-text-col .two-col-text p{color:#e8e8e8}.about-hero-img-col img{width:100%;height:100%;object-fit:cover}@media (min-width:900px){.about-hero-grid{grid-template-columns:1fr 1fr}.about-hero-text-col{padding:80px 48px 80px var(--gutter)}}.about-why-section{padding:64px 0}.about-why-header{text-align:center;margin-bottom:36px}.about-why-title{font-size:clamp(2rem, 6vw, 3rem)}.about-why-subtitle{font-family:var(--font-btn);font-size:1.6rem;text-transform:uppercase;color:var(--grey)}.why-features-grid{display:grid;gap:24px}.feature-box{display:flex;gap:18px;align-items:flex-start;padding:24px;border-radius:var(--radius);background:var(--grey-light)}.feature-icon-circle{flex:0 0 56px;width:56px;height:56px;border-radius:50%;background:var(--teal);display:flex;align-items:center;justify-content:center}.feature-icon-circle svg{width:26px;height:26px;fill:var(--ink)}.feature-title{font-size:1.35rem;margin-bottom:6px}.feature-desc{margin:0;color:#333}@media (min-width:768px){.why-features-grid{grid-template-columns:1fr 1fr}}.projects-gallery-section{padding:40px 0 24px}.projects-gallery-inner{max-width:1400px;margin:0 auto;padding:0 var(--gutter)}.projects-cta-section{background:var(--teal);text-align:center}.projects-cta-inner{max-width:900px;margin:0 auto;padding:56px var(--gutter)}.projects-cta-title{font-size:clamp(1.8rem, 5vw, 2.6rem);margin-bottom:20px}.privacy-main{max-width:820px;margin:0 auto;padding:calc(var(--header-h) + 40px) var(--gutter) 64px}.privacy-main h1{font-size:clamp(2.2rem, 7vw, 3.25rem)}.privacy-main h2{font-size:1.5rem;margin-top:1.6em}.privacy-main p{color:#333;overflow-wrap:anywhere}.site-footer-wrap{background:var(--ink);color:#cfcfcf}.footer-logo-section{padding:40px var(--gutter) 24px}.footer-logo-container{display:flex;justify-content:center}.footer-logo-container img{width:140px;height:140px;object-fit:contain}.footer-bottom-bar{border-top:1px solid #2a2a2a}.footer-bottom-inner{max-width:var(--max);margin:0 auto;padding:16px var(--gutter);display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.9rem}.footer-bottom-inner p{margin:0}.footer-bottom-inner a{color:var(--teal-light);text-decoration:none}.footer-bottom-inner a:hover{text-decoration:underline}.lb-open{overflow:hidden}.lb{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgb(0 0 0 / .92);padding:56px 12px}.lb.is-open{display:flex}.lb-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:4px}.lb-btn{position:absolute;width:48px;height:48px;border:0;border-radius:50%;background:rgb(255 255 255 / .12);color:var(--white);font-size:28px;line-height:1;cursor:pointer}.lb-btn:hover{background:rgb(255 255 255 / .25)}.lb-close{top:12px;right:12px}.lb-prev{left:12px;top:50%;transform:translateY(-50%)}.lb-next{right:12px;top:50%;transform:translateY(-50%)}.lb-count{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#ddd;font-size:.9rem}