@font-face{font-family:Outfit;src:url('/assets/fonts/outfit.ttf') format('truetype');font-weight:100 900;font-display:swap}:root{--font-body:Outfit,Arial,sans-serif;--font-display:Outfit,Arial,sans-serif;--space-section:64px}body{font-weight:400;font-size:17px}h1,h2,h3,h4{font-weight:600!important;letter-spacing:-.025em!important}p{line-height:1.7}.section{padding:64px 0!important}.section-head{margin-bottom:28px!important}.section-head h2{font-size:clamp(30px,3.4vw,48px)!important;max-width:850px;line-height:1.12}.section-head .eyebrow{margin-bottom:14px}.page-hero{padding:138px 0 52px!important}.page-hero h1{font-size:clamp(38px,4.5vw,64px)!important;line-height:1.08}.page-hero p{margin-top:20px}.page-hero-visual img{max-height:310px;border-radius:14px}.page-hero-grid{gap:48px}.image-banner{min-height:690px}.banner-copy h1{font-weight:600!important;letter-spacing:-.035em!important}.ambition-hero{padding-top:64px}.ambition-grid{gap:48px}.ambition-copy h2{font-size:52px}.cards3,.benefits-grid,.coverage-grid{gap:18px}.benefit-card{padding:24px;border-radius:12px;box-shadow:0 8px 24px #00000005;transition:transform .3s,box-shadow .3s}.benefit-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px #00000010}.benefit-card p{font-size:15px;color:#555}.benefit-icon{border-radius:14px;margin-bottom:18px}.benefit-card h3{font-size:21px}.benefit-card .eyebrow{font-weight:600}
.story-panel{padding:52px 0!important}.story-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:52px;align-items:center}.story-copy h2{font-size:clamp(32px,3.5vw,50px);line-height:1.12;margin:16px 0 24px;max-width:650px}.story-copy .prose{max-width:none;font-size:17px}.story-copy .prose p{margin:0 0 18px;color:#555}.story-panel:not(.light) .story-copy .prose p{color:#bbb}.story-panel .eyebrow{font-size:11px;letter-spacing:.12em}.story-visual{position:relative;margin:0;min-width:0}.story-visual img{width:100%;aspect-ratio:1.35;object-fit:cover;border-radius:16px;display:block}.story-visual:after{content:'';position:absolute;left:-12px;bottom:-12px;width:80px;height:80px;border-left:3px solid #c81920;border-bottom:3px solid #c81920;border-radius:0 0 0 18px;pointer-events:none}.story-copy .btn{margin-top:10px}.story-support{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.story-support a{border:1px solid #8885;padding:10px 13px;font-size:13px;border-radius:5px;min-height:44px;display:flex;align-items:center;gap:12px}.story-support a:hover{background:#c81920;color:#fff;border-color:#c81920}
.footer-v3-directory{align-items:stretch;gap:28px}.footer-v3-directory>div{display:flex;flex-direction:column;min-height:440px}.footer-v3-directory h3{margin-bottom:14px}.footer-v3-directory .footer-v3-link{flex:1;min-height:32px!important;padding:5px 0;font-size:14px}.footer-v3-main{padding:44px 0;gap:50px}.footer-v3-brand>p{font-size:16px}.footer-v3-cta{padding:44px 0}.footer-v3-cta h2{font-size:clamp(34px,4vw,56px)}.footer-v3-statement{padding:28px 0}.footer-v3-footprint{padding:26px;border-radius:12px}.footer-v3-brand{position:relative}.footer-discipline-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.footer-discipline-grid span{padding:16px;border:1px solid #fff2;border-radius:8px;font-size:13px;color:#ccc}
#mega-industries .mega-item{min-height:44px;padding:9px 0;grid-template-columns:24px minmax(0,1fr) 16px}#mega-industries .mega-item small{display:none}#mega-industries .mega-item .menu-copy b{font-size:13px;line-height:1.4}#mega-industries .mega-columns h3{margin-bottom:12px}#mega-industries .menu-story-art{height:135px;margin-bottom:18px}#mega-industries .menu-story>h3{font-size:23px}#mega-industries .menu-story>p{font-size:13px;line-height:1.6;margin:14px 0}#mega-industries .mega-body{padding-bottom:24px}.mega{max-height:min(650px,calc(100svh - 88px));overflow:auto}.mega-top{padding-top:24px;padding-bottom:20px}.mega-top h2{font-size:32px}.mega-columns .mega-item{transition:background .2s,transform .2s}.mega-columns .mega-item:hover{transform:translateX(3px)}
.portfolio-showcase{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px}.portfolio-showcase .project{background:#f5f5f5;border:1px solid #ddd;border-radius:16px;overflow:hidden;transition:transform .4s,box-shadow .4s}.portfolio-showcase .project:hover{transform:translateY(-7px);box-shadow:0 18px 38px #0002}.portfolio-showcase .project-scene{min-height:310px;aspect-ratio:1.5;border:0;border-radius:0;overflow:hidden}.portfolio-showcase .project-meta{padding:24px!important;background:#fff;color:#111}.portfolio-showcase .project-meta h3{font-size:25px}.portfolio-showcase .project:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;align-items:center}.portfolio-showcase .project:last-child:nth-child(odd) .project-meta{height:100%;display:flex;flex-direction:column;justify-content:center}.work-ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.work-ledger-row{display:flex!important;flex-direction:column;border:1px solid #ddd;border-radius:16px;overflow:hidden;gap:0!important;background:#fff;margin:0!important;padding:0!important}.work-ledger-image{width:100%;min-width:0}.work-ledger-image .project-scene{min-height:310px;aspect-ratio:1.5;overflow:hidden}.work-ledger-copy{padding:28px}.work-ledger-copy h2{font-size:28px!important}.work-ledger-copy p{font-size:16px}.work-ledger-copy ul{font-size:14px;color:#555}.work-ledger-row:nth-child(even) .work-ledger-image{order:0!important}.work-ledger-link{margin-top:20px}.prose{font-size:17px;line-height:1.75}.detail-block{padding:36px 0!important}.detail-item{padding:24px}.editorial-toolbar{gap:36px}.journal-feature{gap:40px;margin-bottom:42px}.editorial-layout{gap:40px}.contact-v3-cards{margin-bottom:36px}.contact-v3-card{padding:28px;border-radius:14px}.contact-v3-card p{color:#333!important}.contact-v3-form{border-radius:16px}.project-planning{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:start}.project-planning aside{position:sticky;top:110px;padding:28px;background:#111;color:#fff;border-radius:16px}.project-planning aside h2{font-size:29px;line-height:1.2}.project-planning aside p{color:#bbb;font-size:15px}.project-planning aside ol{padding-left:20px;line-height:2;font-size:14px}.project-planning .contact-v3-form{width:100%;padding:36px}.contact-channel-note{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px;background:#f4f4f4;border-radius:12px;margin:32px 0}.contact-channel-note p{margin:0;color:#444}.contact-next{margin-top:48px}.contact-next .card{border-radius:12px;padding:26px}.contact-next h3{font-size:24px}
.v4-reveal{transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}.v4-motion .v4-reveal:not(.v4-visible){opacity:.2;transform:translateY(24px)}.v4-visible{opacity:1;transform:none}.story-visual img{transition:transform .7s}.story-visual:hover img{transform:scale(1.025)}.benefit-icon svg{transition:transform .4s}.benefit-card:hover .benefit-icon svg{transform:rotate(-8deg) scale(1.1)}.coverage-card{border-radius:12px;transition:transform .3s,box-shadow .3s}.coverage-card:hover{transform:translateY(-5px);box-shadow:0 12px 26px #0001}.btn:hover{transform:translateY(-2px)}
.site-preloader{position:fixed;inset:0;z-index:9999;background:#090909;color:#fff;display:grid;place-items:center;transition:opacity .45s,visibility .45s;animation:loader-failsafe 0s 5s forwards}.site-preloader.is-finished{opacity:0;visibility:hidden;pointer-events:none}.loader-inner{text-align:center;width:min(420px,80vw)}.loader-inner img{width:260px;max-width:100%;height:auto}.loader-orbit{width:80px;height:80px;border:1px solid #fff3;border-top:3px solid #c81920;border-radius:50%;margin:30px auto;animation:loader-orbit 1s linear infinite}.loader-inner p{font-size:12px;letter-spacing:.2em;color:#ccc}.loader-line{height:2px;background:#fff2;overflow:hidden}.loader-line i{height:100%;display:block;width:40%;background:#ed1c24;animation:loader-sweep 1.5s infinite ease-in-out}@keyframes loader-orbit{to{transform:rotate(360deg)}}@keyframes loader-sweep{from{transform:translateX(-100%)}to{transform:translateX(350%)}}@keyframes loader-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(max-width:1024px){.story-layout{gap:32px}.footer-v3-directory>div{min-height:440px}.work-ledger{gap:20px}.project-planning{grid-template-columns:240px minmax(0,1fr)}.project-planning .contact-v3-form{padding:26px}}
@media(max-width:768px){.section{padding:42px 0!important}.page-hero{padding:114px 0 36px!important}.page-hero h1{font-size:38px!important}.story-layout{grid-template-columns:1fr;gap:26px}.story-panel{padding:42px 0!important}.story-copy h2{font-size:34px}.story-visual img{aspect-ratio:1.6}.story-visual:after{left:0;bottom:0}.footer-v3-directory>div{min-height:0}.footer-v3-directory .footer-v3-link{min-height:44px!important}.portfolio-showcase,.work-ledger{grid-template-columns:1fr!important}.portfolio-showcase .project:last-child:nth-child(odd){grid-column:auto;display:block}.portfolio-showcase .project-scene,.work-ledger-image .project-scene{min-height:260px}.project-planning{grid-template-columns:1fr;gap:24px}.project-planning aside{position:static}.project-planning aside ol{display:none}.contact-channel-note{flex-direction:column;align-items:start}.footer-discipline-grid{max-width:350px}.ambition-copy h2{font-size:38px}.footer-v3-main{gap:32px}.footer-v3-directory{gap:20px}.benefit-card{padding:22px}.contact-v3-form{padding:24px}}
@media(prefers-reduced-motion:reduce){.v4-motion .v4-reveal:not(.v4-visible){opacity:1;transform:none}.v4-reveal,.story-visual img,.coverage-card,.benefit-card{transition:none}.loader-orbit,.loader-line i{animation:none}.site-preloader{transition:none}}

@media(min-width:1025px){#mega-industries,#mega-services{height:min(620px,calc(100svh - 88px));max-height:min(620px,calc(100svh - 88px))}#mega-services .menu-story-art{height:140px;margin-bottom:18px}#mega-services .menu-story>h3{font-size:23px}#mega-services .menu-story>p{font-size:13px;line-height:1.6;margin:14px 0}}

@media(min-width:769px){.work-ledger-row:last-child:nth-child(odd){grid-column:1/-1;display:grid!important;grid-template-columns:1.1fr 1fr;align-items:center}}
.spacing-compact{padding-top:36px!important;padding-bottom:36px!important}.spacing-spacious{padding-top:80px!important;padding-bottom:80px!important}.story-panel.alignment-center .story-copy{text-align:center}.story-panel.alignment-right .story-copy{text-align:right}

.story-visual img{height:auto!important;aspect-ratio:1.35;max-height:420px;object-fit:cover}@media(max-width:768px){.story-visual img{aspect-ratio:1.6;max-height:320px}}

.process{display:flex!important;flex-wrap:wrap;gap:20px}.process .step{flex:1 1 230px;min-width:0;padding:24px}.process .step h3{font-size:22px}.stats{display:flex!important;gap:24px}.stats .metric{flex:1;min-width:0;padding:20px}.stats .metric strong{font-size:48px}@media(max-width:600px){.stats{flex-wrap:wrap}.stats .metric{flex-basis:40%;padding:16px}.stats .metric strong{font-size:36px}.process .step{flex-basis:100%}}

img{max-width:100%;height:auto}

.portfolio-showcase .project{display:block!important;grid-column:auto!important}.portfolio-showcase .project .project-scene{height:320px!important;min-height:0!important;aspect-ratio:auto!important}.portfolio-showcase .project-meta{height:auto!important;min-height:120px!important;display:flex!important;align-items:center}.portfolio-showcase .project-meta h3{font-size:25px!important}.portfolio-showcase .project-meta .project-scene{height:320px!important}@media(min-width:769px){.portfolio-showcase .project:last-child:nth-child(odd){grid-column:1/-1!important;display:grid!important;grid-template-columns:1.1fr 1fr}.portfolio-showcase .project:last-child:nth-child(odd) .project-meta{height:100%!important;min-height:320px!important}}

.corporate-page-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;align-items:start}.corporate-page-body>.prose{max-width:none}.corporate-page-body>.prose h2{font-size:30px;margin:30px 0 18px}.corporate-page-body>.prose h2:first-child{margin-top:0}.page-context{position:sticky;top:112px;border:1px solid #ddd;border-radius:14px;padding:24px;background:#f7f7f7;color:#111}.page-context .eyebrow{font-size:11px;color:#666}.page-context nav{display:grid;gap:0;margin:18px 0 28px}.page-context nav a{padding:10px 0;border-bottom:1px solid #ddd;font-size:14px;line-height:1.4;min-height:44px}.page-context h2{font-size:24px;line-height:1.15}.page-context p{font-size:14px;color:#555;line-height:1.7}.page-context .btn{font-size:12px;width:100%;margin:14px 0}.page-context>a{display:block;font-size:13px;padding:12px 0;border-bottom:1px solid #ddd;min-height:44px}.page-context nav a:hover{color:#c81920}.corporate-page-body .prose :is(h2,h3){scroll-margin-top:110px}@media(max-width:1024px){.corporate-page-body{grid-template-columns:minmax(0,1fr) 260px;gap:32px}}@media(max-width:768px){.corporate-page-body{grid-template-columns:1fr;gap:28px}.page-context{position:static;order:-1}.page-context nav{display:flex;flex-wrap:wrap;gap:8px}.page-context nav a{padding:10px 12px;border:1px solid #ddd;border-radius:6px}.page-context>div,.page-context>a{display:none}}

.stages>*{min-width:0;overflow-wrap:anywhere}.stages strong{overflow-wrap:anywhere}@media(max-width:480px){.stages strong{font-size:18px}}

/* Mobile navigation: separate title, description and arrow tracks. */
.mobile-panel a.mobile-nested-link{display:grid!important;grid-template-columns:minmax(0,1fr) 24px;gap:6px 12px;align-items:start;padding:16px 18px!important;border-bottom:1px solid #00000012}
.mobile-panel a.mobile-nested-link>span:first-child{display:block;grid-column:1;grid-row:1;min-width:0;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
.mobile-panel a.mobile-nested-link>small{display:block;grid-column:1;grid-row:2;padding:0;margin:0;font-size:12px;line-height:1.6;min-width:0}
.mobile-panel a.mobile-nested-link>.arrow{position:static;grid-column:2;grid-row:1 / span 2;margin:0;align-self:center;width:24px;height:24px}
.mobile-panel .mobile-group-label{padding-top:20px;margin:0;line-height:1.5}
.site-preloader{width:100%;height:100dvh;min-height:100vh;padding:24px;box-sizing:border-box}.loader-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;text-align:center}.loader-inner img{display:block;margin:0 auto;object-fit:contain}.loader-line{width:100%}
@media(max-width:768px){.footer-v3-legal{display:grid;grid-template-columns:1fr;gap:16px;padding:24px 0;align-items:start}.footer-v3-legal>span{display:block;width:100%;line-height:1.6}.footer-v3-legal nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;width:100%}.footer-v3-legal nav a{margin:0;min-height:44px;line-height:1.5}.footer-v3-legal>a{justify-self:start;min-height:44px}.footer-v3-statement{padding:24px 0;gap:20px}.footer-v3-statement p{line-height:1.7}}

.site-preloader .loader-inner{position:static}.site-preloader .loader-inner img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(260px,72vw);margin:0}.site-preloader .loader-orbit{position:absolute;left:50%;top:calc(50% + 65px);margin:0 0 0 -28px;width:56px;height:56px}.site-preloader .loader-inner p{position:absolute;top:calc(50% + 142px);left:0;width:100%;margin:0;font-size:10px}.site-preloader .loader-line{position:absolute;top:calc(50% + 180px);left:50%;transform:translateX(-50%);width:min(260px,72vw)}
