@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0e2331;--deep:#071923;--copper:#cc8957;--ink:#193341;--muted:#627480;--paper:#f5f7f6;--line:#dce5e6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.7 'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff}h1,h2,h3,.brand-name{font-family:Manrope,Arial,sans-serif;line-height:1.2}h1{font-size:clamp(2.6rem,5.2vw,5rem);letter-spacing:-.05em;margin:.25em 0}h2{font-size:clamp(1.9rem,3.2vw,3rem);letter-spacing:-.04em;margin:.2em 0 .6em}h3{font-size:1.15rem}p{margin:0 0 1.1rem}a{color:inherit;text-decoration:none}a:hover{color:#b77444}.container{width:min(1160px,calc(100% - 48px));margin:auto}.topline{height:5px;background:var(--copper)}.header{background:white;position:relative;z-index:20;box-shadow:0 2px 16px #10263212}.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:16px}.brand img{width:125px;height:78px;object-fit:contain}.brand-name{font-size:clamp(1rem,1.65vw,1.4rem);font-weight:800;letter-spacing:-.03em;display:block;color:var(--navy)}.brand-sub{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.nav{display:flex;align-items:center;gap:26px}.nav a{font-size:.88rem;font-weight:700}.nav a.active{color:#b77444}.nav .contact-pill{background:var(--navy);color:white;padding:12px 19px;border-radius:6px}.nav .contact-pill:hover{background:#234657}.menu-toggle{display:none;border:1px solid var(--line);background:white;border-radius:6px;padding:10px;font-size:1.2rem}.hero{position:relative;background:var(--deep);min-height:630px;overflow:hidden;color:white}.slides,.slide{position:absolute;inset:0}.slide{opacity:0;transition:opacity 1s ease;background-size:cover;background-position:center}.slide.active{opacity:1}.slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,21,29,.93) 0%,rgba(5,21,29,.64) 42%,rgba(5,21,29,.08) 100%)}.hero-content{position:relative;z-index:2;min-height:630px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:80px 0 100px;max-width:1160px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--copper);font-size:.76rem;font-weight:800}.hero-content h1{max-width:780px}.hero-content p{font-size:1.1rem;color:#d6e1e4;max-width:560px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border-radius:5px;font-weight:700;font-size:.91rem;background:var(--copper);color:#112331}.btn:hover{background:#e4aa7a;color:#112331}.btn.outline{border:1px solid #ffffff80;background:transparent;color:white}.btn.outline:hover{background:#ffffff20}.dots{position:absolute;bottom:38px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:12px}.dot{width:11px;height:11px;border:0;border-radius:50%;background:#ffffff7a;cursor:pointer}.dot.active{background:var(--copper);width:30px;border-radius:10px}.section{padding:92px 0}.section.soft{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:center}.lead{font-size:1.18rem;color:#3b5360}.overline{font-size:.75rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#ae754c}.stat-box{background:var(--navy);color:white;padding:45px;border-radius:10px;box-shadow:18px 18px 0 #e5eae8}.stat-box p{color:#cbd8dc}.stat-box strong{color:var(--copper);font:800 2rem Manrope;display:block;margin-bottom:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature{padding:30px;background:white;border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 22px #09202c09}.feature .num{color:var(--copper);font:800 1rem Manrope}.feature h3{margin:14px 0 10px}.feature p{color:var(--muted);font-size:.94rem}.split-banner{background:var(--navy);color:white;padding:65px 0}.split-banner .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.split-banner h2{margin:0;font-size:clamp(1.7rem,3vw,2.6rem)}.split-banner p{color:#c6d3d7;margin:8px 0 0}.page-hero{padding:85px 0 75px;background:linear-gradient(110deg,#0b2534,#204254);color:white}.page-hero h1{font-size:clamp(2.6rem,4.5vw,4rem)}.page-hero p{color:#d0dce0;max-width:720px;font-size:1.1rem}.content{max-width:860px}.content p{font-size:1.06rem;line-height:1.85}.content h2{margin-top:2.2rem}.image-band{width:100%;height:320px;object-fit:cover;display:block}.footer{background:var(--deep);color:#c7d3d8;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer strong{color:white}.footer a{display:block;margin:7px 0;font-size:.9rem}.footer small{color:#93a7af}.footer-bottom{border-top:1px solid #ffffff1c;margin-top:45px;padding-top:20px;font-size:.82rem;color:#93a7af}.contact-note{padding:24px;background:var(--paper);border-left:4px solid var(--copper);border-radius:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;z-index:100;background:white;padding:10px}@media(max-width:900px){.brand img{width:90px}.header-inner{min-height:88px}.nav{gap:13px}.nav a{font-size:.78rem}.intro-grid{gap:40px}}@media(max-width:700px){.container{width:min(100% - 34px,1160px)}.header-inner{min-height:80px}.brand img{width:76px;height:56px}.brand-name{font-size:.9rem}.brand-sub{font-size:.58rem}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;flex-direction:column;align-items:stretch;gap:0;padding:12px 20px 22px;box-shadow:0 12px 20px #0002}.nav.open{display:flex}.nav a{font-size:.96rem;padding:10px}.nav .contact-pill{text-align:center;margin-top:10px}.hero,.hero-content{min-height:590px}.hero-content{padding:70px 0 90px}.slide:after{background:linear-gradient(90deg,#071923ed,#07192380)}.section{padding:65px 0}.intro-grid,.grid3,.footer-grid{grid-template-columns:1fr;gap:20px}.stat-box{box-shadow:8px 8px 0 #e5eae8}.split-banner .container{display:block}.split-banner .btn{margin-top:20px}.page-hero{padding:65px 0}.image-band{height:220px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Staff and office details */
.team-list{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px}.team-list li{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px 20px;display:flex;flex-direction:column;gap:3px}.team-list strong{color:var(--navy)}.team-list span{color:var(--muted);font-size:.91rem}.office-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0 36px}.office-card{padding:30px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.office-card h3{font-size:1.35rem;margin:0 0 16px;color:var(--navy)}.office-card a{color:#12668d;text-decoration:underline;text-underline-offset:3px}.contact-form-note{max-width:900px}.contact-form-note h3{margin-top:0}.note-small{font-size:.88rem;color:var(--muted)}@media(max-width:700px){.team-list,.office-grid{grid-template-columns:1fr}}

/* Contact form */
.contact-form-panel{margin-top:44px;max-width:850px;padding:34px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 12px 32px #09202c0c}.contact-form{display:grid;gap:20px}.contact-form label{display:grid;gap:7px;font-weight:700;color:var(--navy)}.contact-form label span{color:#b64a35}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:13px 14px;font:inherit;border:1px solid #bdcbd0;border-radius:6px;background:#fff;color:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid #cc895755;border-color:#b77444}.contact-form .btn{border:0;cursor:pointer;justify-self:start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-notice{padding:15px 18px;margin:18px 0;border-radius:6px}.form-success{background:#e5f5ed;color:#145b39}.form-error{background:#fff0ec;color:#8d2c20}.trap{position:absolute;left:-9999px;height:0;overflow:hidden}.team-list a{color:#12668d;text-decoration:underline;text-underline-offset:2px}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.contact-form-panel{padding:22px}}
