:root{--ink:#111829;--muted:#626874;--orange:#d74619;--pale:#f5f6f8}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:var(--orange)}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #ef845e;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:700;line-height:1.12;letter-spacing:-1.5px}h1{font-size:clamp(42px,4.8vw,72px)}h2{font-size:clamp(32px,3.1vw,46px)}h3{font-size:25px;letter-spacing:-.6px}p{color:var(--muted)}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.topbar{background:var(--ink);color:#fff;font-size:12px;letter-spacing:.4px;padding:9px 0}.topbar .wrap{display:flex;justify-content:space-between}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:28px}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:800;letter-spacing:1px;line-height:1.2}.brand-mark{background:var(--orange);color:#fff;font-size:39px;display:grid;place-items:center;width:45px;height:53px;flex-shrink:0}.brand-sub{display:block;font-size:10px;letter-spacing:1.7px;margin-top:6px}nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:600}nav a[aria-current]{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;padding:17px 25px;background:var(--orange);color:#fff;border:0;font-weight:600;font-size:14px;line-height:1.5;cursor:pointer}.button:hover{background:#af3310;color:#fff}.button.small{padding:15px 19px;font-size:12px}.menu-toggle{display:none}.hero{background:var(--ink);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;min-height:650px;align-items:center;gap:20px}.hero-copy{padding:70px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--orange);margin-bottom:23px}.hero .eyebrow{color:#ff9670}.orange-line{display:inline-block;width:28px;height:2px;background:var(--orange);vertical-align:middle;margin-right:9px}.hero h1{letter-spacing:-3px;margin-bottom:26px}.hero em{font-style:normal;color:#f47c50}.hero-copy>p:not(.eyebrow){max-width:485px;color:#c1c7d2;font-size:16px}.actions{display:flex;align-items:center;gap:25px;margin-top:32px}.hero-link{font-size:13px;color:#fff}.hero-art{position:relative}.hero-art img{display:block;width:100%;height:auto}.experience{position:absolute;bottom:44px;left:0;background:#fff;color:var(--ink);padding:18px 27px;display:flex;align-items:center;gap:17px}.experience strong{font-size:49px;line-height:1}.experience strong span{color:var(--orange)}.experience>span{font-size:10px;letter-spacing:1px;line-height:1.6}.art-caption{position:absolute;bottom:4px;right:14px;font-size:9px;letter-spacing:2px;color:#a4afbf}.trust-strip{border-bottom:1px solid #e1e3e7}.trust-strip .wrap{display:flex;justify-content:space-between;padding-top:22px;padding-bottom:22px;font-size:13px;font-weight:600}.trust-strip span:before{content:'↗';color:var(--orange);margin-right:14px}.section{padding:96px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:365px;margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{border:1px solid #dddfe4;padding:35px 30px;background:#fff}.card-number{display:block;font-size:13px;color:var(--orange);font-weight:700;margin-bottom:38px}.service-card h3{max-width:240px}.service-card p{font-size:14px;margin:20px 0 26px}.text-link{display:inline-flex;gap:25px;font-weight:600;font-size:13px;border-bottom:1px solid #d5d8df;padding-bottom:6px}.pale{background:var(--pale)}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.split p{max-width:540px}.statement{border-left:4px solid var(--orange);padding:20px 0 20px 45px}.big-number{font-size:145px;line-height:1.2;font-weight:700;letter-spacing:-10px}.big-number span{color:var(--orange)}.statement>p:last-child{font-size:18px;margin:0}.cta{background:var(--orange);padding:52px 0;color:white}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta .eyebrow{color:#fff;margin-bottom:12px}.cta h2{font-size:36px;margin:0}.button.light{background:#fff;color:var(--ink);flex-shrink:0}.button.light:hover{background:#f7ddd4}footer{background:var(--ink);color:#fff;padding:65px 0 0}.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:70px}.footer-grid p,.footer-grid address{color:#b4bfce;font-size:13px;margin-top:24px}.footer-grid h3{font-size:14px;letter-spacing:0;margin-bottom:22px}.footer-grid>div>a:not(.brand){display:block;color:#c0c8d3;font-size:13px;margin-bottom:9px;overflow-wrap:anywhere}address{font-style:normal}.copyright{border-top:1px solid #303849;margin-top:45px;padding-top:22px;padding-bottom:22px;font-size:11px;color:#a4afbf}.page-intro{padding:76px 0;background:var(--ink);color:#fff}.page-intro h1{max-width:850px}.page-intro .eyebrow{color:#ff9670}.lead{color:#bdc7d5;max-width:680px;font-size:18px;margin:0}.project-list{list-style:none;padding:0;margin:0}.project-list li{padding:22px 0;border-bottom:1px solid #d8dce3}.project-list span{color:var(--orange);font-size:12px;margin-right:17px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-item{margin-top:30px}.contact-item>span{display:block;font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--muted);margin-bottom:9px}.contact-item>a{overflow-wrap:anywhere}.contact-phone{font-size:30px;font-weight:700}.estimate-panel{padding:36px;background:var(--pale)}.estimate-panel h2{font-size:32px}.estimate-panel p{font-size:14px}label{display:block;font-size:13px;font-weight:600;margin-bottom:5px}input,textarea{width:100%;border:1px solid #c8cdd5;background:white;padding:10px 13px;margin-bottom:15px;border-radius:0;color:var(--ink)}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:1px}.form-note{margin:16px 0 0;font-size:12px!important}#form-status{font-weight:600;margin-top:12px}.skip{position:absolute;top:-100px;left:10px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}@media(min-width:1500px){.hero-grid{min-height:730px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}nav{gap:17px}nav .small{display:none}.hero h1{font-size:58px}.split,.contact-grid{gap:45px}.footer-grid{gap:35px}.brand{font-size:17px}.brand-sub{font-size:9px}.hero-grid{min-height:580px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.topbar{font-size:10px}.topbar .wrap>span{max-width:220px}.nav-wrap{min-height:86px;flex-wrap:wrap;gap:0}.brand{font-size:16px}.brand-sub{font-size:8px}.brand-mark{width:36px;height:44px;font-size:32px}.menu-toggle{display:block;background:none;border:1px solid #cfd3da;padding:7px 10px;font-size:12px}nav{display:none;width:100%;padding:12px 0 25px;align-items:stretch}nav.open{display:flex;flex-direction:column;gap:0}nav a{padding:10px 0}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:55px 0 15px}.hero h1{font-size:clamp(42px,10vw, sixty);font-size:clamp(42px,10vw,64px);letter-spacing:-2px}.hero .eyebrow{font-size:9px;letter-spacing:1.3px}.actions{gap:18px;flex-wrap:wrap}.hero-art{max-width:430px;width:100%;margin:auto}.experience{bottom:30px;padding:14px 20px}.experience strong{font-size:40px}.art-caption{bottom:10px;font-size:8px}.trust-strip .wrap{flex-wrap:wrap;gap:10px;font-size:11px}.section{padding:60px 0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.cards,.split,.contact-grid,.footer-grid{grid-template-columns:1fr;gap:25px}.service-card{padding:28px}.card-number{margin-bottom:22px}.service-card h3{max-width:none}.statement{padding-left:28px}.big-number{font-size:110px}.split{gap:40px}.cta .wrap{display:block}.cta h2{font-size:30px}.cta .button{margin-top:25px}.footer-grid{gap:35px}.page-intro{padding:55px 0}.page-intro h1{font-size:43px}.estimate-panel{padding:25px}.contact-phone{font-size:27px}.copyright{margin-top:30px}.contact-grid{gap:40px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:35px 0}.project-photo{margin:0;background:#f5f6f8;overflow:hidden}.project-photo a{display:block}.project-photo img{width:100%;height:290px;object-fit:cover;display:block}.project-photo figcaption{padding:16px 18px;font-size:13px;line-height:1.5;color:#424a58}.gallery-heading{margin-top:70px}.hero-art>img{height:530px;object-fit:cover;border-radius:2px}.hero-art .art-caption{background:#111829;padding:6px}.project-section{border-top:1px solid #e1e3e7}nav{gap:17px}@media(max-width:1200px){nav .small{display:none}}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.photo-grid{grid-template-columns:1fr}.project-photo img{height:340px}.hero-art>img{height:390px;margin:25px 0}.hero-art .experience{bottom:45px}}

.detail-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:65px;align-items:center}
.detail-row.reverse .detail-copy{order:2}.detail-row.reverse .detail-photo{order:1}
.detail-photo{margin:0;min-width:0;background:#edf0f4}.detail-photo a{display:block}
.detail-photo img{width:100%;height:530px;object-fit:contain;background:#182130;display:block}
.detail-photo figcaption{font-size:12px;padding:14px 18px;line-height:1.5;color:#475060}
.detail-list{padding-left:20px;margin:25px 0 0}.detail-list li{padding:5px 0;color:#475060}
.faq-block{max-width:950px}.faq-block details{border-bottom:1px solid #cdd2db;padding:22px 0}
.faq-block summary{cursor:pointer;font-weight:700;font-size:18px;line-height:1.5}
.faq-block details p{margin:18px 0 0;max-width:800px}.faq-block summary:focus-visible{outline:3px solid #d74619;outline-offset:5px}
@media(max-width:900px){.detail-row{gap:30px}.detail-photo img{height:440px}}
@media(max-width:760px){.detail-row{grid-template-columns:1fr;gap:25px}.detail-row.reverse .detail-copy,.detail-row.reverse .detail-photo{order:initial}.detail-photo img{height:420px}.faq-block summary{font-size:17px}}
