:root{--navy:#062f4f;--deep:#031e33;--blue:#1975a5;--sky:#eaf4f8;--orange:#f7941d;--ink:#142737;--muted:#61717d;--white:#fff;--off:#f4f7f8;--line:#dce5e9;--green:#25d366;--shadow:0 22px 60px rgba(6,47,79,.13);--container:min(1180px,calc(100% - 42px));--serif:Georgia,'Times New Roman',serif;--sans:Arial,'Helvetica Neue',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 var(--sans)}img{display:block;max-width:100%}a{color:inherit}.container{width:var(--container);margin-inline:auto}.skip{position:fixed;top:-70px;left:12px;background:#fff;color:var(--navy);padding:12px 18px;z-index:1000}.skip:focus{top:12px}.topbar{background:var(--deep);color:#fff;font-size:.76rem}.topbar .container{min-height:36px;display:flex;align-items:center;justify-content:space-between}.topbar div div{display:flex;gap:24px}.topbar a{text-decoration:none}.header{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);z-index:100}.nav-shell{min-height:105px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center}.brand img{width:300px;height:88px;object-fit:contain;object-position:left center}.main-nav{display:flex;align-items:center;gap:30px;font-weight:700;font-size:.88rem}.main-nav>a,.nav-group>button{text-decoration:none;border:0;background:none;padding:41px 0;cursor:pointer;position:relative;color:var(--navy);font:700 .88rem var(--sans)}.main-nav>a:not(.nav-cta)::after,.nav-group>button::after{content:'';position:absolute;left:0;bottom:30px;width:0;height:2px;background:var(--orange);transition:.25s}.main-nav>a:hover::after,.main-nav>a.active::after,.nav-group>button:hover::after{width:100%}.nav-cta{padding:13px 18px!important;background:var(--navy);color:#fff!important;transition:.25s}.nav-cta:hover{background:var(--blue);transform:translateY(-2px)}.nav-cta span{margin-left:8px}.nav-group{position:relative}.nav-group button i{display:inline-block;width:7px;height:7px;border:solid currentColor;border-width:0 1px 1px 0;transform:rotate(45deg);margin:0 0 3px 8px}.dropdown{position:absolute;top:91px;left:-30px;width:250px;background:#fff;padding:18px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s}.nav-group:hover .dropdown,.nav-group:focus-within .dropdown{opacity:1;visibility:visible;transform:none}.dropdown a{display:block;padding:9px 10px;text-decoration:none;font-weight:600}.dropdown a:hover{background:var(--sky);color:var(--blue)}.menu-toggle{display:none;border:0;background:none;padding:10px}.menu-toggle span{display:block;width:29px;height:2px;background:var(--navy);margin:6px}.hero{height:min(780px,calc(100vh - 141px));min-height:610px;position:relative;display:grid;align-items:center;color:#fff;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,30,51,.96) 0%,rgba(3,30,51,.78) 43%,rgba(3,30,51,.08) 75%)}.hero-copy{position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.21em;color:var(--orange);font-weight:700;font-size:.72rem}.hero h1,.page-hero h1{max-width:760px;font:700 clamp(3.3rem,7vw,6.3rem)/.95 var(--serif);letter-spacing:-.055em;margin:.18em 0}.hero-copy>p:not(.eyebrow){font-size:1.16rem;max-width:600px}.actions{display:flex;align-items:center;gap:28px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:15px 22px;border:2px solid var(--navy);background:var(--navy);color:#fff;text-decoration:none;font-weight:700;font-size:.88rem;cursor:pointer;transition:.25s}.hero .button{background:var(--orange);border-color:var(--orange);color:var(--deep)}.button:hover{transform:translateY(-3px);background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 12px 30px rgba(6,47,79,.2)}.button-light{background:#fff;border-color:#fff;color:var(--navy)}.text-link{display:inline-flex;gap:10px;align-items:center;color:var(--blue);font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}.text-link span{transition:.2s}.text-link:hover span{transform:translateX(6px)}.text-link.light{color:#fff}.scroll-cue{position:absolute;z-index:2;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.2em;font-size:.65rem}.scroll-cue span{font-size:1.2rem;animation:bob 1.5s infinite}.section{padding:105px 0}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.section h2,.editorial h2,.contact-grid h2,.contact-heading h2{font:700 clamp(2.25rem,4.2vw,4.25rem)/1.07 var(--serif);letter-spacing:-.04em;margin:.2em 0 .55em;color:var(--navy)}.lead{font-size:1.24rem;color:var(--navy);font-weight:700}.service-section{background:var(--off)}.section-title{max-width:760px;margin-bottom:50px}.section-title>p:last-child{max-width:620px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.service-card{position:relative;min-height:370px;background:#fff;padding:36px 32px;transition:.3s}.service-card:hover{background:var(--navy);color:#fff;transform:translateY(-7px);box-shadow:var(--shadow);z-index:2}.number{font-size:.78rem;color:var(--orange);font-weight:700}.service-icon{position:absolute;right:30px;top:28px;font-size:1.7rem;color:var(--blue)}.service-card:hover .service-icon{color:var(--orange)}.service-card h3{font:700 1.65rem/1.2 var(--serif);color:var(--navy);margin-top:52px}.service-card:hover h3{color:#fff}.service-card>a{position:absolute;left:32px;bottom:31px;color:var(--blue);font-weight:700;text-decoration:none}.service-card:hover>a{color:#fff}.service-card>a span{display:inline-block;margin-left:8px;transition:.2s}.service-card>a:hover span{transform:translateX(6px)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.story-image{position:relative}.story-image img{width:100%;height:610px;object-fit:cover}.image-label{position:absolute;right:-22px;bottom:30px;background:var(--orange);color:var(--deep);font-weight:700;padding:18px 24px}.story-copy ul{list-style:none;padding:0}.story-copy li{display:grid;grid-template-columns:110px 1fr;padding:20px 0;border-top:1px solid var(--line)}.story-copy li strong{color:var(--navy)}.business-banner{background:var(--navy);color:#fff;overflow:hidden}.business-banner .container{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;min-height:540px}.business-banner h2{font:700 clamp(2.2rem,4.4vw,4.3rem)/1.05 var(--serif);margin:.2em 0}.business-banner p{max-width:550px}.business-banner img{width:calc(100% + 14vw);height:540px;object-fit:cover;margin-left:7vw}.trust{background:#fff}.testimonial-wrap{display:grid;grid-template-columns:55px 1fr 55px;align-items:center;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:55px 0}.testimonials{text-align:center}.testimonial{display:none;margin:0 auto;max-width:800px}.testimonial.active{display:block;animation:fade .45s}.testimonial>span{font:700 5rem/1 var(--serif);color:var(--orange)}.testimonial p{font:700 clamp(1.55rem,3vw,2.4rem)/1.4 var(--serif);color:var(--navy);margin:0}.testimonial footer{color:var(--muted);margin-top:22px}.slider{height:52px;border:1px solid var(--navy);background:#fff;color:var(--navy);font-size:1.2rem;cursor:pointer;transition:.2s}.slider:hover{background:var(--navy);color:#fff}.testimonial-note{text-align:center;font-size:.76rem;color:var(--muted)}.page-hero{background:linear-gradient(120deg,var(--deep),var(--navy));color:#fff;padding:90px 0 95px}.page-hero h1{font-size:clamp(3rem,6vw,5.4rem)}.page-hero p:last-child{max-width:680px;font-size:1.15rem}.editorial{max-width:900px}.editorial>p{font-size:1.08rem}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:60px 0}.values article{border-top:4px solid var(--navy);padding:28px;background:var(--off)}.values span{color:var(--orange);font-size:.75rem}.values h3,.office-grid h3{font:700 1.55rem var(--serif);color:var(--navy)}.compliance,.service-disclosure,.notice{background:var(--sky);border-left:5px solid var(--orange);padding:35px;margin-top:50px}.compliance h2{font-size:2.2rem}.service-disclosure{margin-top:50px}.contact-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:9%}.quick-contact{display:grid;gap:10px;margin-top:35px}.quick-contact a{display:flex;flex-direction:column;text-decoration:none;padding:17px 20px;background:var(--sky)}.quick-contact span{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.lead-form{background:var(--off);padding:38px}.lead-form label{display:block;font-weight:700;margin-bottom:18px}.lead-form input,.lead-form select,.lead-form textarea{display:block;width:100%;margin-top:6px;padding:13px;background:#fff;border:1px solid #9daeb8;font:inherit}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{outline:3px solid rgba(25,117,165,.2);border-color:var(--blue)}.lead-form .two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.lead-form .consent{display:flex;gap:10px;font-weight:400}.lead-form .consent input{width:auto}.form-status{font-weight:700;color:var(--navy)}.contact-heading{max-width:700px;margin-bottom:45px}.office-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.office-grid article{padding:32px;border:1px solid var(--line);min-height:310px}.office-grid article>span{color:var(--orange);font-size:.75rem;text-transform:uppercase;letter-spacing:.14em}.office-grid address{font-style:normal}.office-grid a{display:inline-block;color:var(--blue);font-weight:700;margin:20px 15px 0 0}.office-grid .contact-card{background:var(--navy);color:#fff}.office-grid .contact-card h3{color:#fff}.legal-copy h2{font-size:2.15rem;margin-top:1.35em}.contact-ribbon{background:var(--blue);color:#fff;padding:42px 0}.contact-ribbon .container{display:flex;justify-content:space-between;align-items:center}.contact-ribbon span,.contact-ribbon strong{display:block}.contact-ribbon span{text-transform:uppercase;letter-spacing:.15em;font-size:.7rem}.contact-ribbon strong{font:700 1.9rem var(--serif)}.footer{background:var(--deep);color:#d7e1e7;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.45fr .7fr 1.2fr .8fr;gap:50px}.footer-intro img{width:280px;background:#fff;padding:9px;margin-bottom:20px}.footer h2{font:700 1rem var(--serif);color:#fff}.footer a{display:block;text-decoration:none;margin:8px 0}.footer a:hover{color:var(--orange)}.footer p{font-size:.88rem}.footer-intro>strong{color:var(--orange)}.legal-note{color:#aebbc3}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;margin-top:50px;font-size:.76rem}.back-top,.wa-button{position:fixed;right:22px;border:0;cursor:pointer;z-index:85}.back-top{bottom:88px;width:48px;height:48px;background:var(--navy);color:#fff;opacity:0;pointer-events:none;transition:.2s}.back-top.show{opacity:1;pointer-events:auto}.wa-button{bottom:24px;width:52px;height:52px;border-radius:50%;background:var(--green);color:#fff;font-weight:700}.wa-panel{position:fixed;right:24px;bottom:88px;width:310px;background:#fff;padding:24px;box-shadow:var(--shadow);z-index:90;display:none}.wa-panel.open{display:block;animation:fade .3s}.wa-panel strong,.wa-panel .wa-icon{display:block}.wa-icon{color:var(--green);font-weight:700}.wa-panel>a{display:block;background:var(--green);color:#fff;text-align:center;text-decoration:none;padding:11px;font-weight:700}.wa-close{position:absolute;right:8px;top:5px;background:none;border:0;font-size:1.5rem}.cookie{position:fixed;left:20px;bottom:20px;max-width:430px;background:#fff;padding:18px 20px;box-shadow:var(--shadow);z-index:95;display:flex;gap:18px;align-items:center}.cookie p{margin:0;font-size:.83rem}.cookie button{border:0;background:var(--navy);color:#fff;padding:10px 15px}.cookie.hidden{display:none}.reveal{opacity:0;transform:translateY(25px);transition:opacity .65s var(--delay,0ms),transform .65s var(--delay,0ms)}.reveal.visible{opacity:1;transform:none}@keyframes bob{50%{transform:translateY(6px)}}@keyframes fade{from{opacity:0;transform:translateY(8px)}}
@media(max-width:1000px){.brand img{width:245px}.main-nav{gap:18px}.services-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.topbar .container>span{display:none}.topbar .container{justify-content:flex-end}.header{top:0}.nav-shell{min-height:88px}.brand img{width:250px;height:72px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:88px;left:0;width:100%;background:#fff;padding:18px 22px;box-shadow:var(--shadow);max-height:calc(100vh - 124px);overflow:auto}.main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav>a,.nav-group>button{display:block;width:100%;padding:15px 0;text-align:left;border-bottom:1px solid var(--line)}.main-nav>a::after,.nav-group>button::after{display:none}.nav-cta{text-align:center!important;margin-top:12px}.dropdown{display:none;position:static;width:100%;opacity:1;visibility:visible;transform:none;box-shadow:none;background:var(--off);padding:10px}.nav-group.open .dropdown{display:block}.nav-group:hover .dropdown{display:none}.nav-group.open:hover .dropdown{display:block}.hero{height:720px}.hero-overlay{background:linear-gradient(90deg,rgba(3,30,51,.93),rgba(3,30,51,.45))}.hero h1{font-size:4.5rem}.intro-grid,.story-grid,.contact-grid{grid-template-columns:1fr;gap:50px}.story-image img{height:500px}.business-banner .container{grid-template-columns:1fr}.business-banner .container>div{padding:70px 0}.business-banner img{width:100%;height:400px;margin:0}.office-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){:root{--container:calc(100% - 30px)}.topbar div div a:last-child{display:none}.brand img{width:225px}.hero{height:690px;min-height:0}.hero>img{object-position:64% center}.hero-overlay{background:linear-gradient(90deg,rgba(3,30,51,.92),rgba(3,30,51,.52))}.hero h1{font-size:3.3rem}.hero-copy>p:not(.eyebrow){font-size:1rem}.actions{flex-direction:column;align-items:stretch;text-align:center}.section{padding:75px 0}.services-grid,.values,.office-grid{grid-template-columns:1fr}.service-card{min-height:330px}.story-image img{height:390px}.image-label{right:0}.story-copy li{grid-template-columns:1fr;gap:5px}.business-banner img{height:290px}.testimonial-wrap{grid-template-columns:40px 1fr 40px;gap:7px}.slider{height:42px}.lead-form{padding:23px}.lead-form .two{grid-template-columns:1fr;gap:0}.contact-ribbon .container,.footer-bottom{flex-direction:column;align-items:flex-start;gap:20px}.footer-grid{grid-template-columns:1fr}.footer-intro img{width:250px}.wa-panel{right:15px;width:calc(100% - 30px)}.cookie{left:10px;bottom:10px;width:calc(100% - 20px);flex-direction:column;align-items:flex-start}.page-hero{padding:70px 0}.page-hero h1{font-size:3.25rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Final service catalogue additions */
.section-action{display:flex;justify-content:center;margin-top:42px}
.service-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:9%;align-items:start}
.service-detail-copy h2{font:700 clamp(2.25rem,4.2vw,4.25rem)/1.07 var(--serif);letter-spacing:-.04em;margin:.2em 0 .55em;color:var(--navy)}
.detail-disclosure{margin-top:34px;padding:22px 24px;background:var(--sky);border-left:5px solid var(--orange);font-size:.9rem}
.area-panel{background:var(--navy);color:#fff;padding:38px;position:sticky;top:165px}
.area-panel>span{display:block;color:var(--orange);font-size:.72rem;text-transform:uppercase;letter-spacing:.17em;font-weight:700}
.area-panel ul{list-style:none;padding:0;margin:28px 0}
.area-panel li{padding:16px 0;border-top:1px solid rgba(255,255,255,.2);font:700 1.18rem var(--serif)}
.area-panel li::before{content:'✓';color:var(--orange);font:700 .9rem var(--sans);margin-right:12px}
.area-panel .button{background:#fff;border-color:#fff;color:var(--navy)}
.faq-section{background:var(--off)}
.faq-list{max-width:900px}
.faq-list details{background:#fff;border-top:1px solid var(--line);padding:0 24px}
.faq-list details:last-child{border-bottom:1px solid var(--line)}
.faq-list summary{cursor:pointer;padding:23px 36px 23px 0;font:700 1.15rem var(--serif);color:var(--navy);position:relative}
.faq-list summary::after{content:'+';position:absolute;right:0;color:var(--orange);font:400 1.5rem var(--sans)}
.faq-list details[open] summary::after{content:'−'}
.faq-list details p{padding:0 40px 24px 0;margin:0;color:var(--muted)}
@media(max-width:900px){.service-detail-grid{grid-template-columns:1fr}.area-panel{position:static}.dropdown{max-height:55vh;overflow:auto}}
@media(max-width:620px){.area-panel{padding:28px}.section-action .button{width:100%}}
