*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbfaf7;color:#0b1e2c;font-family:"DM Sans",sans-serif}.shell{width:min(1180px,calc(100% - 44px));margin:auto}.nav{height:92px;display:flex;align-items:center;gap:35px;background:#061923;color:white}.body{}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:white;font:700 18px Manrope;letter-spacing:5px}.brand small{display:block;font-size:7px;letter-spacing:3.5px}.mark{font-size:30px;color:#d5b36e}.navlinks{display:flex;gap:28px;margin-left:auto}.navlinks a,.textlink{color:white;text-decoration:none;font-size:13px}.pill{display:inline-flex;padding:14px 21px;border:0;border-radius:30px;text-decoration:none;font-weight:700}.cream{background:#f2e4c4;color:#0b1e2c}.navy{background:#092633;color:#fff}.hamb{display:none;background:none;border:0;color:white;font-size:25px}.homehero,.nav{background-color:#061923}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:570px;color:white}.hero-copy{align-self:center;padding-right:35px}.kicker{font-size:10px;letter-spacing:2px;font-weight:700}.gold{color:#9c722f}.sand{color:#e0c58d}.hero-copy h1,.pagehero h1{font:800 clamp(48px,6vw,78px)/1.02 Manrope;letter-spacing:-3px;margin:18px 0}.hero-copy h1 em{font-style:normal;color:#dfbc7b}.hero-copy p,.pagehero p{font-size:17px;line-height:1.7;color:#cbd6da}.actions{display:flex;gap:25px;align-items:center;margin-top:28px}.hero-photo{background:linear-gradient(90deg,#061923 0%,transparent 45%),url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1300&q=85") center/cover}.statbar{display:grid;grid-template-columns:repeat(4,1fr);color:white;border-top:1px solid #30454e}.statbar div{padding:25px 20px;border-right:1px solid #30454e}.statbar strong{display:block;font:700 26px Manrope}.statbar span{font-size:11px;color:#b9c5ca}.section{padding:90px 0}.two,.section-head{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:end}h2{font:800 clamp(34px,4vw,51px)/1.08 Manrope;letter-spacing:-2px;margin:12px 0}.section p{color:#616c73;line-height:1.75}.arrow{color:#775a2c;font-weight:700;text-decoration:none}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.card{background:#fff;border:1px solid #e8e3d9;border-radius:12px;overflow:hidden;padding:0 23px 27px}.pic{height:205px;margin:0 -23px 20px;background-size:cover;background-position:center}.p1{background-image:url("https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=900&q=85")}.p2{background-image:url("https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=900&q=85")}.p3{background-image:url("https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=900&q=85")}.card>span,.service-list>article>span,.values article>span{color:#a37a39;font-weight:800}.card h3,.values h3,.service-list h3{font:700 22px/1.25 Manrope}.dark{background:#092633;color:white}.dark p{color:#b8c5ca}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:45px}.steps div{display:flex;flex-direction:column;gap:8px}.steps i{width:55px;height:55px;display:grid;place-items:center;border-radius:50%;background:#f2e4c4;color:#092633;font-style:normal;font-weight:800}.steps span{font-size:12px;color:#aab8be}.leader-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.leader{min-height:520px;border-radius:14px;background:linear-gradient(0deg,rgba(6,25,35,.8),transparent 60%),url("assets/leadership-portrait.webp") center top/cover;position:relative}.leader>div{position:absolute;left:28px;bottom:28px;color:white;display:flex;flex-direction:column}.leader strong{font:700 30px Manrope}.soft{background:#f0ede6}.cta{padding:90px 0;color:white;background:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.65)),url("https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=1800&q=85") center/cover}.cta h2{max-width:700px}.pagehero{min-height:480px;display:flex;align-items:center;color:white;background-color:#092633;background-size:cover;background-position:center}.pagehero .shell{position:relative}.pagehero p{max-width:650px}.aboutbg{background-image:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.35)),url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=1800&q=85")}.servicebg{background-image:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.35)),url("https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1800&q=85")}.blogbg{background-image:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.35)),url("https://images.unsplash.com/photo-1497366216548-37526070297c?auto=format&fit=crop&w=1800&q=85")}.contactbg{background-image:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.35)),url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=85")}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.values article{background:white;border:1px solid #e8e3d9;border-radius:12px;padding:30px}.service-list{margin-top:45px}.service-list article{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:35px 0;border-top:1px solid #ddd6ca}.service-list article>span{font-size:28px}.posts{display:grid;grid-template-columns:1fr 1fr;gap:28px}.post{background:#fff;border:1px solid #e8e3d9;border-radius:12px;overflow:hidden;padding:0 28px 30px}.postpic{height:260px;margin:0 -28px 25px;background-size:cover;background-position:center}.b1{background-image:url("https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=900&q=85")}.b2{background-image:url("https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=900&q=85")}.b3{background-image:url("https://images.unsplash.com/photo-1552664730-d307ca884978?auto=format&fit=crop&w=900&q=85")}.b4{background-image:url("https://images.unsplash.com/photo-1556761175-5973dc0f32e7?auto=format&fit=crop&w=900&q=85")}.post h2{font-size:30px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.contactbox{padding:20px 0;border-top:1px solid #ded8ce;display:flex;flex-direction:column;gap:6px}.contactbox a{font:700 24px Manrope;color:#092633;text-decoration:none}.form{background:#fff;border:1px solid #e6e0d6;border-radius:14px;padding:35px}.form label{display:block;font-weight:700;margin-bottom:18px}.form input,.form textarea{width:100%;margin-top:8px;padding:15px;border:1px solid #d9d5ce;border-radius:8px;font:inherit}.footer-grid{padding:58px 0;display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:40px}.footer-brand{color:#10232e}.footer-grid div{display:flex;flex-direction:column;gap:9px}.footer-grid a{color:#566168;text-decoration:none}.copy{border-top:1px solid #e8e4dc;padding:22px 0 34px;color:#7b8387;font-size:11px}.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.show{opacity:1;transform:none}
@media(max-width:820px){.navlinks,.nav>.pill{display:none}.hamb{display:block;margin-left:auto}.navlinks.open{display:flex;position:absolute;top:80px;right:20px;flex-direction:column;background:#092633;padding:22px;z-index:20}.hero-grid,.two,.section-head,.leader-grid,.contact-grid{grid-template-columns:1fr}.hero-photo{min-height:300px}.statbar{grid-template-columns:1fr 1fr}.cards,.values{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.posts{grid-template-columns:1fr}.section{padding:65px 0}.footer-grid{grid-template-columns:1fr}.pagehero{min-height:400px}}
.content-block{max-width:900px}.content-block p{font-size:16px;line-height:1.8}
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.quote{background:#fff;border:1px solid #e8e3d9;border-radius:12px;padding:28px}
.quote h3{font:700 20px Manrope;margin:0 0 12px}.quote small{display:block;margin-top:15px;font-weight:700;color:#8a692f}
.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.blog-item{background:#fff;border:1px solid #e8e3d9;border-radius:12px;padding:28px}
.blog-item h3{font:700 25px Manrope}.blog-item small{color:#9c722f;font-weight:700}
@media(max-width:820px){.testimonials,.blog-grid{grid-template-columns:1fr}}

/* Supplied white header and color footer logos, with excess canvas clipped. */
.brand{width:270px;height:64px;flex-shrink:0;overflow:hidden;background:transparent;align-self:center}
.brand-logo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.footer-brand{justify-self:start}
@media(max-width:960px){.navlinks,.nav>.pill{display:none}.hamb{display:block;margin-left:auto}.navlinks.open{display:flex;position:absolute;top:80px;right:20px;flex-direction:column;background:#092633;padding:22px;z-index:20}}
@media(max-width:480px){.brand{width:220px;height:56px}.nav{gap:16px}}

/* Hero motion */
.homehero{overflow:hidden}
.homehero .hero-copy{opacity:1;transform:none;transition:none}
.hero-copy>*{animation:hero-reveal .9s cubic-bezier(.2,.7,.2,1) both}
.hero-copy>.kicker{display:inline-block;animation-delay:.1s}
.hero-copy>h1{animation-delay:.25s}
.hero-copy>p{animation-delay:.45s}
.hero-copy>.actions{animation-delay:.65s}
.homehero .hero-photo{background:#061923}
.hero-photo:before{content:"";position:absolute;inset:-48px 0;background:linear-gradient(90deg,#061923 0%,transparent 45%),url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1300&q=85") center/cover;animation:hero-zoom 18s ease-in-out infinite alternate;transform-origin:center;will-change:transform}
.homehero .actions a{transition:transform .25s ease,box-shadow .25s ease,color .25s ease}
.homehero .actions a:focus-visible{outline:2px solid #dfbc7b;outline-offset:6px}
@media(hover:hover){.homehero .actions .pill:hover{transform:translateY(-3px);box-shadow:0 8px 26px #dfbc7b40}.homehero .actions .textlink:hover{transform:translateX(4px);color:#dfbc7b}}
@keyframes hero-reveal{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-zoom{from{transform:translateY(var(--hero-shift,0px)) scale(1)}to{transform:translateY(var(--hero-shift,0px)) scale(1.08)}}
@media(max-width:820px){.hero-photo:before{animation-duration:24s}@keyframes hero-zoom{from{transform:translateY(var(--hero-shift,0px)) scale(1)}to{transform:translateY(var(--hero-shift,0px)) scale(1.04)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-copy>*{animation:none}.hero-photo:before{animation:none;transform:none;will-change:auto}.homehero .actions a{transition:none}.homehero .actions a:hover{transform:none}}

/* Consulting section: reveal each image, text block and point in sequence. */
.home-intro>.reveal{opacity:1;transform:none;transition:none}
.home-intro .collage.show>div{animation:collage-reveal 1s cubic-bezier(.2,.7,.2,1) both}
.home-intro .collage.show>.im2{animation-delay:.22s}
.home-intro>.show:not(.collage)>:not(.mini-points),.home-intro>.show .mini-points>div{animation:consulting-reveal .75s cubic-bezier(.2,.7,.2,1) both}
.home-intro>.show>.kicker{display:inline-block}
.home-intro>.show>h2{animation-delay:.12s}
.home-intro>.show>p{animation-delay:.24s}
.home-intro>.show .mini-points>div:nth-child(1){animation-delay:.36s}
.home-intro>.show .mini-points>div:nth-child(2){animation-delay:.46s}
.home-intro>.show .mini-points>div:nth-child(3){animation-delay:.56s}
.home-intro>.show .mini-points>div:nth-child(4){animation-delay:.66s}
.home-intro>.show>.pill{animation-delay:.78s}
.home-intro .mini-points>div{transition:translate .25s ease,box-shadow .25s ease,border-color .25s ease,background-color .25s ease}
@media(hover:hover){.home-intro .mini-points>div:hover{translate:0 -4px;border-color:#dfa942;background-color:#faf3e6;box-shadow:0 10px 24px #0b1e2c12}}
@keyframes collage-reveal{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:none}}
@keyframes consulting-reveal{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.home-intro .collage.show>div,.home-intro>.show:not(.collage)>:not(.mini-points),.home-intro>.show .mini-points>div{animation:none}.home-intro .mini-points>div{transition:none}.home-intro .mini-points>div:hover{translate:none}}

/* Ambient consulting glow and gentle image float. */
.home-intro{position:relative;isolation:isolate}
.home-intro:before{content:"";position:absolute;inset:8% 0;border-radius:40%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 28% 45%,#d5ad622b 0%,#e8ca9017 35%,transparent 68%);animation:consulting-glow 14s ease-in-out infinite alternate}
.home-intro .collage.show>.im1{animation:collage-reveal 1s cubic-bezier(.2,.7,.2,1) both,consulting-float 7s ease-in-out 1s infinite}
.home-intro .collage.show>.im2{animation:collage-reveal 1s cubic-bezier(.2,.7,.2,1) .22s both,consulting-float 8.5s ease-in-out 1.22s infinite reverse}
@keyframes consulting-glow{from{opacity:.55;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:translateY(12px) scale(1.02)}}
@keyframes consulting-float{0%,100%{translate:0 0}50%{translate:0 -9px}}
@media(max-width:820px){@keyframes consulting-float{0%,100%{translate:0 0}50%{translate:0 -5px}}}
@media(prefers-reduced-motion:reduce){.home-intro:before{animation:none}.home-intro .collage.show>.im1,.home-intro .collage.show>.im2{animation:none;translate:none}}

/* Subtle moving dots behind the services content. */
.services-overview{position:relative;isolation:isolate;overflow:hidden}
.services-overview:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#b58a4540 1px,transparent 1.5px);background-size:28px 28px;mask-image:linear-gradient(transparent,#000 18%,#000 82%,transparent);animation:service-dots 24s linear infinite}
@keyframes service-dots{from{background-position:0 0}to{background-position:28px 28px}}
@media(prefers-reduced-motion:reduce){.services-overview:before{animation:none}}

/* Service heading, staggered cards and hover details. */
.services-overview .section-head.reveal{opacity:1;transform:none;transition:none}
.services-overview .section-head.show>div,.services-overview .section-head.show>p{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.services-overview .section-head.show>p{animation-delay:.16s}
.services-overview .card{transition:translate .3s ease,box-shadow .3s ease,border-color .3s ease}
.services-overview .card.show{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.services-overview .card.show:nth-child(2){animation-delay:.15s}
.services-overview .card.show:nth-child(3){animation-delay:.3s}
.services-overview .pic{position:relative;overflow:hidden}
.services-overview .pic:before{content:"";position:absolute;inset:0;background:inherit;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.services-overview .service-arrow{display:inline-block;transition:transform .25s ease}
.services-overview .arrow:focus-visible{outline:2px solid #9c722f;outline-offset:5px;border-radius:2px}
.services-overview .card:focus-within{translate:0 -6px;box-shadow:0 18px 36px #0b1e2c15;border-color:#c69b51}
.services-overview .card:focus-within .pic:before{transform:scale(1.06)}
.services-overview .card:focus-within .service-arrow{transform:translateX(5px)}
@media(hover:hover){.services-overview .card:hover{translate:0 -6px;box-shadow:0 18px 36px #0b1e2c15;border-color:#c69b51}.services-overview .card:hover .pic:before{transform:scale(1.06)}.services-overview .card:hover .service-arrow{transform:translateX(5px)}}
@media(max-width:820px){.services-overview .card.show:nth-child(n){animation-delay:0s}}
@media(prefers-reduced-motion:reduce){.services-overview .section-head.show>div,.services-overview .section-head.show>p,.services-overview .card.show{animation:none}.services-overview .card,.services-overview .pic:before,.services-overview .service-arrow{transition:none}.services-overview .card:hover,.services-overview .card:focus-within{translate:none}.services-overview .card:hover .pic:before,.services-overview .card:focus-within .pic:before,.services-overview .card:hover .service-arrow,.services-overview .card:focus-within .service-arrow{transform:none}}

/* Readable captions across the strategy showcase. */
.showcase .small-images>div{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end}
.showcase .small-images>div:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,25,35,.94),rgba(6,25,35,.55) 52%,transparent);z-index:-1;pointer-events:none}
.show-caption{padding:26px;color:#fff}
.show-caption h3{font:700 clamp(21px,2.2vw,27px)/1.18 Manrope;margin:9px 0}
.showcase .show-caption p,.showcase .big-image .caption p{color:#e0e7e9;line-height:1.5;margin:8px 0 0}
@media(max-width:480px){.show-caption{padding:22px}}

/* Showcase panels reveal independently, including on mobile. */
.showcase .big-image,.showcase .small-images>div{isolation:isolate;overflow:hidden;--panel-delay:0s;transition:none}
.showcase .small-images>.one{--panel-delay:.16s}
.showcase .small-images>.twoimg{--panel-delay:.32s}
.showcase .big-image.show,.showcase .small-images>.show{animation:collage-reveal .9s cubic-bezier(.2,.7,.2,1) var(--panel-delay) both}
.showcase .show>.caption,.showcase .show>.show-caption{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) calc(var(--panel-delay) + .3s) both}
.showcase .big-image:after,.showcase .small-images>div:after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:inherit;border-radius:inherit;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
@media(hover:hover){.showcase .big-image:hover:after,.showcase .small-images>div:hover:after{transform:scale(1.055)}}
@media(max-width:820px){.showcase .small-images>.one,.showcase .small-images>.twoimg{--panel-delay:0s}}
@media(prefers-reduced-motion:reduce){.showcase .big-image.show,.showcase .small-images>.show,.showcase .show>.caption,.showcase .show>.show-caption{animation:none}.showcase .big-image:after,.showcase .small-images>div:after{transition:none}.showcase .big-image:hover:after,.showcase .small-images>div:hover:after{transform:none}}

/* Soft drifting gold light behind the process content. */
.progress-section{position:relative;isolation:isolate;overflow:hidden;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='grain' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='.065'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23grain)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px 180px}
.progress-section:before,.progress-section:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 8% 25%,#d5b36e26,transparent 55%);animation:progress-glow 18s ease-in-out infinite alternate}
.progress-section:after{background:radial-gradient(ellipse at 92% 80%,#d5b36e1f,transparent 50%);animation-duration:23s;animation-direction:alternate-reverse}
@keyframes progress-glow{from{opacity:.45;transform:translateY(-16px) scale(1)}to{opacity:1;transform:translateY(16px) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.progress-section:before,.progress-section:after{animation:none}}

/* Five-step process: sequential reveal and connecting gold line. */
.progress-section .progress-heading,.progress-section .steps{opacity:1;transform:none;transition:none}
.progress-heading.show>*{animation:consulting-reveal .8s ease both}
.progress-heading>.kicker{display:inline-block}
.progress-heading.show>h2{animation-delay:.12s}
.progress-heading.show>p{animation-delay:.24s}
.progress-section .steps>div{position:relative;--step-delay:0s}
.progress-section .steps>div:nth-child(2){--step-delay:.2s}
.progress-section .steps>div:nth-child(3){--step-delay:.4s}
.progress-section .steps>div:nth-child(4){--step-delay:.6s}
.progress-section .steps>div:nth-child(5){--step-delay:.8s}
.progress-section .steps.show>div>*{animation:consulting-reveal .65s ease var(--step-delay) both}
.progress-section .steps>div:not(:last-child):before{content:"";position:absolute;left:27px;top:27px;width:calc(100% + 18px);height:2px;background:linear-gradient(90deg,#d5b36e,#d5b36e66);transform-origin:left;pointer-events:none}
.progress-section .steps.show>div:not(:last-child):before{animation:progress-line .6s ease calc(var(--step-delay) + .25s) both}
.progress-section .steps i{position:relative;z-index:1;transition:box-shadow .3s ease,translate .3s ease}
@keyframes progress-line{from{scale:0 1}to{scale:1 1}}
@media(hover:hover){.progress-section .steps>div:hover i{translate:0 -3px;box-shadow:0 0 0 6px #d5b36e15,0 0 25px #d5b36e55}}
@media(max-width:820px){.progress-section .steps{grid-template-columns:1fr;gap:24px}.progress-section .steps>div{display:grid;grid-template-columns:55px 1fr;column-gap:18px;row-gap:4px}.progress-section .steps i{grid-row:1 / 3}.progress-section .steps b{align-self:end}.progress-section .steps>div:not(:last-child):before{width:2px;height:calc(100% + 24px);transform-origin:top}.progress-section .steps.show>div:not(:last-child):before{animation-name:progress-line-vertical}@keyframes progress-line-vertical{from{scale:1 0}to{scale:1 1}}}
@media(prefers-reduced-motion:reduce){.progress-heading.show>*,.progress-section .steps.show>div>*,.progress-section .steps.show>div:not(:last-child):before{animation:none}.progress-section .steps i{transition:none}.progress-section .steps>div:hover i{translate:none}}

/* Business perspectives: visual cards with no navigation. */
.insight-strip .insight-card{isolation:isolate;--insight-delay:0s;transition:none}
.insight-strip .ic2{--insight-delay:.16s}
.insight-strip .ic3{--insight-delay:.32s}
.insight-strip .insight-card.show{animation:collage-reveal .85s cubic-bezier(.2,.7,.2,1) var(--insight-delay) both}
.insight-strip .insight-card.show>small{animation:consulting-reveal .7s ease calc(var(--insight-delay) + .2s) both}
.insight-strip .insight-card.show>h3{animation:consulting-reveal .7s ease calc(var(--insight-delay) + .32s) both}
.insight-strip .insight-card:after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:inherit;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.insight-strip .insight-card:before{z-index:-1;pointer-events:none;background:linear-gradient(0deg,#061923,transparent 85%);opacity:.88;transition:opacity .5s ease}
@media(hover:hover){.insight-strip .insight-card:hover:after{transform:scale(1.06)}.insight-strip .insight-card:hover:before{opacity:1}}
@media(max-width:820px){.insight-strip .insight-card{--insight-delay:0s}}
@media(prefers-reduced-motion:reduce){.insight-strip .insight-card.show,.insight-strip .insight-card.show>small,.insight-strip .insight-card.show>h3{animation:none}.insight-strip .insight-card:before,.insight-strip .insight-card:after{transition:none}.insight-strip .insight-card:hover:after{transform:none}}

/* Closing call to action: slow photo zoom with a steady text overlay. */
.cta.cta-motion{position:relative;isolation:isolate;overflow:hidden;background:#061923;opacity:1;transform:none;transition:none}
.cta-motion:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:url("https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=1800&q=85") center/cover;transform-origin:center}
.cta-motion:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.65))}
.cta-motion.show:before{animation:cta-photo-zoom 24s ease-out both}
@keyframes cta-photo-zoom{from{transform:scale(1)}to{transform:scale(1.12)}}
@media(max-width:820px){.cta-motion.show:before{animation-name:cta-photo-zoom-mobile}@keyframes cta-photo-zoom-mobile{from{transform:scale(1)}to{transform:scale(1.06)}}}
@media(prefers-reduced-motion:reduce){.cta-motion.show:before{animation:none}}

/* Closing contact button interaction. */
.cta-motion .pill{align-items:center;gap:9px;transition:transform .25s ease,box-shadow .3s ease,background-color .3s ease}
.cta-motion .cta-arrow{display:inline-block;transition:transform .25s ease}
.cta-motion .pill:focus-visible{outline:2px solid #dfbc7b;outline-offset:5px;box-shadow:0 8px 28px #dfbc7b45}
@media(hover:hover){.cta-motion .pill:hover{transform:translateY(-3px);background:#fff0cf;box-shadow:0 10px 30px #dfbc7b45}.cta-motion .pill:hover .cta-arrow{transform:translateX(4px)}}
.cta-motion .pill:active{transform:translateY(0) scale(.98)}
@media(prefers-reduced-motion:reduce){.cta-motion .pill,.cta-motion .cta-arrow{transition:none}.cta-motion .pill:hover,.cta-motion .pill:active,.cta-motion .pill:hover .cta-arrow{transform:none}}

/* Periodic, gentle pulse on the header contact button. */
.nav>.pill{animation:nav-contact-pulse 5s ease-in-out infinite}
@keyframes nav-contact-pulse{0%,55%,100%{transform:scale(1)}78%{transform:scale(1.04)}}
.nav>.pill:hover,.nav>.pill:focus-visible{animation:none;box-shadow:0 0 20px #dfbc7b40}
.nav>.pill:focus-visible{outline:2px solid #dfbc7b;outline-offset:5px}
@media(prefers-reduced-motion:reduce){.nav>.pill{animation:none}}

/* About page shares the homepage timing, gold palette and motion preferences. */
.about-page .reveal:not(.cta-motion){transition:none}
.about-page .reveal.show:not(.cta-motion){animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.about-page .aboutbg{position:relative;isolation:isolate;overflow:hidden;background:#092633}
.about-page .aboutbg:before{content:"";position:absolute;inset:0;z-index:-2;background:url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=1800&q=85") center/cover;animation:cta-photo-zoom 24s ease-out both}
.about-page .aboutbg:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#061923 30%,rgba(6,25,35,.35))}
.about-page .about-hero-copy.reveal{opacity:1;transform:none;animation:none}
.about-hero-copy.show>*{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.about-hero-copy.show>.kicker{display:inline-block}
.about-hero-copy.show>h1{animation-delay:.15s}
.about-hero-copy.show>p{animation-delay:.3s}
.about-page .values>article,.about-page .quote{transition:translate .3s ease,box-shadow .3s ease,border-color .3s ease}
.about-page .values>article.show:nth-child(2),.about-page .quote.show:nth-child(2){animation-delay:.16s}
.about-page .values>article.show:nth-child(3),.about-page .quote.show:nth-child(3){animation-delay:.32s}
@media(hover:hover){.about-page .values>article:hover,.about-page .quote:hover{translate:0 -5px;box-shadow:0 18px 36px #0b1e2c15;border-color:#c69b51}}
.about-page .leader.show{animation:collage-reveal 1s cubic-bezier(.2,.7,.2,1) both}
.about-page .about-glow{position:relative;isolation:isolate;overflow:hidden}
.about-glow:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 25% 50%,#d5ad622b,transparent 65%);animation:consulting-glow 14s ease-in-out infinite alternate}
@media(max-width:820px){.about-page .aboutbg:before{animation-name:cta-photo-zoom-mobile}.about-page .values>article.show:nth-child(n),.about-page .quote.show:nth-child(n){animation-delay:0s}}
@media(prefers-reduced-motion:reduce){.about-page .reveal.show:not(.cta-motion),.about-hero-copy.show>*,.about-page .aboutbg:before,.about-glow:before{animation:none}.about-page .values>article,.about-page .quote{transition:none}.about-page .values>article:hover,.about-page .quote:hover{translate:none}}

/* Services page uses the same reveal timing and gold accents. */
.services-page .servicebg{position:relative;isolation:isolate;overflow:hidden;background:#092633}
.services-page .servicebg:before{content:"";position:absolute;inset:0;z-index:-2;background:url("https://images.unsplash.com/photo-1556761175-5973dc0f32e7?auto=format&fit=crop&w=1800&q=85") center/cover;animation:cta-photo-zoom 24s ease-out both}
.services-page .servicebg:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#061923 15%,rgba(6,25,35,.7) 55%,rgba(6,25,35,.3))}
.services-page .service-hero-copy{opacity:1;transform:none;transition:none}
.service-hero-copy.show>*{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.service-hero-copy>.kicker{display:inline-block}
.service-hero-copy.show>h1{animation-delay:.15s}
.service-hero-copy.show>p{animation-delay:.3s}
.services-page .service-list>article{--service-delay:0s;transition:translate .3s ease,background-color .3s ease,border-color .3s ease}
.services-page .service-list>article.show{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.services-page .service-list>article.show:nth-child(2){--service-delay:.16s;animation-delay:.16s}
.services-page .service-list>article.show:nth-child(3){--service-delay:.32s;animation-delay:.32s}
.services-page .service-list>article.show h3{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) calc(var(--service-delay) + .12s) both}
.services-page .service-list>article.show p{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) calc(var(--service-delay) + .24s) both}
.services-page .cta-motion>.shell.reveal{opacity:1;transform:none;transition:none}
.services-page .cta-motion>.shell.show>h2,.services-page .cta-motion>.shell.show>p{animation:consulting-reveal .8s cubic-bezier(.2,.7,.2,1) both}
.services-page .cta-motion>.shell.show>p{animation-delay:.15s}
.services-page .cta-motion>.shell.show>.pill{animation:service-button-reveal .8s ease .3s both}
@keyframes service-button-reveal{from{opacity:0}to{opacity:1}}
@media(hover:hover){.services-page .service-list>article:hover{translate:0 -3px;background-color:#f3efe7;border-color:#c69b51}}
@media(max-width:820px){.services-page .servicebg:before{animation-name:cta-photo-zoom-mobile}.services-page .service-list>article.show:nth-child(n){--service-delay:0s;animation-delay:0s}}
@media(max-width:480px){.services-page .service-list>article{grid-template-columns:44px 1fr;gap:14px}}
@media(prefers-reduced-motion:reduce){.services-page .servicebg:before,.service-hero-copy.show>*,.services-page .service-list>article.show,.services-page .service-list>article.show h3,.services-page .service-list>article.show p,.services-page .cta-motion>.shell.show>h2,.services-page .cta-motion>.shell.show>p,.services-page .cta-motion>.shell.show>.pill{animation:none}.services-page .service-list>article{transition:none}.services-page .service-list>article:hover{translate:none}}

/* Blog articles share the navy, cream and gold visual language. */
.blog-item h3 a{color:inherit;text-decoration:none}
.blog-item h3 a:hover{color:#9c722f}
.blog-item a:focus-visible,.article-page main a:focus-visible{outline:2px solid #c69b51;outline-offset:5px}
.article-hero{padding:64px 0;min-height:440px}
.article-hero h1{font-size:clamp(40px,5.5vw,68px);max-width:950px;overflow-wrap:break-word}
.article-hero .kicker{display:block;margin-top:30px}
.article-back{color:#f2e4c4;text-decoration:none;font-size:14px}
.article-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(230px,1fr);gap:70px;align-items:start}
.article-body{max-width:760px}
.article-body>section{scroll-margin-top:30px;margin-bottom:40px}
.article-body h2{font-size:clamp(26px,3vw,35px);line-height:1.2;letter-spacing:-1px}
.article-body p{font-size:18px;line-height:1.85}
.article-takeaway{padding:26px 30px;margin:40px 0;background:#f3efe7;border-left:3px solid #c69b51;border-radius:0 12px 12px 0}
.article-takeaway p{margin-bottom:0;color:#092633}
.article-sidebar{position:sticky;top:28px}
.article-sidebar nav{display:flex;flex-direction:column;gap:18px;padding:26px;border:1px solid #e8e3d9;border-radius:12px;background:#fff}
.article-sidebar nav a{color:#42525a;text-decoration:none;line-height:1.5}
.article-sidebar nav a:hover{color:#9c722f}
.article-help{padding:26px;background:#f3efe7;border-radius:12px;margin-top:20px}
.article-help h3{font:700 23px/1.3 Manrope;margin:0}
.related-posts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.related-post{display:block;padding:30px;background:#fff;border:1px solid #e8e3d9;border-radius:12px;text-decoration:none;color:#092633;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.related-post h3{font:700 25px/1.3 Manrope}
@media(hover:hover){.related-post:hover{transform:translateY(-4px);box-shadow:0 14px 30px #0b1e2c12;border-color:#c69b51}}
@media(max-width:820px){.article-layout{grid-template-columns:1fr;gap:40px}.article-sidebar{position:static}.related-posts{grid-template-columns:1fr}.article-hero{min-height:380px}.article-body p{font-size:17px}}
@media(prefers-reduced-motion:reduce){.related-post{transition:none}.related-post:hover{transform:none}}

/* Contact portrait replaces the enquiry form. */
.contact-portrait{position:relative;margin:0;align-self:start;overflow:hidden;border-radius:14px;background:#092633}
.contact-portrait img{display:block;width:100%;height:auto}
.contact-portrait:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(6,25,35,.9));pointer-events:none}
.contact-portrait figcaption{position:absolute;left:28px;right:28px;bottom:28px;z-index:1;display:flex;flex-direction:column;gap:5px;color:#fff}
.contact-portrait strong{font:700 clamp(24px,3vw,32px)/1.2 Manrope}
.contact-portrait small{color:#e0c58d;font-size:10px;letter-spacing:1.5px}
.contact-portrait figcaption>span{font-size:14px}
@media(max-width:480px){.contact-portrait figcaption{left:20px;right:20px;bottom:20px}}

/* Homepage office details above the footer. */
.office-contact{padding:64px 0;background:#f3efe7;border-bottom:1px solid #e1d9ca}
.office-contact-grid{display:grid;grid-template-columns:1.45fr 1.15fr .95fr 1.15fr;gap:28px;align-items:center}
.office-intro .kicker{display:flex;align-items:center;gap:12px}
.office-intro .kicker:before{content:"";width:32px;height:2px;background:#c69b51}
.office-intro h2{font-size:clamp(30px,3vw,40px);letter-spacing:-1.5px;margin:16px 0}
.office-intro p{font-size:15px;line-height:1.75;color:#616c73;margin:0;max-width:340px}
.office-detail{display:flex;align-items:flex-start;gap:14px;min-width:0}
.office-detail>div{min-width:0}
.office-icon{display:grid;place-items:center;width:42px;height:46px;flex-shrink:0;color:#9c722f}
.office-icon svg{width:34px;height:34px}
.office-detail h3{font:700 21px/1.3 Manrope;margin:5px 0 12px;color:#092633}
.office-detail address,.office-detail a{font-size:15px;font-style:normal;line-height:1.75;color:#566168;text-decoration:none;overflow-wrap:anywhere}
.office-detail a:hover{color:#9c722f;text-decoration:underline;text-underline-offset:4px}
.office-detail a:focus-visible{outline:2px solid #c69b51;outline-offset:5px;border-radius:2px}
@media(max-width:1100px){.office-contact-grid{grid-template-columns:1fr 1fr;gap:36px 40px}}
@media(max-width:600px){.office-contact{padding:48px 0}.office-contact-grid{grid-template-columns:1fr;gap:28px}.office-intro p{max-width:none}.office-detail h3{margin-bottom:6px}}

/* Full-width navy copyright strip with content aligned to the page shell. */
footer .copy{width:100%;max-width:none;margin:0;padding:24px max(22px,calc((100% - 1180px)/2));background:#061923;color:#f2e4c4;border-top:1px solid #9c722f66;line-height:1.6}

/* Rich homepage upgrade */
.hero-photo{position:relative;border-bottom-left-radius:80px;overflow:hidden}

.home-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.collage{position:relative;min-height:520px}.collage .im1,.collage .im2{position:absolute;background-size:cover;background-position:center;border-radius:14px;box-shadow:0 18px 45px #0b1e2c1c}.collage .im1{inset:0 16% 14% 0;background-image:url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=900&q=85")}.collage .im2{width:64%;height:52%;right:0;bottom:0;z-index:1;background-image:url("https://images.unsplash.com/photo-1552664730-d307ca884978?auto=format&fit=crop&w=700&q=85");border:7px solid #fbfaf7}.mini-points{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.mini-points div{padding:16px;border-left:2px solid #c69b51;background:#f3efe7}.mini-points b{display:block;font-family:Manrope}.showcase{background:#efece5}.show-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.big-image,.small-images div{border-radius:14px;background-size:cover;background-position:center}.big-image{min-height:540px;background-image:linear-gradient(0deg,#071c2980,transparent),url("https://images.unsplash.com/photo-1497366216548-37526070297c?auto=format&fit=crop&w=1100&q=85");position:relative}.big-image .caption{position:absolute;left:32px;bottom:30px;color:white;max-width:430px}.big-image h3{font:700 31px Manrope;margin:8px 0}.small-images{display:grid;grid-template-rows:1fr 1fr;gap:20px}.small-images .one{background-image:url("https://images.unsplash.com/photo-1551288049-bebda4e38f71?auto=format&fit=crop&w=900&q=85")}.small-images .twoimg{background-image:url("https://images.unsplash.com/photo-1522071820081-009f0129c71c?auto=format&fit=crop&w=900&q=85")}.insight-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.insight-card{min-height:310px;border-radius:13px;padding:28px;display:flex;flex-direction:column;justify-content:end;color:white;background-size:cover;background-position:center;position:relative;overflow:hidden}.insight-card:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#061923e8,transparent 80%)}.insight-card>*{position:relative}.insight-card h3{font:700 24px Manrope;margin:7px 0}.ic1{background-image:url("https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=800&q=85")}.ic2{background-image:url("https://images.unsplash.com/photo-1460925895917-afdab827c52f?auto=format&fit=crop&w=800&q=85")}.ic3{background-image:url("https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=800&q=85")}
@media(max-width:820px){.home-intro,.show-grid{grid-template-columns:1fr}.collage{min-height:420px}.insight-strip{grid-template-columns:1fr}.big-image{min-height:420px}.small-images div{min-height:260px}.small-images{grid-template-rows:auto}}
