:root{--ink:#080b10;--navy:#0e1b2b;--steel:#243448;--cream:#f3efe7;--white:#fff;--gold:#f3b51b;--red:#c62f39;--blue:#177bc6;--line:rgba(255,255,255,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.6}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:108px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:flex-end;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid var(--line);color:#fff}.site-header nav{display:flex;align-items:center;gap:34px;font-weight:600;font-size:.9rem}.site-header nav>a:not(.nav-call):hover{color:var(--gold)}.nav-call{border:1px solid rgba(255,255,255,.55);padding:11px 17px;text-transform:uppercase;letter-spacing:.05em}.nav-call:hover{background:#fff;color:var(--ink)}.menu-toggle{display:none;background:none;border:0;width:46px;height:46px;padding:12px}.menu-toggle span:not(.sr-only){display:block;height:2px;background:#fff;margin:5px 0}
.hero{min-height:800px;height:100svh;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-photo{position:absolute;inset:0;background:url('assets/IMG_4013.webp') center 55%/cover no-repeat;transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,11,18,.94) 0%,rgba(6,11,18,.78) 44%,rgba(6,11,18,.23) 76%,rgba(6,11,18,.16)),linear-gradient(0deg,rgba(6,11,18,.7),transparent 44%)}.hero-content{position:relative;z-index:2;width:min(920px,90vw);margin-left:clamp(22px,5vw,76px);padding-top:110px}.hero-logo{width:min(760px,82vw);margin:0 0 18px -14px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.45))}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-weight:700;font-size:.76rem;color:var(--gold);margin:0 0 20px}.eyebrow.dark{color:#975d00}.hero h1,.section-pad h2,.work h2,.cta h2{font-family:"Barlow Condensed",Arial,sans-serif;text-transform:uppercase;line-height:.88;letter-spacing:-.025em;margin:0;font-weight:800}.hero h1{font-size:clamp(4.1rem,8vw,8.2rem)}.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy{font-size:clamp(1.05rem,1.7vw,1.28rem);max-width:600px;color:#e4e8ed;line-height:1.55;margin:26px 0}.hero-actions{display:flex;gap:13px;flex-wrap:wrap}.button{display:inline-block;padding:14px 23px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:.85rem}.button-primary{background:var(--gold);color:var(--ink)}.button-primary:hover{background:#ffd159}.button-ghost{border:1px solid rgba(255,255,255,.65)}.button-ghost:hover{background:#fff;color:var(--ink)}.hero-proof{position:absolute;z-index:2;right:clamp(22px,5vw,72px);bottom:35px;text-align:right;display:flex;flex-direction:column;text-transform:uppercase;letter-spacing:.08em}.hero-proof strong{font-family:"Barlow Condensed";font-size:1.35rem}.hero-proof span{font-size:.68rem;color:#c7cdd4;margin-top:2px}
.section-pad{padding:clamp(78px,10vw,150px) clamp(22px,8vw,130px)}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.intro h2,.services h2,.work h2,.manufacturers h2,.area h2{font-size:clamp(3.5rem,6.5vw,7.1rem)}.intro-copy{font-size:1.17rem;max-width:610px}.intro-copy p{margin:0}.intro-copy .small{font-size:.88rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-top:28px;color:#5a5f64}
.services{background:var(--navy);color:#fff}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:70px}.section-heading h2{text-align:right}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:32px 30px 40px;border-right:1px solid var(--line)}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{border-right:0}.service-grid span{color:var(--gold);font-size:.74rem;font-weight:700}.service-grid h3{font-family:"Barlow Condensed";font-size:2rem;text-transform:uppercase;line-height:1;margin:45px 0 18px}.service-grid p{color:#bfc8d2;font-size:.93rem;margin:0}.specialties{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.specialties span{border:1px solid var(--line);padding:9px 13px;color:#dae0e6;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.work{background:#d8d4cc}.work-head{display:grid;grid-template-columns:1.5fr .5fr;align-items:end}.work-head>p{max-width:410px;margin:0 0 6px}.project-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-auto-rows:360px;gap:4px;background:#111}.project-grid figure{margin:0;position:relative;overflow:hidden}.project-grid .wide{grid-column:span 2}.project-grid .tall{grid-column:span 2}.project-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.project-grid figure:hover img{transform:scale(1.035)}.project-grid figcaption{position:absolute;left:18px;bottom:16px;color:#fff;background:rgba(8,11,16,.78);padding:7px 11px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.manufacturers{text-align:center}.manufacturers h2{font-size:clamp(3rem,5vw,5.7rem)}.brand-list{display:flex;justify-content:center;flex-wrap:wrap;gap:11px 30px;max-width:1050px;margin:50px auto 0}.brand-list span{font-family:"Barlow Condensed";font-size:1.65rem;font-weight:700;text-transform:uppercase;color:#3a3f45}
.area{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:720px}.area-copy>p:not(.eyebrow){max-width:570px;color:#c4cbd2;font-size:1.08rem}.area-note{border-left:3px solid var(--gold);padding-left:18px;margin-top:32px!important;font-size:.9rem!important}.compass{position:relative;height:440px;max-width:520px;margin:auto;width:100%;text-transform:uppercase;font-size:.72rem;letter-spacing:.1em;color:#aeb8c2}.ring{position:absolute;width:310px;height:310px;border:1px solid #506072;border-radius:50%;top:65px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center}.ring:before,.ring:after{content:"";position:absolute;background:#344456}.ring:before{width:1px;height:430px}.ring:after{height:1px;width:430px}.ring strong{position:relative;z-index:2;background:var(--gold);color:var(--ink);width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Barlow Condensed";font-size:1.35rem}.needle{position:absolute;height:248px;width:4px;background:linear-gradient(var(--red) 0 50%,#d7dde3 50%);transform:rotate(28deg)}.compass>span{position:absolute}.north{top:0;left:50%;transform:translateX(-50%)}.south{bottom:0;left:50%;transform:translateX(-50%)}.east{right:0;top:50%}.west{left:0;top:50%}
.cta{background:var(--gold);display:flex;align-items:end;justify-content:space-between;gap:40px}.cta .eyebrow{color:#5b3a00}.cta h2{font-size:clamp(3.3rem,6vw,6.5rem)}.cta-contact{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.cta-phone{font-family:"Barlow Condensed";font-weight:800;font-size:clamp(2.2rem,4.7vw,4.8rem);line-height:1;text-align:right}.cta-phone span{display:block;font-family:Inter;font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px}.cta-phone:hover,.cta-email:hover{color:#fff}.cta-email{font-weight:700;font-size:1rem}
footer{background:#05070a;color:#c5cbd2;padding:65px clamp(22px,8vw,130px) 34px;display:grid;grid-template-columns:1.2fr 1.5fr 1fr;gap:40px;align-items:center}footer img{width:min(360px,100%)}footer p{font-size:.84rem;line-height:1.7}.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.footer-contact a:first-child{font-family:"Barlow Condensed";font-size:1.8rem;font-weight:700;color:#fff}.footer-contact a:last-child{font-size:.84rem;color:var(--gold)}footer small{grid-column:1/-1;border-top:1px solid #232831;padding-top:20px;font-size:.69rem;color:#717b87}
@media(max-width:920px){.site-header{height:90px}.menu-toggle{display:block;position:relative;z-index:3}.site-header nav{position:absolute;top:0;right:0;width:min(350px,88vw);height:100vh;background:var(--navy);padding:110px 34px;display:none;flex-direction:column;align-items:flex-start;gap:26px}.site-header nav.open{display:flex}.hero{min-height:760px}.hero-content{width:calc(100vw - 32px);margin-left:16px;padding-top:92px}.hero-logo{width:calc(100vw - 20px);max-width:none;margin:0 0 20px -6px}.hero-proof{display:none}.intro,.area,.work-head{grid-template-columns:1fr;gap:40px}.section-heading{display:block}.section-heading h2{text-align:left}.service-grid{grid-template-columns:1fr 1fr}.service-grid article{border-bottom:1px solid var(--line)}.service-grid article:first-child{padding-left:30px}.project-grid{grid-template-columns:1fr 1fr;grid-auto-rows:320px}.project-grid .wide,.project-grid .tall{grid-column:span 1}.compass{margin-top:15px}.cta{align-items:flex-start;flex-direction:column}.cta-contact{align-items:flex-start}.cta-phone{text-align:left}footer{grid-template-columns:1fr 1fr}.footer-contact{align-items:flex-start}footer small{grid-column:1/-1}}
@media(max-width:600px){.hero{height:92svh}.hero-photo{background-position:58% 50%}.hero-shade{background:linear-gradient(90deg,rgba(6,11,18,.94),rgba(6,11,18,.62)),linear-gradient(0deg,rgba(6,11,18,.85),transparent)}.hero h1{font-size:4.3rem}.hero-content{width:calc(100vw - 20px);margin-left:10px}.hero-logo{width:calc(100vw - 8px);margin-left:-6px}.intro h2,.services h2,.work h2,.manufacturers h2,.area h2{font-size:3.4rem}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;padding:28px 0}.service-grid article:first-child{padding-left:0}.service-grid h3{margin-top:24px}.project-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.project-grid figure{min-width:86vw;height:390px;scroll-snap-align:start}.brand-list{gap:8px 20px}.brand-list span{font-size:1.35rem}.area{padding-bottom:90px}.compass{height:320px}.ring{width:220px;height:220px;top:50px}.ring:before{height:310px}.ring:after{width:310px}.needle{height:180px}.compass .east,.compass .west{top:49%}.cta-phone{font-size:2.8rem}footer{grid-template-columns:1fr}footer>a{text-align:left}footer small{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-grid img{transition:none}}
