@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--red:#b30d12;--dark:#171717;--muted:#666;--light:#f7f7f7;--max:1220px;color:#111;font-synthesis:none;font-family:Inter,Arial,sans-serif;line-height:1.55}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#fff;margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--max);margin:auto;padding-left:24px;padding-right:24px}.header{z-index:50;background:#fff;height:98px;position:relative}.nav{justify-content:space-between;align-items:center;height:100%;display:flex}.brand img{width:154px}.nav nav{align-items:center;gap:38px;height:100%;display:flex}.nav nav>a{align-items:center;height:100%;font-size:14px;font-weight:500;display:flex;position:relative}.nav nav>a.active,.nav nav>a:hover{color:var(--red)}.nav nav>a.active:after{content:"";background:var(--red);height:2px;position:absolute;bottom:25px;left:0;right:0}.nav-actions{align-items:center;gap:16px;display:flex}.lang{color:#555;cursor:pointer;background:0 0;border:0;font-weight:700}.button{background:var(--red);border:1px solid var(--red);color:#fff;letter-spacing:.02em;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;gap:14px;padding:14px 23px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 5px 14px #940b1129}.button:hover{background:#93090e}.button.outline{color:#111;box-shadow:none;background:#fff0;border-color:#777}.button.light{color:#111;background:#fff;border-color:#fff}.menu,.mobile-actions{display:none}.hero{background-position:50%;background-size:cover;height:515px}.hero-inner{align-items:center;height:100%;display:flex}.hero h1{letter-spacing:-2px;margin:0 0 14px;font-size:47px;line-height:1.07}.hero h1 span{color:var(--red)}.red-line,.about-copy i{background:var(--red);width:50px;height:3px;margin:14px 0;display:block}.hero p{width:420px;margin:0 0 24px;font-size:15px}.hero-buttons{gap:14px;display:flex}.products{padding:64px 0 58px}.section-heading{text-align:center;margin-bottom:36px}.section-heading small,.about small,.contact small,.benefit-detail small{color:var(--red);font-size:12px;font-weight:800}.section-heading h2{margin:4px 0;font-size:30px}.section-heading i{background:var(--red);width:50px;height:3px;margin:12px auto;display:block}.product-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.product-card{background:#fff;border:1px solid #eee;border-radius:9px;overflow:hidden;box-shadow:0 3px 16px #00000017}.product-card>img{object-fit:cover;width:100%;height:175px}.product-body{text-align:center;padding:22px 18px 20px;position:relative}.round-icon{background:var(--red);color:#fff;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:57px;height:57px;display:flex}.round-icon svg{width:27px}.product-body .round-icon{position:absolute;top:-31px;left:50%;transform:translate(-50%)}.product-body h3{margin:16px 0 7px;font-size:17px}.product-body p{color:#3f3f3f;min-height:58px;margin:0;font-size:12px}.product-body>a{color:var(--red);justify-content:center;align-items:center;gap:7px;margin-top:15px;font-size:11px;font-weight:800;display:flex}.values{color:#fff;background:linear-gradient(120deg,#9c0005,#bd1116 58%,#9b0004);padding:39px 0}.values-grid{grid-template-columns:repeat(3,1fr);display:grid}.values article{border-right:1px solid #ffffff45;gap:20px;padding:0 30px;display:flex}.values article:first-child{padding-left:0}.values article:last-child{border:0}.value-icon{border:1px solid #fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:67px;height:67px;display:flex}.value-icon svg{width:34px;height:34px}.values h3{margin:0 0 5px;font-size:17px}.values p{opacity:.9;margin:0;font-size:12px}.about{grid-template-columns:.85fr 1.15fr;align-items:center;gap:75px;padding-top:86px;padding-bottom:80px;display:grid}.about h2,.benefit-detail h2{margin:7px 0;font-size:31px;line-height:1.2}.about p,.benefit-detail p{color:#333;margin:20px 0;font-size:13px}.about .button{margin-top:10px}.about-image{position:relative}.about-image>img{object-fit:cover;border-radius:9px;width:100%;height:470px}.experience{background:#fff;border-radius:8px;align-items:center;gap:17px;min-width:270px;padding:25px;display:flex;position:absolute;bottom:-8px;right:-10px;box-shadow:0 5px 22px #0002}.experience b,.experience span{font-size:12px;display:block}.experience strong{color:var(--red);font-size:29px;line-height:1.25;display:block}.stats{background:#f7f7f7;border-radius:7px;grid-template-columns:repeat(4,1fr);margin-bottom:50px;padding-top:40px;padding-bottom:40px;display:grid}.stats article{text-align:center;border-right:1px solid #ddd;flex-direction:column;align-items:center;padding:0 18px;display:flex}.stats article:last-child{border:0}.stats svg{color:var(--red);stroke-width:1.5px;width:44px;height:44px;margin-bottom:11px}.stats strong,.stats span{display:block}.stats strong{color:var(--red);font-size:29px}.stats span{font-size:12px}.cta{color:#fff;text-align:center;background-position:50%;background-size:cover;justify-content:center;align-items:center;min-height:265px;display:flex}.cta>div{max-width:460px;padding:38px 24px}.cta h2{margin:0 0 8px;font-size:35px}.cta p{margin:0 0 20px;font-size:14px}footer{color:#bbb;background:#181818}footer .footer-grid{grid-template-columns:1.4fr .8fr .9fr 1.25fr;gap:55px;padding-top:52px;padding-bottom:46px;display:grid}.footer-brand img{filter:grayscale()brightness(0)invert();width:145px}.footer-brand p{max-width:250px;font-size:12px;line-height:1.8}.social{gap:10px;margin-top:22px;display:flex}.social a{border:1px solid #aaa;border-radius:50%;justify-content:center;align-items:center;width:29px;height:29px;display:flex}.social svg{width:14px}.social span{font-size:13px;font-weight:700}footer h4{color:#fff;margin:8px 0 18px;font-size:12px}footer .footer-grid>div:not(:first-child)>a{justify-content:space-between;align-items:center;margin:11px 0;font-size:12px;display:flex}footer a svg{width:14px}.footer-contact a{gap:12px;line-height:1.6;justify-content:flex-start!important}.footer-contact a svg{color:#ddd;flex:none;width:19px}.copyright{border-top:1px solid #333;justify-content:space-between;padding-top:23px;padding-bottom:23px;font-size:11px;display:flex}.copyright b{border-left:1px solid #777;margin:0 12px}.page-hero{color:#fff;background-position:50%;background-size:cover;align-items:center;height:330px;display:flex}.page-hero small{color:#fff;letter-spacing:.12em;font-weight:800}.page-hero h1{margin:5px 0;font-size:46px}.page-hero p{max-width:560px;margin:0}.page-products{padding-top:75px;padding-bottom:85px}.benefit-detail{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-top:85px;padding-bottom:85px;display:grid}.benefit-detail img{object-fit:cover;border-radius:8px;width:100%;height:420px}.projects{grid-template-columns:repeat(2,1fr);gap:28px;padding-top:75px;padding-bottom:75px;display:grid}.projects article{border-radius:8px;height:390px;position:relative;overflow:hidden}.projects img{object-fit:cover;width:100%;height:100%;transition:all .4s}.projects article:hover img{transform:scale(1.03)}.projects article:after{content:"";background:linear-gradient(#0000,#000d);position:absolute;inset:30% 0 0}.projects article div{z-index:2;color:#fff;position:absolute;bottom:25px;left:30px;right:30px}.projects h3{margin:3px 0;font-size:23px}.projects p{margin:0;font-size:12px}.contact{grid-template-columns:.8fr 1.2fr;gap:80px;padding-top:85px;padding-bottom:85px;display:grid}.contact h2{margin:5px 0;font-size:34px}.contact-info>p{color:#555;margin-bottom:30px;font-size:14px}.contact-info>a{align-items:center;gap:15px;margin:18px 0;display:flex}.contact-info>a>svg{width:45px;height:45px;color:var(--red);background:#f8eeee;border-radius:50%;padding:12px}.contact-info span b,.contact-info span small{display:block}.contact-info span small{color:#777;font-weight:400}.hours{color:#555;gap:10px;margin-top:28px;font-size:13px;display:flex}form{background:#f8f8f8;border-radius:8px;padding:35px}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}label{margin-bottom:17px;font-size:12px;font-weight:700;display:block}input,select,textarea{width:100%;font:inherit;background:#fff;border:1px solid #ddd;outline:none;margin-top:7px;padding:13px;font-size:13px;display:block}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--red)}form .button{border:0}@media (width<=900px){.header{height:78px}.wrap{padding-left:18px;padding-right:18px}.brand img{width:123px}.nav nav{background:#fff;flex-direction:column;align-items:stretch;gap:0;height:auto;padding:18px;display:none;position:absolute;top:78px;left:0;right:0;box-shadow:0 10px 20px #0002}.nav nav.open{display:flex}.nav nav>a{height:auto;padding:13px}.nav nav>a.active:after,.nav-actions{display:none}.mobile-actions{border-top:1px solid #ddd;justify-content:space-between;align-items:center;margin-top:10px;padding-top:15px;display:flex}.mobile-actions button{background:0 0;border:0;font-weight:800}.menu{background:0 0;border:0;display:block}.hero{background-position:62%;height:550px}.hero-copy{width:55%}.hero h1{font-size:38px}.hero p{width:auto}.product-grid{grid-template-columns:repeat(2,1fr)}.values-grid{grid-template-columns:1fr}.values article{border-bottom:1px solid #ffffff45;border-right:0;padding:22px 0}.values article:first-child{padding-top:0}.values article:last-child{padding-bottom:0}.about{gap:35px}.stats{grid-template-columns:repeat(2,1fr);row-gap:35px}.stats article:nth-child(2){border-right:0}.contact{gap:35px}}@media (width<=600px){.wrap{padding-left:20px;padding-right:20px}.header{border-radius:0 0 12px 12px;box-shadow:0 1px 8px #0001}.hero{background:#eef8ff;height:490px;position:relative;overflow:hidden;background-image:none!important}.hero:after{content:"";z-index:0;background:url(/media_to_use/hero-img3_z2aqye_c_scale,w_960.webp) 61%/cover no-repeat;position:absolute;inset:0}.hero:before{content:"";z-index:1;background:linear-gradient(90deg,#fff 0%,#ffffffd9 37%,#fff0 72%);position:absolute;inset:0}.hero-inner{z-index:2;align-items:flex-start;padding-top:31px;position:relative}.hero-copy{width:72%}.hero h1{letter-spacing:-1.1px;margin-bottom:12px;font-size:29px}.red-line{display:none}.hero p{margin-bottom:20px;font-size:11px;line-height:1.55}.hero-buttons{flex-direction:column;gap:10px;display:flex}.hero .button{padding:11px 13px;font-size:10px}.products{padding:38px 0}.section-heading{margin-bottom:28px}.section-heading h2{font-size:23px;line-height:1.2}.product-grid{grid-template-columns:1fr;gap:15px}.product-card{grid-template-columns:47% 53%;height:151px;display:grid}.product-card>img{height:151px}.product-body{text-align:left;flex-direction:column;justify-content:center;padding:14px 12px 10px 48px;display:flex}.product-body .round-icon{width:49px;height:49px;top:14px;left:0;transform:translate(-50%)}.product-body h3{margin:0 0 5px;font-size:13px}.product-body p{min-height:auto;font-size:9px;line-height:1.6}.product-body>a{justify-content:flex-start;margin-top:7px;font-size:9px}.values{padding:34px 0}.values article{gap:17px}.value-icon{width:62px;height:62px}.values h3{font-size:14px}.values p{font-size:10px}.about{flex-direction:column;gap:28px;padding-top:45px;padding-bottom:45px;display:flex}.about h2{font-size:23px}.about p{font-size:11px}.about-copy .button{padding:12px 17px;font-size:10px}.about-image>img{height:300px}.experience{min-width:0;margin:-35px 14px 0;padding:20px;position:relative;bottom:auto;right:auto}.stats{border-radius:0;margin:0;padding-top:25px;padding-bottom:25px;display:block}.stats article{text-align:left;border-bottom:1px solid #ddd;border-right:0;flex-direction:row;gap:26px;padding:22px 12px}.stats article:last-child{border:0}.stats svg{width:42px;margin:0}.stats strong{font-size:22px}.cta{text-align:left;background-position:58%;justify-content:flex-start;min-height:245px}.cta>div{max-width:310px;padding-left:28px}.cta h2{font-size:25px}.cta p{font-size:12px}footer .footer-grid{grid-template-columns:1fr;gap:30px;padding-top:42px}.footer-brand p{max-width:280px}footer h4{margin-bottom:15px}footer .footer-grid>div:not(:first-child)>a{border-bottom:0;font-size:12px}.copyright{flex-direction:column;gap:10px}.page-hero{height:260px}.page-hero h1{font-size:33px}.page-hero p{font-size:12px}.benefit-detail,.contact{grid-template-columns:1fr;gap:35px;padding-top:45px;padding-bottom:45px}.benefit-detail img{height:280px}.projects{grid-template-columns:1fr;padding-top:40px;padding-bottom:40px}.projects article{height:300px}.form-row{grid-template-columns:1fr;gap:0}form{padding:24px 18px}.page-products{padding-top:45px}}@media (width>=601px){.hero{position:relative;overflow:hidden}.hero:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#fff 0%,#fffffffa 25%,#ffffffdb 39%,#ffffff57 54%,#fff0 67%);position:absolute;inset:0}.hero-inner{z-index:1;position:relative}}.contact-only{max-width:760px;display:block}.contact-only .contact-info{max-width:620px;margin:auto}:root{--ease-out:cubic-bezier(.22,1,.36,1);--ease-ui:cubic-bezier(.2,.7,.3,1);--header-height:98px}html{scroll-padding-top:calc(var(--header-height) + 24px)}body{overflow-x:clip}button,input,select,textarea{font-family:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}:focus-visible{outline-offset:5px;outline:3px solid #b30d12}main:focus{outline:none}footer :focus-visible,.values :focus-visible,.cta :focus-visible{outline-color:#fff}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;color:var(--red);background:#fff;padding:12px 20px;font-weight:700;position:fixed;top:-80px;left:20px}.skip-link:focus{top:12px}.header{transition:box-shadow .22s;position:sticky;top:0}.header.scrolled{box-shadow:0 3px 22px #00000012}.brand img,.footer-brand img{height:auto}.nav nav{gap:22px}.nav nav>a{white-space:nowrap;font-size:12px;transition:color .18s}.nav nav>a:after{content:"";background:var(--red);transform-origin:0;height:2px;transition:transform .22s var(--ease-out);position:absolute;bottom:25px;left:0;right:0;transform:scaleX(0)}.nav nav>a.active:after,.nav nav>a:hover:after,.nav nav>a:focus-visible:after{transform:scaleX(1)}.nav-actions{gap:10px}.nav-actions .button{padding:13px 16px;font-size:11px}.lang{white-space:nowrap;padding:12px 5px;transition:color .18s}.lang:hover{color:var(--red)}.button{min-height:44px;transition:background-color .18s, color .18s, border-color .18s, transform .18s var(--ease-ui), box-shadow .18s}.button svg,.text-link svg,.product-body>a svg,footer a svg{transition:transform .22s var(--ease-out);flex-shrink:0}.button:hover svg,.button:focus-visible svg,.text-link:hover svg,.text-link:focus-visible svg,.product-body>a:hover svg,footer a:hover svg{transform:translate(4px)}.button:active{transform:translateY(1px)scale(.985)}.button.outline:hover{border-color:var(--red);color:var(--red);background:#fff}.button.light:hover{color:var(--red);background:#f2e7e7;border-color:#f2e7e7}.text-link{color:var(--red);background:0 0;border:0;align-items:center;gap:10px;min-height:44px;padding:0;font-size:12px;font-weight:750;display:inline-flex}.eyebrow{color:var(--red);letter-spacing:.1em;font-size:11px;font-weight:800}.reveal{transition:opacity .55s var(--ease-out) var(--delay,0s), transform .65s var(--ease-out) var(--delay,0s)}.reveal[data-reveal=pending]{opacity:0;transform:translateY(20px)}.reveal[data-reveal=visible],.reveal:focus-within{opacity:1;transform:none}.reveal-image{border-radius:9px;overflow:hidden}.reveal-image[data-reveal=pending]{transform:translateY(18px)scale(.985)}.section-heading i,.about-copy i{transform-origin:0;transition:transform .6s var(--ease-out) .15s}.section-heading i{transform-origin:50%}[data-reveal=pending]>i{transform:scaleX(0)}[data-reveal=visible]>i{transform:scaleX(1)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes settle{0%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes page-in{0%{opacity:.55}to{opacity:1}}@keyframes language-a{0%{opacity:.6}to{opacity:1}}@keyframes language-b{0%{opacity:.6}to{opacity:1}}.route-content{animation:.2s ease-out page-in}.language-a{animation:.18s ease-out language-a}.language-b{animation:.18s ease-out language-b}.hero{background:#eef1f2;position:relative;overflow:hidden}.hero-photo,.page-hero-photo,.cta-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-photo{object-position:center;animation:settle .9s var(--ease-out) both}.hero:before{z-index:1}.hero-inner{z-index:2}.hero h1{animation:rise .65s var(--ease-out) both}.hero .red-line{transform-origin:0;animation:draw .5s var(--ease-out) .1s both}.page-hero{isolation:isolate;position:relative;overflow:hidden}.page-hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#0f0f0fe0,#0f0f0f66);position:absolute;inset:0}.page-hero-photo{z-index:-2;animation:settle .8s var(--ease-out) both}.page-hero>.wrap{width:100%}.page-hero h1{animation:rise .55s var(--ease-out) both}.page-hero p{animation:rise .55s var(--ease-out) 70ms both}.product-grid{align-items:start}.product-shell{min-width:0}.product-card{height:auto;transition:transform .25s var(--ease-out), border-color .2s, box-shadow .25s;scroll-margin-top:0}.product-photo{height:175px;position:relative;overflow:hidden}.product-photo img{object-fit:cover;width:100%;height:100%;transition:transform .65s var(--ease-out)}.product-outline{fill:none;stroke:#fff;stroke-width:1px;opacity:0;pointer-events:none;stroke-dasharray:250;stroke-dashoffset:250px;width:76px;height:76px;position:absolute;top:calc(50% - 38px);left:calc(50% - 38px)}[data-reveal=visible] .product-outline{animation:.9s ease-out both outline-reveal}@keyframes outline-reveal{0%{opacity:.8;stroke-dashoffset:250px}60%{opacity:.7;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:0}}.product-toggle{color:var(--red);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;min-height:44px;margin-top:4px;padding:0;font-size:11px;font-weight:800;display:inline-flex}.product-toggle svg{transition:transform .22s}.product-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.product-detail{visibility:hidden;opacity:0;transition:grid-template-rows .3s var(--ease-ui), opacity .25s, visibility .3s;grid-column:1/-1;grid-template-rows:0fr;display:grid}.product-detail>div{min-height:0;overflow:hidden}.product-detail p{color:#555;margin:0;padding:18px 20px 0;font-size:12px}.product-detail .text-link{margin:6px 20px 16px;font-size:11px}.expanded .product-detail{visibility:visible;opacity:1;grid-template-rows:1fr}.expanded{border-color:#c68587}.values article{position:relative}.values p{font-size:13px}.value-icon{transition:border-color .25s}.parallax-frame{height:470px}.parallax-frame img{object-fit:cover;width:100%;height:100%}.benefit-detail .parallax-frame{height:420px}.benefit-detail .parallax-frame img{height:100%}.experience{z-index:2}.about p,.benefit-detail p{font-size:14px;line-height:1.8}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stats article:nth-child(2){border-right:1px solid #ddd}.stats article:last-child{border-right:0}.counter{font-variant-numeric:tabular-nums;min-width:8ch}.counter .sr-only{display:block}.cta{isolation:isolate;background:#a3070c;position:relative;overflow:hidden}.cta-photo{z-index:-2}.cta:after{content:"";z-index:-1;background:linear-gradient(90deg,#ae0005ef,#ae0005da);position:absolute;inset:0}footer a{transition:color .18s}footer a:hover{color:#fff}.social a{width:36px;height:36px;transition:background-color .18s,border-color .18s}.social a:hover{background:var(--red);border-color:var(--red)}.address{align-items:center;gap:12px;font-size:12px;display:flex}.address svg{flex-shrink:0;width:19px}.footer-contact a{overflow-wrap:anywhere}.well-story{background:#f7f5f1;padding:76px 0}.well-grid{grid-template-columns:1fr 1fr;align-items:center;gap:75px;display:grid}.well-copy h2{letter-spacing:-.8px;margin:10px 0 28px;font-size:34px;line-height:1.2}.process-list{margin:0 0 20px;padding:0;list-style:none}.process-list li{gap:20px;padding:0 0 24px;display:flex;position:relative}.process-list li:not(:last-child):before{content:"";background:#d7c9bc;width:1px;position:absolute;top:42px;bottom:4px;left:19px}.step-number{width:40px;height:40px;color:var(--red);border:1px solid #d7c9bc;border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.process-list h3{margin:0 0 4px;font-size:16px}.process-list p{color:#666;margin:0;font-size:13px}.well-visual svg{width:100%;display:block}.well-visual>p{text-align:center;color:#726b64;font-size:11px}.well-ring{transform-box:fill-box;transform-origin:50%}[data-reveal=visible] .well-ring{animation:ring-settle .8s var(--ease-out) calc(var(--ring) * .1s) both}[data-reveal=visible] .well-water{animation:rise .6s var(--ease-out) .5s both}[data-reveal=visible] .ground-line{stroke-dasharray:240;animation:ground-draw .9s var(--ease-out) both}@keyframes ring-settle{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}@keyframes ground-draw{0%{stroke-dashoffset:240px}to{stroke-dashoffset:0}}.journey{padding-top:10px;padding-bottom:75px}.journey-grid{grid-template-columns:repeat(3,1fr);gap:38px;display:grid}.journey-grid article{border-top:1px solid #e1dada;padding-top:24px;position:relative}.journey-grid article:before{content:"";background:var(--red);transform-origin:0;width:100%;height:1px;transition:transform .75s var(--ease-out) var(--delay);position:absolute;top:-1px;left:0}.journey-grid [data-reveal=pending]:before{transform:scaleX(0)}.journey-mark{color:var(--red);font-size:12px;font-weight:700}.journey-grid h3{margin:10px 0;font-size:20px}.journey-grid p{color:#666;margin:0;font-size:14px}.projects article:after{display:none}.gallery-open{text-align:left;color:#fff;background:#292929;border:0;width:100%;height:100%;padding:0;display:block;position:relative}.gallery-open:after{content:"";pointer-events:none;background:linear-gradient(#0000,#000c);position:absolute;inset:20% 0 0}.gallery-caption{z-index:1;position:absolute;bottom:25px;left:28px;right:58px}.gallery-caption h3{font-size:22px}.gallery-expand{z-index:1;border:1px solid #ffffff70;border-radius:50%;place-items:center;width:34px;height:34px;transition:background .22s;display:grid;position:absolute;bottom:28px;right:24px}.gallery-open:focus-visible{outline-offset:-5px;outline-color:#fff}.gallery-open:focus-visible .gallery-expand,.gallery-open:hover .gallery-expand{background:var(--red)}.lightbox{color:#fff;background:#171717;border:0;border-radius:10px;width:min(1050px,94vw);max-width:94vw;max-height:94dvh;padding:0;overflow:auto}.lightbox::backdrop{background:#090909e8}.lightbox[open]{animation:rise .25s var(--ease-out)}.lightbox-content{position:relative}.lightbox-content>img{object-fit:contain;background:#101010;width:100%;height:min(70dvh,700px);animation:.22s page-in}.icon-button{color:#fff;background:#222;border:1px solid #ffffff60;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;transition:background .18s;display:inline-grid}.icon-button:hover{background:var(--red)}.lightbox-close{z-index:1;position:absolute;top:12px;right:12px}.lightbox-bottom{text-align:center;justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.lightbox-bottom h2{margin:0;font-size:18px}.lightbox-bottom span{color:#aaa;font-size:12px}.lightbox :focus-visible{outline-color:#fff}.contact-info>a{border-radius:8px;margin-left:-8px;padding:8px;transition:background .18s}.contact-info>a:hover,.contact-info>a:focus-visible{background:#faf3f3}.contact-info>a>svg{flex-shrink:0;transition:background .18s,color .18s}.contact-info>a:hover>svg{background:var(--red);color:#fff}.contact-info span{overflow-wrap:anywhere;min-width:0}.contact-address{align-items:center;gap:15px;margin-top:24px;display:flex}.contact-address>svg{width:45px;height:45px;color:var(--red);background:#f8eeee;border-radius:50%;flex-shrink:0;padding:12px}.contact-info .contact-address b,.contact-info .contact-address small{display:block}.quote-layout{align-items:start;gap:55px}.quote-panel{min-width:0}.quote-panel h2{font-size:27px}.form-intro{color:#666;margin:12px 0 24px;font-size:13px}.quote-panel label{font-size:13px}input,select,textarea{border-radius:5px;transition:border-color .18s,box-shadow .18s}input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px #b30d1212}:is(input:user-invalid,select:user-invalid,textarea:user-invalid){border-color:var(--red);box-shadow:0 0 0 2px #b30d1210}.request-preview{animation:rise .25s var(--ease-out);border:1px solid #d7c6c6;border-radius:8px;margin-top:18px;padding:26px}.request-preview h3{margin:0;font-size:20px}.request-preview p{color:#555;font-size:13px}.request-preview textarea{font-size:12px}.request-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}@media (hover:hover) and (pointer:fine){.product-card:hover{border-color:#dec3c3;transform:translateY(-4px);box-shadow:0 10px 26px #00000012}.product-card:hover .product-photo img{transform:scale(1.025)}}@supports (animation-timeline:view()){@media (width>=901px) and (prefers-reduced-motion:no-preference){.parallax-frame{view-timeline-name:--photo;view-timeline-axis:block}.parallax-frame img{max-width:none;height:calc(100% + 32px);animation:linear both photo-drift;animation-timeline:--photo;animation-range:entry exit}@keyframes photo-drift{0%{transform:translateY(-32px)}to{transform:translateY(0)}}}}@media (width<=1100px){:root{--header-height:78px}.header{height:78px}.brand img{width:123px}.nav-actions{display:none}.menu{background:0 0;border:0;flex-direction:column;order:3;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:flex}.menu span{width:21px;height:2px;transition:transform .22s var(--ease-out), opacity .12s;background:#171717;display:block}.menu.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.menu.is-open span:nth-child(2){opacity:0}.menu.is-open span:last-child{transform:translateY(-7px)rotate(-45deg)}.nav nav{opacity:0;visibility:hidden;pointer-events:none;height:auto;max-height:calc(100dvh - 78px);transition:opacity .16s, transform .2s var(--ease-out), visibility .2s;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:18px 24px;display:flex;position:absolute;top:78px;left:0;right:0;overflow-y:auto;transform:translateY(-10px);box-shadow:0 14px 20px #00000012}.nav nav.open{opacity:1;visibility:visible;pointer-events:auto;transition-duration:.22s;transform:none}.nav nav>a{height:auto;min-height:46px;padding:11px 4px;font-size:14px}.nav nav>a:after{display:none}.nav nav.open>a{animation:rise .25s var(--ease-out) calc(var(--item) * 30ms) both}.mobile-actions{border-top:1px solid #eee;justify-content:space-between;align-items:center;margin-top:10px;padding-top:15px;display:flex}.mobile-actions>button{background:0 0;border:0;min-width:44px;min-height:44px;font-weight:700}footer .footer-grid{gap:26px}}@media (width<=900px){.well-grid{gap:30px}.well-copy h2{font-size:28px}.hero-photo{object-position:62% center}.quote-layout{grid-template-columns:1fr}.quote-layout .contact-info{max-width:620px}footer .footer-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.hero{height:auto;min-height:540px}.hero:after{display:none}.hero:before{background:linear-gradient(90deg,#fffffff5 0%,#ffffffdf 45%,#ffffff38 100%)}.hero-photo{object-position:61% center;animation:none}.hero-inner{padding-top:38px;padding-bottom:42px}.hero-copy{width:85%}.hero h1{font-size:clamp(29px,7.4vw,36px);line-height:1.12}.hero p{margin-bottom:24px;font-size:13px}.hero .red-line{height:2px;margin:18px 0;display:block}.hero .button{font-size:11px}.hero-buttons{align-items:stretch;max-width:280px}.page-hero{height:auto;min-height:260px;padding:38px 0}.page-hero h1{overflow-wrap:anywhere;margin:12px 0;font-size:30px;line-height:1.2}.page-hero p{font-size:13px}.reveal[data-reveal=pending]{transform:translateY(10px)}.reveal{transition-delay:0s}.product-card{grid-template-columns:40% 60%;height:auto;min-height:190px}.product-photo{height:100%;min-height:190px}.product-body{padding:18px 14px 16px 30px}.product-body .round-icon{width:42px;height:42px;top:16px}.product-body .round-icon svg{width:22px}.product-body h3{font-size:15px;line-height:1.35}.product-body p{font-size:12px;line-height:1.55}.product-body>a,.product-toggle{justify-content:flex-start;min-height:40px;margin-top:3px;font-size:11px}.product-outline{width:54px;height:54px;top:calc(50% - 27px);left:calc(50% - 27px)}.values p{font-size:13px}.values h3{font-size:16px}.about{align-items:stretch}.about p,.benefit-detail p{font-size:14px}.about h2,.benefit-detail h2{font-size:27px}.parallax-frame,.benefit-detail .parallax-frame{height:300px}.about-image{width:100%}.experience{margin-top:-35px}.stats article:nth-child(2){border-right:0}.stats span{font-size:13px}.counter{min-width:0}.well-story{padding:45px 0}.well-grid{grid-template-columns:1fr;gap:18px}.well-copy h2{font-size:28px}.well-visual{max-width:440px}.journey{padding-top:0;padding-bottom:45px}.journey-grid{grid-template-columns:1fr;gap:28px}.journey-grid article{padding-top:16px}.gallery-caption{bottom:22px;left:20px}.gallery-caption h3{font-size:20px}.lightbox-bottom{gap:10px;padding:15px}.lightbox-bottom h2{font-size:14px}.lightbox-content>img{height:60dvh}.contact h2{font-size:28px}.contact-info span b{font-size:14px}.contact-only .contact-info{width:100%}.request-preview{padding:20px}footer .footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal[data-reveal]{opacity:1;transform:none}.product-outline{display:none}.hero-photo,.page-hero-photo,.parallax-frame img,.product-card:hover,.product-card:hover .product-photo img,.projects article:hover img,.button:hover svg,.button:focus-visible svg,.text-link:hover svg,footer a:hover svg{transform:none}}@media (width>=901px){.values article{border-right:0}.values article:not(:last-child):after{content:"";transform-origin:top;width:1px;transition:transform .65s var(--ease-out) var(--delay);background:#ffffff45;position:absolute;top:0;bottom:0;right:0}.values article[data-reveal=pending]:after{transform:scaleY(0)}}@supports (animation-timeline:view()){@media (width>=901px) and (prefers-reduced-motion:no-preference){.cta{view-timeline-name:--cta;view-timeline-axis:block}.cta-photo{height:calc(100% + 20px);animation:linear both cta-drift;animation-timeline:--cta;animation-range:entry exit}@keyframes cta-drift{0%{transform:translateY(-20px)}to{transform:translateY(0)}}}}@media (width<=600px){input,select,textarea{font-size:16px}}.stats .counter>span[aria-hidden=true]{font:inherit}.motion-toggle{color:#bbb;text-align:left;background:0 0;border:0;align-items:center;gap:8px;min-height:30px;padding:0;font-size:11px;display:inline-flex}.motion-toggle:hover{color:#fff}.motion-toggle:disabled{cursor:default}.motion-indicator{background:#bd6666;border-radius:50%;width:6px;height:6px}.motion-toggle[aria-pressed=true] .motion-indicator{background:#888}.copyright{flex-wrap:wrap;align-items:center;gap:16px}html[data-motion=reduced]{scroll-behavior:auto}html[data-motion=reduced] *,html[data-motion=reduced] :before,html[data-motion=reduced] :after{transition:none!important;animation:none!important}html[data-motion=reduced] .reveal[data-reveal]{opacity:1;transform:none}html[data-motion=reduced] .product-outline{display:none}html[data-motion=reduced] .hero-photo,html[data-motion=reduced] .page-hero-photo,html[data-motion=reduced] .parallax-frame img,html[data-motion=reduced] .product-card:hover,html[data-motion=reduced] .product-card:hover .product-photo img,html[data-motion=reduced] .projects article:hover img,html[data-motion=reduced] .button:hover svg,html[data-motion=reduced] .button:focus-visible svg,html[data-motion=reduced] .text-link:hover svg,html[data-motion=reduced] footer a:hover svg{transform:none}@media (width<=600px){.copyright{align-items:flex-start}}.hero{height:610px}.hero-copy{width:510px}.hero .hero-title{animation:hero-slide-left 1s var(--ease-out) .1s both;letter-spacing:-.055em;margin-bottom:22px;font-size:clamp(40px,4.2vw,59px);line-height:1.02}.hero-title .title-mask{color:#171717;margin-bottom:-.035em;padding-bottom:.09em;display:block;overflow:hidden}.hero-title .title-mask>span{color:inherit;animation:none;display:block}.hero-title .title-mask.accent{color:var(--red)}@keyframes hero-slide-left{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}.hero .red-line{width:80px;animation-delay:.45s}.hero p{animation:hero-slide-left 1s var(--ease-out) .25s both}.hero-buttons{animation:hero-slide-left 1s var(--ease-out) .4s both}.hero-photo{animation:hero-develop 1.5s var(--ease-out) both}@keyframes hero-develop{0%{filter:saturate(.2);transform:scale(1.12)}to{filter:saturate();transform:scale(1.025)}}.drafting-art{z-index:2;color:#fff;pointer-events:none;opacity:.8;width:min(39vw,500px);transform:translateY(var(--drift,0px));position:absolute;top:7%;right:5%}.drafting-art svg{filter:drop-shadow(0 1px 5px #0003);width:100%;overflow:visible}.draft-grid{opacity:.38}.draft-core,.draft-measure{stroke-dasharray:900;animation:drafting-draw 2.2s var(--ease-out) .25s both}.draft-orbit{transform-origin:250px 250px;animation:orbit-settle 2.6s var(--ease-out) both}.draft-caption{letter-spacing:.25em;white-space:nowrap;font-size:9px;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}@keyframes drafting-draw{0%{stroke-dashoffset:900px;opacity:0}to{stroke-dashoffset:0;opacity:1}}@keyframes orbit-settle{0%{opacity:0;transform:rotate(-100deg)scale(.85)}to{opacity:1;transform:rotate(0)scale(1)}}.button{isolation:isolate;position:relative;overflow:hidden}.button:before{content:"";z-index:-1;transition:transform .55s var(--ease-out);background:#fff2;border-radius:50%;position:absolute;inset:-70% -10%;transform:translateY(100%)}.button:hover:before,.button:focus-visible:before{transform:translateY(0)}.button:hover{box-shadow:0 9px 24px #940b1138}.reveal{transition-duration:.8s,1s}.reveal[data-reveal=pending]{transform:translateY(38px)}.reveal-image{clip-path:inset(0);transition:clip-path 1.2s var(--ease-out) var(--delay,0s), opacity .7s, transform 1.2s var(--ease-out)}.reveal-image[data-reveal=pending]{clip-path:inset(0 0 100%);opacity:1;transform:translateY(25px)}.reveal-image:focus-within{clip-path:inset(0)}.product-grid{perspective:1200px}.product-card{transition:transform .4s var(--ease-out), box-shadow .4s, border-color .25s;position:relative}.product-photo:after{content:"";pointer-events:none;background:radial-gradient(circle at var(--px,50%) var(--py,50%), #fff5, transparent 65%);opacity:0;transition:opacity .35s;position:absolute;inset:0}.product-shell[data-reveal=visible] .product-outline{animation:none}@media (hover:hover) and (pointer:fine){.product-card:hover{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-9px);border-color:#c68f91;box-shadow:0 22px 40px -16px #251b1b55}.product-card:hover .product-photo img{transform:scale(1.075)}.product-card:hover .product-photo:after{opacity:1}.product-card:hover .product-outline{opacity:.65;stroke-dashoffset:0;transition:stroke-dashoffset .9s var(--ease-out), opacity .35s}.value-icon{transition:transform .65s var(--ease-out), background .4s, box-shadow .4s}.values article:hover .value-icon{background:#ffffff14;transform:rotate(-10deg);box-shadow:0 0 0 7px #ffffff0a}}.well-story{position:relative;overflow:hidden}.well-visual{position:relative}.well-visual:before{content:"";filter:blur(40px);background:#b5a18420;border-radius:50%;position:absolute;inset:5% 10%}.well-visual svg{position:relative}.well-story[data-scene=ready] .well-ring{opacity:clamp(0, calc(var(--scene) * 5 - var(--ring) * .2), 1);transform:translateY(clamp(-110px, calc((var(--scene) * 3 - 1.3) * 130px), 0px));animation:none}.well-story[data-scene=ready] .well-water{transform-box:fill-box;transform-origin:bottom;transform:scaleY(clamp(0, calc(var(--scene) * 4 - 1), 1));animation:none}.well-story[data-scene=ready] .step-number{background:linear-gradient(#e9cecf, #e9cecf) bottom / 100% clamp(0%, calc((var(--scene) * 3 - .3) * 100%), 100%) no-repeat;color:#171717;border-color:#b30d1250}.stats{position:relative;overflow:hidden}.stats:before{content:"";background:linear-gradient(90deg, transparent, var(--red), transparent);opacity:.55;width:100%;height:3px;position:absolute;top:0;left:0}.stats .counter{letter-spacing:-.055em;font-size:42px}.cta:before{content:"";pointer-events:none;border:1px solid #ffffff20;border-radius:50%;width:420px;height:420px;position:absolute;top:-160px;right:-80px;box-shadow:0 0 0 50px #ffffff08,0 0 0 100px #ffffff05}@media (width<=900px){.hero{height:590px}.hero-copy{width:62%}.hero .hero-title{font-size:44px}.drafting-art{opacity:.6;width:43vw;top:16%;right:-5%}}@media (width<=600px){.hero{height:auto;min-height:550px}.hero-inner{padding-top:38px;padding-bottom:40px}.hero-copy{width:82%}.hero .hero-title{font-size:clamp(34px,9vw,46px)}.hero p{max-width:280px;font-size:12px}.hero-buttons{max-width:235px}.drafting-art{opacity:.4;z-index:1;width:240px;top:230px;right:-100px}.stats .counter{font-size:32px}}@media (prefers-reduced-motion:reduce){.reveal-image[data-reveal]{clip-path:none}.drafting-art,.hero-title .title-mask>span,.product-card:hover{transform:none}}html[data-motion=reduced] .reveal-image[data-reveal]{clip-path:none}html[data-motion=reduced] .drafting-art,html[data-motion=reduced] .hero-title .title-mask>span{transform:none}.product-blueprint{color:#f4e3dc;clip-path:inset(0 100% 0 0);transition:clip-path .65s var(--ease-out);pointer-events:none;z-index:1;background-color:#452327;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:18px 18px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.product-blueprint svg{width:100%;height:calc(100% - 22px);max-height:190px}.product-blueprint>span{letter-spacing:.09em;text-align:center;padding:0 5px 7px;font-size:8px}.blueprint-guides{opacity:.5}.blueprint-object{stroke-dasharray:650;stroke-dashoffset:650px;transition:stroke-dashoffset 1.3s var(--ease-out) .1s}.product-card:focus-within .product-blueprint,.product-card.expanded .product-blueprint{clip-path:inset(0)}.product-card:focus-within .blueprint-object,.product-card.expanded .blueprint-object{stroke-dashoffset:0}@media (hover:hover) and (pointer:fine){.product-card:hover .product-blueprint{clip-path:inset(0)}.product-card:hover .blueprint-object{stroke-dashoffset:0}}.route-curtain{z-index:100;pointer-events:none;background:var(--red);color:#fff;place-items:center;animation:.68s cubic-bezier(.76,0,.24,1) both route-sweep;display:grid;position:fixed;inset:0;transform:translate(100%)}.route-curtain:after{content:"";background:#ffffff30;width:6px;position:absolute;top:0;bottom:0;left:0}.route-curtain>div{flex-direction:column;align-items:center;display:flex}@keyframes route-sweep{0%{transform:translate(-100%)}42%,52%{transform:translate(0)}to{transform:translate(100%)}}.well-story{overflow:visible}.well-grid{position:relative}.construction-meter{color:#877468;letter-spacing:.12em;align-items:center;gap:15px;margin:0 22px 16px;font-size:9px;display:flex}.construction-meter>i{background:#d8cfc3;flex:1;height:1px;position:relative}.construction-meter>i:after{content:"";background:var(--red);transform-origin:0;transform:scaleX(var(--construction-progress,1));position:absolute;inset:0}.drill-tool{display:none}.process-list li{transition:opacity .35s,transform .35s}.process-list .step-number{transition:color .35s,background .35s,box-shadow .35s}.well-story[data-construction=active] .well-ring{transform:translateY(var(--ring-y));opacity:var(--ring-opacity);animation:none}.well-story[data-construction=active] .well-water{transform-box:fill-box;transform-origin:bottom;transform:scaleY(var(--water));opacity:var(--water);animation:none}.well-story[data-construction=active] .drill-tool{transform:translateY(var(--drill-y));opacity:var(--drill-opacity);display:block}.well-story[data-construction=active] .process-list li{opacity:1}.well-story[data-stage="0"] [data-step="0"],.well-story[data-stage="1"] [data-step="1"],.well-story[data-stage="2"] [data-step="2"]{opacity:1;transform:translate(8px)}.well-story[data-stage="0"] [data-step="0"] .step-number,.well-story[data-stage="1"] [data-step="1"] .step-number,.well-story[data-stage="2"] [data-step="2"] .step-number{background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 0 0 5px #b30d120b}@media (width>=901px) and (height>=650px) and (prefers-reduced-motion:no-preference){html:not([data-motion=reduced]) .well-story{min-height:180vh;padding:50px 0}html:not([data-motion=reduced]) .well-grid{min-height:min(560px,100vh - 135px);position:sticky;top:115px}.well-visual svg{max-height:calc(100vh - 235px)}}.journey-timeline{padding-top:30px;padding-bottom:100px}.timeline-track{position:relative}.timeline-spine{background:#e8dfd9;width:1px;position:absolute;top:30px;bottom:30px;left:50%}.timeline-spine>i{background:var(--red);transform-origin:top;width:2px;height:100%;transform:scaleY(clamp(0, calc(var(--scene,1) * 2.2 - .2), 1));display:block}.timeline-stop{grid-template-columns:1fr 1fr;align-items:center;gap:100px;padding:30px 0;display:grid;position:relative}.timeline-photo{background:#e7e4df;border-radius:3px;height:270px;position:relative;overflow:hidden}.timeline-photo img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease-out), clip-path 1.2s var(--ease-out)}.timeline-stop[data-reveal=pending] img{clip-path:inset(0 100% 0 0);transform:scale(1.12)}.timeline-stop[data-reveal=visible] img{clip-path:inset(0);transform:scale(1)}.timeline-photo>span{color:#fff;letter-spacing:-.05em;text-shadow:0 2px 20px #0008;font-size:54px;font-weight:800;position:absolute;bottom:12px;left:20px}.timeline-node{background:var(--red);border:3px solid #fff;border-radius:50%;width:13px;height:13px;position:absolute;top:calc(50% - 6px);left:calc(50% - 6px);box-shadow:0 0 0 1px #b30d1240}.timeline-copy{padding:25px 0}.timeline-copy .journey-mark{letter-spacing:-.055em;font-size:36px}.timeline-copy h3{letter-spacing:-.025em;margin:8px 0;font-size:27px}.timeline-copy p{color:#666;max-width:350px;font-size:14px;line-height:1.8}.timeline-stop:nth-of-type(2n) .timeline-photo{grid-area:1/2}.timeline-stop:nth-of-type(2n) .timeline-copy{text-align:right;grid-area:1/1}.timeline-stop:nth-of-type(2n) .timeline-copy p{margin-left:auto}.quote-progress{justify-content:space-between;gap:8px;margin:25px 0 30px;padding:0;list-style:none;display:flex}.quote-progress li{color:#777;align-items:center;gap:7px;font-size:10px;transition:color .3s;display:flex}.quote-progress li>span:first-child{border:1px solid #d5c7c6;border-radius:50%;place-items:center;width:28px;height:28px;font-size:9px;transition:background .3s,border-color .3s;display:grid}.quote-progress .complete{color:#315844}.quote-progress .complete>span:first-child{color:#fff;animation:seal-in .35s var(--ease-out);background:#315844;border-color:#315844}.quote-stage{border:1px solid #e3dddd;border-radius:5px;min-width:0;margin:0 0 22px;padding:14px 16px 0;transition:border-color .35s,background .35s,box-shadow .35s}.quote-stage legend{letter-spacing:.1em;color:#857371;padding:0 8px;font-size:9px;font-weight:700}.quote-stage:focus-within{box-shadow:-3px 0 0 var(--red);background:#fff;border-color:#b30d1260}.quote-stage.is-complete{background:#f1f5f2;border-color:#31584440}.quote-stage.is-complete legend{color:#315844}.request-preview{transform-origin:top;animation:summary-unfold .65s var(--ease-out) both;background:#fffefa;border-color:#d7c6b3;position:relative;box-shadow:0 14px 35px -20px #39291955}.request-seal{color:#315844;width:42px;height:42px;animation:seal-in .6s var(--ease-out) .2s both;background:#e6eee7;border-radius:50%;place-items:center;margin-bottom:16px;display:grid}@keyframes summary-unfold{0%{opacity:0;clip-path:inset(0 0 100%);transform:perspective(900px)rotateX(-12deg)translateY(-15px)}to{opacity:1;clip-path:inset(0);transform:none}}@keyframes seal-in{0%{transform:scale(.7)rotate(-20deg)}to{transform:scale(1)rotate(0)}}@media (width<=900px){.timeline-stop{gap:60px}.timeline-photo{height:230px}.timeline-copy h3{font-size:22px}}@media (width<=600px){.timeline-spine{left:6px}.timeline-stop{flex-direction:column;align-items:stretch;gap:0;padding:20px 0 20px 32px;display:flex}.timeline-node{top:35px;left:0}.timeline-photo{height:210px}.timeline-copy{padding:18px 0 10px}.timeline-stop:nth-of-type(2n) .timeline-copy{text-align:left}.timeline-stop:nth-of-type(2n) .timeline-copy p{margin-left:0}.timeline-copy .journey-mark{font-size:26px}.journey-timeline{padding-bottom:45px}.quote-stage{padding:12px 10px 0}.quote-progress{gap:4px}.quote-progress li{gap:4px;font-size:9px}}@media (prefers-reduced-motion:reduce){.route-curtain{display:none}.timeline-spine>i{transform:none}.timeline-stop[data-reveal] img{clip-path:none;transform:none}}html[data-motion=reduced] .route-curtain{display:none}html[data-motion=reduced] .timeline-spine>i{transform:none}html[data-motion=reduced] .timeline-stop[data-reveal] img{clip-path:none;transform:none}.well-story:not([data-construction]) .well-visual[data-reveal=visible] .drill-tool{animation:compact-drill .85s var(--ease-out) both;display:block}.well-story:not([data-construction]) .well-visual[data-reveal=visible] .well-ring{animation:compact-install .75s var(--ease-out) calc(.65s + (3 - var(--ring)) * .14s) both}.well-story:not([data-construction]) .well-visual[data-reveal=visible] .well-water{transform-box:fill-box;transform-origin:bottom;animation:compact-water .7s var(--ease-out) 1.55s both}@keyframes compact-drill{0%{opacity:0;transform:translateY(0)}20%{opacity:1}75%{opacity:1;transform:translateY(205px)}to{opacity:0;transform:translateY(205px)}}@keyframes compact-install{0%{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}@keyframes compact-water{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.well-story[data-stage="0"] [data-step="0"] h3,.well-story[data-stage="1"] [data-step="1"] h3,.well-story[data-stage="2"] [data-step="2"] h3{color:var(--red)}@media (prefers-reduced-motion:reduce){.well-story .well-visual .drill-tool{display:none!important}}html[data-motion=reduced] .well-story .well-visual .drill-tool{display:none!important}.route-curtain .transition-logo{padding:22px 30px}.transition-logo img{filter:grayscale()brightness(0)invert();width:200px;height:auto;display:block}.reveal-from-left,.reveal-from-right{transition:opacity .9s var(--ease-out) var(--delay,0s), transform 1.1s var(--ease-out) var(--delay,0s)}.reveal-from-left[data-reveal=pending]{transform:translate(-90px)}.reveal-from-right[data-reveal=pending]{transform:translate(90px)}.about-image .parallax-frame{border-radius:9px;overflow:hidden}.reveal-from-left:focus-within,.reveal-from-right:focus-within{opacity:1;transform:none}@media (width<=600px){.reveal-from-left[data-reveal=pending]{transform:translate(-40px)}.reveal-from-right[data-reveal=pending]{transform:translate(40px)}}@media (prefers-reduced-motion:reduce){.reveal-from-left[data-reveal],.reveal-from-right[data-reveal]{opacity:1;transform:none}}html[data-motion=reduced] .reveal-from-left[data-reveal],html[data-motion=reduced] .reveal-from-right[data-reveal]{opacity:1;transform:none}.service-intro{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-top:80px;padding-bottom:85px;display:grid}.service-copy h2{letter-spacing:-.04em;margin:14px 0 22px;font-size:clamp(27px,3vw,38px);line-height:1.16}.service-copy>p{color:#555;font-size:15px;line-height:1.85}.service-points{margin:25px 0 30px;padding:0;list-style:none}.service-points li{border-bottom:1px solid #ece6e2;align-items:flex-start;gap:12px;padding:10px 0;font-size:13px;display:flex}.service-points svg{color:var(--red);flex-shrink:0;margin-top:2px}.service-photo{margin:0;position:relative}.service-photo img{object-fit:cover;border-radius:5px;width:100%;height:470px}.service-photo figcaption{color:#333;border-left:3px solid var(--red);background:#fff;padding:16px 20px;font-size:12px;position:absolute;bottom:18px;left:18px;right:18px}.service-preparation{padding-top:80px;padding-bottom:80px}.preparation-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.preparation-grid article{background:#faf8f5;border:1px solid #e7e1dc;border-radius:5px;padding:32px;position:relative}.preparation-grid svg{color:var(--red)}.preparation-number{color:#d5c7bf;font-size:32px;font-weight:700;position:absolute;top:21px;right:24px}.preparation-grid h3{margin:23px 0 10px;font-size:19px}.preparation-grid p,.service-note{color:#666;font-size:14px;line-height:1.8}.service-note{max-width:760px;margin-top:28px}.faq-layout{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:80px;padding-top:75px;padding-bottom:85px;display:grid}.faq-sidebar{position:sticky;top:125px}.faq-sidebar>h2{letter-spacing:-.03em;margin:12px 0 27px;font-size:27px;line-height:1.25}.faq-sidebar nav{border-top:1px solid #e9e0db;display:grid}.faq-sidebar nav a{border-bottom:1px solid #e9e0db;align-items:center;gap:12px;padding:16px 0;font-size:12px;display:flex}.faq-sidebar nav a>span{color:var(--red);font-size:10px}.faq-sidebar nav a>svg{margin-left:auto}.faq-sidebar nav a:hover{color:var(--red)}.faq-help{background:#f7f4f0;border-radius:5px;margin-top:28px;padding:24px}.faq-help>svg{color:var(--red)}.faq-help h3{margin:12px 0;font-size:17px}.faq-help p{color:#666;font-size:13px;line-height:1.8}.faq-group{margin-bottom:42px}.faq-group:last-child{margin-bottom:0}.faq-group>h2{align-items:center;gap:14px;margin:0 0 20px;font-size:22px;display:flex}.faq-group>h2>span{color:var(--red);border:1px solid #e7d5d2;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.faq-item{border-bottom:1px solid #e9e0db}.faq-item h3{margin:0;font-size:15px}.faq-item h3 button{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-weight:650;line-height:1.6;display:flex}.faq-item h3 button:hover,.faq-item.is-open h3 button{color:var(--red)}.faq-item h3 svg{transition:transform .3s var(--ease-out);flex-shrink:0}.faq-item.is-open h3 svg{transform:rotate(180deg)}.faq-answer{visibility:hidden;opacity:0;transition:grid-template-rows .35s var(--ease-out), opacity .25s, visibility .35s;grid-template-rows:0fr;display:grid}.faq-answer>div{min-height:0;overflow:hidden}.faq-answer p{color:#555;overflow-wrap:anywhere;margin:0;padding:0 25px 24px 0;font-size:14px;line-height:1.9}.faq-item.is-open .faq-answer{visibility:visible;opacity:1;grid-template-rows:1fr}@media (width>=1101px){.nav nav{gap:17px}.nav nav>a{font-size:11px}}@media (width<=900px){.service-intro{gap:35px}.faq-layout{grid-template-columns:240px minmax(0,1fr);gap:35px}.preparation-grid{gap:15px}.preparation-grid article{padding:24px}}@media (width<=600px){.service-intro,.faq-layout{grid-template-columns:1fr;padding-top:42px;padding-bottom:45px}.service-photo img{height:320px}.service-copy>p{font-size:14px}.service-preparation{padding-top:45px;padding-bottom:45px}.preparation-grid{grid-template-columns:1fr}.faq-sidebar{position:static}.faq-help{display:none}.faq-group>h2{font-size:20px}}.contact.contact-with-map{max-width:var(--max);grid-template-columns:.85fr 1.15fr;align-items:start;gap:65px;display:grid}.contact-with-map .contact-info{margin:0}.contact-map{min-width:0}.contact-map-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.contact-map-heading>svg{color:var(--red);width:30px;height:30px}.contact-map-heading h2{margin:6px 0 0;font-size:27px}.contact-map-frame{background:#f5f2ee;border:1px solid #e5dfd9;border-radius:6px;overflow:hidden}.contact-map-frame iframe{border:0;width:100%;height:380px;display:block}.contact-map-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;padding-top:13px;display:flex}.contact-map-bottom p{color:#666;margin:0;font-size:12px}@media (width<=900px){.contact.contact-with-map{grid-template-columns:1fr;gap:40px}.contact-with-map .contact-info{max-width:none}}@media (width<=600px){.contact-map-frame iframe{height:320px}}.page-intro{position:relative;overflow:hidden}.intro-layout{grid-template-columns:1.3fr 1fr;align-items:center;gap:70px;min-height:340px;padding-top:52px;padding-bottom:52px;display:grid}.intro-copy{z-index:1;position:relative}.intro-copy>small{letter-spacing:.17em;margin-bottom:19px;font-size:10px;font-weight:750;display:block}.intro-copy h1{letter-spacing:-.045em;text-wrap:balance;animation:intro-heading .85s var(--ease-out) both;margin:0 0 22px;font-size:clamp(36px,4.5vw,61px);line-height:1.06}.intro-copy>p{max-width:510px;animation:intro-heading .85s var(--ease-out) .1s both;margin:0;font-size:15px;line-height:1.8}@keyframes intro-heading{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:none}}.intro-products{color:#202020;background:#faf9f7;border-bottom:1px solid #e7e2dd}.intro-products .intro-layout{grid-template-columns:1.2fr 1fr;min-height:330px}.intro-products .intro-copy>small,.intro-services .intro-copy>small{color:var(--red)}.intro-products .intro-copy>p,.intro-services .intro-copy>p{color:#626262}.intro-product-index{border-top:1px solid #d8cec8}.intro-product-index a{transition:color .2s, padding .25s var(--ease-out);border-bottom:1px solid #d8cec8;align-items:center;gap:18px;padding:18px 0;display:flex}.intro-product-index a>span{color:var(--red);font-size:10px}.intro-product-index strong{font-size:14px;font-weight:550}.intro-product-index svg{color:var(--red);margin-left:auto}.intro-product-index a:hover{color:var(--red);padding-left:8px}.intro-services{color:#202020;background:#faf9f7;border-bottom:1px solid #e7e2dd}.intro-services .intro-layout{grid-template-columns:1fr;min-height:330px}.intro-about{color:#302923;background:#f2eee7;border-bottom:1px solid #dfd6ca}.intro-about .intro-copy>small{color:var(--red)}.intro-about .intro-copy>p{color:#736458}.intro-years{text-align:center;border-left:1px solid #cdbfae;padding:10px 20px}.intro-years>strong{color:var(--red);letter-spacing:-.08em;font-size:clamp(95px,12vw,160px);font-weight:500;line-height:1;display:block}.intro-years strong span{vertical-align:top;padding-top:10px;font-size:.5em;display:inline-block}.intro-years>span{letter-spacing:.23em;margin-top:18px;font-size:10px;display:block}.intro-years i{background:var(--red);width:65px;height:2px;margin:20px auto 0;display:block}.intro-faq{color:#49272b;background:#fbf1f0}.intro-faq .intro-layout{min-height:280px}.intro-faq .intro-copy>small{color:var(--red)}.intro-question{background:#fff8f6;border:1px solid #b30d1225;border-radius:40px 40px 40px 0;justify-self:center;width:215px;height:185px;position:relative;transform:rotate(-6deg)}.intro-question>span{color:var(--red);text-align:center;font-size:160px;font-weight:500;line-height:180px;display:block}.intro-question>svg{color:#9c555e;stroke-width:1px;background:#fbf1f0;border-radius:50%;width:70px;height:70px;position:absolute;bottom:-20px;right:-35px}.intro-contact{background:var(--red);color:#fff}.intro-contact .intro-copy>small{color:#f4cbc9}.intro-contact .intro-copy>p{color:#ffe5e3}.intro-address{align-items:center;gap:9px;margin-top:24px;font-size:12px;display:flex}.intro-location{justify-self:center;place-items:center;width:240px;height:240px;display:grid;position:relative}.intro-location>div{border:1px solid #ffffff35;border-radius:50%;position:absolute;inset:15px;box-shadow:0 0 0 30px #ffffff09,0 0 0 60px #ffffff05}.intro-location>svg{width:120px;height:120px;position:relative}.intro-location>span{letter-spacing:.22em;font-size:9px;position:absolute;bottom:20px}.intro-quote{color:#252827;background:#f7f7f5;border-bottom:1px solid #e2e2dc}.intro-quote .intro-copy>small{color:var(--red)}.intro-steps{flex-wrap:wrap;gap:20px;margin:28px 0 0;padding:0;list-style:none;display:flex}.intro-steps li{color:#64675f;align-items:center;gap:7px;font-size:10px;display:flex}.intro-steps span{color:var(--red);border-top:1px solid var(--red);padding-top:3px;font-size:9px}.intro-paper{background:#fff;border:1px solid #e0dfd7;justify-self:center;width:185px;padding:25px;transform:rotate(6deg);box-shadow:9px 9px #e9e7df}.intro-paper>svg{width:48px;height:48px;color:var(--red);margin-bottom:20px}.intro-paper>i{background:#deded6;height:1px;margin:13px 0;display:block}.intro-paper>i:nth-of-type(3){width:65%}.intro-paper>span{letter-spacing:.13em;color:#75756c;margin-top:28px;font-size:7px;display:block}@media (width<=900px){.intro-layout{grid-template-columns:1.4fr 1fr;gap:30px}.intro-copy h1{font-size:40px}.intro-question{width:165px;height:160px}.intro-question>span{font-size:135px;line-height:150px}.intro-location{width:190px;height:190px}}@media (width<=600px){.intro-layout{grid-template-columns:1fr;gap:25px;min-height:0;padding-top:38px;padding-bottom:38px}.intro-copy h1{font-size:36px}.intro-copy>p{font-size:13px}.intro-copy>small{margin-bottom:15px;font-size:9px;line-height:1.7}.intro-products .intro-layout,.intro-services .intro-layout,.intro-faq .intro-layout{min-height:0}.intro-years{text-align:left;border-top:1px solid #cdbfae;border-left:0;align-items:center;gap:18px;padding:22px 0 0;display:flex}.intro-years>strong{font-size:85px}.intro-years>span{margin:0}.intro-years i,.intro-question,.intro-location,.intro-paper{display:none}.intro-steps{gap:12px}.intro-products .intro-layout,.intro-services .intro-layout{grid-template-columns:1fr;gap:28px;min-height:0}.intro-product-index a{padding-top:14px;padding-bottom:14px}}.not-found{text-align:center;background:#faf9f7;padding:55px 0 80px}.not-found-code{letter-spacing:-.07em;color:var(--red);margin-bottom:20px;font-size:clamp(110px,20vw,220px);font-weight:800;line-height:1.05;display:block}.not-found h1{letter-spacing:-.035em;margin:15px 0;font-size:clamp(28px,4vw,43px);line-height:1.2}.not-found p{color:#666;max-width:470px;margin:0 auto;font-size:15px;line-height:1.8}.not-found-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 30px;margin-top:30px;display:flex}
