:root{--navy:#14253d;--navy-deep:#0d1a2b;--gold:#d69c46;--cream:#f5f2eb;--white:#fff;--ink:#18202a;--muted:#66707d;--line:#d9d7d1;--pad:clamp(22px,5vw,84px);--content:1440px;--sans:"Avenir Next",Avenir,"Segoe UI",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:15px;top:-80px;background:#fff;padding:10px 14px;z-index:300}.skip-link:focus{top:15px}
.site-header{height:82px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(20,37,61,.12);position:sticky;top:0;z-index:100;backdrop-filter:blur(12px)}.brand{display:grid;grid-template-columns:42px auto;grid-template-rows:auto auto;align-items:center;column-gap:11px}.brand-mark{grid-row:1/3;width:42px;height:42px;fill:none;stroke:var(--navy);stroke-width:2.8}.brand-mark .lane{stroke:var(--gold);stroke-width:2.3}.brand-name{font-size:1.25rem;font-weight:800;line-height:1;letter-spacing:.08em;color:var(--navy)}.brand small{text-transform:uppercase;letter-spacing:.18em;font-size:.58rem;color:var(--muted);line-height:1;margin-top:4px}.site-nav{display:flex;align-items:center;gap:clamp(18px,2.7vw,42px);font-size:.83rem;font-weight:650}.site-nav>a:not(.nav-call){position:relative}.site-nav>a:not(.nav-call)::after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .25s}.site-nav>a:hover::after{transform:scaleX(1);transform-origin:left}.nav-call{display:flex;align-items:center;gap:10px;background:var(--navy);color:#fff;padding:12px 18px;border-radius:999px}.nav-call svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.8}.menu-toggle{display:none;background:none;border:0;padding:10px}
.hero{height:min(790px,calc(100svh - 82px));min-height:650px;position:relative;display:flex;align-items:center;color:#fff;isolation:isolate}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center;z-index:-2}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(7,17,29,.9) 0%,rgba(10,23,38,.72) 39%,rgba(10,23,38,.18) 72%,rgba(10,23,38,.06) 100%)}.hero-content{width:min(720px,70%);margin-left:max(var(--pad),calc((100vw - var(--content))/2));padding-right:30px}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 22px;text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:750}.eyebrow::before{content:"";width:30px;height:1px;background:var(--gold)}.eyebrow.dark{color:var(--navy)}.hero h1{font-size:clamp(3.6rem,6.4vw,6.5rem);font-weight:650;letter-spacing:-.045em;line-height:1.02;margin:0 0 26px;max-width:760px}.hero-lead{max-width:590px;font-size:clamp(1.05rem,1.45vw,1.3rem);color:rgba(255,255,255,.88);line-height:1.55}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:35px}.button{border:0;border-radius:4px;min-height:54px;padding:0 24px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-size:.86rem;font-weight:750;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-accent{background:var(--gold);color:var(--navy-deep)}.button-quiet{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.38);backdrop-filter:blur(6px)}.hero-scroll{position:absolute;right:var(--pad);bottom:35px;display:flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.16em;font-size:.65rem}.hero-scroll svg{width:20px;fill:none;stroke:#fff;stroke-width:1.4;animation:soft-bounce 2.3s ease-in-out infinite}@keyframes soft-bounce{50%{transform:translateY(7px)}}
.assurance{min-height:92px;background:#fff;display:flex;justify-content:center;align-items:center;gap:clamp(38px,8vw,120px);padding:20px var(--pad);color:var(--navy);font-size:.92rem;font-weight:650}.assurance span{display:flex;align-items:center;gap:11px}.assurance i{width:25px;height:25px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-style:normal;font-size:.72rem}
.intro{max-width:var(--content);margin:auto;padding:clamp(90px,12vw,170px) var(--pad);display:grid;grid-template-columns:1.1fr .7fr;gap:clamp(50px,9vw,150px);align-items:start}.intro h2,.services h2,.trust h2,.journey h2,.contact h2{font-size:clamp(2.7rem,5vw,5.1rem);font-weight:560;line-height:1.1;letter-spacing:-.045em;margin:0}.intro-copy{padding-top:52px;font-size:1.08rem;color:#47515d}.intro-copy p{margin:0 0 24px}.arrow-link{display:inline-flex;align-items:center;gap:25px;color:var(--navy);font-weight:750;margin-top:15px;border-bottom:1px solid var(--gold);padding-bottom:4px}.arrow-link span{color:var(--gold);transition:transform .2s}.arrow-link:hover span{transform:translateX(5px)}
.services{background:#fff;display:grid;grid-template-columns:minmax(340px,.9fr) 1.1fr;align-items:stretch}.services-image{position:relative;min-height:900px;overflow:hidden}.services-image img{height:100%;object-fit:cover}.services-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(10,22,37,.65))}.image-note{position:absolute;z-index:1;left:clamp(22px,4vw,60px);bottom:45px;color:#fff;display:grid}.image-note strong{font-size:1.5rem;font-weight:650}.image-note span{font-size:.8rem;opacity:.8}.services-content{padding:clamp(80px,9vw,135px) var(--pad)}.services-content>h2{font-size:clamp(2.5rem,4.2vw,4.4rem);max-width:730px;margin-bottom:55px}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:62px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}.service-icon{width:52px;height:52px;border:1px solid #c8c6c0;border-radius:50%;display:grid;place-items:center}.service-icon svg{width:27px;fill:none;stroke:var(--navy);stroke-width:1.7}.service-list h3{font-size:1.28rem;color:var(--navy);margin:0 0 4px;font-weight:700}.service-list p{margin:0;color:var(--muted);max-width:590px}
.trust{background:var(--navy);color:#fff;padding:clamp(95px,11vw,160px) max(var(--pad),calc((100vw - var(--content))/2));display:grid;grid-template-columns:1fr .85fr;gap:clamp(70px,10vw,160px);position:relative;overflow:hidden}.trust::after{content:"";position:absolute;width:680px;height:680px;border:1px solid rgba(255,255,255,.09);border-radius:50%;left:-390px;bottom:-460px;box-shadow:0 0 0 100px rgba(255,255,255,.025),0 0 0 200px rgba(255,255,255,.02)}.trust h2{font-size:clamp(3rem,5.5vw,5.8rem);max-width:900px}.trust-body{padding-top:50px;position:relative;z-index:1}.trust-lead{font-size:1.2rem;color:rgba(255,255,255,.8);margin:0 0 50px}.trust ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2)}.trust li{display:grid;grid-template-columns:50px 1fr;gap:12px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.2)}.trust li>span{color:var(--gold);font-size:.72rem}.trust li strong{font-size:1.05rem}.trust li p{margin:3px 0 0;color:rgba(255,255,255,.63);font-size:.92rem}
.journey{padding:clamp(95px,11vw,160px) max(var(--pad),calc((100vw - var(--content))/2));background:var(--cream)}.journey-heading{display:grid;grid-template-columns:1.1fr .5fr;column-gap:60px;align-items:end}.journey-heading .eyebrow{grid-column:1/-1}.journey-heading p:last-child{color:var(--muted);font-size:1.05rem}.road{--wheel-left:4%;--wheel-turn:0deg;position:relative;margin-top:95px;padding-top:58px}.road-line{position:absolute;top:30px;left:4%;right:4%;height:4px;background:var(--navy);border-radius:5px}.road-line span{position:absolute;top:-6px;width:16px;height:16px;border:4px solid var(--cream);border-radius:50%;background:var(--gold)}.road-line span:nth-child(1){left:0}.road-line span:nth-child(2){left:50%;transform:translateX(-50%)}.road-line span:nth-child(3){right:0}.rolling-wheel{position:absolute;z-index:2;top:-4px;left:var(--wheel-left);width:68px;height:68px;transform:translateX(-10%) rotate(var(--wheel-turn));transition:left .08s linear}.rolling-wheel svg{fill:var(--cream);stroke:var(--navy);stroke-width:3}.road ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8%}.road li{display:grid;grid-template-columns:40px 1fr;gap:12px}.road li>span{width:30px;height:30px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--navy);font-weight:700}.road li strong{display:block;color:var(--navy);font-size:1.15rem;margin-bottom:6px}.road li p{margin:0;color:var(--muted);font-size:.94rem}
.testimonial{background:var(--gold);color:var(--navy-deep);text-align:center;padding:clamp(90px,10vw,145px) var(--pad)}.quote-mark{font-family:Georgia,serif;font-size:6rem;line-height:.6;opacity:.42}.testimonial blockquote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,4.3rem);font-weight:400;font-style:italic;line-height:1.25;max-width:1100px;margin:28px auto 35px}.testimonial p{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:750}.testimonial p span{margin:0 8px}
.contact{background:var(--navy-deep);color:#fff;display:grid;grid-template-columns:.88fr 1.12fr}.contact-copy{padding:clamp(85px,10vw,145px) var(--pad)}.contact h2{font-size:clamp(3rem,5vw,5.4rem);margin-bottom:28px}.contact-copy>p:not(.eyebrow){font-size:1.08rem;color:rgba(255,255,255,.72);max-width:580px}.contact-methods{margin-top:58px}.contact-methods a{display:grid;padding:18px 0;border-top:1px solid rgba(255,255,255,.18)}.contact-methods small{color:var(--gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.15em}.contact-methods strong{font-size:1rem;font-weight:550}.enquiry-form{background:#fff;color:var(--ink);margin:clamp(45px,6vw,88px) var(--pad) clamp(45px,6vw,88px) 0;padding:clamp(40px,5vw,75px);border-radius:8px;align-content:center;display:grid;gap:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.enquiry-form label{display:grid;gap:5px;color:var(--navy);font-size:.78rem;font-weight:700}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{border:0;border-bottom:1px solid #aeb3b8;border-radius:0;background:transparent;padding:11px 0;color:var(--ink);outline:none;font-weight:400}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--gold)}.enquiry-form .button{justify-self:start}.form-note{font-size:.72rem;color:var(--muted);margin:0;max-width:520px}
footer{background:#091422;color:#fff;padding:65px var(--pad) 28px}.footer-top{display:grid;grid-template-columns:1fr 1fr auto;gap:45px;align-items:start;max-width:var(--content);margin:auto}.footer-brand .brand-mark{stroke:#fff}.footer-brand .brand-name{color:#fff}.footer-brand small{color:rgba(255,255,255,.6)}.footer-top>p{color:rgba(255,255,255,.65);margin:0;max-width:280px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;font-size:.82rem}.footer-bottom{max-width:var(--content);margin:55px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;color:rgba(255,255,255,.48);font-size:.72rem}.footer-bottom p{margin:0}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.in-view{opacity:1;transform:none}
@media(max-width:1050px){.site-nav{gap:18px}.site-nav>a:not(.nav-call){display:none}.intro{grid-template-columns:1fr .72fr}.services{grid-template-columns:.7fr 1fr}.trust{grid-template-columns:1fr}.trust-body{padding-top:0;max-width:780px}.contact{grid-template-columns:1fr}.enquiry-form{margin:0 var(--pad) 80px}.contact-copy{padding-bottom:70px}}
@media(max-width:760px){html{scroll-padding-top:72px}.site-header{height:72px}.brand{grid-template-columns:36px auto}.brand-mark{width:36px}.brand-name{font-size:1.08rem}.menu-toggle{display:grid;gap:5px;z-index:102}.menu-toggle span{display:block;width:27px;height:2px;background:var(--navy);transition:.25s}.menu-toggle[aria-expanded="true"] span{background:#fff}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-nav{position:fixed;inset:0;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:90px var(--pad) 55px;gap:0;visibility:hidden;opacity:0;transform:translateY(-8px);transition:.25s}.site-nav.open{visibility:visible;opacity:1;transform:none}.site-nav>a:not(.nav-call){display:block;width:100%;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:1.7rem;font-weight:520}.site-nav>a:not(.nav-call)::after{display:none}.nav-call{margin-top:30px;background:var(--gold);color:var(--navy);width:100%;justify-content:center}.hero{height:780px;min-height:calc(100svh - 72px);align-items:flex-end}.hero-image{object-position:68% center}.hero-shade{background:linear-gradient(180deg,rgba(7,17,29,.1) 20%,rgba(7,17,29,.93) 75%,rgba(7,17,29,.98) 100%)}.hero-content{width:100%;margin:0;padding:0 var(--pad) 68px}.hero h1{font-size:clamp(3rem,13vw,4.7rem);line-height:1.02}.hero-lead{font-size:1rem}.hero-actions{display:grid}.button{width:100%}.hero-scroll{display:none}.assurance{justify-content:flex-start;overflow-x:auto;gap:28px;white-space:nowrap;padding-left:var(--pad)}.assurance span{font-size:.78rem}.intro{display:block;padding-top:85px;padding-bottom:85px}.intro h2,.services h2,.trust h2,.journey h2,.contact h2{font-size:clamp(2.45rem,11vw,3.8rem)}.intro-copy{padding-top:35px}.services{display:block}.services-image{min-height:470px}.services-content{padding-top:75px;padding-bottom:80px}.services-content>h2{font-size:2.65rem}.service-list article{grid-template-columns:54px 1fr;gap:15px}.service-icon{width:46px;height:46px}.trust{padding-top:90px;padding-bottom:95px}.trust-body{padding-top:38px}.journey-heading{display:block}.journey-heading p:last-child{margin-top:22px}.road{margin-top:60px;padding:0 0 0 42px}.road-line{left:14px;right:auto;top:4px;bottom:5px;width:3px;height:auto}.road-line span{left:-6px!important;right:auto!important;top:auto;transform:none!important}.road-line span:nth-child(1){top:0}.road-line span:nth-child(2){top:50%}.road-line span:nth-child(3){bottom:0}.rolling-wheel{display:none}.road ol{display:grid;grid-template-columns:1fr;gap:42px}.road li{min-height:82px}.testimonial blockquote{font-size:2.1rem}.contact-copy{padding-top:85px}.enquiry-form{padding:34px 24px;margin:0 var(--pad) 60px}.form-row{grid-template-columns:1fr;gap:28px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-bottom{display:grid;gap:8px}.footer-nav{max-width:260px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-scroll svg{animation:none}.reveal{opacity:1;transform:none;transition:none}.rolling-wheel{transition:none}}

/* Precision refinements: professional CTAs, true image overlays and robust mobile navigation. */
.button{border-radius:0;min-height:56px;padding:0 26px;gap:16px;font-size:1rem;font-weight:650;line-height:1.2}.button-quiet{border-color:rgba(255,255,255,.48)}.button-arrow{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.arrow-link{font-weight:700}.arrow-link svg{width:28px;fill:none;stroke:var(--gold);stroke-width:1.5;transition:transform .2s}.arrow-link:hover svg{transform:translateX(5px)}
.services-image{background:var(--navy-deep)}.services-image img{position:absolute;inset:0;height:100%;object-fit:cover;z-index:0}.services-image::after{z-index:1;background:linear-gradient(180deg,transparent 55%,rgba(10,22,37,.8) 100%)}.image-note{z-index:2}.image-note span{opacity:.88}
@media(max-width:760px){body.menu-open::before{content:"";position:fixed;inset:0;background:var(--navy);z-index:99}.site-header{backdrop-filter:none}body.menu-open .site-header{background:transparent;border-color:transparent}.menu-toggle{z-index:103}.site-nav{position:fixed;inset:0;width:100vw;height:100dvh;min-height:100vh;background:var(--navy)!important;isolation:isolate;z-index:102}.nav-call{border-radius:0}.button{font-size:1rem;font-weight:620}.services-image{height:570px;min-height:0}.services-image img{object-position:46% center}.services-image::after{background:linear-gradient(180deg,transparent 54%,rgba(10,22,37,.86) 100%)}.image-note{left:var(--pad);right:var(--pad);bottom:30px}}
