:root{--ink:#142d2b;--orange:#e74724;--light:#f3f6f4;--muted:#536563}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #e74724;outline-offset:4px}[hidden]{display:none!important}.preview-note{padding:6px 20px;text-align:center;background:#edf2ef;font-size:12px;color:#435653}header{height:92px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:white}.logo{width:170px;height:auto;display:block}nav{display:flex;gap:32px;font-size:14px}nav a:hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--orange);color:white;border:0;border-radius:5px;padding:15px 25px;font-weight:600;font-size:15px}.button:hover{background:#c93718}.small{padding:12px 19px;font-size:14px}.hero{min-height:690px;height:calc(100vh - 123px);max-height:950px;position:relative;color:white;background:#142d2b;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:65% center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,23,22,.89),rgba(5,23,22,.5) 46%,rgba(5,23,22,.04) 80%)}.hero-copy{position:relative;padding:95px 7% 130px;max-width:900px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;display:block;margin-bottom:20px}h1{font-size:clamp(44px,5.1vw,78px);line-height:1.09;letter-spacing:-3px;font-weight:500;margin:0 0 26px}em{font-family:Georgia,serif;font-weight:normal}h1 em{color:#cce7dc}.hero p{color:#e3eae6;font-size:17px;margin-bottom:32px}.hero-link{margin-left:25px;font-size:14px;border-bottom:1px solid #b4c3bd;padding-bottom:5px}.caption{position:absolute;right:25px;bottom:80px;font-size:12px;background:#142d2bbf;padding:5px 10px;border-radius:3px}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;border-top:1px solid #ffffff50;padding:22px 0;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px}.section{padding:95px 7%}h2{font-size:clamp(32px,3.4vw,50px);font-weight:500;line-height:1.16;letter-spacing:-1.7px;margin:0 0 25px}h3{font-size:23px;line-height:1.3;font-weight:500}p{margin:0 0 20px;color:var(--muted)}.intro{display:grid;grid-template-columns:1fr 1.25fr;gap:9%}.large{font-size:25px;line-height:1.5;color:var(--ink)}.tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.tags span{padding:7px 12px;border:1px solid #ced8d2;border-radius:25px;font-size:12px}.solutions{background:var(--light)}.section-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.card{border:1px solid #d7e1db;background:white;text-align:left;padding:30px;color:var(--ink);border-radius:6px;transition:transform .2s}.card:hover{transform:translateY(-5px);border-color:#879f93}.number{font-family:Georgia,serif;font-size:38px;color:#8daba0}.card-link{display:block;border-top:1px solid #dae2dd;padding-top:20px;color:#bb351a;font-size:14px}.process{background:#143632;color:white}.process h2{max-width:600px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:45px}.steps b{font-size:13px;color:#a3c6b9;display:block;border-top:1px solid #ffffff40;padding-top:24px}.steps h3{font-size:20px}.steps p{color:#c4d8d0;font-size:15px}.project{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;background:#fbfcfa}.project-intro p{max-width:390px}.project-intro>a{font-size:22px;border-bottom:1px solid}form{padding:35px;background:white;border:1px solid #dce3de;border-radius:8px;align-self:start;min-width:0}.progress{font-size:13px;color:#697e73;border-bottom:1px solid #e1e7e3;padding-bottom:15px;margin-bottom:25px}fieldset{border:0;padding:0;margin:0}legend{font-size:24px;margin-bottom:23px;line-height:1.3}label{display:block;font-size:14px;margin-bottom:20px;color:#324b43}input,select,textarea{display:block;width:100%;border:1px solid #c4d1c9;background:#fff;padding:12px;border-radius:4px;margin-top:8px;color:var(--ink);min-width:0}textarea{resize:vertical}.dimensions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}output{display:block;color:#315e49;margin-bottom:20px}.form-actions{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.secondary{background:none;border:1px solid #c6d2ca;padding:10px 20px;border-radius:5px}.fine{font-size:13px;line-height:1.6}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:14px;background:#f0f5f1;padding:20px}#form-error{color:#b12616;font-size:14px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}details{border-bottom:1px solid #d8e2dc;padding:18px 0}summary{cursor:pointer;font-weight:600}details p{padding-top:15px}.contact-strip{padding:50px 7%;background:#e8efea;display:flex;gap:30px;align-items:center;justify-content:space-between}.contact-strip h2{font-size:27px;letter-spacing:-.7px}.contact-strip p{margin:0}.contact-strip .button{flex-shrink:0}footer{padding:40px 7%;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:13px}footer p{margin:0}@media(max-width:900px){nav{display:none}.hero-copy{padding-top:85px}.steps{grid-template-columns:repeat(2,1fr)}.section{padding:65px 6%}.intro,.project,.faq{gap:35px}.cards{gap:12px}.card{padding:20px}.hero{min-height:670px}footer{flex-wrap:wrap}}@media(max-width:620px){header{height:80px;padding:0 5%;gap:10px}.logo{width:135px}.small{font-size:12px;padding:10px 12px}.hero{height:auto;min-height:650px}.hero-copy{padding:70px 6% 150px}.hero>img{object-position:62%}.hero-shade{background:linear-gradient(90deg,#071d1be8,#071d1b66)}h1{font-size:46px;letter-spacing:-2px}.hero p{font-size:16px}.hero-link{display:inline-block;margin:20px 0 0 20px}.hero-bottom{font-size:10px;left:6%;right:6%}.caption{font-size:10px;right:6%}.intro,.project,.faq{grid-template-columns:1fr}.section-top{display:block}.cards{grid-template-columns:1fr}.card h3{margin:10px 0}.card .number{font-size:26px}.steps{gap:25px}.steps h3{font-size:18px}.large{font-size:22px}form{padding:22px}.dimensions{grid-template-columns:1fr}.contact-strip{display:block}.contact-strip .button{margin-top:20px}.preview-note{font-size:11px}.project h2 br{display:none}.project h2{max-width:330px}.project-intro .fine{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
:root .caption{font-size:12px;max-width:90%;line-height:1.6}:root .caption a{text-decoration:underline;text-underline-offset:2px}
.image-credit{padding:0 7% 24px;color:#61716a;font-size:12px;line-height:1.6}.image-credit a{text-decoration:underline;text-underline-offset:2px}
.check-label{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.check-label input{width:18px;margin:5px 0 0}.check-label a{text-decoration:underline}.menu-toggle{display:none}.footer-links{display:flex;flex-wrap:wrap;gap:20px;padding:0 7% 25px;font-size:14px}.page-hero{background:#173730;color:white}.page-hero p{color:#d4e6df;max-width:650px;font-size:20px}.page-hero h1{font-size:clamp(40px,5vw,70px)}.prose{max-width:950px;margin:auto}.prose h1{font-size:42px}.prose a{text-decoration:underline}.catalog-filters{display:flex;gap:20px}.catalog-filters label{flex:1}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.catalog-card{border:1px solid #d8e2dc;padding:25px;border-radius:5px}.catalog-card h2{font-size:24px;letter-spacing:-.5px}.catalog-card small{font-size:13px}.catalog-card p{white-space:pre-wrap}.catalog-card .button{margin-top:15px}button:disabled{opacity:.55;cursor:wait}#form-error:empty{display:none}@media(max-width:900px){header{position:relative}.menu-toggle{display:block}#site-nav.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:white;padding:25px;z-index:20;box-shadow:0 10px 20px #0002}.catalog-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.catalog-grid{grid-template-columns:1fr}.catalog-filters{display:block}.prose h1{font-size:34px}.menu-toggle{font-size:12px;padding:8px}.page-hero h1{letter-spacing:-1px}}
