
:root{--navy:#020b1a;--navy2:#06152e;--blue:#0047b8;--blue2:#0969ff;--orange:#ff6b00;--orange2:#ff8a00;--white:#fff;--off:#f4f7fb;--text:#172033;--muted:#5f6b7a;--line:#dbe4f0;--display:'Barlow Condensed',Impact,sans-serif;--sans:'Montserrat',Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--text);background:white;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.topbar{background:var(--navy);color:#d7e4f8;padding:.45rem 1rem;font-size:.78rem}.topbar-inner{max-width:1220px;margin:auto;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.topbar a{color:#fff;font-weight:900}.header{position:sticky;top:0;z-index:100;background:white;border-bottom:6px solid var(--orange);box-shadow:0 5px 22px rgba(0,0,0,.1)}.nav{max-width:1220px;margin:auto;min-height:82px;padding:.55rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.logo img{height:62px;width:auto}.nav-menu{display:flex;align-items:center;gap:1rem;list-style:none}.nav-menu a{font-family:var(--display);font-size:1.05rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#1c2537}.nav-menu a:hover,.nav-menu a.active{color:var(--blue)}.nav-cta{background:var(--orange);color:white!important;padding:.75rem 1.2rem;border-radius:6px;box-shadow:0 8px 20px rgba(255,107,0,.28)}.menu-toggle{display:none;width:44px;height:44px;border:0;background:var(--blue);border-radius:8px;align-items:center;justify-content:center}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{content:"";display:block;width:23px;height:3px;background:white;position:relative;transition:.25s}.menu-toggle span:before{position:absolute;top:-8px}.menu-toggle span:after{position:absolute;top:8px}.menu-toggle.open span{background:transparent}.menu-toggle.open span:before{top:0;transform:rotate(45deg)}.menu-toggle.open span:after{top:0;transform:rotate(-45deg)}
.hero{position:relative;background:linear-gradient(105deg,#fff 0%,#fff 49%,#06152e 49%,#020b1a 100%);overflow:hidden}.hero:before{content:"";position:absolute;right:0;top:0;bottom:0;width:52%;background:linear-gradient(rgba(2,11,26,.28),rgba(2,11,26,.7)),url('/assets/hydrotrace-flyer.jpg') center/cover no-repeat;clip-path:ellipse(75% 100% at 80% 50%)}.hero-inner{position:relative;z-index:1;max-width:1220px;margin:auto;min-height:660px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:4rem 1rem}.badge{display:inline-block;background:var(--navy);color:white;font-family:var(--display);font-size:1.15rem;letter-spacing:.06em;text-transform:uppercase;padding:.35rem .9rem;margin-bottom:1rem;border-left:8px solid var(--orange)}h1{font-family:var(--display);font-size:clamp(3.2rem,8vw,6.7rem);font-weight:900;line-height:.9;text-transform:uppercase;color:#050b16;margin-bottom:1rem}h1 span,h2 span{color:var(--blue)}.strip{display:inline-block;background:#050b16;color:white;font-family:var(--display);font-size:clamp(1.35rem,3vw,2.25rem);font-weight:900;letter-spacing:.04em;text-transform:uppercase;padding:.35rem .8rem;margin-bottom:1.4rem;box-shadow:inset 0 -6px 0 var(--orange)}.strip b{color:var(--blue2)}.hero p{font-size:1.08rem;max-width:625px;color:#172033;margin-bottom:1.5rem;font-weight:600}.actions{display:flex;gap:1rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.25rem;min-height:50px;border-radius:6px;font-family:var(--display);font-size:1.05rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;border:0;cursor:pointer}.btn-blue{background:var(--blue);color:white;box-shadow:0 8px 22px rgba(0,71,184,.32)}.btn-orange{background:var(--orange);color:white;box-shadow:0 8px 22px rgba(255,107,0,.32)}.hero-panel{align-self:end;justify-self:end;background:rgba(2,11,26,.9);color:white;border:2px solid rgba(255,255,255,.28);border-radius:14px;padding:1.2rem;max-width:370px;box-shadow:0 12px 35px rgba(0,0,0,.35)}.hero-panel h3{font-family:var(--display);font-size:1.8rem;line-height:1;color:white;text-transform:uppercase;margin-bottom:.5rem}.hero-panel ul{list-style:none;display:grid;gap:.35rem}.hero-panel li:before{content:"✓";color:var(--orange2);font-weight:900;margin-right:.5rem}.page-hero{background:linear-gradient(135deg,var(--navy),var(--blue));color:white;padding:5rem 1rem;border-bottom:6px solid var(--orange)}.page-hero .wrap{max-width:1220px;margin:auto}.page-hero h1{color:white;font-size:clamp(2.8rem,6vw,5.4rem);max-width:980px}.page-hero h1 span{color:var(--orange2)}.page-hero p{max-width:860px;color:#dbe8fa;font-weight:600;font-size:1.05rem}section{padding:5rem 1rem}.wrap{max-width:1220px;margin:auto}.kicker{display:inline-block;background:var(--blue);color:white;font-family:var(--display);font-size:1.1rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:.3rem .9rem;margin-bottom:1rem;clip-path:polygon(0 0,92% 0,100% 50%,92% 100%,0 100%)}h2{font-family:var(--display);font-size:clamp(2.2rem,5vw,4rem);line-height:.95;text-transform:uppercase;color:var(--navy);margin-bottom:.9rem}.intro{max-width:900px;color:var(--muted);font-weight:600;margin-bottom:2rem}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.card{border:1px solid var(--line);border-top:6px solid var(--blue);background:white;padding:1.2rem;transition:.22s;position:relative;overflow:hidden}.card:after{content:"";position:absolute;right:-45px;top:-45px;width:100px;height:100px;border-radius:50%;background:rgba(0,71,184,.06)}.card:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(0,71,184,.13);border-top-color:var(--orange)}.card-top{display:flex;align-items:center;gap:.8rem;margin-bottom:.7rem}.circle{width:48px;height:48px;border:3px solid var(--blue);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--blue);font-family:var(--display);font-size:1.6rem;font-weight:900;flex:0 0 48px}.card span{color:var(--orange);font-family:var(--display);font-size:1rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.card h3{font-family:var(--display);font-size:1.55rem;line-height:1;text-transform:uppercase;color:var(--navy);margin:.3rem 0 .45rem}.card p{color:var(--muted);font-size:.9rem;font-weight:600}.card ul{margin:.8rem 0 0 1rem;color:#344055;font-size:.83rem;font-weight:600}.card a{display:inline-block;color:var(--blue);font-weight:900;text-transform:uppercase;font-size:.8rem;margin-top:.9rem}.grey{background:var(--off)}.dark{background:linear-gradient(135deg,var(--navy),var(--navy2));color:white}.dark h2{color:white}.dark h2 span{color:var(--orange2)}.dark .intro{color:#dbe8fa}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.step{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:1.4rem;border-radius:8px}.step strong{display:block;font-family:var(--display);font-size:2rem;color:var(--orange2)}.step h3{font-family:var(--display);font-size:1.45rem;text-transform:uppercase;color:white}.step p{color:#d8e5f8;font-weight:600;font-size:.9rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.panel{background:white;border:1px solid var(--line);padding:1.5rem;border-radius:8px}.panel h3{font-family:var(--display);font-size:2rem;text-transform:uppercase;line-height:1;color:var(--navy);margin-bottom:.6rem}.panel p,.panel li{color:var(--muted);font-weight:600}.panel ul{margin-left:1.2rem}.checks{list-style:none;display:grid;gap:.8rem}.checks li{display:flex;gap:.8rem;align-items:flex-start;font-weight:800;color:#e9f1ff}.checks li:before{content:"✓";flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--blue2);display:flex;align-items:center;justify-content:center;color:white;font-weight:900}.markets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;list-style:none;margin-top:1.2rem}.markets li{background:white;border:1px solid var(--line);padding:.9rem;text-align:center;font-weight:900;color:var(--navy);border-radius:4px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start}form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:white;border:1px solid var(--line);padding:1.25rem}input,select,textarea{font:inherit;width:100%;border:1px solid #cbd7e8;padding:.9rem 1rem;border-radius:4px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,71,184,.12)}textarea,.full{grid-column:1/-1}.contact-box{background:linear-gradient(135deg,var(--navy),var(--blue));color:white;padding:1.5rem;border-radius:8px;position:sticky;top:105px}.contact-box h3{font-family:var(--display);font-size:2rem;text-transform:uppercase;line-height:1;color:white;margin-bottom:.8rem}.contact-box p{color:#e0ebff;margin:.7rem 0;font-weight:600}.contact-box a{color:white;font-weight:900}.service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1rem}.service-links a{border:1px solid var(--line);padding:.8rem;font-weight:900;color:var(--navy);background:white}.service-links a:hover{border-color:var(--orange);color:var(--blue)}.article{max-width:900px}.article p{margin:1rem 0;color:var(--muted);font-weight:600}.article h2{margin-top:2rem}details{border:1px solid var(--line);background:white;margin:.7rem 0;padding:1rem}summary{font-weight:900;color:var(--navy);cursor:pointer}footer{background:#020b1a;color:#b9c5d8;padding:3rem 1rem 5.5rem}.footer-grid{max-width:1220px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}.footer-logo img{height:70px;background:white;border-radius:6px;padding:.35rem}footer h4{font-family:var(--display);font-size:1.2rem;text-transform:uppercase;color:var(--orange2);letter-spacing:.08em;margin-bottom:.75rem}footer a{display:block;color:#b9c5d8;margin:.25rem 0;font-size:.85rem}footer p{margin-top:1rem;max-width:440px}.copyright{max-width:1220px;margin:2rem auto 0;border-top:1px solid rgba(255,255,255,.12);padding-top:1rem;font-size:.78rem;color:#7f8ba0}.floating-wa{position:fixed;right:18px;bottom:86px;z-index:80;width:60px;height:60px;border-radius:50%;background:#25d366;color:white;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.25rem;box-shadow:0 8px 30px rgba(37,211,102,.45)}.mobile-bar{display:none;position:fixed;left:0;right:0;bottom:0;background:white;border-top:1px solid var(--line);padding:.55rem;z-index:90;gap:.55rem}.mobile-bar a{flex:1;text-align:center;padding:.78rem .5rem;border-radius:6px;font-family:var(--display);font-size:1.05rem;font-weight:900;text-transform:uppercase}.mobile-call{background:var(--orange);color:white}.mobile-quote{background:var(--blue);color:white}
@media(max-width:980px){.menu-toggle{display:flex}.nav{min-height:74px}.logo img{height:54px}.nav-menu{position:fixed;top:74px;left:0;right:0;background:white;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:1rem;border-bottom:6px solid var(--orange);box-shadow:0 14px 35px rgba(0,0,0,.14);transform:translateY(-130%);transition:.25s;z-index:99}.nav-menu.open{transform:translateY(0)}.nav-menu li{border-bottom:1px solid #eef2f7}.nav-menu a{display:block;padding:1rem .3rem;font-size:1.2rem}.nav-cta{text-align:center;margin-top:.5rem}.topbar{display:none}.hero{background:white}.hero:before{width:100%;opacity:.14;clip-path:none}.hero-inner{grid-template-columns:1fr;min-height:auto;padding:3.5rem 1rem}.hero-panel{justify-self:start;margin-top:1rem;background:var(--navy)}.grid,.service-links{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.split,.contact-grid{grid-template-columns:1fr}.markets{grid-template-columns:repeat(3,1fr)}.contact-box{position:static}.footer-grid{grid-template-columns:1fr}.mobile-bar{display:flex}}
@media(max-width:620px){.nav{min-height:68px}.logo img{height:44px}.nav-menu{top:68px}h1{font-size:3.55rem}.strip{font-size:1.35rem}.hero p{font-size:.97rem}.actions .btn{width:100%}section{padding:3.5rem 1rem}.grid,.process,.markets,.service-links{grid-template-columns:1fr}form{grid-template-columns:1fr;padding:1rem}.floating-wa{bottom:88px;right:14px}}


/* Services dropdown */
.has-dropdown{position:relative}
.dropdown-toggle{font-family:var(--display);font-size:1.05rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#1c2537;background:transparent;border:0;cursor:pointer;padding:0;display:flex;align-items:center;gap:.25rem}
.dropdown-toggle:hover,.dropdown-toggle.active{color:var(--blue)}
.dropdown-menu{position:absolute;top:calc(100% + 24px);left:0;min-width:330px;background:#fff;border:1px solid var(--line);border-top:6px solid var(--orange);box-shadow:0 18px 45px rgba(0,0,0,.16);padding:.6rem;opacity:0;visibility:hidden;transform:translateY(10px);transition:.22s;z-index:200;max-height:72vh;overflow:auto}
.has-dropdown:hover .dropdown-menu,.has-dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown-menu a{display:block!important;font-family:var(--sans)!important;font-size:.82rem!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important;color:var(--text)!important;padding:.62rem .75rem!important;border-bottom:1px solid #eef2f7}
.dropdown-menu a:hover{background:var(--off);color:var(--blue)!important}
.dropdown-menu a strong{color:var(--orange);text-transform:uppercase;font-size:.75rem;letter-spacing:.06em}

@media(max-width:980px){
  .has-dropdown{border-bottom:1px solid #eef2f7}
  .dropdown-toggle{width:100%;padding:1rem .3rem;font-size:1.2rem;justify-content:space-between}
  .dropdown-menu{position:static;min-width:0;box-shadow:none;border:0;border-left:4px solid var(--orange);max-height:0;overflow:hidden;opacity:1;visibility:visible;transform:none;padding:0;margin:0 0 0 .4rem;transition:max-height .25s ease}
  .has-dropdown.open .dropdown-menu{max-height:700px;padding:.35rem 0}
  .has-dropdown:hover .dropdown-menu{max-height:0;padding:0}
  .has-dropdown.open:hover .dropdown-menu{max-height:700px;padding:.35rem 0}
  .dropdown-menu a{padding:.55rem .75rem!important;font-size:.86rem!important}
}


/* Rich explanatory service pages */
.explain-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:start}
.explain-section{padding:4rem 1rem}
.number-list{counter-reset:item;display:grid;gap:.8rem;list-style:none}
.number-list li{counter-increment:item;background:#fff;border:1px solid var(--line);padding:1rem 1rem 1rem 3.2rem;position:relative;font-weight:700;color:var(--muted)}
.number-list li:before{content:counter(item);position:absolute;left:1rem;top:1rem;width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:1.1rem}
.tick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;list-style:none}
.tick-grid li{background:#fff;border:1px solid var(--line);padding:.85rem;font-weight:800;color:var(--text)}
.tick-grid li:before{content:"✓";color:var(--orange);font-weight:900;margin-right:.5rem}
.service-cta-band{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;padding:3rem 1rem}
.service-cta-band h2{color:#fff}.service-cta-band h2 span{color:var(--orange2)}
@media(max-width:900px){.explain-grid{grid-template-columns:1fr}.tick-grid{grid-template-columns:1fr}}


.service-hero-image{
margin:2rem 0 0;
border-radius:18px;
overflow:hidden;
border:1px solid rgba(255,255,255,0.1);
box-shadow:0 18px 50px rgba(0,0,0,0.25)
}
.service-hero-image img{
width:100%;
display:block
}


/* MOBILE MENU FIX */
@media (max-width:768px){

.mobile-menu{
padding:20px !important;
overflow-y:auto;
}

.mobile-menu ul{
gap:8px !important;
}

.mobile-menu a{
font-size:22px !important;
padding:14px 0 !important;
line-height:1.2 !important;
font-weight:700 !important;
}

.services-dropdown{
padding-left:12px !important;
}

.services-dropdown a{
font-size:18px !important;
padding:10px 0 !important;
}

}
