/* Cinematic art direction across every DataBoss route. */
:root{--ink:#f0eee8;--muted:#acb5b8;--line:#ffffff24;--paper:#101a20;--green:#dbc49a;--mint:#ddc499;--gold:#ddc499;--scene-y:0px}
body{background:#070d12;color:var(--ink)}body:after{content:'';position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.7' filter='url(%23n)'/%3E%3C/svg%3E")}
::selection{background:#ddc499;color:#070d12}.site-header,.home-page .site-header.scrolled{background:#070d12e8;backdrop-filter:blur(20px)}.home-page .site-header{background:linear-gradient(#070d12b0,transparent);border:0}.header-row{height:94px}.progress-line{background:var(--gold);box-shadow:0 0 16px #ddc49988}
.premium-hero{min-height:850px;max-height:none;height:100svh;overflow:hidden;background:#070d12}.hero-image{inset:-7%;animation:cinemaDrift 24s ease-in-out infinite alternate;background-position:60% center;filter:saturate(.5) contrast(1.12)}.hero-image:after{background:linear-gradient(90deg,#02070dea 0%,#07111aa0 45%,#07111a20 100%),linear-gradient(0deg,#070d12 0%,transparent 45%,#070d1260 100%)}.premium-hero:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 80% 25%,#cf9f592b,transparent 45%);box-shadow:inset 0 35px 80px #0008,inset 0 -35px 80px #0008}.hero-grid{opacity:.3}.premium-hero h1{font-size:clamp(5rem,10vw,10.5rem);text-shadow:0 8px 40px #0005}.hero-line>span,.hero-line>em{animation-duration:1.8s}.premium-hero .wrap{padding-top:180px}.hero-bottom{border-color:#ddc49935}.hero-side-note{border-color:#ddc49980}.hero-enter{animation-duration:1.7s}.eyebrow{color:var(--gold)}
.section,.purpose-section,.expertise-section,.partner-marquee-section{background:#0b1319}.section:nth-of-type(even){background:radial-gradient(ellipse at 90% 0%,#1b2b3270,transparent 65%),#0e181f}.section{padding:145px 0}.section-kicker,.premium-facts,.expertise-item,.expertise-item:last-child{border-color:var(--line)}.purpose-layout .lead-copy,.fact-statement em,h2 em{color:var(--gold)}.purpose-layout p,.section-head>p,.fact-statement,.premium-facts span,.expertise-body p{color:var(--muted)}.text-link,.industry-open,.service-card h3,.sector-card h2{color:var(--ink)}.expertise-item summary h3{color:#f0eee8}.expertise-item summary:hover h3{color:var(--gold)}.expertise-item summary:after{color:var(--gold)}.expertise-body h4{color:#e5d2af}.expertise-visual{height:620px;box-shadow:0 25px 65px #0006}.expertise-visual img,.philosophy-image img{filter:saturate(.45) contrast(1.13)}
.premium-industry-card,.premium-industry-card:last-child,.value-card,.commitment-grid>article,.sector-card,.investment-card,.career-card,.related-panel{background:linear-gradient(145deg,#18252b,#0a141b);border-color:#ddc49926;color:var(--ink);transition:transform .7s var(--ease),background .7s,border-color .7s,box-shadow .7s}.premium-industry-card:hover,.investment-card:hover,.career-card:hover{background:linear-gradient(145deg,#253138,#111c24);border-color:#ddc49980;transform:translateY(-7px);box-shadow:0 22px 50px #0005}.premium-industry-card p,.investment-card p,.sector-card p,.value-card p,.commitment-grid p,.career-card p{color:var(--muted)}.card-top,.industry-open,.premium-industry-card .card-category,.investment-card .sector{color:var(--gold)}.premium-industry-card h3{color:var(--ink)}.partner-marquee-section{border-block:1px solid #ffffff15}.marquee-set>span{color:#c5b28f}.portfolio-section,.premium-portfolio{background:#050b10!important}.portfolio-feature{border-color:#ffffff25}.home-team-card,.team-card{color:var(--ink)}.portrait{box-shadow:0 20px 60px #0006}.portrait img{filter:grayscale(1) contrast(1.15);transition:filter 1.2s,transform 1.6s var(--ease)}.home-team-card:hover img,.team-card:hover img{filter:grayscale(.2) contrast(1.05);transform:scale(1.045)}.team-caption h3,.team-card h3{color:var(--ink)}.team-caption>span,.team-card .role{color:var(--gold)}
.page-hero{min-height:70svh;display:flex;align-items:center;position:relative;overflow:hidden;isolation:isolate;background:#070d12;padding:100px 0 115px}.page-hero:before{content:'';position:absolute;inset:-8%;z-index:-2;background:linear-gradient(90deg,#070d12f2,#070d1290),url('/assets/architecture.png') 65% center/cover;animation:cinemaDrift 28s ease-in-out infinite alternate;filter:saturate(.45)}.page-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 90% 20%,#c79e5626,transparent 55%),linear-gradient(0deg,#070d12,transparent 40%)}.page-hero h1{max-width:1100px;color:#f4efe5;font-size:clamp(4rem,8vw,8.4rem);text-shadow:0 10px 45px #0006}.page-hero p{color:#c5cdd0;max-width:650px;line-height:1.9}.page-hero .eyebrow{color:var(--gold)}.split p,.content-prose p,.profile p,.contact-block p{color:var(--muted)}.content-prose h2,.related-panel h3,.profile h1{color:var(--ink)}.service-card{border-color:var(--line)}.service-card p{color:var(--muted)}.news-card{background:transparent;border-color:var(--line);color:var(--ink)}.news-card h3 a{color:#f0eee8}.news-card p{color:var(--muted)}.news-meta{color:var(--gold)}.filter-bar,.enquiry-form{background:#142027;border-color:#ffffff26;color:var(--ink)}.filter-bar input,.filter-bar select,.enquiry-form input,.enquiry-form select,.enquiry-form textarea{background:#09131a;color:#f0eee8;border-color:#ffffff35}.enquiry-form label,.filter-bar label,.enquiry-form h3{color:#f0eee8}.btn,.btn.outline-dark{background:var(--gold);border-color:var(--gold);color:#08121a}.btn:hover,.btn.outline-dark:hover{background:#f1ddbb;color:#08121a;border-color:#f1ddbb}.logo-partner{background:#fff;border-radius:2px}.logo-partner span{color:#172a32}.premium-cta,.cta-band{background:radial-gradient(ellipse at 50% 80%,#36404755,transparent 65%),#070e14;color:#f0eee8;position:relative}.premium-cta h2{font-size:clamp(4rem,9vw,10rem)}.site-footer{background:#050b10;border-top:1px solid #ffffff20}.brand-intro{background:radial-gradient(ellipse at center,#23303b,#050a10 65%)}.intro-lockup{filter:drop-shadow(0 0 45px #ddc49944)}.page-transition{background:#050a10}.motion-ready [data-reveal='up']{filter:blur(5px);transform:translateY(50px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease),filter 1.2s var(--ease);transition-delay:var(--delay,0ms)}.motion-ready [data-reveal].in-view{filter:blur(0);transform:none}.motion-ready [data-reveal='image']{transition-duration:1.6s}
@keyframes cinemaDrift{from{transform:translate3d(0,0,0) scale(1.015)}to{transform:translate3d(-1.5%,1%,0) scale(1.09)}}
.motion-off .hero-image,.motion-off .page-hero:before{animation:none!important}.motion-off [data-reveal]{filter:none!important}
@media(max-width:850px){.section{padding:95px 0}.premium-hero h1{font-size:clamp(4.5rem,12vw,7rem)}.expertise-visual{height:450px}.page-hero{min-height:60svh}.page-hero h1{font-size:clamp(3.4rem,9vw,6rem)}}
@media(max-width:550px){.header-row{height:74px}.premium-hero{min-height:740px;height:100svh}.premium-hero .wrap{padding-top:145px;padding-bottom:130px}.premium-hero h1{font-size:clamp(3.8rem,14vw,5.5rem)}.hero-image{background-position:62% center}.section{padding:80px 0}.page-hero{min-height:560px;padding:80px 0}.page-hero h1{font-size:3.8rem}.expertise-visual{height:340px}.premium-cta h2{font-size:4.2rem}.premium-industry-card:hover,.investment-card:hover,.career-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.hero-image,.page-hero:before{animation:none!important}.motion-ready [data-reveal]{filter:none!important;transform:none!important}}
/* Preserve the original supplied logo artwork and colors everywhere. */
.brand img,.intro-lockup img{filter:none!important;object-fit:contain;height:auto;aspect-ratio:319/308}
.intro-lockup{filter:none}

/* Five-second opening: reveal, hold, then fade out. */
.intro-active .brand-intro{animation:introOut .8s var(--ease) 4.2s both}
.intro-lockup img{animation-duration:1.2s}
.intro-wordmark span{animation-duration:1.2s;animation-delay:calc(var(--letter)*.085s)}
.intro-line:after{animation-duration:4.2s}
