:root{
  --navy:#202c49;--navy-deep:#17223a;--navy-soft:#2c3855;--orange:#ff8b45;--gold:#f3c51a;
  --ink:#152039;--muted:#667085;--paper:#fff;--soft:#f5f7fa;--line:#dfe4ec;
  --shadow:0 18px 50px rgba(21,32,57,.12);--radius:10px;--container:1200px;
  --header-h:76px;--focus:0 0 0 4px rgba(255,139,69,.28)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 18px)}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.65;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{outline:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--focus)}
.container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
.skip-link{position:fixed;left:16px;top:-60px;z-index:1000;background:#fff;color:var(--navy);padding:12px 16px;border-radius:6px;font-weight:800;transition:top .2s}.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:80;min-height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(20px,4vw);background:rgba(32,44,73,.97);backdrop-filter:blur(14px);color:#fff;box-shadow:0 4px 18px rgba(0,0,0,.15)}
.brand{display:inline-flex;align-items:center;gap:10px;min-width:0;font-weight:900;letter-spacing:.04em}.brand img{width:48px;height:48px;object-fit:contain}.brand-name{font-size:.94rem;white-space:nowrap}
.site-nav{display:flex;align-items:center;gap:clamp(14px,2.2vw,28px);font-size:.78rem;font-weight:800;text-transform:uppercase}.site-nav a{opacity:.92;position:relative;padding:10px 0}.site-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--orange);transition:right .2s}.site-nav a:hover:after,.site-nav a[aria-current="page"]:after{right:0}.site-nav a:hover{color:#fff}.nav-cta{background:var(--orange);padding:11px 16px!important;border-radius:4px;color:#fff!important}.nav-toggle{display:none;border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;border-radius:5px;padding:9px 11px;font-weight:800;cursor:pointer}
.hero{position:relative;min-height:min(760px,calc(100vh - 0px));display:flex;align-items:flex-end;background:url('../images/hero-design.jpg') center/cover no-repeat}.hero-overlay,.page-hero:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgba(20,31,53,.94),rgba(20,31,53,.72),rgba(20,31,53,.42))}.hero-content{position:relative;width:min(var(--container),calc(100% - 40px));padding:clamp(90px,13vh,150px) 0 180px;color:#fff}.hero-kicker,.eyebrow{color:var(--gold);font-size:.7rem;line-height:1.3;letter-spacing:.22em;font-weight:900;text-transform:uppercase}.hero h1{font-size:clamp(2.4rem,6vw,5.4rem);line-height:1.02;letter-spacing:-.035em;max-width:920px;margin:18px 0}.hero h1 span{display:block;color:#fff}.hero p{max-width:760px;font-size:clamp(.98rem,1.4vw,1.1rem);color:#e7ebf2}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:12px 20px;border:0;border-radius:5px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 25px rgba(0,0,0,.14)}.btn-primary{background:var(--orange);color:#fff}.btn-dark{background:var(--navy);color:#fff}.btn-outline{border:1px solid rgba(32,44,73,.7);color:var(--navy);background:transparent}.btn-outline-dark{border:1px solid var(--navy);color:var(--navy);background:#fff}
.hero-stats{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:min(var(--container),100%);display:grid;grid-template-columns:repeat(4,1fr);background:rgba(18,27,48,.82);color:#fff}.hero-stats div{padding:20px 24px;border-right:1px solid rgba(255,255,255,.14);min-width:0}.hero-stats div:last-child{border-right:0}.hero-stats strong{display:block;color:var(--gold);font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.1}.hero-stats span,.stats-row span{display:block;text-transform:uppercase;font-size:.65rem;letter-spacing:.1em;color:#dce0e9;margin-top:5px}
.section{padding:clamp(64px,8vw,96px) 0}.dark-section{background:var(--navy);color:#fff}.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(38px,6vw,72px)}.align-center{align-items:center}.section h2,.cta h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;letter-spacing:-.025em;margin:8px 0 20px}.section h3{line-height:1.2}.section p{color:var(--muted)}.dark-section p{color:#d9deea}.rounded-img,.feature-img{width:100%;border-radius:var(--radius);object-fit:cover;box-shadow:var(--shadow)}.rounded-img{aspect-ratio:1/1}.why-home .rounded-img{height:100%;min-height:420px}.reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}.reason-grid b{display:inline-grid;place-items:center;width:30px;height:30px;background:var(--orange);color:var(--navy);border-radius:50%;font-size:.78rem}.reason-grid h3{font-size:1rem;margin:8px 0}.reason-grid p{font-size:.9rem;margin:0}
.service-showcase{background:linear-gradient(120deg,#fff,#f2f5f8)}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0}.service-card{position:relative;min-height:340px;padding:26px;border-radius:var(--radius);overflow:hidden;background:var(--navy) center/cover no-repeat;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:flex-end}.service-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(32,44,73,.22),rgba(32,44,73,.96))}.service-card>*{position:relative}.service-card h3{font-size:1.45rem;margin:8px 0}.service-card p{color:#e0e5ee;margin:0 0 12px}.service-card .text-link{color:#fff}.service-list{display:grid;gap:clamp(48px,7vw,76px);margin-top:50px}.service-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,64px);align-items:center}.service-detail:nth-child(even) .service-detail-img{order:-1}.service-detail-img{width:100%;height:clamp(260px,35vw,380px);object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.benefits{padding-left:18px}.benefits li,.check-list li{margin:8px 0}.benefits li::marker,.check-list li::marker{color:var(--gold)}
.projects-preview{background:#f7f8fa}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.text-link{font-weight:900;color:var(--orange)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:34px}.project-card{height:100%;background:#fff;border:1px solid var(--line);box-shadow:0 5px 18px rgba(20,30,50,.07);overflow:hidden;border-radius:var(--radius);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.project-media{position:relative;overflow:hidden;background:#e8ebf0}.project-card img{width:100%;height:235px;object-fit:cover;transition:transform .45s}.project-card:hover img{transform:scale(1.035)}.project-zoom{position:absolute;right:12px;bottom:12px;border:0;border-radius:50%;width:42px;height:42px;background:rgba(32,44,73,.88);color:#fff;cursor:pointer;font-size:1.05rem}.project-body{padding:20px;display:flex;flex-direction:column;flex:1}.project-card h3{margin:7px 0 10px;line-height:1.2}.project-card p{margin:0;color:var(--muted);font-size:.9rem}.tag{color:#a77f00;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;font-weight:900}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.filter{background:#fff;border:1px solid var(--line);min-height:44px;padding:9px 15px;border-radius:5px;cursor:pointer;font-weight:800;white-space:nowrap}.filter.active,.filter:hover{background:var(--navy);color:#fff}.filter-count{color:var(--muted);font-size:.85rem;margin-top:-8px}.empty-state{grid-column:1/-1;padding:50px 20px;text-align:center;background:var(--soft);border-radius:var(--radius);color:var(--muted)}
.cta{background:var(--orange);padding:58px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta .eyebrow{color:var(--navy)}.cta p{color:#3d2e20}.page-hero{position:relative;min-height:330px;display:flex;align-items:center;background:url('../images/hero-industrial.jpg') center/cover;color:#fff}.page-hero .container{position:relative}.page-hero h1{font-size:clamp(2.3rem,5.5vw,4.6rem);line-height:1.02;margin:8px 0;letter-spacing:-.03em}.page-hero p:not(.eyebrow){max-width:760px;color:#eef2f8}.stats-row{display:flex;gap:clamp(24px,5vw,52px);margin-top:30px;flex-wrap:wrap}.stats-row strong{font-size:clamp(1.8rem,4vw,2.4rem);color:var(--orange);display:block}.value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:35px}.value-grid article{border:1px solid var(--line);padding:22px;background:#fff;border-radius:6px}.value-grid h3{margin:0 0 8px}.gold{color:var(--gold);text-transform:uppercase;font-size:.95rem;letter-spacing:.12em}.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,6vw,64px);align-items:start}.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:30px 0}.contact-cards article{background:var(--soft);padding:18px;border-left:3px solid var(--gold);border-radius:4px}.contact-cards p{margin:6px 0 0}.quote-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:#fff;padding:clamp(22px,4vw,30px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius)}.quote-form label{font-weight:800;font-size:.86rem}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #ccd2dd;border-radius:5px;background:#fff;color:var(--ink)}.quote-form textarea{resize:vertical;min-height:150px}.quote-form .full{grid-column:1/-1}.form-status{font-weight:800;margin:0}.form-status.success{color:#1d6b3c}.form-status.error{color:#a52d2d}.form-status.pending{color:#8a6500}
.footer{background:var(--navy);color:#fff;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px}.footer h3{font-size:1rem;color:#fff}.footer a,.footer span{display:block;color:#cbd1dd;font-size:.84rem;margin:7px 0}.footer-brand img{width:55px}.footer p{color:#cbd1dd}.footer-bottom{margin-top:45px;padding-top:18px;border-top:1px solid rgba(255,255,255,.3);display:flex;justify-content:space-between;gap:20px;font-size:.7rem;color:#aeb7c8}
.modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;background:rgba(10,15,28,.82);opacity:0;visibility:hidden;transition:.2s}.modal.open{opacity:1;visibility:visible}.modal-panel{position:relative;width:min(1000px,100%);max-height:90vh;background:#fff;border-radius:12px;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.35)}.modal-panel img{width:100%;max-height:72vh;object-fit:contain;background:#111}.modal-content{padding:20px 24px}.modal-close{position:absolute;right:12px;top:12px;z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:rgba(32,44,73,.9);color:#fff;font-size:1.3rem;cursor:pointer}
.center{text-align:center}.muted{color:#9da7b9!important}.loading{min-height:140px;display:grid;place-items:center;color:var(--muted)}
@media(max-width:980px){:root{--header-h:70px}.site-header{min-height:var(--header-h)}.brand img{width:44px;height:44px}.site-nav{display:none;position:fixed;top:var(--header-h);left:0;right:0;bottom:0;background:rgba(23,34,58,.99);padding:24px max(20px,5vw);flex-direction:column;align-items:stretch;gap:4px;overflow:auto}.site-nav.open{display:flex}.site-nav a{font-size:.9rem;padding:14px 4px}.site-nav .nav-cta{text-align:center;margin-top:8px}.nav-toggle{display:block}.hero{min-height:680px}.hero-content{padding-bottom:185px}.hero-stats{width:100%;left:0;transform:none}.two-col,.service-detail,.contact-layout{grid-template-columns:1fr}.service-detail:nth-child(even) .service-detail-img{order:0}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.container{width:min(var(--container),calc(100% - 28px))}.brand-name{font-size:.76rem}.hero{min-height:auto;display:block}.hero-content{padding:76px 0 42px}.hero h1{font-size:clamp(2.2rem,11vw,3.2rem)}.hero-stats{position:static;display:grid;grid-template-columns:repeat(2,1fr)}.hero-stats div{padding:15px}.section{padding:58px 0}.reason-grid,.service-grid,.project-grid,.value-grid,.contact-cards,.quote-form,.footer-grid{grid-template-columns:1fr}.why-home .rounded-img{min-height:300px}.service-card{min-height:310px}.project-card img{height:220px}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:10px}.filter-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px;scrollbar-width:thin}.filter{flex:0 0 auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}.page-hero{min-height:280px}.quote-form .full{grid-column:auto}.cta{padding:48px 0}.modal{padding:10px}.modal-panel{max-height:94vh}.modal-panel img{max-height:65vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.project-card,.project-card img,.site-nav a:after,.modal{transition:none!important}}
