:root{--navy:#102c3b;--deep:#0b202c;--orange:#ffa30d;--paper:#f6f6f0;--muted:#617078}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--navy);background:var(--paper)}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:15px;z-index:20}.skip:focus{top:10px}header{height:94px;background:var(--deep);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:35px}.brand{display:flex;align-items:center;flex-direction:column;width:160px;flex-shrink:0}.brand img{width:160px;height:64px;object-fit:contain}.brand span{font-size:9px;letter-spacing:5px;margin-top:-8px;margin-left:38px}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover,.text-link:hover{color:var(--orange)}.nav-contact{border:1px solid #6c7a81;padding:14px 20px}#menu{display:none}.hero{height:680px;min-height:600px;position:relative;color:white;display:flex;align-items:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(6,24,34,.94),rgba(6,24,34,.65) 43%,rgba(6,24,34,.12)),linear-gradient(0deg,rgba(6,24,34,.8),transparent 35%)}.hero-content{position:relative;padding:0 7%;max-width:1000px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;margin:0 0 25px}.hero .eyebrow{color:var(--orange)}h1{font-size:clamp(48px,6.1vw,88px);line-height:1.04;letter-spacing:-4px;font-weight:500;margin:0 0 26px}em{font-style:normal;color:var(--orange)}.hero-description{font-size:17px;line-height:1.7;max-width:455px;color:#d4dce0}.actions{display:flex;align-items:center;gap:30px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:19px 24px;font-size:13px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#ffb83e;transform:translateY(-2px)}.orange{background:var(--orange);color:var(--deep)}.text-link{font-size:13px}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;border-top:1px solid #ffffff40;display:flex;justify-content:space-between;padding:22px 0;font-size:10px;letter-spacing:1px}.section{padding:100px 7%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:48px}h2{font-size:clamp(34px,3.6vw,50px);font-weight:500;line-height:1.12;letter-spacing:-1.8px;margin:0}.section-heading>p{max-width:365px;font-size:15px;line-height:1.8;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d3d8d8}.service-grid article{padding:27px 30px 15px 0}.service-grid article+article{padding-left:30px;border-left:1px solid #d3d8d8}.service-number{display:flex;justify-content:space-between;font-size:12px;color:#71828a}.service-number span{font-size:22px}.service-icon{font-size:44px;color:#c07800;margin:25px 0 19px}h3{font-size:23px;font-weight:500;letter-spacing:-.5px}.service-grid p{color:var(--muted);line-height:1.8;font-size:14px;min-height:100px}.service-grid a{display:inline-block;font-size:12px;font-weight:700;border-bottom:1px solid #c7cccb;padding:10px 0}.about{background:#e9ede9;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-image{position:relative;height:530px}.about-image img{width:100%;height:100%;object-fit:cover}.about-image span{position:absolute;bottom:25px;left:25px;background:var(--orange);padding:20px;font-size:12px;line-height:1.6;font-weight:bold;letter-spacing:1px}.about-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.9}.about-copy h2{margin-bottom:25px}.facts{display:flex;gap:50px;border-top:1px solid #c6cfcb;padding-top:25px;margin-top:30px}.facts strong{display:block;font-size:28px;font-weight:500}.facts span{font-size:11px;color:var(--muted);display:block;margin-top:8px}.calculator{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.calculator .eyebrow{color:var(--orange)}.calc-copy>p:not(.eyebrow){max-width:370px;color:#c1cdd0;font-size:15px;line-height:1.9}.calc-tag{display:block;color:var(--orange);font-size:10px;letter-spacing:1.5px;margin-top:45px}.calc-box{background:#fff;color:var(--navy);padding:36px}.calc-box label{font-size:14px}.number-wrap{border-bottom:1px solid #c9d0d1;display:flex;align-items:center;margin:18px 0 25px}.number-wrap input{width:100%;min-width:0;border:0;font-size:40px;color:var(--navy);padding:5px 0;background:none}.number-wrap span{white-space:nowrap;color:var(--muted);font-size:13px}input[type=range]{width:100%;accent-color:#a96000;cursor:pointer}.range-label{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin:10px 0 30px}.estimate{border-top:1px solid #e0e4e2;padding-top:22px}.estimate span{font-size:12px;display:block}.estimate output{display:block;font-size:42px;letter-spacing:-2px;margin:10px 0}.fine{font-size:11px;color:var(--muted);line-height:1.7}.calc-box .button{width:100%;margin-top:15px}.gallery{display:grid;grid-template-columns:1.35fr 1fr;gap:28px}figure{margin:0}.gallery img{width:100%;height:365px;object-fit:cover}.gallery figcaption{display:flex;justify-content:space-between;border-bottom:1px solid #cbd2d1;padding:20px 0;font-size:13px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--deep);color:white}.contact>div>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#b5c5cc;max-width:370px}.contact-options a{display:block;border-bottom:1px solid #ffffff30;padding:24px 35px 24px 0;position:relative}.contact-options small{display:block;color:#b5c5cc;font-size:10px;letter-spacing:1.4px;margin-bottom:13px}.contact-options strong{font-size:clamp(17px,2vw,25px);font-weight:400}.contact-options a>span{position:absolute;right:0;top:45px;color:var(--orange);font-size:24px}.contact-options>div{padding-top:25px}.contact-options p{font-size:14px;line-height:1.8}footer{padding:25px 7%;background:var(--deep);color:#b5c5cc;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;align-items:center;font-size:11px}footer .brand{transform:scale(.8);transform-origin:left center}footer p{margin-right:35px}@media(max-width:900px){nav{gap:15px;font-size:11px}.nav-contact{padding:12px}header{padding:0 4%}.section{padding:75px 6%}.section-heading{gap:30px}.hero-content{padding:0 6%}.about{gap:6%}.about-image{height:460px}.calculator{gap:5%}.calc-box{padding:25px}.estimate output{font-size:35px}.service-grid article{padding-right:18px}.service-grid article+article{padding-left:18px}}@media(max-width:650px){header{height:80px;padding:0 6%;position:relative;z-index:10}.brand{width:135px}.brand img{width:135px;height:55px}.brand span{font-size:8px}#menu{display:block;background:none;border:1px solid #73828a;color:white;padding:8px 12px;font-size:21px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--deep);padding:25px 6%;align-items:stretch;font-size:15px;gap:24px}nav.open{display:flex;flex-direction:column}.hero{height:670px;min-height:0}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#071b29e8,#071b2977)}h1{letter-spacing:-2px;font-size:54px}.hero-content{padding-bottom:45px}.eyebrow{font-size:9px;letter-spacing:1.8px}.hero-description{font-size:15px;max-width:325px}.actions{align-items:flex-start;flex-direction:column;gap:24px}.hero-bottom{left:6%;right:6%;font-size:9px;line-height:1.6;gap:15px}.hero-bottom span:last-child{display:none}.section{padding:65px 6%}.section-heading{display:block}.section-heading>p{margin-top:23px}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article+article{padding:25px 0;border-left:0;border-bottom:1px solid #d3d8d8}.service-icon{margin:10px 0}.service-grid p{min-height:0}.about,.calculator,.contact{grid-template-columns:1fr;gap:40px}.about-image{height:350px}.about-copy h2 br:last-child{display:none}.facts{gap:40px}.calc-tag{margin-top:25px}.calc-box{padding:25px}.estimate output{font-size:38px}.gallery{grid-template-columns:1fr;gap:35px}.gallery img{height:290px}.contact-options strong{font-size:21px}footer{flex-wrap:wrap;gap:15px;padding:25px 6%}footer p{width:100%;order:3;margin:0}h2{font-size:36px}html{scroll-padding-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Keep the brand name above its tagline, which is also embedded in the source image. */
.brand{width:180px}
.brand img{width:180px;height:74px;object-fit:contain;clip-path:polygon(0 0,100% 0,100% 68%,33% 68%,33% 100%,0 100%)}
.brand .brand-generation{font-size:10px;line-height:12px;letter-spacing:5px;margin:-22px 0 0 50px}
.brand .brand-tagline{font-size:8px;line-height:11px;letter-spacing:.5px;margin:4px 0 0 50px;white-space:nowrap}
@media(max-width:650px){.brand{width:160px}.brand img{width:160px;height:66px}.brand .brand-generation{font-size:9px;line-height:10px;letter-spacing:4px;margin:-20px 0 0 44px}.brand .brand-tagline{font-size:7px;line-height:9px;margin:3px 0 0 44px}}

/* Project photos retain their complete framing in the expanded portfolio. */
.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}.gallery img{height:390px;object-fit:contain;background:#e9ede9}.about-image .team-photo{object-position:50% 42%}.gallery figcaption{gap:15px;line-height:1.5}.gallery figcaption>span:last-child{flex-shrink:0;color:#617078}
@media(max-width:650px){.gallery{grid-template-columns:1fr;gap:30px}.gallery img{height:auto;max-height:520px;display:block}.about-image:has(.team-photo){height:430px}}
