:root{--paper:#e9e7e1;--white:#f5f4ef;--ink:#1d1f1d;--soft:#656862;--red:#c92f2c;--dark:#222422;--gutter:clamp(20px,6vw,92px);--sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;--mono:ui-monospace,'SFMono-Regular',Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:4px}.skip-link{position:absolute;z-index:30;left:12px;top:-60px;padding:12px 18px;background:var(--ink);color:#fff}.skip-link:focus{top:12px}
.header{position:absolute;z-index:5;left:0;right:0;top:0;height:93px;padding:0 var(--gutter);display:grid;grid-template-columns:91px 1fr auto auto;gap:25px;align-items:center;color:#fff;background:linear-gradient(#101211a6,transparent)}.logo img{width:78px;height:78px;object-fit:contain}.header-location{font:9px/1.4 var(--mono);letter-spacing:.08em;color:#ffffffc9}.header nav{display:flex;gap:32px;font-size:11px}.header nav a,.header-cta{transition:opacity .2s}.header nav a:hover,.header-cta:hover{opacity:.7}.header-cta{font-size:11px;font-weight:700;border-bottom:1px solid #ffffff8a;padding:8px 0}.header-cta span{color:var(--red);padding-left:13px}
.hero{height:min(920px,100svh);min-height:620px;position:relative;overflow:hidden;background:#444}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%;filter:saturate(.72) brightness(.8);clip-path:inset(0 0 0 0);transition:clip-path 1.2s cubic-bezier(.2,.65,.25,1)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,16,15,.42),transparent 80%),linear-gradient(0deg,rgba(12,14,13,.62),transparent 62%)}.hero-copy{position:absolute;left:var(--gutter);bottom:clamp(55px,8vw,117px);color:white}.hero-services,.service-tag{font:10px/1.5 var(--mono);letter-spacing:.09em}.hero-services{display:flex;align-items:center;gap:11px;margin:0 0 22px;color:#f0f0eb}.hero-services i{width:4px;height:4px;background:var(--red);border-radius:50%}.hero h1{font-size:clamp(85px,14.8vw,218px);line-height:.73;letter-spacing:-.105em;font-weight:750;margin:0 0 32px}.hero h1 span{color:#fff}.hero-bottom{display:flex;align-items:center;gap:37px}.hero-bottom p{font-size:14px;line-height:1.45;font-weight:600;margin:0}.hero-button{min-width:174px;padding:16px 17px;background:var(--red);color:white;font-size:11px;font-weight:750;display:flex;justify-content:space-between;align-items:center;transition:background .2s,transform .2s}.hero-button:hover{background:#b32826;transform:translateY(-2px)}.hero-button span{font-size:17px}.hero-note{position:absolute;right:var(--gutter);bottom:32px;color:#fffe;font:8px var(--mono);letter-spacing:.1em}
.intro{min-height:550px;position:relative;padding:110px var(--gutter) 95px;overflow:hidden;isolation:isolate}.intro-wash{position:absolute;z-index:-1;width:73vw;height:340px;right:-13vw;top:104px;background:linear-gradient(176deg,#eeede8 0 35%,#dad9d3 36% 58%,#e9e7e1 59%);filter:drop-shadow(0 18px 14px #25272415);clip-path:polygon(0 21%,100% 0,100% 80%,0 100%)}.intro-side{position:absolute;left:var(--gutter);top:108px;font:8px/1.5 var(--mono);letter-spacing:.08em;color:#777a73;margin:0}.intro h2{font-size:clamp(50px,7vw,96px);line-height:.94;letter-spacing:-.075em;font-weight:650;margin:0 0 0 22%;position:relative;z-index:1}.intro h2 em,.screed-copy h2 em,.water-copy h2 em,.proof-words em,.quote h2 em{font-style:normal;color:var(--red)}.intro-copy{max-width:325px;font-size:13px;line-height:1.8;color:#5d605a;margin:31px 10% 20px auto;position:relative;z-index:1}.intro-link{display:block;width:max-content;margin-left:auto;margin-right:10%;font-size:11px;font-weight:700;border-bottom:1px solid #81837d;padding-bottom:8px}.intro-link span{color:var(--red);margin-left:18px}
.screeding{min-height:730px;position:relative;padding:95px var(--gutter) 90px;overflow:hidden}.screed-photo-wrap{position:absolute;left:30%;top:0;width:76%;height:100%;overflow:hidden;clip-path:polygon(8% 0,100% 0,100% 84%,0 100%)}.screed-photo-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#17191744,transparent 50%),linear-gradient(0deg,#1517144c,transparent 62%)}.screed-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 57%;filter:saturate(.65);transform:scale(1.04);transition:transform 1.4s ease}.screeding.is-revealed .screed-photo-wrap img{transform:scale(1)}.screed-copy{position:relative;z-index:1;top:79px;width:min(465px,42%);padding:0 0 28px}.service-tag{color:var(--red);margin:0 0 23px}.screed-copy h2,.water-copy h2,.pump-copy h2{font-size:clamp(48px,6.4vw,87px);letter-spacing:-.078em;line-height:.92;font-weight:650;margin:0}.screed-copy>p:not(.service-tag){max-width:340px;margin:22px 0 23px;font-size:13px;line-height:1.75;color:#555852}.plain-link{font-size:11px;font-weight:700;border-bottom:1px solid #7e817a;padding-bottom:9px}.plain-link span{margin-left:14px;color:var(--red)}.photo-caption{position:absolute;right:var(--gutter);bottom:51px;z-index:2;color:#fff;font:8px var(--mono);letter-spacing:.08em}
.waterproofing{min-height:560px;background:var(--dark);color:#f5f4ef;position:relative;overflow:hidden;padding:99px var(--gutter) 106px;clip-path:polygon(0 7%,100% 0,100% 100%,0 93%);margin-top:-51px;margin-bottom:-28px;isolation:isolate}.wet-shape{position:absolute;z-index:-1;right:-7%;top:-4%;width:63%;height:116%;background:linear-gradient(151deg,#555852,#858780 37%,#3a3d39 58%,#676a63);clip-path:polygon(19% 0,100% 7%,89% 100%,0 89%);filter:drop-shadow(0 22px 20px #0007)}.wet-shape:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(151deg,transparent 0 16px,#ffffff0b 17px,#05060512 20px,transparent 26px);opacity:.7}.wet-sheen{position:absolute;inset:13% 12%;border-top:1px solid #ffffff45;border-bottom:1px solid #1118;transform:rotate(-4deg)}.water-copy{max-width:570px;position:relative;z-index:1}.water-copy .service-tag{color:#ff8983}.water-copy h2{font-size:clamp(47px,6vw,80px)}.water-copy h2 em{color:#f0f0eb}.water-copy>p:not(.service-tag){max-width:390px;font-size:13px;line-height:1.8;color:#c2c4be;margin:25px 0 24px}.water-link{font-size:11px;font-weight:700;border-bottom:1px solid #b8bab4;padding-bottom:9px}.water-link span{margin-left:15px;color:#ff8983}
.pump{min-height:425px;padding:94px var(--gutter) 80px;position:relative;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.pump-red{position:absolute;z-index:-1;left:-7%;bottom:-62%;width:61%;height:90%;background:var(--red);clip-path:polygon(0 22%,100% 0,89% 100%,0 82%);opacity:.95}.pump-copy{max-width:460px}.pump-copy .service-tag{margin-bottom:18px}.pump-copy h2{font-size:clamp(51px,6vw,80px)}.pump-copy>p:not(.service-tag){font-size:13px;line-height:1.75;color:#575a54;max-width:320px;margin-top:20px}.pump-link{position:relative;z-index:1;margin:142px 16% 0 0;font-size:11px;font-weight:700;border-bottom:1px solid #777a74;padding-bottom:9px}.pump-link span{color:var(--red);margin-left:15px}
.layers{min-height:690px;display:grid;grid-template-columns:.7fr 1.3fr;gap:3%;align-items:center;padding:75px var(--gutter) 108px;background:#d5d4cd;position:relative;overflow:hidden;clip-path:polygon(0 0,100% 5%,100% 100%,0 93%)}.layers:before{content:"";position:absolute;inset:-20%;background:radial-gradient(ellipse at 40% 60%,#f0efea 0,transparent 52%);z-index:0}.layers-heading{position:relative;z-index:1;align-self:start;padding-top:115px}.layers-heading h2{font-size:clamp(49px,6vw,82px);line-height:.95;letter-spacing:-.08em;font-weight:650;margin:0}.layers-heading>p:last-child{max-width:280px;color:#5f625b;font-size:12px;line-height:1.75;margin-top:24px}.material-cut{height:465px;position:relative;z-index:1;transform:rotate(-3deg);filter:drop-shadow(0 20px 14px #181a182a)}.material{position:absolute;left:7%;right:1%;height:105px;display:flex;align-items:center;padding-left:29%;clip-path:polygon(0 7%,18% 0,43% 3%,69% 0,100% 5%,99% 83%,78% 91%,51% 87%,28% 100%,0 89%);box-shadow:0 15px 15px #0003;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.material span{font:9px var(--mono);letter-spacing:.1em;color:#2b2d29;text-shadow:0 1px #fff7}.material b{position:absolute;inset:0;background:repeating-linear-gradient(174deg,transparent 0 7px,#ffffff16 8px,#00000010 10px,transparent 13px);opacity:.6}.slab-finish{top:37px;left:18%;right:0;height:68px;background:linear-gradient(170deg,#f1f0eb,#c7c6bf)}.slab-screed{top:110px;right:8%;height:123px;background:linear-gradient(174deg,#969790,#6f716b 56%,#858780)}.slab-water{top:232px;left:10%;right:12%;height:41px;background:linear-gradient(174deg,#312f2d,#151615);clip-path:polygon(0 15%,100% 0,100% 70%,0 100%)}.slab-base{top:269px;left:3%;right:5%;height:147px;background:linear-gradient(174deg,#a8a79f,#74756f 40%,#5f615b);clip-path:polygon(0 8%,100% 0,98% 86%,64% 100%,25% 92%,0 100%)}.material-cut.is-shifted .slab-finish{transform:translateY(-5px) translateX(7px);transition-delay:0ms}.material-cut.is-shifted .slab-screed{transform:translateY(2px) translateX(-3px);transition-delay:80ms}.material-cut.is-shifted .slab-water{transform:translateY(4px);transition-delay:160ms}.material-cut.is-shifted .slab-base{transform:translateY(1px) translateX(4px);transition-delay:240ms}
.proof{min-height:775px;position:relative;padding:100px var(--gutter) 80px;overflow:hidden}.proof-image{position:absolute;overflow:hidden}.proof-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.67)}.proof-one{left:0;top:45px;width:59%;height:560px;clip-path:polygon(0 0,100% 4%,91% 100%,0 92%)}.proof-one img{object-position:center 61%}.proof-one span{position:absolute;bottom:37px;left:var(--gutter);z-index:1;color:#fff;font:8px var(--mono);letter-spacing:.09em}.proof-words{position:absolute;z-index:2;left:48%;top:190px;font-size:clamp(59px,9vw,126px);font-weight:700;letter-spacing:-.09em;line-height:.84;margin:0;color:#f5f4ef;text-shadow:0 4px 21px #0004}.proof-words em{color:var(--red)}.proof-two{right:3%;bottom:32px;width:37%;height:355px;clip-path:polygon(7% 0,100% 5%,94% 100%,0 94%)}.proof-two img{object-position:center 53%}.proof-note{position:absolute;left:var(--gutter);bottom:68px;max-width:220px;font-size:11px;line-height:1.7;color:#5d605a}
.quote{padding:105px var(--gutter) 112px;background:var(--white);display:grid;grid-template-columns:.75fr 1.25fr;gap:12%;position:relative;clip-path:polygon(0 4%,100% 0,100% 100%,0 100%)}.quote-lead{padding-top:12px}.quote h2{font-size:clamp(55px,7vw,94px);line-height:.91;letter-spacing:-.09em;font-weight:650;margin:0}.quote-lead>p:not(.service-tag){color:#656862;font-size:12px;line-height:1.7;margin:23px 0}.quote-contact{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:27px}.quote-contact a{font-size:11px;font-weight:700}.quote-contact span{color:var(--red);margin-left:9px}.quote-form{padding-top:23px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:33px;margin-bottom:24px}.quote-form label{display:flex;flex-direction:column;gap:6px;font-size:10px;font-weight:700}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-width:0;border:0;border-bottom:1px solid #c1c1ba;background:transparent;border-radius:0;padding:10px 0;color:var(--ink);font-size:13px;outline:0;appearance:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--red);box-shadow:0 1px var(--red)}.quote-form textarea{resize:vertical;min-height:68px}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#92948e;font-weight:400}.quote-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23555753' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center}.quote-form label small{font:8px var(--mono);color:#858780;margin-left:auto}.quote-form .details{margin-top:2px}.quote-form button{margin-top:19px;width:100%;height:54px;border:0;background:var(--red);color:white;padding:0 18px;display:flex;justify-content:space-between;align-items:center;font-weight:750;font-size:11px;cursor:pointer;transition:background .2s}.quote-form button:hover{background:#b32826}.quote-form button span{font-size:18px}.form-status{font-size:10px;min-height:1em;margin:8px 0 0;color:#555}
.footer{background:var(--dark);color:#f4f3ed;min-height:132px;padding:26px var(--gutter) 19px;display:grid;grid-template-columns:80px 1fr auto auto auto;gap:18px;align-items:center}.footer-logo img{width:67px;height:67px;object-fit:contain}.footer-place{font-size:10px;color:#b9bbb5}.footer-nav{display:flex;gap:20px;font-size:10px}.footer-contact{display:flex;flex-direction:column;gap:5px;font-size:10px}.footer-credit{font-size:9px;color:#d0d2cc}.footer-bottom{grid-column:1/-1;padding-top:12px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;color:#a9aca5;font:8px var(--mono);letter-spacing:.08em}.footer-bottom a{color:inherit}.mobile-quote{display:none}
.photo-reveal{opacity:0;transform:translateX(2%);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.65,.25,1)}.photo-reveal.revealed{opacity:1;transform:translateX(0)}.level-edge{clip-path:polygon(0 9%,100% 0,100% 100%,0 100%);transition:clip-path 1.1s cubic-bezier(.3,.7,.25,1)}.level-edge.is-level{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
@media(max-width:760px){.header{height:77px;grid-template-columns:66px 1fr auto;gap:13px}.logo img{width:61px;height:61px}.header-location{font-size:8px}.header nav{display:none}.header-cta{font-size:10px}.hero{min-height:650px;height:93svh;max-height:890px}.hero-photo{object-position:57% center}.hero-shade{background:linear-gradient(90deg,#10121055,transparent),linear-gradient(0deg,#101210a6,transparent 72%)}.hero-copy{left:21px;right:18px;bottom:73px}.hero-services{font-size:8px;gap:8px;margin-bottom:21px}.hero h1{font-size:clamp(82px,17vw,130px);margin-bottom:25px}.hero-bottom{gap:23px}.hero-bottom p{font-size:12px}.hero-button{min-width:148px;padding:14px 13px;font-size:10px}.hero-note{right:20px;bottom:24px;font-size:7px}.intro{min-height:484px;padding:80px 22px 76px}.intro-wash{width:106vw;height:320px;right:-28vw;top:80px}.intro-side{position:static;margin:0 0 48px;font-size:7px}.intro h2{font-size:clamp(51px,10.7vw,79px);margin-left:8%}.intro-copy{font-size:12px;margin:24px 2% 16px auto;max-width:280px}.intro-link{margin-right:2%}.screeding{min-height:750px;padding:65px 21px 80px}.screed-photo-wrap{left:15%;top:190px;width:105%;height:545px;clip-path:polygon(5% 0,100% 7%,100% 100%,0 93%)}.screed-copy{top:0;width:81%;padding:0}.screed-copy h2{font-size:clamp(54px,11vw,78px)}.screed-copy>p:not(.service-tag){max-width:290px;background:#e9e7e1;padding:8px 11px 9px 0;margin-top:15px}.screed-copy .plain-link{display:inline-block;background:#e9e7e1;padding:0 5px 8px 0}.photo-caption{right:20px;bottom:34px;font-size:7px}.waterproofing{min-height:605px;padding:96px 22px 95px;clip-path:polygon(0 4%,100% 0,100% 100%,0 96%);margin-top:-38px;margin-bottom:-20px}.wet-shape{width:95%;height:67%;top:auto;bottom:-8%;right:-23%;clip-path:polygon(15% 0,100% 8%,88% 100%,0 86%)}.water-copy{max-width:95%}.water-copy h2{font-size:clamp(49px,10vw,72px)}.water-copy>p:not(.service-tag){max-width:330px}.pump{min-height:525px;padding:86px 22px 70px;display:block}.pump-red{left:-17%;width:85%;height:50%;bottom:-13%}.pump-copy{position:relative;z-index:1}.pump-copy h2{font-size:62px}.pump-copy>p:not(.service-tag){max-width:290px;background:#e9e7e1;padding:3px 8px 6px 0}.pump-link{display:inline-block;margin:19px 0 0}.hose{right:-12%;bottom:27px;width:94%;height:130px}.layers{min-height:720px;display:block;padding:75px 21px 90px;clip-path:polygon(0 0,100% 3%,100% 100%,0 96%)}.layers-heading{padding-top:0}.layers-heading h2{font-size:64px}.layers-heading>p:last-child{max-width:270px}.material-cut{height:390px;margin:17px -7px 0;transform:rotate(-3deg) scale(.96);transform-origin:center}.material{height:88px;padding-left:27%}.slab-finish{top:23px;height:58px}.slab-screed{top:83px;height:102px}.slab-water{top:185px;height:36px}.slab-base{top:219px;height:125px}.proof{min-height:780px;padding:50px 0 70px}.proof-one{top:34px;width:79%;height:470px;clip-path:polygon(0 0,100% 4%,91% 100%,0 94%)}.proof-one span{left:21px;bottom:25px;font-size:7px}.proof-words{left:32%;top:248px;font-size:clamp(62px,14vw,95px)}.proof-two{width:50%;height:287px;right:2%;bottom:28px}.proof-note{left:21px;bottom:42px;font-size:9px;max-width:148px}.quote{padding:83px 22px 88px;display:block;clip-path:polygon(0 2%,100% 0,100% 100%,0 100%)}.quote h2{font-size:66px}.quote-lead>p:not(.service-tag){margin:17px 0}.quote-contact{margin-top:21px}.quote-form{padding-top:38px}.form-pair{gap:20px;margin-bottom:22px}.footer{grid-template-columns:58px 1fr auto;gap:10px;padding:23px 21px 16px}.footer-logo img{width:54px;height:54px}.footer-place{font-size:9px}.footer-contact{grid-column:2;grid-row:2;font-size:9px}.footer-nav{grid-column:2/4;grid-row:3;display:flex;flex-wrap:wrap;gap:14px;font-size:9px}.footer-credit{grid-column:3;grid-row:1;font-size:8px}.footer-bottom{font-size:7px}.mobile-quote{position:fixed;z-index:8;left:18px;right:18px;bottom:calc(11px + env(safe-area-inset-bottom));height:49px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;background:var(--red);color:white;font-size:11px;font-weight:750;box-shadow:0 5px 17px #1113;transition:opacity .2s,transform .2s}.mobile-quote span{font-size:17px}.mobile-quote.hidden{opacity:0;transform:translateY(12px);pointer-events:none}body{padding-bottom:calc(67px + env(safe-area-inset-bottom))}}
@media(max-width:420px){.hero{min-height:620px}.hero h1{font-size:clamp(74px,18.5vw,94px)}.hero-bottom{gap:13px}.hero-bottom p{font-size:11px}.hero-button{min-width:133px}.intro h2{font-size:50px;margin-left:0}.intro-side{margin-bottom:43px}.intro-copy{margin-right:0}.intro-link{margin-right:0}.screed-copy{width:90%}.screed-copy h2{font-size:54px}.screed-photo-wrap{top:210px;height:505px;left:10%;width:112%}.water-copy h2{font-size:47px}.waterproofing{min-height:570px}.pump-copy h2{font-size:55px}.pump{min-height:490px}.layers-heading h2{font-size:58px}.material-cut{margin-left:-19px;margin-right:-19px;transform:rotate(-3deg) scale(.91)}.proof-words{font-size:61px;left:28%}.proof-one{height:431px}.proof-two{height:253px;width:53%}.quote h2{font-size:60px}.form-pair{grid-template-columns:1fr}.quote-form{padding-top:28px}.footer{grid-template-columns:50px 1fr;row-gap:10px}.footer-nav{grid-column:2;grid-row:3}.footer-credit{grid-column:2;grid-row:4}.footer-contact{grid-column:2;grid-row:2}.footer-bottom{margin-top:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.photo-reveal{opacity:1!important;transform:none!important}}

.header-cta{min-height:44px;display:flex;align-items:center}.quote-form label{font-size:13px}.quote-form input,.quote-form select{min-height:46px}.quote-form textarea{min-height:82px}.footer-nav a{padding:8px 0}.water-link,.plain-link,.pump-link{min-height:44px;display:inline-flex;align-items:center}

.footer-nav a{transition:color .2s}.footer-nav a:hover{color:#ff8983}.hero-button span,.quote-form button span,.mobile-quote span{transition:transform .2s}.hero-button:hover span,.quote-form button:hover span,.mobile-quote:hover span{transform:translateX(3px)}

/* Final readability and touch-target pass */
.hero-bottom p,.intro-copy,.screed-copy>p:not(.service-tag),.water-copy>p:not(.service-tag),.pump-copy>p:not(.service-tag),.quote-lead>p:not(.service-tag),.proof-note{font-size:15px}.header nav,.quote-contact a,.footer-contact{font-size:13px}.quote-form label{font-size:14px}.quote-form input,.quote-form select,.quote-form textarea{font-size:16px}.quote-form button,.hero-button{font-size:13px}.footer-nav{font-size:12px}.footer-credit{font-size:11px}

@media(prefers-reduced-motion:reduce){.material-cut.is-shifted .material{transition-delay:0ms!important}}
