:root{
  --blue:#0f5f92;
  --blue2:#53afd7;
  --ink:#14212b;
  --muted:#63717c;
  --charcoal:#0d1820;
  --paper:#ffffff;
  --mist:#f4f8fb;
  --line:#dce7ee;
  --shadow:0 20px 60px rgba(12,35,50,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1140px,calc(100% - 40px));margin:auto}
.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(220,231,238,.9)}
.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:154px;height:auto}
.navlinks{display:flex;align-items:center;gap:26px;font-weight:700;font-size:.95rem}
.navlinks a{position:relative}
.navlinks a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:var(--blue);transition:.2s}
.navlinks a:hover::after,.navlinks a.active::after{width:100%}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;padding:13px 20px;background:var(--blue);color:#fff;font-weight:800;border:1px solid var(--blue);transition:.2s}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,95,146,.2)}
.btn.secondary{background:transparent;color:var(--ink);border-color:#9fb4c2}
.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#09141c 0%,#102a3b 58%,#145b86 100%);color:#fff;min-height:670px;display:flex;align-items:center}
.hero::before{content:"";position:absolute;inset:-20% -5% auto auto;width:650px;height:650px;background:linear-gradient(135deg,transparent 30%,rgba(83,175,215,.25) 30%,rgba(83,175,215,.25) 37%,transparent 37%,transparent 45%,rgba(255,255,255,.12) 45%,rgba(255,255,255,.12) 47%,transparent 47%);transform:rotate(8deg)}
.hero::after{content:"";position:absolute;right:-120px;bottom:-240px;width:620px;height:620px;border:1px solid rgba(255,255,255,.15);transform:rotate(45deg)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;padding:90px 0}
.eyebrow{display:inline-block;font-size:.82rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--blue2);margin-bottom:18px}
h1{font-size:clamp(3rem,6vw,6.3rem);line-height:.95;letter-spacing:-.055em;margin:0 0 22px;max-width:850px}
.hero p{font-size:clamp(1.05rem,2vw,1.32rem);color:#d9e7ef;max-width:670px;margin:0 0 30px}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.hero .btn.secondary{color:#fff;border-color:rgba(255,255,255,.45)}
.hero-logo-card{background:#fff;border-radius:10px;padding:28px;box-shadow:var(--shadow);transform:rotate(1deg)}
.section{padding:96px 0}
.section.alt{background:var(--mist)}
.section.dark{background:var(--charcoal);color:#fff}
.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:48px}
.section-head h2,.page-hero h1{font-size:clamp(2.2rem,4.5vw,4.2rem);line-height:1.02;letter-spacing:-.045em;margin:0}
.section-head p{max-width:590px;margin:0;color:var(--muted)}
.dark .section-head p{color:#b8c6ce}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:30px;box-shadow:0 10px 30px rgba(10,35,50,.05)}
.card h3{font-size:1.25rem;margin:16px 0 8px}
.card p{color:var(--muted);margin:0}
.icon{width:42px;height:42px;border-radius:6px;background:linear-gradient(135deg,var(--blue),var(--blue2));display:grid;place-items:center;color:#fff;font-weight:900}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.statbar{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-top:34px}
.stat{background:#fff;padding:24px}
.stat strong{display:block;color:var(--blue);font-size:1.5rem}
.stat span{color:var(--muted);font-size:.92rem}
.glass-panel{min-height:440px;border-radius:10px;background:linear-gradient(135deg,rgba(83,175,215,.8),rgba(10,79,123,.95)),linear-gradient(45deg,#fff 25%,transparent 25%);position:relative;overflow:hidden;box-shadow:var(--shadow)}
.glass-panel::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 18%,rgba(255,255,255,.72) 18% 18.7%),repeating-linear-gradient(0deg,transparent 0 32%,rgba(255,255,255,.72) 32% 33%);opacity:.75}
.glass-panel::after{content:"PROJECT PHOTO";position:absolute;inset:auto 24px 24px auto;color:#fff;font-weight:900;letter-spacing:.16em;font-size:.75rem;background:rgba(0,0,0,.25);padding:8px 11px;border-radius:5px}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.project{min-height:330px;border-radius:8px;position:relative;overflow:hidden;background:linear-gradient(135deg,#3aa3d5,#0c4d78)}
.project:nth-child(2){background:linear-gradient(135deg,#1a3547,#5cb8de)}
.project:nth-child(3){background:linear-gradient(135deg,#6bc0e3,#0a4268)}
.project:nth-child(4){background:linear-gradient(135deg,#173245,#2f89b9)}
.project::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 23%,rgba(255,255,255,.42) 23% 24%),repeating-linear-gradient(0deg,transparent 0 46%,rgba(255,255,255,.42) 46% 47%);opacity:.65}
.project-info{position:absolute;left:0;right:0;bottom:0;padding:45px 24px 22px;background:linear-gradient(transparent,rgba(5,17,25,.86));color:#fff}
.project-info span{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#aee2f6;font-weight:900}
.project-info h3{margin:4px 0 0}
.safety-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.safety-item{display:flex;gap:16px;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.04)}
.check{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(83,175,215,.18);color:#78d0f3;font-weight:900}
.page-hero{padding:90px 0 74px;background:linear-gradient(120deg,#eef7fb,#fff)}
.page-hero p{font-size:1.18rem;color:var(--muted);max-width:760px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}
.contact-list{display:grid;gap:15px;margin-top:24px}
.contact-item{padding:18px 0;border-bottom:1px solid var(--line)}
.contact-item small{display:block;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:800;margin-bottom:3px}
form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:grid;gap:7px}
.field.full{grid-column:1/-1}
label{font-size:.88rem;font-weight:800}
input,select,textarea{width:100%;font:inherit;border:1px solid #c9d8e1;border-radius:6px;padding:13px 14px;background:#fff;color:var(--ink)}
textarea{min-height:150px;resize:vertical}
.footer{padding:42px 0;background:#08131b;color:#d4e0e7}
.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer img{width:145px;background:#fff;border-radius:5px;padding:5px}
.footer small{color:#91a4af}
.mobile-toggle{display:none;background:none;border:0;font-size:1.6rem}
.notice{padding:14px 16px;border-left:4px solid var(--blue);background:#eef7fb;color:#355165;border-radius:4px;margin-top:18px;font-size:.94rem}
@media (max-width:900px){
  .navlinks{position:fixed;left:20px;right:20px;top:92px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:20px;display:none;flex-direction:column;align-items:stretch;border-radius:8px}
  .navlinks.open{display:flex}.mobile-toggle{display:block}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-logo-card{max-width:520px}.grid-3{grid-template-columns:repeat(2,1fr)}
  .section-head{align-items:start;flex-direction:column}.hero{min-height:auto}
}
@media (max-width:620px){
  .container{width:min(100% - 28px,1140px)}.nav{height:76px}.brand img{width:130px}.grid-3,.project-grid,.safety-list,.statbar,form{grid-template-columns:1fr}.section{padding:70px 0}.hero-grid{padding:65px 0}.hero-logo-card{display:none}.field.full{grid-column:auto}.footer-grid{align-items:flex-start;flex-direction:column}.page-hero{padding:65px 0 52px}
}

/* Real project portfolio */
.project-list{display:grid;gap:64px}.project-feature{display:grid;grid-template-columns:1.35fr 1fr;gap:42px;align-items:center}.project-feature.reverse .project-gallery{order:2}.project-gallery{display:grid;gap:12px}.project-gallery.two{grid-template-columns:1.25fr .75fr}.project-gallery.three{grid-template-columns:1.2fr .8fr}.project-gallery.three img:first-child{grid-row:span 2}.project-gallery.one{grid-template-columns:1fr}.project-gallery img{width:100%;height:100%;min-height:230px;max-height:460px;object-fit:cover;border-radius:8px;box-shadow:0 14px 34px rgba(10,45,65,.16)}.project-copy h2{font-size:clamp(2rem,4vw,3.2rem);margin:.3rem 0}.project-location{font-weight:800;color:#0c5f91;margin-top:-.3rem}.project-copy p{line-height:1.75}.scope-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.scope-tags span,.project-badge{display:inline-block;padding:8px 12px;border-radius:999px;background:#e8f5fb;color:#075781;font-size:.78rem;font-weight:900;letter-spacing:.03em}.project-badge{background:#0c5f91;color:white;margin-bottom:14px}.project-note{font-size:.88rem;opacity:.7}.cta{padding:58px 0;background:#102c3c;color:white}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{margin:.3rem 0 0}@media(max-width:800px){.project-feature{grid-template-columns:1fr;gap:24px}.project-feature.reverse .project-gallery{order:0}.project-gallery.two,.project-gallery.three{grid-template-columns:1fr 1fr}.project-gallery.three img:first-child{grid-column:1/-1;grid-row:auto}.project-gallery img{min-height:180px}.cta-inner{align-items:flex-start;flex-direction:column}}

/* Homepage project showcase */
.home-project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.home-project{position:relative;min-height:340px;overflow:hidden;border-radius:10px;background:#102c3c;box-shadow:0 12px 32px rgba(10,45,65,.14)}.home-project img{width:100%;height:340px;object-fit:cover;transition:transform .35s ease}.home-project:hover img{transform:scale(1.025)}.home-project::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(5,17,25,.88))}.home-project>div{position:absolute;z-index:2;left:24px;right:24px;bottom:20px;color:#fff}.home-project span{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:#bfe9fa;font-weight:900}.home-project h3{font-size:1.5rem;margin:4px 0 0}.footer-grid>div strong{color:#fff}@media(max-width:700px){.home-project-grid{grid-template-columns:1fr}.home-project,.home-project img{min-height:270px;height:270px}}


/* 2026 visual polish */
.header{box-shadow:0 8px 30px rgba(13,24,32,.035)}
.nav{height:82px}
.brand img{width:168px}
.btn{border-radius:4px;padding:14px 21px;letter-spacing:.01em}
.btn.secondary.light{color:#fff;border-color:rgba(255,255,255,.48)}
.btn.secondary.light:hover{border-color:#fff;background:rgba(255,255,255,.07)}
.hero{min-height:720px;background:linear-gradient(120deg,#07121a 0%,#0d2737 55%,#0f5f92 100%)}
.hero-grid{grid-template-columns:.92fr 1.08fr;gap:78px;padding:96px 0}
.hero-copy{max-width:660px}
.hero h1{letter-spacing:-.045em;line-height:.98;max-width:780px}
.hero-lead{font-size:1.12rem!important;color:#fff!important;margin-bottom:10px!important}
.hero-copy>p:not(.hero-lead){max-width:650px;color:#cfdae1}
.hero-media{position:relative;min-height:500px}
.hero-main-photo{position:absolute;inset:0 34px 0 0;width:calc(100% - 34px);height:100%;object-fit:cover;border-radius:3px;box-shadow:0 30px 80px rgba(0,0,0,.33)}
.hero-media::before{content:"";position:absolute;z-index:2;inset:0 34px 0 0;background:linear-gradient(180deg,transparent 50%,rgba(4,13,19,.68));border-radius:3px}
.hero-project-label{position:absolute;z-index:3;left:28px;bottom:26px;display:grid;gap:2px}
.hero-project-label span{font-size:.7rem;letter-spacing:.17em;text-transform:uppercase;color:#aee2f6;font-weight:900}
.hero-project-label strong{font-size:1.35rem;color:#fff}
.hero-project-label small{color:#d5e2e9}
.hero-mini{position:absolute;z-index:4;right:-18px;top:45px;width:180px;background:#fff;padding:8px;box-shadow:0 18px 45px rgba(0,0,0,.28)}
.hero-mini img{height:125px;width:100%;object-fit:cover}
.hero-mini span{display:block;padding:8px 3px 3px;color:#18303f;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.trust-strip{background:#fff;border-bottom:1px solid var(--line)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid>div{padding:24px 28px;border-right:1px solid var(--line);display:grid;gap:2px}
.trust-grid>div:first-child{border-left:1px solid var(--line)}
.trust-grid strong{font-size:1.28rem;color:var(--blue);letter-spacing:-.02em}
.trust-grid span{font-size:.78rem;color:var(--muted);font-weight:700;line-height:1.35}
.card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(10,45,65,.1);border-color:#bdd5e2}
.grid-3 .card{position:relative;overflow:hidden}
.grid-3 .card::after{content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--blue2));transition:width .25s ease}
.grid-3 .card:hover::after{width:100%}
.experience-photo{position:relative;min-height:440px;border-radius:6px;overflow:hidden;box-shadow:var(--shadow)}
.experience-photo img{width:100%;height:100%;min-height:440px;object-fit:cover}
.photo-caption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(7,22,31,.86);backdrop-filter:blur(8px);padding:15px 17px;color:#fff;display:grid;border-left:3px solid var(--blue2)}
.photo-caption span{font-size:.78rem;color:#c8d9e2;margin-top:2px}
.home-project{border-radius:5px}
.home-project h3{letter-spacing:-.02em}
.home-project span{color:#c7efff}
.page-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#edf7fb 0%,#fff 72%)}
.page-hero::after{content:"";position:absolute;right:-120px;top:-190px;width:430px;height:430px;border:1px solid rgba(15,95,146,.13);transform:rotate(45deg)}
.contact-grid .card{box-shadow:0 20px 55px rgba(10,45,65,.09)}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(83,175,215,.18);border-color:var(--blue2)}
.footer{border-top:3px solid var(--blue)}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:45px}.hero-media{min-height:430px;max-width:680px}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-grid>div:nth-child(3){border-left:1px solid var(--line)}}
@media(max-width:620px){.hero{min-height:auto}.hero-grid{padding:58px 0 70px}.hero-media{min-height:350px}.hero-main-photo{right:0;width:100%}.hero-media::before{right:0}.hero-mini{display:none}.hero h1{font-size:clamp(2.55rem,13vw,4.2rem)}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{padding:18px 16px}.experience-photo,.experience-photo img{min-height:320px}}


/* Transparent logo header preview */
.header{
  background:#081a26;
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 30px rgba(0,0,0,.14);
}
.brand img{
  width:225px;
  max-height:68px;
  object-fit:contain;
}
.navlinks a{
  color:#eaf4f8;
}
.navlinks a:hover,
.navlinks a.active{
  color:#63bce4;
}
.navlinks .btn{
  color:#fff;
  background:#0b76b7;
  border-color:#0b76b7;
}
.mobile-toggle{
  color:#fff;
}
@media(max-width:900px){
  .navlinks{background:#081a26;}
}


/* Bright color mockup */
:root{
  --blue:#087ec1;
  --blue2:#4fc3f7;
  --navy:#0b2433;
  --ink:#132733;
  --muted:#5f7583;
  --line:#dcecf4;
  --bg:#f8fcff;
  --card:#ffffff;
}

body{background:#f8fcff;color:var(--ink)}

.header{
  background:#ffffff;
  border-bottom:1px solid #d9edf7;
  box-shadow:0 8px 28px rgba(22,100,140,.10);
}
.navlinks a{color:#173746}
.navlinks a:hover,.navlinks a.active{color:#0784ca}
.navlinks .btn{
  background:linear-gradient(135deg,#0a8fd8,#58c9f5);
  border-color:transparent;
  color:#fff;
}
.mobile-toggle{color:#173746}

.hero{
  background:
    linear-gradient(110deg,rgba(4,91,145,.94) 0%,rgba(5,121,186,.88) 44%,rgba(81,196,240,.72) 100%),
    #0b6fa8;
}
.hero-copy>p:not(.hero-lead){color:#e8f7fd}
.hero-lead{color:#fff!important}
.eyebrow{color:#0c90d0}
.hero .eyebrow{color:#b9efff}
.btn{
  background:linear-gradient(135deg,#0a91d9,#58c8f2);
  border-color:transparent;
}
.btn:hover{filter:brightness(1.05);transform:translateY(-1px)}
.btn.secondary.light{
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.72);
  color:#fff;
}
.hero-project-label span{color:#bff2ff}
.hero-mini{border-top:4px solid #5cccf5}

.trust-strip{background:#eef9fe}
.trust-grid strong{color:#0784ca}
.trust-grid>div{background:linear-gradient(180deg,#fff,#f6fcff)}

.section:nth-of-type(even){background:#ffffff}
.card{
  border:1px solid #d8edf7;
  box-shadow:0 12px 35px rgba(21,112,155,.07);
}
.card:hover{
  box-shadow:0 20px 50px rgba(21,112,155,.16);
  border-color:#80d2f1;
}
.grid-3 .card::after{
  background:linear-gradient(90deg,#0b8fd6,#64d3f7);
}

.page-hero{
  background:linear-gradient(110deg,#eefaff 0%,#ffffff 70%);
}
.page-hero::after{border-color:rgba(35,163,215,.20)}

.cta{
  background:linear-gradient(120deg,#0b78b8,#0ea5d9 58%,#68d2ef);
}
.footer{
  background:#eef9fe;
  border-top:3px solid #28aee4;
  color:#173746;
}
.footer small{color:#67808e}

.scope-tags span,.project-badge{
  background:#e9f8ff;
  color:#0876ae;
  border-color:#b8e6f7;
}
.project-feature{
  background:#fff;
  border:1px solid #d8edf7;
  box-shadow:0 18px 48px rgba(14,112,156,.08);
}
.photo-caption{
  background:rgba(4,105,157,.88);
  border-left-color:#77ddff;
}

input,select,textarea{
  background:#fff;
  border-color:#cfe8f3;
}
input:focus,select:focus,textarea:focus{
  outline:3px solid rgba(67,190,237,.18);
  border-color:#3bb7e6;
}


/* Final V1 contact polish */
.quote-info>p{max-width:620px}
.quote-steps{margin-top:24px;display:grid;gap:10px}
.quote-steps>div{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#eef9fe;border:1px solid #d7eef8;border-radius:6px}
.quote-steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#0a91d9,#58c8f2);color:#fff;font-size:.76rem;letter-spacing:.06em}
.quote-steps span{font-weight:800;color:#214254;font-size:.88rem}
.form-submit{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.form-submit small{color:var(--muted);max-width:430px;line-height:1.45}
.contact-grid>.card{border-top:4px solid #36b9e8}
.contact-item a{text-decoration:none;color:inherit}
.contact-item a:hover{color:#0784ca}
@media(max-width:700px){.form-submit{align-items:flex-start}.form-submit small{width:100%}}

.footer a{color:inherit;text-decoration:none}.footer a:hover{color:#0784ca}
