:root{--ink:#202625;--muted:#5d6663;--gold:#f7b532;--line:#dfe3e0;--soft:#f4f6f4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.65;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a,button,input,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b37c00;outline-offset:5px}img{max-width:100%;display:block}.topline{background:#202625;color:white;padding:9px 5%;font-size:11px;letter-spacing:1.6px;display:flex;justify-content:space-between}header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between;padding:12px 5%;border-bottom:1px solid var(--line);gap:24px}.brand{width:180px}.brand img{width:100%;height:82px;object-fit:contain}nav{display:flex;gap:28px;font-size:14px;font-weight:600}nav a:hover,.textlink:hover{color:#8a5d00}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--gold);color:#202625;padding:16px 23px;font-size:14px;font-weight:700;border:0;cursor:pointer;transition:background .2s,transform .2s;line-height:1.4}.button:hover{background:#ffc95d;transform:translateY(-2px)}.button.small{padding:13px 18px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-copy{padding:90px 8% 70px 10%;align-self:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 25px;line-height:1.7}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-2.8px;line-height:1.07}h1{font-size:clamp(48px,5.3vw,82px);margin-bottom:28px}em{font-family:Georgia,serif;font-weight:400}h1 em{color:#726346}h2{font-size:clamp(38px,4vw,59px);margin-bottom:28px}h3{font-size:25px;line-height:1.3;letter-spacing:-.65px;font-weight:500;margin-bottom:20px}p{color:var(--muted)}.lead{font-size:18px;max-width:410px}.actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:34px}.textlink{font-size:14px;border-bottom:1px solid #89928e;padding-bottom:5px;font-weight:600}.hero-note{font-size:12px;margin-top:45px;color:var(--muted);display:flex;align-items:center;gap:12px}.line{height:1px;width:35px;background:var(--gold)}.hero-image{position:relative;overflow:hidden;background:#d7ddd5;min-height:540px}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover}.image-caption{position:absolute;bottom:30px;left:30px;right:30px;background:rgba(255,255,255,.91);padding:20px 25px;backdrop-filter:blur(8px)}.image-caption span{font-size:10px;letter-spacing:2px;display:block;margin-bottom:4px}.image-caption strong{font-family:Georgia,serif;font-size:23px;font-weight:400}.benefit-strip{display:flex;justify-content:space-around;gap:20px;padding:25px 5%;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.section{padding:100px 6%;scroll-margin-top:0}.section-head{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:50px}.section-head h2{margin-bottom:0}.section-head>p{max-width:350px;margin-bottom:0}.solutions-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.solution{padding:34px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;transition:background .3s}.solution:hover{background:var(--soft)}.number{font-size:11px;letter-spacing:1.5px;color:#7b6b48;margin-bottom:45px}.solution p{font-size:15px}.solution a{font-size:13px;font-weight:700;margin-top:auto;padding-top:30px;text-decoration:underline;text-underline-offset:5px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.tags span{font-size:11px;padding:4px 8px;background:#f0f2ef}.lake{background:#eef2ef;display:grid;grid-template-columns:1fr 1fr;gap:9%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lake h2{font-size:clamp(40px,4.5vw,66px)}.lake-title{padding-top:12px}.large-copy{font-size:23px;line-height:1.5;color:var(--ink);letter-spacing:-.4px}.places{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.places span{border:1px solid #b9c5bb;padding:8px 13px;font-size:13px}.muted{font-size:14px}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.about-visual{position:relative;min-height:550px;background:var(--soft)}.about-visual img{width:100%;height:550px;object-fit:cover}.visual-label{position:absolute;bottom:0;left:0;background:var(--gold);padding:18px 25px;font-size:10px;letter-spacing:1.7px}.about .button{margin-top:16px}.xpel{background:#202b27;color:white;display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.xpel p{color:#c9d2cc}.xpel .eyebrow{color:#f7c766}.xpel h2{max-width:560px}.warranty{border:1px solid #67716a;padding:38px;align-self:center}.warranty h3{font-size:34px;margin-top:20px}.warranty p{font-size:15px}.warranty a{font-size:13px;text-decoration:underline;text-underline-offset:5px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps span{font-family:Georgia,serif;font-size:38px;color:#a47c2f;display:block;margin-bottom:25px}.steps h3{font-size:22px}.steps p{font-size:15px}.faq{background:var(--soft);display:grid;grid-template-columns:.9fr 1.1fr;gap:9%}.faq-list{border-top:1px solid #cdd4ce}.faq details{border-bottom:1px solid #cdd4ce}.faq summary{cursor:pointer;font-size:16px;list-style:none;padding:21px 32px 21px 0;position:relative;font-weight:600}.faq summary:after{content:'+';position:absolute;right:4px;top:16px;font-size:25px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{font-size:15px;padding:0 24px 12px 0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#fff}.contact h2{font-size:60px}.phone{font-size:34px;letter-spacing:-1px;display:inline-block;border-bottom:2px solid var(--gold);margin-top:10px}.hours{font-size:14px;margin-top:12px}.contact-note{font-size:13px;border-top:1px solid var(--line);padding-top:25px;margin-top:40px;max-width:360px}.contact form{padding:35px;background:var(--soft);align-self:start}.contact form p{font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:13px;margin-bottom:16px;font-weight:600}input,textarea{width:100%;display:block;margin-top:7px;background:white;border:1px solid #c6ceca;padding:11px;border-radius:0;min-width:0;color:var(--ink)}input:focus,textarea:focus{outline:2px solid #b58c37;outline-offset:1px}textarea{resize:vertical}.form-status{margin:12px 0 0}footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 6%;font-size:12px;color:var(--muted)}footer img{width:140px}footer p{margin:0}footer>a:nth-of-type(2){font-size:14px}.mobile-call{display:none}.skip{position:absolute;top:-100px;left:10px;background:white;z-index:100;padding:15px}.skip:focus{top:10px}.reveal{transition:opacity .7s,transform .7s}.js-motion .reveal.pending{opacity:0;transform:translateY(18px)}@media(min-width:1600px){main,header,footer,.topline,.benefit-strip{max-width:1800px;margin:auto}}@media(max-width:1100px){nav{gap:16px}.brand{width:150px}.hero-copy{padding:60px 8%}.solutions-grid{grid-template-columns:repeat(2,1fr)}.solution{padding:30px}.number{margin-bottom:25px}.steps{gap:20px}.section{padding:75px 5%}}@media(max-width:760px){.topline{justify-content:center;font-size:9px}.topline span{display:none}header{padding:8px 5%;gap:15px}.brand{width:130px}.brand img{height:64px}nav{display:none}.button.small{font-size:12px;padding:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 6% 40px}h1{font-size:57px;letter-spacing:-2.7px}.eyebrow{font-size:10px;margin-bottom:20px}.hero-note{margin-top:25px}.hero-image{min-height:400px}.image-caption{left:20px;right:20px;bottom:20px}.benefit-strip{display:grid;grid-template-columns:1fr 1fr;font-size:11px;text-align:center;gap:12px}.section{padding:65px 6%}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:25px}.solutions-grid{grid-template-columns:1fr}.solution h3 br{display:none}.solution a{padding-top:18px}.solution{padding:28px}.number{margin-bottom:18px}.lake,.about,.xpel,.faq,.contact{grid-template-columns:1fr;gap:35px}.about-visual,.about-visual img{min-height:330px;height:330px}.steps{grid-template-columns:1fr 1fr;gap:28px}.steps h3{font-size:20px}.steps span{margin-bottom:18px}.warranty{padding:25px}.contact h2{font-size:48px}.contact form{padding:25px}.form-grid{grid-template-columns:1fr;gap:0}footer{display:grid;grid-template-columns:1fr 1fr;padding-bottom:100px}.mobile-call{display:block;position:fixed;bottom:12px;left:12px;right:12px;background:var(--gold);color:var(--ink);text-align:center;padding:15px;z-index:30;font-size:14px;font-weight:700;box-shadow:0 4px 20px #0002}.phone{font-size:31px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.js-motion .reveal.pending{opacity:1;transform:none}}
/* ProLine brand direction: bold lettering, square geometry, gold framing. */
:root{--ink:#191919;--muted:#606060;--soft:#f4f4f4;--line:#dedede;--gold:#ffbc45}h1,h2,h3{font-weight:800;letter-spacing:-1.6px}h1{font-size:clamp(44px,4.8vw,72px);line-height:1.02}h2{font-size:clamp(36px,3.8vw,55px);line-height:1.08}em{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:800}h1 em{color:var(--ink);background:linear-gradient(transparent 83%,var(--gold) 83%)}.eyebrow{letter-spacing:1.6px;border-left:4px solid var(--gold);padding-left:13px}.brand{width:205px}.brand img{height:95px}.hero-copy{padding-top:65px;padding-bottom:65px}.hero-image{border-bottom:7px solid var(--gold)}.image-caption{border-left:5px solid var(--gold)}.image-caption strong{font-family:Arial,Helvetica,sans-serif;font-size:20px;font-weight:800}.button{font-weight:800;box-shadow:3px 3px 0 #191919;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.topline,.xpel{background:#191919}.lake{background:#f2f2f2}.lake h2{font-size:clamp(38px,4vw,59px)}.lake h2 em{border-bottom:5px solid var(--gold)}.number{color:#5c4a2a;font-weight:800}.solution{border-top:4px solid var(--gold)}.solution h3{font-size:24px}.steps span{font-family:Arial,Helvetica,sans-serif;font-weight:900;color:#292929}.steps article{border-top:4px solid var(--gold)}.visual-label{font-weight:800}.places span{border-color:#c9c9c9}.xpel .eyebrow{color:var(--gold)}.warranty{border:2px solid var(--gold)}.commercial{background:#fafafa;border-bottom:1px solid var(--line)}.commercial-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:stretch}.commercial-photo{position:relative;min-height:500px}.commercial-photo img{position:absolute;width:100%;height:100%;object-fit:cover}.commercial-photo span{position:absolute;bottom:0;left:0;right:0;background:var(--gold);padding:18px;font-size:11px;letter-spacing:1px;font-weight:800}.commercial-copy article{border-top:1px solid var(--line);padding:23px 0 4px}.commercial-copy h3{font-size:23px;margin-bottom:12px}.commercial-copy p{font-size:15px}.commercial-copy .button{margin-top:14px}.commercial-planning{margin-top:40px;padding:25px 30px;background:#191919;color:white;display:grid;grid-template-columns:1fr 2fr;gap:35px;border-left:6px solid var(--gold)}.commercial-planning strong{font-size:22px;line-height:1.4}.commercial-planning p{margin:0;color:#dedede;font-size:15px}.residential{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-top:1px solid var(--line)}.lake-details{margin-top:28px}.lake-details h3{font-size:21px;margin-bottom:10px}.lake-details p{font-size:15px;margin-bottom:24px}.hero-note{font-weight:600}.phone{font-weight:800}.contact h2{font-size:56px}@media(max-width:1100px){.brand{width:165px}nav{gap:15px;font-size:13px}}@media(max-width:760px){.brand{width:145px}.brand img{height:72px}.hero-copy{padding:45px 6%}.hero h1{font-size:clamp(39px,10.7vw,64px)}.commercial-layout,.residential{grid-template-columns:1fr;gap:30px}.commercial-photo{min-height:340px}.commercial-planning{grid-template-columns:1fr;gap:14px;padding:24px}.contact h2{font-size:46px}.hero-image{min-height:340px}.image-caption strong{font-size:17px}}

.lake-photo{margin:38px 0 0;border-bottom:6px solid var(--gold);overflow:hidden;background:#ddd}.lake-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.lake-title{min-width:0}@media(max-width:760px){.lake-photo{margin-top:28px}.lake-photo img{aspect-ratio:4/3}}

.lake-photo img{height:auto;object-position:center 75%}
.call-routing{display:block;font-size:12px;line-height:1.5;font-weight:500;letter-spacing:0;margin-top:4px}.button[href^="tel:"]{flex-direction:column}.textlink[href^="tel:"]{display:inline-block}.phone .call-routing{font-size:15px;font-weight:600}.phone-context{font-size:13px;margin:12px 0 0}.contact-email{display:inline-block;font-size:15px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;max-width:100%}.affiliation{border:1px solid var(--line);border-left:4px solid var(--gold);background:var(--soft);padding:23px;margin:28px 0 20px}.affiliation .eyebrow{border:0;padding:0;margin-bottom:12px}.affiliation h3{font-size:22px;margin-bottom:12px}.affiliation p:not(.eyebrow){font-size:14px;margin-bottom:14px}.affiliation>a{font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}@media(max-width:760px){header .call-routing{font-size:10px}.contact-email{font-size:14px}}

.bot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.privacy-note{font-size:12px!important}.button:disabled{opacity:.6;cursor:wait;transform:none}.cf-turnstile{margin:15px 0;max-width:100%}


/* Real project photographs — preserve ProLine's existing visual direction. */
.residential{align-items:center}.residential-photo{position:relative;margin:28px 0 0;width:100%;max-width:440px;height:auto;aspect-ratio:4/3;border-bottom:6px solid var(--gold);background:var(--soft);overflow:hidden}.residential-photo img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 40%}.commercial-photo img{object-position:center}.about-visual img{object-position:65% 48%}.projects{border-top:1px solid var(--line);background:#fafafa}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.project-photo{margin:0;min-width:0;background:#fff;border-bottom:3px solid var(--gold)}.project-photo a{display:block;position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--soft)}.project-photo img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transition:transform .3s}.project-photo a:hover img{transform:scale(1.025)}.project-photo figcaption{padding:14px 16px;font-size:12px;font-weight:700;color:var(--ink);line-height:1.5}.project-photo a:focus-visible{outline-offset:-4px}@media(max-width:1100px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}@media(max-width:760px){.residential-photo{margin-top:26px;max-width:440px;height:auto}.about-visual,.about-visual img{height:420px;min-height:420px}.about-visual img{object-position:65% 45%}.projects-grid{gap:16px}.project-photo figcaption{padding:12px;font-size:11px}}@media(max-width:480px){.projects-grid{grid-template-columns:minmax(0,1fr);gap:20px}.residential-photo{height:auto}.about-visual,.about-visual img{height:390px;min-height:390px}}
