*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:#10233e;line-height:1.55;background:#fff}a{text-decoration:none;color:inherit}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,28px);position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);box-shadow:0 3px 20px rgba(8,35,70,.08)}.brand img{width:230px;display:block}.site-header nav{display:flex;align-items:center;gap:23px;font-weight:700;font-size:14px}.site-header nav>a:not(.btn):hover{color:#07864c}.menu-toggle{display:none;border:0;background:none;font-size:28px}.btn{display:inline-block;border:0;background:#0955a0;color:#fff;padding:13px 22px;border-radius:8px;font-weight:800;box-shadow:0 8px 22px rgba(9,85,160,.18);cursor:pointer}.btn.small{padding:10px 16px}.hero{min-height:660px;display:grid;grid-template-columns:52% 48%;background:linear-gradient(135deg,#f7fbff,#eef6fb);overflow:hidden}.hero-copy{padding:105px 6vw;align-self:center}.eyebrow,.section-head>span{font-size:12px;font-weight:900;letter-spacing:2px;color:#07864c}.hero h1{font-size:clamp(42px,5vw,72px);line-height:1.02;margin:14px 0 20px;color:#07366d;letter-spacing:-2px}.hero p{font-size:19px;color:#52677e;max-width:680px}.hero-visual{background:url('assets/hero-clean.jpg') center/cover no-repeat;position:relative}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#eef6fb 0%,transparent 24%)}.actions{display:flex;gap:12px;margin-top:28px}.btn.ghost{background:#fff;color:#07366d;border:1px solid #cbd9e6}.trust{display:grid;grid-template-columns:repeat(4,1fr);max-width:1180px;margin:-34px auto 0;position:relative;z-index:5;background:#fff;border-radius:13px;box-shadow:0 15px 45px rgba(10,44,80,.14);padding:24px}.trust div{padding:4px 25px;border-right:1px solid #e2eaf1}.trust div:last-child{border:0}.trust b,.trust span{display:block}.trust b{color:#0955a0}.trust span{font-size:13px;color:#687a8d}.section,.projects{padding:95px max(6vw,28px);max-width:1440px;margin:auto}.section-head{text-align:center;max-width:760px;margin:0 auto 45px}.section h2,.projects h2,.cta h2{font-size:clamp(32px,4vw,48px);line-height:1.08;color:#07366d;margin:10px 0 14px}.section-head p{color:#65758a}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.cards article{border:1px solid #e1eaf2;border-radius:15px;padding:30px;background:#fff;box-shadow:0 10px 35px rgba(9,52,96,.07);transition:.3s}.cards article:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(9,52,96,.14)}.service-icon{width:48px;height:48px;border-radius:12px;background:#edf6fc;color:#087c4b;display:grid;place-items:center;font-weight:900}.cards h3{color:#0a5199;font-size:20px}.cards p{color:#5e7084}.cards a{color:#07864c;font-weight:800;font-size:14px}.about{max-width:none;background:#062f5f;color:#d9e7f4;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about h2,.about .eyebrow{color:#fff}.about-image{min-height:420px;border-radius:18px;background:url('assets/hero-clean.jpg') 63% center/cover no-repeat;box-shadow:0 25px 60px rgba(0,0,0,.2)}.checks{display:grid;gap:11px;margin-top:25px}.checks span{padding:12px 14px;background:rgba(255,255,255,.07);border-radius:8px}.projects{max-width:none;background:#f5f9fc}.project-grid{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.project{min-height:330px;border-radius:16px;background:url('assets/hero-clean.jpg') center/cover;position:relative;overflow:hidden}.project.p2{background-position:80% center}.project.p3{background-position:100% center}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,31,61,.78),transparent 60%)}.project span{position:absolute;z-index:2;left:22px;bottom:20px;color:#fff;font-weight:850;font-size:19px}.cap-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.cap-grid span{padding:14px 18px;border-radius:999px;background:#edf5fb;color:#0b4f94;font-weight:750;border:1px solid #d5e6f4}.cta{background:linear-gradient(100deg,#078548,#0b559b);color:#fff;padding:60px max(6vw,28px);display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{color:#fff}.cta .eyebrow{color:#dff7e8}.btn.light{background:#fff;color:#075293}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.contact a{color:#075aa8}.social{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.social a{padding:10px 14px;border:1px solid #dce7f0;border-radius:8px;font-weight:750}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:28px;background:#f5f9fc;border:1px solid #dce8f1;border-radius:15px}.quote-form label{font-size:13px;font-weight:800;color:#264764}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cddbe7;border-radius:7px;background:#fff;font:inherit}.quote-form label:nth-last-of-type(1){grid-column:1/-1}.quote-form button,.quote-form small{grid-column:1/-1}.quote-form small{color:#738498}.wa-float{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#0a9d58;color:#fff;display:grid;place-items:center;font-weight:900;z-index:40;box-shadow:0 10px 25px rgba(0,0,0,.22)}footer{background:#051d39;color:#d9e6f3;padding:30px max(6vw,28px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}footer b,footer span{display:block}footer span,footer small{font-size:12px;color:#9fb3c8}footer small{text-align:right}.footer-links{display:flex;gap:18px;font-size:13px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:950px){.brand img{width:185px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:86px;left:0;right:0;background:#fff;padding:22px;flex-direction:column;align-items:stretch;box-shadow:0 15px 30px rgba(0,0,0,.1)}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:70px 28px}.hero-visual{height:390px}.hero-visual:after{background:linear-gradient(180deg,#eef6fb 0%,transparent 20%)}.trust{margin:0;border-radius:0;grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr 1fr}.about,.contact{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr 1fr}.project:first-child{grid-column:1/-1}.cta{flex-direction:column;align-items:flex-start}footer{grid-template-columns:1fr;}.footer-links{flex-wrap:wrap}footer small{text-align:left}}@media(max-width:620px){.hero h1{letter-spacing:-1px}.actions{flex-direction:column;align-items:flex-start}.trust{grid-template-columns:1fr}.trust div{border-right:0;border-bottom:1px solid #e2eaf1}.cards,.project-grid,.quote-form{grid-template-columns:1fr}.project:first-child{grid-column:auto}.section,.projects{padding:70px 22px}.quote-form label:nth-last-of-type(1),.quote-form button,.quote-form small{grid-column:auto}.hero-visual{height:300px}}.equipment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.equipment-card{padding:28px;border:1px solid #dce8f1;border-radius:15px;background:#fff;box-shadow:0 10px 30px rgba(9,52,96,.06)}.equipment-card h3{margin:0 0 18px;color:#07864c;font-size:14px;letter-spacing:1.2px;text-transform:uppercase}.equipment-card h4{color:#0a5199;margin:15px 0 6px;font-size:18px}.equipment-card p{color:#5e7084;margin:0 0 12px}@media(max-width:700px){.equipment-grid{grid-template-columns:1fr}}

/* WhatsApp enquiry form */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{margin-top:10px;font-size:13px;line-height:1.4}
.form-status.success{color:#087344}
.form-status.error{color:#b42318}

/* Contact enquiry buttons */
.enquiry-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  width: 100%;
}

.enquiry-buttons .btn {
  width: 100%;
  text-align: center;
  cursor: pointer;
}

.email-btn {
  background: #ffffff;
  color: #0b4f91;
  border: 2px solid #0b4f91;
}

.email-btn:hover {
  background: #eef6ff;
}

.whatsapp-btn {
  background: #0b5fa5;
  color: #ffffff;
}

/* Mobile phones */
@media (max-width: 650px) {
  .enquiry-buttons {
    grid-template-columns: 1fr;
  }
}
