@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Manrope:wght@700;800&display=swap');
:root{--navy:#061b2b;--navy2:#0b2940;--blue:#139be5;--blue2:#36b5ff;--orange:#ff8b1f;--ink:#10263b;--muted:#597087;--pale:#eef4f7;--white:#fff;--line:#d7e3ea;--shadow:0 18px 50px rgba(4,25,42,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1500px,calc(100% - 64px));margin:auto}.eyebrow{margin:0 0 14px;color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:7px;font-weight:800;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-blue{background:var(--blue);color:#fff}.btn-orange{background:var(--orange);color:#fff}.btn-dark{background:var(--navy);color:#fff}.btn-outline{border-color:#8ba8bc;color:#fff;background:transparent}.btn-light{background:#fff;color:var(--navy)}
header{position:sticky;top:0;z-index:50;background:rgba(6,27,43,.97);border-bottom:1px solid rgba(255,255,255,.12)}.nav{height:78px;display:flex;align-items:center;gap:30px}.logo{width:225px;height:auto}.navlinks{display:flex;gap:23px;align-items:center;margin-left:auto}.navlinks a{color:#e9f3f8;font-size:13px;font-weight:800}.navlinks a:hover,.navlinks a.active{color:var(--blue2)}.navcta{display:flex;gap:9px}.navcta .btn{padding:12px 16px;font-size:13px}.mobile-toggle{display:none;color:#fff;font-size:28px;background:none;border:0}
.hero{position:relative;min-height:650px;color:#fff;overflow:hidden;background:var(--navy)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,20,32,.96) 0%,rgba(3,20,32,.78) 42%,rgba(3,20,32,.20) 80%),url('../assets/hero-hoses.png') center/cover}.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(54,181,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(54,181,255,.06) 1px,transparent 1px);background-size:70px 70px;pointer-events:none}.hero-content{position:relative;z-index:1;padding:110px 0 75px}.hero h1{font-family:Manrope,Inter,sans-serif;font-size:clamp(52px,6.3vw,88px);line-height:.98;letter-spacing:-.055em;max-width:800px;margin:0 0 25px}.hero h1 span{color:var(--blue2)}.hero-copy{font-size:20px;max-width:700px;color:#e0edf4;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-stat{position:absolute;right:5%;top:135px;z-index:2;background:rgba(8,39,61,.9);border:1px solid rgba(80,185,245,.5);border-radius:18px;padding:28px;width:210px;box-shadow:var(--shadow)}.hero-stat strong{display:block;font-size:48px;line-height:1;color:#fff}.hero-stat span{display:block;color:#cde0eb;margin-top:10px}.hero-stat hr{border:0;border-top:1px solid rgba(255,255,255,.2);margin:22px 0}.hero-stat small{color:#dce9f0;font-weight:800}
.trust{background:linear-gradient(180deg,#061d2d 0%,#071f31 100%);color:#fff;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.10);position:relative;overflow:hidden}.trust:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(54,181,255,.55) 18%,rgba(54,181,255,.95) 50%,rgba(54,181,255,.55) 82%,transparent 100%);opacity:.55}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:120px}.trust-item{padding:22px 28px;display:flex;gap:18px;align-items:center;border-right:1px solid rgba(255,255,255,.12);position:relative}.trust-item:last-child{border-right:0}.trust-icon{width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(54,181,255,.55);border-radius:12px;display:grid;place-items:center;color:var(--blue2);font-size:21px;line-height:1;background:rgba(54,181,255,.06);box-shadow:inset 0 0 18px rgba(54,181,255,.04)}.trust-item strong{display:block;font-size:18px;line-height:1.15;letter-spacing:-.02em;color:#fff;margin-bottom:7px}.trust-item span{display:block;font-size:13px;line-height:1.35;color:#a9c0cf}.trust-item strong:after{content:"";display:block;width:24px;height:2px;background:var(--blue2);margin-top:9px;opacity:.75}.trust-item span{margin-top:0}
section{padding:95px 0}.trust{padding:0}.section-head{max-width:780px}.section-head h2{font-family:Manrope,Inter,sans-serif;font-size:clamp(38px,4.2vw,62px);line-height:1.03;letter-spacing:-.04em;margin:0 0 18px}.section-head p{font-size:18px;color:var(--muted);margin:0}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end}.problem{background:#f4f8fa}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:45px}.problem-card{background:#fff;border:1px solid var(--line);padding:25px;border-radius:10px;min-height:145px;box-shadow:0 8px 25px rgba(5,35,55,.05)}.problem-card strong{display:block;font-size:19px;margin-bottom:25px}.problem-card span{color:var(--blue);font-weight:800;font-size:14px}
.services-home{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:42px}.service-card{min-height:365px;position:relative;overflow:hidden;border-radius:10px;background:#0a263b;display:flex;align-items:end}.service-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,27,43,.02),rgba(5,27,43,.88)),var(--bg) center/cover}.service-copy{position:relative;z-index:1;color:#fff;padding:24px}.service-copy .service-no{color:#8dd6ff;font-size:12px;font-weight:900;letter-spacing:.08em}.service-copy h3{font-family:Manrope;font-size:25px;line-height:1.08;margin:10px 0}.service-copy p{color:#d9e7ee;margin:0 0 18px;font-size:14px}.service-copy span:last-child{font-weight:800;color:#fff}.service-card:nth-child(1){grid-column:span 2}.service-card:nth-child(1),.service-card:nth-child(2){min-height:430px}
.case-studies{background:var(--pale)}.case-head{display:flex;justify-content:space-between;gap:30px;align-items:end}.case-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:35px}.case-card{min-height:190px;position:relative;overflow:hidden;border-radius:7px;background:#0a263b}.case-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(4,25,42,.9)),var(--bg) center/cover}.case-copy{position:absolute;left:15px;right:15px;bottom:14px;color:#fff}.case-copy small{color:#9edcff;font-weight:900}.case-copy strong{display:block;margin-top:5px}.process-section{background:var(--navy);color:#fff}.process-section .section-head p{color:#a9c4d5}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.process-card{border:1px solid #31526a;background:#102f45;border-radius:12px;padding:30px;min-height:255px}.process-card b{color:var(--blue2);letter-spacing:.06em}.process-card h3{font-size:23px;margin:22px 0 10px}.process-card p{color:#b7d0df;margin:0}
.testimonials{background:var(--navy);color:#fff;padding-top:0}.testimonial-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.review-card{background:#103149;border:1px solid #31556e;border-radius:14px;padding:35px}.stars{color:#ffb51b;font-size:24px;letter-spacing:3px}.review-card h3{font-size:34px;margin:15px 0}.quote-card{background:#fff;color:var(--ink);border-radius:16px;padding:42px;position:relative}.quote-card:after{content:'“';position:absolute;right:30px;top:0;font-size:110px;color:#dcecf4;font-family:Georgia}.quote-card blockquote{font-family:Manrope;font-size:25px;line-height:1.35;margin:0 0 20px;max-width:750px}.quote-card small{font-weight:800;color:#597087}
.location{background:#f2f6f8}.location-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}.location h2{max-width:720px}.location-copy{font-size:18px;color:var(--muted)}.pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.pill{border:1px solid #cbdbe4;background:#fff;border-radius:999px;padding:9px 17px;font-weight:800;font-size:14px}.address-card{background:var(--navy);color:#fff;border-radius:18px;padding:35px}.address-card h3{font-size:27px;margin:5px 0 18px}.address-card p{color:#b9d0de}.address-card a{color:#65c7ff;font-weight:800}.cta{padding:0 0 95px}.cta-band{background:linear-gradient(100deg,#0a9de6,#0a8ed4);color:#fff;border-radius:4px;padding:35px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-band h2{font-family:Manrope;font-size:34px;margin:0 0 6px}.cta-band p{margin:0;color:#e1f4ff}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}
.quote-section{background:var(--navy);color:#fff}.quote-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;align-items:start}.quote-section .section-head h2{margin-bottom:28px}.quote-section .section-head p{color:#b7d0df;line-height:1.65;margin:0}.quote-section .section-head p + p{margin-top:24px}.quote-contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:34px}.quote-contact a{display:block;width:max-content;max-width:100%;padding:0;background:transparent;border:0;border-radius:0;font-weight:800;line-height:1.35;transition:color .2s ease,transform .2s ease}.quote-contact a:hover{transform:translateX(2px)}.quote-phone{color:#fff}.quote-email{color:#62c7ff}.quote-contact .quote-phone strong{font-size:22px;color:#fff}.quote-contact .quote-email strong{font-size:17px;color:#62c7ff}.form{background:#fff;color:var(--ink);border-radius:15px;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:17px}.form label{font-size:13px;font-weight:900}.form .full{grid-column:1/-1}.form input,.form select,.form textarea{width:100%;margin-top:7px;border:1px solid #cad9e2;border-radius:7px;padding:13px;font:inherit;color:var(--ink);background:#fff}.form textarea{min-height:130px;resize:vertical}.form button{border:0;cursor:pointer}.form-note{grid-column:1/-1;color:#70879a;font-size:12px}.form-status{display:flex;flex-direction:column;gap:7px;margin-top:2px;padding:17px 19px;border-radius:9px;font-size:13px;line-height:1.5}.form-status strong{font-size:16px}.form-status-success{background:#eaf8f1;border:1px solid #9dd8b7;color:#17663b}.form-status-error{background:#fff1f0;border:1px solid #efb3ad;color:#8b1e16}.form-status-sending{background:#eef8fd;border:1px solid #a9d9ef;color:#145d7d}.form-status span{display:block}.form-send-another{margin-top:5px;font-weight:800;color:#087db8;text-decoration:underline;text-underline-offset:2px}.form.is-submitted{display:block}.form.is-submitted > *:not(.form-status){display:none}.form.is-submitted .form-status{margin:0}
footer{background:#041825;color:#c6d8e3;padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .9fr .95fr;gap:45px}.footer-logo{width:225px;margin-bottom:18px}.footer-grid p{max-width:310px}.footer-grid h4{color:#fff;font-size:16px;margin:0 0 14px}.footer-grid a{display:block;margin:8px 0}.footer-grid a:hover{color:#64c7ff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;font-size:13px}
.page-hero{background:var(--navy);color:#fff;padding:90px 0;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-10%;top:-40%;width:65%;height:180%;background:url('../assets/engineering.png') center/cover;opacity:.24}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{font-family:Manrope;font-size:clamp(50px,6vw,78px);line-height:1;letter-spacing:-.05em;margin:0 0 18px;max-width:800px}.page-hero p{font-size:19px;max-width:720px;color:#c8dbe6}.service-directory{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.directory-card{border:1px solid var(--line);padding:28px;border-radius:12px;min-height:250px;background:#fff}.directory-card b{color:var(--blue);font-size:12px}.directory-card h3{font-size:23px;margin:22px 0 10px}.directory-card p{color:var(--muted);font-size:15px}.directory-card a{color:var(--blue);font-weight:900}
.team-intro{background:#fff}.team-lead{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end}.team-lead .lead-copy{font-size:18px;color:var(--muted)}.team-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:40px}.person{border:1px solid #e0e9ee;border-radius:8px;overflow:hidden;background:#fff}.person img{width:100%;aspect-ratio:4/4.3;object-fit:cover;background:#dbe7ed}.person-body{padding:20px 16px}.person h3{font-family:Manrope;font-size:20px;margin:0}.role{color:var(--blue);font-weight:900;font-size:13px;margin:5px 0 18px}.person p{font-size:13px;color:#52677a}.special{border-top:1px solid #e1e9ee;padding-top:14px;margin-top:16px;font-size:12px}.special strong{display:block;color:var(--ink);margin-bottom:4px}.personal{background:#f4f8fa;border-radius:8px;padding:12px;margin-top:15px;font-size:12px;color:#52677a}

/* =========================================================
   WIDE DESKTOP GRID — 24" / 1920px SCREENS
   Keep the whole homepage on one consistent, premium-width grid.
   This prevents the hero from feeling wide while the sections below
   remain trapped in a narrow central column.
   ========================================================= */
@media (min-width:1201px){
  .wrap{
    width:min(1600px, calc(100% - 80px));
  }

  header .nav{
    width:min(1600px, calc(100% - 80px));
    margin-inline:auto;
  }

  .trust{padding:0}

  .trust-grid{min-height:120px}
  .trust-item{padding:22px 28px}

  .hero-content{
    padding-top:115px;
    padding-bottom:82px;
  }

  .hero h1{
    max-width:860px;
  }

  .hero-copy{
    max-width:760px;
  }

  .hero-stat{
    right:max(40px, calc((100vw - 1600px) / 2 + 70px));
  }

  .problem-grid,
  .service-grid,
  .case-grid,
  .process-grid,
  .testimonial-grid,
  .location-grid,
  .quote-grid,
  .footer-grid{
    width:100%;
  }

  .intro-grid{
    grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr);
    gap:90px;
  }

  .problem-grid{
    gap:18px;
  }

  .problem-card{
    min-height:150px;
    padding:27px;
  }

  .service-grid{
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:18px;
  }

  .service-card:nth-child(1){
    grid-column:span 1;
  }

  .service-card,
  .service-card:nth-child(1),
  .service-card:nth-child(2){
    min-height:390px;
  }

  .service-copy{
    padding:27px;
  }

  .case-grid{
    gap:14px;
  }

  .case-card{
    min-height:215px;
  }

  .process-card{
    min-height:245px;
    padding:28px;
  }

  .testimonial-grid{
    grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
    gap:45px;
  }

  .location-grid{
    grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);
    gap:90px;
  }

  .quote-grid{
    grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);
    gap:75px;
  }

  .form{
    padding:34px;
  }
}

@media (min-width:1700px){
  .wrap,
  header .nav{
    width:min(1680px, calc(100% - 96px));
  }

  .hero-stat{
    right:max(48px, calc((100vw - 1680px) / 2 + 72px));
  }
}

@media(max-width:1000px){.navlinks{display:none;position:absolute;left:14px;right:14px;top:68px;background:var(--navy);padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:0 0 10px 10px;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.mobile-toggle{display:block;margin-left:auto}.navcta{margin-left:auto}.navcta .btn:first-child{display:none}.hero-stat{display:none}.service-grid{grid-template-columns:1fr 1fr}.case-grid{grid-template-columns:repeat(3,1fr)}.process-grid{grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:repeat(3,1fr)}.service-directory{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.location-grid,.quote-grid,.team-lead,.intro-grid,.testimonial-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.hero-content{padding-top:85px}}
@media(max-width:650px){.wrap{width:min(100% - 28px,1200px)}header .nav{height:68px}.logo{width:190px}.navcta{display:none}.hero{min-height:650px}.hero h1{font-size:50px}.hero-copy{font-size:17px}.hero-content{padding:75px 0 60px}.trust-grid,.problem-grid,.service-grid,.process-grid,.case-grid,.team-grid,.service-directory,.footer-grid{grid-template-columns:1fr}.service-card:nth-child(1){grid-column:auto}.service-card,.service-card:nth-child(1),.service-card:nth-child(2){min-height:330px}.case-head{display:block}.cta-band{display:block;padding:28px}.cta-actions{margin-top:20px}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}section{padding:70px 0}.page-hero{padding:70px 0}.page-hero h1{font-size:50px}}

/* Enhanced quotation form */
.form-heading{grid-column:1/-1;margin:1.25rem 0 .15rem;font-size:1.05rem}.form-intro{grid-column:1/-1;display:grid;gap:.35rem;padding:1rem;border:1px solid rgba(0,0,0,.12);border-radius:8px}.form-intro span{line-height:1.5}.form label{display:flex;flex-direction:column;gap:.35rem}.form input,.form select,.form textarea{width:100%;box-sizing:border-box}.form textarea{resize:vertical}

.quote-help{margin-top:28px}.quote-help h3{font-size:16px;margin:0 0 12px}.quote-help ul{margin:0;padding-left:20px;color:#c6d8e3}.quote-help li{margin:0 0 10px;line-height:1.5}.quote-help li strong{color:#fff}.quote-reassurance{margin-top:20px;padding:16px 18px;border-left:3px solid #16a1e0;background:rgba(255,255,255,.05);color:#c6d8e3;line-height:1.55}.quote-reassurance strong{color:#fff}.quote-info .phone{margin-top:28px}
