@font-face{font-family:Geist;src:url(/fonts/geist-sans-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-sans-latin-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-sans-latin-600-normal.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{--bg:#0e0e0e;--text:#f2f0eb;--muted:#9a9a96;--card:#292b2c;--button:#45494c;--button-hover:#565b5f;--line:#f2f0eb33;--radius:10px;--font:"Geist", "Avenir Next", "Segoe UI", sans-serif;--pad:20px;--column:720px;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--font);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;padding-bottom:calc(97px + env(safe-area-inset-bottom));margin:0;font-size:16px;font-weight:400;line-height:1.5}img{border:0}h1,h2,p,ul,figure,dl,dd,address{margin:0}address{font-style:normal}ul{padding:0}a{color:inherit}a:focus-visible{outline:2px solid var(--text);outline-offset:3px}.skip{z-index:10;background:var(--text);color:var(--bg);border-radius:8px;padding:8px 12px;font-size:14px;font-weight:600;text-decoration:none;position:absolute;top:12px;left:16px;transform:translateY(-160%)}.skip:focus{transform:none}.rule{background:var(--line);border:0;height:1px;margin:0}.header-inner,.footer-inner,.callbar-inner,.hero,.profile,.services{width:min(100%, var(--column));margin-inline:auto}.header-inner{min-height:107px;padding:4px var(--pad);justify-content:space-between;align-items:center;display:flex}.logo{line-height:0;display:block}.logo img{width:160px;height:99px;display:block}.call{background:var(--button);color:#fff;border-radius:999px;flex:none;place-items:center;width:48px;height:48px;text-decoration:none;transition:background-color .5s;display:grid;position:relative}.call:hover{background:var(--button-hover)}.call img{width:28px;height:28px;display:block}.call-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero{padding:32px var(--pad);flex-direction:column;gap:20px;display:flex}.eyebrow{color:var(--muted);font-size:14px;font-weight:400;line-height:1.65}h1{letter-spacing:0;font-size:40px;font-weight:600;line-height:1.05}.intro{color:var(--muted);font-size:16px;line-height:1.5}.profile{padding:0 var(--pad) 36px}.card{border-radius:var(--radius);background:var(--card);flex-direction:column;padding:18px 18px 24px;display:flex}.card-float{flex-direction:column;gap:24px;height:100%;display:flex}.shot{border-radius:var(--radius);margin:0;position:relative;overflow:hidden}.shot-dennis{aspect-ratio:323.5/322}.shot-service{aspect-ratio:322.5/269}.shot-img{max-width:none;display:block;position:absolute}.shot-img-dennis{object-fit:cover;width:100%;height:125.58%;top:-7.85%;left:0}.shot-img-stair{object-fit:cover;width:111.21%;height:100%;top:0;left:-8.32%}.shot-img-window{object-fit:cover;object-position:center;width:100%;height:100%;inset:0}.details{flex-direction:column;gap:24px;display:flex}.identity{flex-direction:column;gap:8px;display:flex}.identity h2{font-size:22px;font-weight:600;line-height:1.15}.role{color:var(--muted);font-size:16px;line-height:1.4}.contacts{flex-direction:column;gap:16px;display:flex}.contact{flex-direction:column;gap:6px;display:flex}.contact dt{font-size:14px;font-weight:600;line-height:1.4}.contact dd{font-size:16px;font-weight:400;line-height:1.4}.contact a{text-decoration:none}.contact a:hover,.contact a:focus-visible{text-decoration:underline}.services{padding:0 var(--pad) 36px;flex-direction:column;display:flex}.services .eyebrow{margin-top:28px;margin-bottom:28px}.service-layout{flex-direction:column;display:flex}.service-layout .shot-stair,.service-layout .shot-window{margin-bottom:20px}.service-paint{margin-bottom:36px}.service h2{margin-bottom:12px;font-size:28px;font-weight:600;line-height:1.18}.service ul{color:var(--muted);padding-left:24px;font-size:16px;list-style:outside}.service li{line-height:1.65}.service li::marker{color:var(--muted)}.footer-inner{padding:28px var(--pad) 52px;flex-direction:column;gap:28px;display:flex}.address{flex-direction:column;gap:10px;display:flex}.footer-name{color:var(--text);font-size:15px;font-weight:500;line-height:1.4}.address p,.copyright{color:var(--muted);font-size:14px;line-height:1.4}.footer-side{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.callbar{z-index:30;border-top:1px solid var(--line);background:var(--bg);padding:12px var(--pad) calc(28px + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0}.call-wide{border-radius:var(--radius);background:var(--button);color:#fff;justify-content:center;align-items:center;gap:9px;height:56px;font-size:15px;font-weight:600;line-height:1;text-decoration:none;display:flex}.call-wide:hover{background:var(--button-hover)}.call-wide img{width:28px;height:28px;display:block}header{z-index:40;background:var(--bg);position:sticky;top:0}@media (width<=359px){h1{font-size:34px}}@media (width>=1200px){:root{--pad:clamp(40px, 7.34375vw, 94px);--column:1280px;--split:clamp(36px, 4.84375vw, 62px);--header-height:123px}body{padding-bottom:0}.header-inner{min-height:0;padding:4px var(--pad)}.logo img{width:186px;height:115px}.call{border-radius:var(--radius);justify-content:center;align-items:center;gap:9px;width:auto;height:56px;padding:0 28px 0 22px;display:inline-flex}.call img{width:28px;height:29px}.call-label{clip:auto;white-space:nowrap;width:auto;height:auto;margin:0;font-size:15px;font-weight:600;line-height:1;position:static;overflow:visible}header{transition:background-color .45s,backdrop-filter .45s}header.is-scrolled{backdrop-filter:blur(8px)saturate(1.1);background:#0e0e0eb8}.call:before{content:"";border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .5s;animation:1.8s ease-out infinite call-pulse;position:absolute;inset:0}.call:hover:before{opacity:1}.card-float{animation:8s ease-in-out infinite card-float}.shot-service .shot-img{transform-origin:50%;transition:transform .7s}.shot-service:hover .shot-img{transform:scale(1.05)}main{column-gap:var(--split);width:min(100%, var(--column));--main-pad:43px;padding:var(--main-pad) var(--pad);grid-template-columns:minmax(0,669fr) minmax(361px,361.5fr);align-items:start;row-gap:24px;margin-inline:auto;display:grid}.hero,.profile,.services{width:auto;margin-inline:0}.hero{grid-area:1/1;gap:24px;padding:0}.profile{grid-area:1/2/span 2;align-self:stretch;padding:0}.services{grid-area:2/1;gap:24px;padding:0}.hero .eyebrow,.services .eyebrow{font-size:16px}.services .eyebrow{margin:0}h1{font-size:64px;line-height:.96}.intro{font-size:18px;line-height:1.2}.card{top:calc(var(--header-height) + var(--main-pad));padding:18px 19px 24px;position:sticky}.details{gap:16px}.identity h2,.role,.contact dt,.contact dd{line-height:.96}.contacts{gap:12px}.contact{flex-direction:row;align-items:center;gap:12px}.contact dt{flex:none;width:auto;font-size:16px}.contact dd{text-align:right;white-space:nowrap;flex:1}.shot-service{border:1px solid #2a2a2a}.service-layout{grid-template-columns:1fr 1fr;grid-template-areas:"stair window""paint renovate";gap:24px;display:grid}.shot-stair{grid-area:stair}.shot-window{grid-area:window}.service-paint{grid-area:paint;margin-bottom:0}.service-window{grid-area:renovate}.service-layout .shot-stair,.service-layout .shot-window{margin-bottom:0}.service h2{font-size:30px}.footer-inner{padding:33px var(--pad);flex-direction:row;justify-content:space-between;align-items:flex-start;gap:24px}.footer-name{line-height:1.333}.address p,.copyright{line-height:1.286}.footer-side{align-self:flex-end;align-items:flex-end}.copyright{text-align:right}.callbar{display:none}}@keyframes call-pulse{0%{box-shadow:0 0 #f2f0eb47}70%{box-shadow:0 0 0 10px #f2f0eb00}to{box-shadow:0 0 #f2f0eb00}}@keyframes card-float{0%,to{translate:0}50%{translate:0 -5px}}@media (prefers-reduced-motion:reduce){header,.shot-service .shot-img,.call:before{transition:none}.call:before,.card-float{animation:none}}.made-by-nuji[data-astro-cid-gh5ign22]{opacity:.62;line-height:0;transition:opacity .2s;display:inline-block}.made-by-nuji[data-astro-cid-gh5ign22]:hover,.made-by-nuji[data-astro-cid-gh5ign22]:focus-visible{opacity:1}.made-by-nuji[data-astro-cid-gh5ign22] img[data-astro-cid-gh5ign22]{width:118px;height:auto;display:block}@media (width>=1200px){.made-by-nuji[data-astro-cid-gh5ign22] img[data-astro-cid-gh5ign22]{width:136px}}
