
:root{--navy:#00254d;--navy2:#001b39;--teal:#007487;--teal2:#0b91a3;--ink:#172438;--muted:#586273;--line:#d8e5ec;--pale:#eef7fa;--white:#fff}
*{box-sizing:border-box} html{ scroll-behavior:smooth; overflow-x:hidden; } body{ margin:0; font-family:Arial,Helvetica,sans-serif; color:var(--ink); line-height:1.6; background:#fff; overflow-x:hidden; }
a{color:var(--teal)}.wrap{width:min(1160px,calc(100% - 44px));margin:auto}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{display:block;width:min(390px,46vw);max-height:72px;object-fit:contain;object-position:left center}
.brand-fallback{display:none;color:var(--navy);font-weight:800;font-size:24px;text-decoration:none}
nav{display:flex;gap:24px;align-items:center}nav a{color:var(--navy);font-weight:700;text-decoration:none;font-size:15px}nav a:hover,nav a.active{color:var(--teal)}
.menu{display:none;border:1px solid var(--line);background:white;border-radius:7px;padding:9px 12px;color:var(--navy);font-weight:700}
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fff 52%,#eef7fa 100%);padding:88px 0 82px}
.hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-150px;background:radial-gradient(circle,rgba(11,145,163,.19),rgba(0,116,135,.04) 55%,transparent 70%)}
.hero .wrap{position:relative;z-index:1} .eyebrow{ text-transform:uppercase; letter-spacing:.08em; color:var(--teal); font-weight:800; font-size:28px; margin:0 0 36px; white-space:normal; text-align:center; }
.hero .eyebrow{font-size:28px;color:var(--teal);}.pagehead .eyebrow{font-size:32px;margin-bottom:24px; color:var(--teal);}
h1{color:var(--navy);font-size:clamp(40px,4vw,58px);line-height:1.03;letter-spacing:-.04em;margin:0 0 24px;max-width:none}
.hero p{font-size:clamp(19px,2vw,24px);max-width:920px;color:#2b394c;margin:0 0 30px}.buttons{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--teal);color:#fff;text-decoration:none;font-weight:800;padding:13px 20px;border-radius:5px}.btn.alt{background:#fff;color:var(--navy);border:1px solid #bcd2dc}
.strip{background:var(--navy);color:#fff;padding:24px 0}.strip .wrap{display:flex;justify-content:center;gap:20px 30px;flex-wrap:wrap;font-weight:700;font-size:18px}.strip span{border-right:1px solid rgba(255,255,255,.4);padding-right:30px;}.strip span:last-child{border-right:none;padding-right:0;}
section{padding:70px 0}.pale{background:var(--pale)}h2{font-size:clamp(30px,4vw,38px);line-height:1.12;color:var(--navy);margin:0 0 16px;letter-spacing:-.025em}h3{color:var(--teal);font-size:20px;margin:0 0 8px}
.pagehead + section{padding-top:45px}
.intro{max-width:800px;font-size:19px;color:#344156;margin:0 0 34px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:27px;box-shadow:0 8px 22px rgba(0,37,77,.05)}.card p{margin:0;color:#435064}.card .num{font-size:13px;font-weight:800;color:var(--teal);letter-spacing:.08em;margin-bottom:9px}
.problem{border-left:4px solid var(--teal)}.ticks{padding:0;margin:18px 0 0;list-style:none}.ticks li{margin:8px 0;padding-left:24px;position:relative}.ticks li:before{content:"\2714";position:absolute;left:0;color:var(--teal);font-weight:900}
.band{background:linear-gradient(90deg,var(--navy2),var(--navy));color:white}.band h2,.band h3{color:white}.band p{color:#e6eef3}.band .btn{background:white;color:var(--navy)}
.pagehead{background:linear-gradient(135deg,#f8fcfd,#eaf5f8);padding:46px 0}.pagehead h1{font-size:clamp(24px,5vw,58px);margin-bottom:16px}.pagehead p{font-size:20px;max-width:800px;margin:0;color:#344156}
.pills{display:flex;flex-wrap:wrap;gap:10px}.pill{background:#e4f1f4;border:1px solid #c6dfe5;border-radius:999px;padding:8px 13px;color:var(--navy);font-weight:700;font-size:14px}
.contactbox{display:grid;grid-template-columns:1.1fr .9fr;gap:30px}.details{background:var(--navy);color:#fff;padding:34px;border-radius:8px}.details h2,.details h3{color:white}.details a{color:white}
footer{background:var(--navy2);color:#dce7ee;padding:30px 0;font-size:14px}.foot{display:flex;justify-content:space-between;gap:20px;align-items:center;position:relative}.foot a{color:#fff;text-decoration:none}
.trading-name{font-size:10px}
.footer-centre{position:absolute;left:50%;transform:translateX(-50%);text-align:center}
.footer-right{text-align:right}
.note{font-size:14px;color:var(--muted)}
.pagehead h1{font-size:42px}
.page-title{text-transform:none;font-variant:small-caps;}  
@media(max-width:850px){ /* HEADER & NAVIGATION */ .nav{ min-height:76px; } .brand img{ width:min(330px,66vw); } .menu{ display:block; } nav{ display:none; position:absolute; left:0; right:0; top:76px; background:#fff; border-bottom:1px solid var(--line); padding:18px 22px; flex-direction:column; align-items:flex-start; } nav.open{ display:flex; } /* LAYOUT */ .grid3, .grid2, .contactbox{ grid-template-columns:1fr; } /* HOME HERO */ .hero{ padding:55px 0 25px; } .hero .eyebrow{ white-space:normal; font-size:24px; line-height:1.3; text-align:center; color:var(--teal); letter-spacing:.08em; } .hero h1, .pagehead h1{ font-size:clamp(32px,8.5vw,36px); line-height:1.08; } /* HOME SERVICE STRIP */ .strip .wrap{ flex-direction:column; gap:12px; } .strip span{ border-right:none; padding-right:0; text-align:center; } /* GENERAL SECTIONS */ section{ padding:40px 0; } section > .wrap > .eyebrow{ margin-bottom:12px; } section > .wrap > .eyebrow + h2{ margin-top:-5px; } .eyebrow{ font-size:24px; } /* INTERNAL PAGE HEADERS */ .pagehead{ padding:32px 0; } .pagehead .eyebrow{ color:var(--teal); } .pagehead .eyebrow + h1{ margin-top:22px; } .pagehead + section{ padding-top:20px; } /* FOOTER */ .foot{ align-items:center; flex-direction:column; gap:10px; text-align:center; } .footer-centre{ position:static; left:auto; transform:none; text-align:center; } .footer-right{ text-align:center; } .foot > div{ width:100%; }.pagehead p, .intro{ font-size:17px; line-height:1.55; } }