:root{--navy:#0e3c52;--navy-deep:#082b3c;--ink:#17242c;--purple:#b05bc8;--purple-dark:#8f3baa;--paper:#f6f4ef;--mist:#e9eff1;--white:#fff;--muted:#65727a;--line:rgba(14,60,82,.17);--shell:min(1440px,calc(100% - 80px));--display:"Manrope",sans-serif;--body:"DM Sans",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);line-height:1.05;letter-spacing:-.035em}h1{font-size:clamp(3.4rem,6.3vw,7.4rem);font-weight:700}h2{font-size:clamp(2.5rem,4.5vw,5.2rem);font-weight:650}h3{font-size:1.35rem}.shell{width:var(--shell);margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:18px;top:-100px;z-index:9999;background:var(--purple);color:#fff;padding:12px 20px}.skip-link:focus{top:18px}.section{padding:clamp(90px,10vw,160px) 0}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 22px;color:var(--navy);font-weight:700;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:"";width:30px;height:2px;background:var(--purple)}.eyebrow.light{color:#dce8ec}.eyebrow.light:before{background:var(--purple)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:58px;padding:0 28px;background:var(--purple);border:1px solid var(--purple);color:#fff;font-weight:700;letter-spacing:.01em;transition:.3s ease}.button:hover{background:var(--purple-dark);border-color:var(--purple-dark);transform:translateY(-2px)}.button-small{min-height:46px;padding:0 20px;font-size:.88rem}.button-inverse{background:#fff;border-color:#fff;color:var(--navy)}.button-accent{background:var(--purple);border-color:var(--purple)}.text-link{display:inline-flex;align-items:center;gap:18px;padding:10px 0;border-bottom:1px solid var(--navy);font-weight:700}.text-link span{transition:.25s}.text-link:hover span{transform:translateX(6px)}.light-link{color:#fff;border-color:rgba(255,255,255,.5)}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:26px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.14s}
.topbar{height:35px;background:var(--navy-deep);color:#cbd9de;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}.topbar .shell{height:100%;display:flex;align-items:center;justify-content:flex-end;gap:30px}.topbar span:first-child{margin-right:auto}.topbar a{color:#fff}.site-header{position:sticky;top:0;z-index:100;height:90px;background:rgba(255,255,255,.97);border-bottom:1px solid transparent;transition:.35s}.site-header.scrolled{height:72px;box-shadow:0 12px 30px rgba(5,29,39,.08);border-color:var(--line);backdrop-filter:blur(14px)}.header-inner{height:100%;display:flex;align-items:center;gap:36px}.brand{width:235px;margin-right:auto}.brand img{width:100%;max-height:67px;object-fit:contain}.site-header.scrolled .brand{width:198px}.primary-nav{display:flex;align-items:center;gap:30px}.primary-nav a{position:relative;font-weight:600;font-size:.92rem}.primary-nav a:after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:-9px;background:var(--purple);transition:.25s}.primary-nav a:hover:after,.primary-nav a.active:after{right:0}.nav-toggle{display:none;border:0;background:none;padding:8px}.nav-toggle span:not(.sr-only){display:block;width:26px;height:2px;background:var(--navy);margin:5px}
.hero{position:relative;min-height:calc(100vh - 125px);display:flex;align-items:center;overflow:hidden;background:var(--navy-deep);color:#fff}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,35,48,.98) 0%,rgba(5,35,48,.84) 52%,rgba(5,35,48,.4) 100%)}.hero-bg{position:absolute;inset:0;background:url("../assets/images/hero-accounting.jpg") center/cover fixed;opacity:.3}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:8vw;align-items:center;padding:80px 0 110px}.hero-copy{max-width:890px}.hero h1{margin:0 0 28px}.hero h1 em{color:var(--purple);font-style:normal}.hero-lead{max-width:760px;color:#d8e3e6;font-size:clamp(1.08rem,1.45vw,1.35rem);line-height:1.65;margin-bottom:36px}.hero-proof{display:flex;gap:42px;margin-top:60px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18)}.hero-proof div{display:flex;flex-direction:column}.hero-proof strong{font-family:var(--display);font-size:1.8rem}.hero-proof span{color:#a9bcc3;font-size:.8rem}.hero-visual{position:relative}.hero-image-frame{position:relative;border:1px solid rgba(255,255,255,.32);padding:14px}.hero-image-frame:before{content:"";position:absolute;top:-18px;right:-18px;width:42%;height:52%;border-top:3px solid var(--purple);border-right:3px solid var(--purple)}.hero-image-frame img{width:100%;height:min(55vh,610px);object-fit:cover;object-position:50% 25%;filter:saturate(.75)}.image-tag{position:absolute;left:-22px;bottom:28px;background:#fff;color:var(--navy);padding:15px 22px;font-family:var(--display);font-weight:700;line-height:1.2}.image-tag small{color:var(--muted);font-family:var(--body);font-weight:500}.hero-note{position:absolute;right:-30px;bottom:-62px;width:250px;background:var(--purple);padding:22px 24px}.hero-note p{margin:0;font-weight:600;line-height:1.4}.note-mark{font-family:Georgia,serif;font-size:2.6rem;line-height:.5}.scroll-cue{position:absolute;z-index:3;left:24px;bottom:25px;display:flex;align-items:center;gap:12px;color:#b7c8ce;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;writing-mode:vertical-rl}.scroll-cue span{height:50px;width:1px;background:#b7c8ce}.client-strip{background:var(--purple);color:#fff;overflow:hidden;padding:20px 0}.marquee{overflow:hidden}.marquee-track{display:flex;width:max-content;align-items:center;gap:28px;animation:marquee 26s linear infinite}.marquee-track span{font-family:var(--display);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.marquee-track i{width:7px;height:7px;border:1px solid #fff;transform:rotate(45deg)}@keyframes marquee{to{transform:translateX(-50%)}}
.about-section{background:var(--paper)}.about-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:85px 10vw}.section-heading h2{margin-bottom:0}.about-copy{padding-top:42px}.about-copy .lead{font-size:1.4rem;color:var(--navy);line-height:1.5}.about-copy p{margin-bottom:26px}.about-image{position:relative}.about-image img{width:100%;height:580px;object-fit:cover}.vertical-label{position:absolute;left:-38px;bottom:0;background:var(--navy);color:#fff;padding:18px 12px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.principles{display:flex;flex-direction:column;border-top:1px solid var(--line)}.principles article{display:grid;grid-template-columns:45px 180px 1fr;gap:20px;align-items:start;padding:27px 0;border-bottom:1px solid var(--line)}.principles span{color:var(--purple);font-weight:700;font-size:.78rem}.principles h3,.principles p{margin:0}.principles p{color:var(--muted)}
.services-section{background:var(--navy);color:#fff}.heading-row{display:grid;grid-template-columns:1.2fr .55fr;gap:80px;align-items:end;margin-bottom:65px}.heading-row h2{margin:0}.heading-row>p{color:#b7c9cf;font-size:1.1rem;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}.service-card{position:relative;min-height:325px;padding:38px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);transition:.35s}.service-card:hover{background:#fff;color:var(--navy);transform:translateY(-6px)}.service-card:hover p{color:var(--muted)}.service-no{color:var(--purple);font-weight:700;font-size:.82rem}.service-card h3{font-size:1.65rem;margin:48px 0 18px}.service-card p{color:#bdd0d6;margin:0;transition:.35s}.card-arrow{position:absolute;right:32px;top:34px;font-size:1.4rem}.service-card-cta{background:var(--purple);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.service-card-cta h3{font-size:2.1rem;margin:0 0 28px}.service-card-cta:hover{background:var(--purple-dark);color:#fff}.service-card-cta .eyebrow:before{background:#fff}
.gallery-section{overflow:hidden;background:#fff;padding-bottom:80px}.gallery-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.gallery-heading h2{max-width:870px;margin:0;text-align:right;font-size:clamp(2.3rem,3.5vw,4.4rem)}.gallery-row{overflow:hidden;margin-bottom:16px}.gallery-track{display:flex;width:max-content;gap:16px;animation:gallery-left 45s linear infinite}.gallery-right .gallery-track{animation-name:gallery-right}.gallery-row:hover .gallery-track{animation-play-state:paused}.gallery-track figure{position:relative;width:360px;height:235px;margin:0;overflow:hidden;background:var(--navy)}.gallery-track img{width:100%;height:100%;object-fit:cover;filter:grayscale(.45) contrast(.9);transition:.35s}.gallery-track figcaption{position:absolute;left:0;bottom:0;background:var(--navy);color:#fff;padding:9px 14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;opacity:0;transform:translateY(100%);transition:.3s}.gallery-track figure:hover img{filter:none;transform:scale(1.04)}.gallery-track figure:hover figcaption{opacity:1;transform:none}@keyframes gallery-left{to{transform:translateX(calc(-50% - 8px))}}@keyframes gallery-right{from{transform:translateX(calc(-50% - 8px))}to{transform:translateX(0)}}
.case-section{background:var(--paper)}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.case-image{position:relative}.case-image img{height:640px;width:100%;object-fit:cover}.case-image span{position:absolute;right:-28px;top:40px;background:var(--purple);color:#fff;padding:16px 22px;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem}.case-copy h2{font-size:clamp(2.4rem,3.6vw,4.5rem);margin-bottom:36px}.case-copy blockquote{margin:0 0 34px;padding-left:26px;border-left:3px solid var(--purple);font-size:1.2rem;color:var(--muted)}.case-stat{display:flex;align-items:center;gap:22px;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:28px}.case-stat strong{font-family:var(--display);font-size:3.2rem;color:var(--navy)}.case-stat span{max-width:300px;color:var(--muted)}
.testimonials{background:#fff}.testimonial-shell{display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw}.testimonial-intro h2{font-size:clamp(2.6rem,4vw,4.8rem)}.slider-controls{display:flex;gap:10px;margin-top:42px}.slider-btn{width:54px;height:54px;background:#fff;border:1px solid var(--line);color:var(--navy);font-size:1.3rem;transition:.25s}.slider-btn:hover{background:var(--navy);color:#fff}.review-slider{position:relative;min-height:430px;padding:55px;background:var(--navy);color:#fff}.review{display:none}.review.active{display:block;animation:fade .45s ease}.stars{color:var(--purple);font-size:1.3rem;letter-spacing:.2em}.review blockquote{margin:40px 0 45px;font-family:var(--display);font-size:clamp(1.45rem,2vw,2.2rem);line-height:1.45;letter-spacing:-.02em}.reviewer{display:flex;align-items:center;gap:15px}.avatar{width:52px;height:52px;background:var(--purple);display:grid;place-items:center;font-family:var(--display);font-weight:800}.reviewer div{display:flex;flex-direction:column}.reviewer small{color:#b5c8ce}.review-progress{position:absolute;left:55px;right:55px;bottom:30px;height:2px;background:rgba(255,255,255,.18)}.review-progress span{display:block;width:50%;height:100%;background:var(--purple);transition:.35s}@keyframes fade{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.insights-section{background:var(--mist)}.heading-row.dark-text>p{color:var(--muted)}.insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.insight-card{display:grid;grid-template-columns:42% 1fr;background:#fff;min-height:300px;transition:.3s}.insight-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(7,43,58,.1)}.insight-card img{width:100%;height:100%;object-fit:cover}.insight-card div{padding:35px;display:flex;flex-direction:column}.insight-card span{color:var(--purple);font-weight:700;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem}.insight-card h3{font-size:1.6rem;margin:35px 0 20px}.insight-card p{margin-top:auto;color:var(--navy);font-weight:700}.cta-section{padding:90px 0;background:var(--navy-deep);color:#fff;border-top:7px solid var(--purple)}.cta-grid{display:grid;grid-template-columns:1.2fr .7fr;gap:9vw;align-items:center}.cta-grid h2{font-size:clamp(2.8rem,4.6vw,5.5rem);margin:0}.cta-grid>div:last-child>p{color:#c2d2d7;font-size:1.15rem;margin-bottom:30px}
.site-footer{background:#061f2a;color:#fff;padding-top:80px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:80px;padding-bottom:70px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-grid h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--purple);margin-bottom:12px}.footer-grid a,.footer-grid span{color:#b6c7cd;font-size:.92rem}.footer-grid a:hover{color:#fff}.footer-brand img{width:270px;max-height:110px;object-fit:contain;object-position:left center}.footer-brand p{max-width:390px;color:#b6c7cd}.social-link{display:grid!important;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.25);font-weight:800}.footer-bottom{display:flex;justify-content:space-between;gap:30px;padding:22px 0;border-top:1px solid rgba(255,255,255,.13);color:#8da3ab;font-size:.8rem}.footer-bottom div{display:flex;gap:24px}.footer-bottom a:hover{color:#fff}
.page-hero{position:relative;background:var(--navy);color:#fff;padding:110px 0 95px;overflow:hidden}.page-hero:after{content:"";position:absolute;width:420px;height:420px;right:-80px;top:-180px;border:80px solid rgba(176,91,200,.17);transform:rotate(45deg)}.page-hero .shell{position:relative;z-index:1}.page-hero h1{font-size:clamp(3.5rem,6vw,6.8rem);margin:0;max-width:1000px}.page-hero p:not(.eyebrow){max-width:750px;color:#c2d3d8;font-size:1.2rem;margin:25px 0 0}.breadcrumb{margin-top:40px;color:#b7c8ce;font-size:.82rem}.breadcrumb a{color:#fff}.content-section{padding:100px 0}.two-col{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.prose h2{font-size:clamp(2.4rem,4vw,4.6rem)}.prose h3{font-size:1.7rem;margin-top:45px}.prose p,.prose li{color:var(--muted);font-size:1.08rem}.prose ul{padding-left:20px}.prose strong{color:var(--ink)}.service-list{display:grid;gap:1px;background:var(--line)}.service-detail{display:grid;grid-template-columns:110px 1fr;gap:35px;background:#fff;padding:48px;scroll-margin-top:100px}.service-detail .number{font-family:var(--display);font-size:2.6rem;color:var(--purple)}.service-detail h2{font-size:2.2rem;margin-bottom:18px}.service-detail p{color:var(--muted);margin:0}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.contact-card{background:var(--navy);color:#fff;padding:45px}.contact-card h2{font-size:2.3rem}.contact-item{padding:25px 0;border-bottom:1px solid rgba(255,255,255,.15)}.contact-item small{display:block;color:#a9bdc4;text-transform:uppercase;letter-spacing:.13em;margin-bottom:6px}.contact-item a{font-size:1.25rem;font-weight:700}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group.full{grid-column:1/-1}.form-group label{font-weight:700;font-size:.88rem}.form-group input,.form-group select,.form-group textarea{width:100%;border:1px solid var(--line);background:#fff;padding:15px;color:var(--ink);border-radius:0;outline:0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--purple);box-shadow:0 0 0 2px rgba(176,91,200,.15)}.form-group textarea{min-height:160px;resize:vertical}.form-status{grid-column:1/-1;display:none;padding:14px;background:var(--mist);color:var(--navy)}.form-status.show{display:block}.legal-copy{max-width:900px}.legal-copy h2{font-size:2rem;margin-top:45px}.legal-copy p,.legal-copy li{color:var(--muted)}
@media(max-width:1100px){:root{--shell:min(100% - 48px,1440px)}.header-cta{display:none}.hero-grid{grid-template-columns:1fr .55fr;gap:5vw}.hero-note{right:-10px}.service-grid{grid-template-columns:1fr 1fr}.about-grid{gap:60px}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:35px}.insight-card{grid-template-columns:1fr}.insight-card img{height:230px}}
@media(max-width:820px){:root{--shell:calc(100% - 38px)}.topbar span:nth-child(2){display:none}.site-header{height:75px}.brand,.site-header.scrolled .brand{width:190px}.nav-toggle{display:block;z-index:2}.primary-nav{position:fixed;inset:75px 0 0;background:var(--navy-deep);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:26px;transform:translateX(100%);transition:.35s}.primary-nav.open{transform:none}.primary-nav a{font-family:var(--display);font-size:1.7rem}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding:95px 0 120px}.hero-visual{max-width:500px}.hero-image-frame img{height:500px}.scroll-cue{display:none}.about-grid,.case-grid,.testimonial-shell,.cta-grid,.two-col,.contact-layout{grid-template-columns:1fr}.about-copy{padding-top:0}.principles article{grid-template-columns:40px 145px 1fr}.heading-row{grid-template-columns:1fr;gap:24px}.service-grid{grid-template-columns:1fr 1fr}.gallery-heading{display:block}.gallery-heading h2{text-align:left}.case-image img{height:500px}.case-image span{right:0}.testimonial-intro{display:grid;grid-template-columns:1fr auto;align-items:end}.testimonial-intro .eyebrow{grid-column:1/-1}.review-slider{min-height:470px}.insight-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.4fr 1fr;gap:50px}.contact-layout{gap:50px}}
@media(max-width:560px){:root{--shell:calc(100% - 28px)}.topbar{height:32px}.topbar .shell{gap:10px}.topbar span:first-child{font-size:.65rem}.site-header{top:0}.hero-grid{padding-top:75px}.hero h1{font-size:3.25rem}.hero-proof{gap:20px;justify-content:space-between}.hero-proof strong{font-size:1.45rem}.hero-proof span{font-size:.68rem}.hero-visual{margin-top:20px}.hero-image-frame img{height:430px}.hero-note{position:relative;right:auto;bottom:auto;width:calc(100% - 28px);margin:-28px 0 0 28px}.image-tag{left:0}.button-row{align-items:flex-start;flex-direction:column;gap:15px}.section{padding:80px 0}.about-grid{gap:45px}.about-image img{height:420px}.vertical-label{left:0}.principles article{grid-template-columns:35px 1fr}.principles p{grid-column:2}.service-grid{grid-template-columns:1fr}.service-card{min-height:280px}.gallery-track figure{width:280px;height:190px}.case-image img{height:400px}.testimonial-intro{display:block}.review-slider{padding:35px 28px;min-height:500px}.review-progress{left:28px;right:28px}.insight-card div{padding:28px}.footer-grid{grid-template-columns:1fr}.footer-bottom,.footer-bottom div{flex-direction:column;gap:10px}.footer-bottom{padding:24px 0}.service-detail{grid-template-columns:1fr;padding:30px}.contact-form{grid-template-columns:1fr}.form-group.full{grid-column:auto}.page-hero{padding:85px 0 75px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.marquee-track,.gallery-track{animation-play-state:paused}.button,.service-card,.insight-card{transition:none}}
