@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(../media/manrope-latin-400-normal.2xa18tgv2np2i.woff2)format("woff2"),url(../media/manrope-latin-400-normal.16uzrbq5-8z5v.woff)format("woff")}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(../media/manrope-latin-500-normal.23dhs730snm70.woff2)format("woff2"),url(../media/manrope-latin-500-normal.1uxcnzel4f8qj.woff)format("woff")}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(../media/manrope-latin-600-normal.2ybi4mo9-3upl.woff2)format("woff2"),url(../media/manrope-latin-600-normal.0d_nc7hu7m8km.woff)format("woff")}
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(../media/manrope-latin-700-normal.22dwiag9_pj68.woff2)format("woff2"),url(../media/manrope-latin-700-normal.2dopus2zh5ii9.woff)format("woff")}
@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(../media/space-grotesk-latin-400-normal.1c6pcavxma0qq.woff2)format("woff2"),url(../media/space-grotesk-latin-400-normal.1lv17ebb0doqy.woff)format("woff")}
@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(../media/space-grotesk-latin-500-normal.33jdofnh71adk.woff2)format("woff2"),url(../media/space-grotesk-latin-500-normal.22aucsocraley.woff)format("woff")}
@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(../media/space-grotesk-latin-600-normal.406z--bjzi1j-.woff2)format("woff2"),url(../media/space-grotesk-latin-600-normal.2n2gt4u-8z3ue.woff)format("woff")}
@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/jetbrains-mono-latin-400-normal.3crsbyy6lh6yf.woff2)format("woff2"),url(../media/jetbrains-mono-latin-400-normal.2-1gwgi1uvl-u.woff)format("woff")}
@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(../media/jetbrains-mono-latin-500-normal.2h52d08o60qht.woff2)format("woff2"),url(../media/jetbrains-mono-latin-500-normal.2uxjaecu1qvdf.woff)format("woff")}
:root{--night-950:#040914;--night-900:#07101f;--night-800:#0b1830;--night-700:#13254a;--night-line:#ffffff1a;--night-line-strong:#fff3;--night-text:#c3cee0;--night-muted:#8c9bb4;--navy-950:var(--night-950);--navy-900:var(--night-800);--navy:#132c55;--blue:#1d4ed8;--blue-700:#1739a6;--blue-50:#eef3ff;--signal:#4f86ff;--signal-soft:#8fb2ff;--cyan:#7fe3ff;--orange:#f3a11a;--orange-700:#b86f00;--orange-soft:#ffc867;--ink:#0a1428;--text:#283346;--muted:#5a6477;--faint:#8a93a3;--line:#e3e7ee;--line-strong:#c9d0db;--surface:#f5f7fa;--surface-2:#edf1f6;--white:#fff;--grid-line:#0a14280b;--heading:"Space Grotesk", "Segoe UI", Arial, sans-serif;--body:"Manrope", "Segoe UI", Arial, sans-serif;--mono:"JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--r-sm:3px;--r:4px;--r-lg:6px;--cut:14px;--shadow-sm:0 1px 0 #0a142808;--shadow:0 1px 0 #0a14280a, 0 18px 40px -18px #0a142833;--shadow-lg:0 30px 70px -20px #04091466;--header-h:72px;--gutter:clamp(20px, 4vw, 40px);--ease:cubic-bezier(.2, .8, .2, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--fast:.16s;--med:.32s}
*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 20px)}html[data-scroll-behavior=smooth]{scroll-behavior:smooth}body{font-family:var(--body);color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;counter-reset:section;font-size:1.0625rem;line-height:1.65;overflow-x:clip}img,svg,video{max-width:100%;display:block}img{height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}ul,ol{padding:0}h1,h2,h3,h4{font-family:var(--heading);color:var(--ink);letter-spacing:-.035em;text-wrap:balance;font-weight:500;line-height:1.08}h1{letter-spacing:-.045em;font-size:clamp(2.5rem,5.6vw,4.8rem);line-height:1}h2{font-size:clamp(2rem,3.6vw,3.1rem)}h3{letter-spacing:-.02em;font-size:1.22rem;font-weight:600;line-height:1.25}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:1px}.on-dark :focus-visible,.section-navy :focus-visible,.site-footer :focus-visible,.hero :focus-visible{outline-color:var(--orange-soft)}::selection{background:#4f86ff33}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:300;background:var(--ink);color:#fff;border-radius:var(--r-sm);font-family:var(--mono);padding:12px 18px;font-size:.85rem;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.container{width:100%;max-width:calc(1320px + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.container-narrow{max-width:calc(880px + var(--gutter) * 2)}.section{padding-block:clamp(72px,9vw,128px);position:relative}.section-tight{padding-block:clamp(48px,6vw,80px);position:relative}.section-surface{background:var(--surface)}.section-soft{background:var(--surface-2)}.grid{gap:clamp(16px,2vw,24px);display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.split-even{grid-template-columns:repeat(2,minmax(0,1fr))}.stack>*+*,.prose p+p{margin-top:16px}.lead{color:var(--text);font-size:clamp(1.1rem,1.45vw,1.28rem);line-height:1.6}.muted{color:var(--muted)}.mono{font-family:var(--mono);letter-spacing:0}.bp-grid,.page-hero,.section-navy,.site-footer,.cta-band{--grid-size:64px}.bp-grid:before,.page-hero:before,.section-navy:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:var(--grid-size) var(--grid-size);background-position:calc(50% + var(--grid-size) / 2) 0;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 70% 0,#000 30%,#0000 85%);mask-image:radial-gradient(120% 90% at 70% 0,#000 30%,#0000 85%)}.section-navy>.container,.page-hero>.container{z-index:1;position:relative}.section-navy,.on-dark{background:var(--night-900);color:var(--night-text);--grid-line:#ffffff0d}.section-navy h2,.section-navy h3,.on-dark h2,.on-dark h3{color:#fff}.section-navy{overflow:hidden}.section-navy:after{content:"";pointer-events:none;background:radial-gradient(closest-side,#4f86ff26,#0000);border-radius:50%;width:900px;height:900px;position:absolute;top:-420px;right:-300px}
.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--blue);align-items:center;gap:10px;margin-bottom:18px;font-size:.74rem;font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:var(--orange);flex-shrink:0;width:7px;height:7px}.section-head .eyebrow:before,.enquiry-intro .eyebrow:before{counter-increment:section;content:counter(section, decimal-leading-zero) " /";width:auto;height:auto;color:var(--faint);background:0 0}.section-navy .eyebrow,.on-dark .eyebrow,.hero .eyebrow,.cta-band .eyebrow{color:var(--signal-soft)}.section-navy .section-head .eyebrow:before,.on-dark .section-head .eyebrow:before{color:var(--night-muted)}.section-head{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px 48px;margin-bottom:clamp(36px,4.5vw,56px);padding-top:22px;display:grid}.section-navy .section-head,.on-dark .section-head{border-color:var(--night-line)}.section-head>div{max-width:780px}.section-head p:not(.eyebrow){color:var(--muted);max-width:620px;margin-top:16px;font-size:1.06rem}.section-navy .section-head p:not(.eyebrow){color:var(--night-muted)}.btn{border-radius:var(--r-sm);min-height:50px;font-family:var(--body);white-space:nowrap;isolation:isolate;transition:background var(--fast) var(--ease), color var(--fast) var(--ease), border-color var(--fast) var(--ease), transform var(--fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:12px;padding:13px 22px;font-size:.94rem;font-weight:700;line-height:1.2;display:inline-flex;position:relative;overflow:hidden}.btn svg{width:18px;height:18px;transition:transform var(--med) var(--ease-out);flex-shrink:0}.btn:hover svg{transform:translate(4px)}.btn:active{transform:translateY(1px)}.btn-primary:after,.btn-accent:after,.btn-light:after,.enquiry-submit:after{content:"";z-index:-1;transition:transform .6s var(--ease-out);background:linear-gradient(100deg,#0000 30%,#ffffff40 50%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.btn-primary:hover:after,.btn-accent:hover:after,.btn-light:hover:after,.enquiry-submit:hover:after{transform:translate(120%)}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:var(--blue)}.btn-accent{background:var(--orange);color:var(--night-950)}.btn-accent:hover{background:var(--orange-soft)}.btn-outline{border-color:var(--line-strong);color:var(--ink);background:#ffffffb3}.btn-outline:hover{border-color:var(--ink);background:#fff}.btn-light{color:var(--night-900);background:#fff}.btn-light:hover{background:#e8efff}.btn-ghost-light{border-color:var(--night-line-strong);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff08}.btn-ghost-light:hover{background:#ffffff14;border-color:#fff}.btn-sm{min-height:42px;padding:9px 16px;font-size:.88rem}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.link-arrow{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);align-items:center;gap:10px;font-size:.8rem;font-weight:500;display:inline-flex}.link-arrow svg{width:16px;height:16px;transition:transform var(--med) var(--ease-out)}.link-arrow:hover svg{transform:translate(4px)}.link-arrow:hover{color:var(--ink)}.section-navy .link-arrow,.on-dark .link-arrow{color:var(--signal-soft)}.section-navy .link-arrow:hover,.on-dark .link-arrow:hover{color:#fff}.text-link{color:var(--blue);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:700;display:inline-flex}.text-link svg{width:16px;height:16px}.inline-link{color:var(--blue);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.chip{border:1px solid var(--line);color:var(--ink);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;background:#fff;border-radius:2px;align-items:center;gap:6px;padding:5px 10px;font-size:.72rem;font-weight:500;line-height:1.35;display:inline-flex}.chip-dark{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#07101fcc;border-color:#ffffff26}.chip-warn{color:#7a4a00;background:#fff4df;border-color:#f3d39a}.path-card,.practice-card,.sector-card,.project-card,.feature,.contact-method,.person,.quote-card,.office-card,.checklist li,.process-steps li{isolation:isolate}.practice-card:before,.sector-card:before,.project-card:before,.feature:before,.contact-method:before,.path-card:before{content:"";z-index:-1;pointer-events:none;opacity:0;transition:opacity var(--med) var(--ease);background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%), #4f86ff17, transparent 65%);position:absolute;inset:0}.practice-card:hover:before,.sector-card:hover:before,.project-card:hover:before,.feature:hover:before,.contact-method:hover:before,.path-card:hover:before{opacity:1}.practice-card:after,.sector-card:after,.project-card:after,.feature:after,.path-card:after{--cm:var(--blue);--cl:14px;content:"";pointer-events:none;opacity:0;transition:opacity var(--fast) var(--ease), transform var(--med) var(--ease-out);background:linear-gradient(var(--cm), var(--cm)) left top / var(--cl) 1.5px, linear-gradient(var(--cm), var(--cm)) left top / 1.5px var(--cl), linear-gradient(var(--cm), var(--cm)) right top / var(--cl) 1.5px, linear-gradient(var(--cm), var(--cm)) right top / 1.5px var(--cl), linear-gradient(var(--cm), var(--cm)) left bottom / var(--cl) 1.5px, linear-gradient(var(--cm), var(--cm)) left bottom / 1.5px var(--cl), linear-gradient(var(--cm), var(--cm)) right bottom / var(--cl) 1.5px, linear-gradient(var(--cm), var(--cm)) right bottom / 1.5px var(--cl);background-repeat:no-repeat;position:absolute;inset:-7px;transform:scale(1.03)}.practice-card:hover:after,.sector-card:hover:after,.project-card:hover:after,.feature:hover:after,.path-card:hover:after,.path-card:focus-within:after,.practice-card:focus-within:after,.sector-card:focus-visible:after,.project-card:focus-within:after{opacity:1;transform:none}.stats{grid-template-columns:repeat(var(--cols,4), minmax(0, 1fr));border-block:1px solid var(--line);display:grid}.stat{border-left:1px solid var(--line);padding:clamp(22px,3vw,34px) clamp(16px,2vw,28px);position:relative}.stat:first-child{border-left:0;padding-left:0}.stat:before{content:"";background:var(--orange);width:28px;height:2px;position:absolute;top:-1px;left:0}.stat:not(:first-child):before{left:clamp(16px,2vw,28px)}.stat strong{font-family:var(--heading);color:var(--ink);letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(2.4rem,4.2vw,3.6rem);font-weight:400;line-height:1;display:block}.stat span{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-top:12px;font-size:.74rem;line-height:1.5;display:block}.section-navy .stats,.section-navy .stat{border-color:var(--night-line)}.section-navy .stat strong{color:#fff}.section-navy .stat span{color:var(--night-muted)}.practice-grid{background:var(--line);border:1px solid var(--line);counter-reset:practice;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.practice-card{min-height:290px;transition:background var(--med) var(--ease);counter-increment:practice;background:#fff;flex-direction:column;gap:14px;padding:30px 26px 26px;display:flex;position:relative}.section-surface .practice-card{background:var(--surface)}.practice-card:hover{z-index:1;background:#fff}.practice-card:focus-visible{outline-offset:-4px}.practice-card::marker{content:none}.practice-card>.practice-icon:after{content:counter(practice, decimal-leading-zero);font-family:var(--mono);color:var(--faint);letter-spacing:.08em;font-size:.72rem;position:absolute;top:50%;left:calc(100% + 14px);transform:translateY(-50%)}.practice-icon{border:1px solid var(--line-strong);width:46px;height:46px;color:var(--blue);transition:background var(--med), color var(--med), border-color var(--med);background:#fff;border-radius:2px;place-items:center;display:grid;position:relative}.practice-icon svg{stroke-width:1.4px;width:24px;height:24px}.practice-card:hover .practice-icon,.sector-card:hover .practice-icon{background:var(--ink);border-color:var(--ink);color:#fff}.practice-card h3{margin-top:14px;font-size:1.16rem}.practice-card p{color:var(--muted);font-size:.94rem;line-height:1.6}.practice-card .link-arrow{margin-top:auto}.practice-card-cta{color:var(--night-text);justify-content:space-between;overflow:hidden;background:var(--night-900)!important}.practice-card-cta:before{opacity:1!important;background:linear-gradient(#ffffff0d 1px,#0000 1px) 0 0/100% 32px,radial-gradient(360px at 100% 100%,#4f86ff40,#0000 70%)!important}.practice-card-cta h3{color:#fff;font-size:1.4rem}.practice-card-cta p{color:var(--night-muted)}.practice-card-cta .card-num,.practice-card-cta .link-arrow{color:var(--orange-soft)!important}.card-num{font-family:var(--mono);color:var(--muted);letter-spacing:.12em;font-size:.72rem;font-weight:500}.sector-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.sector-card{border:1px solid var(--line);border-radius:var(--r);transition:border-color var(--med) var(--ease), transform var(--med) var(--ease-out);background:#fff;flex-direction:column;display:flex;position:relative}.sector-card:hover{border-color:var(--line-strong);transform:translateY(-4px)}.sector-card:focus-visible{outline-offset:6px}.sector-card-body{flex-direction:column;flex:1;gap:12px;padding:26px;display:flex}.sector-card h3{margin-top:10px;font-size:1.24rem}.sector-card p{color:var(--muted);font-size:.93rem;line-height:1.6}.sector-logos{border-top:1px dashed var(--line-strong);flex-wrap:wrap;align-items:center;gap:12px;min-height:70px;padding:16px 26px;display:flex}.sector-logos img{object-fit:contain;filter:grayscale();opacity:.75;width:auto;max-width:80px;height:24px;transition:filter var(--med), opacity var(--med)}.sector-card:hover .sector-logos img{filter:none;opacity:1}.sector-logos span{font-family:var(--mono);color:var(--muted);font-size:.72rem}.sector-meta{flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px;display:flex}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.2vw,32px);display:grid}.project-card{border:1px solid var(--line);border-radius:var(--r);transition:border-color var(--med) var(--ease), transform var(--med) var(--ease-out);background:#fff;flex-direction:column;display:flex;position:relative}.project-card:hover{border-color:var(--line-strong);transform:translateY(-4px)}.project-card-media{aspect-ratio:4/3;background:var(--surface-2);border-radius:var(--r) var(--r) 0 0;position:relative;overflow:hidden}.project-card-media img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease-out), filter var(--med)}.project-card:hover .project-card-media img{transform:scale(1.05)}.project-card-media:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#07101f59);position:absolute;inset:0}.project-card-media .chip{z-index:1;position:absolute;top:14px;left:14px}.project-card-body{flex-direction:column;flex:1;gap:10px;padding:22px;display:flex}.project-card-meta{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:6px 14px;font-size:.72rem;display:flex}.project-card-meta span+span:before{content:"/";color:var(--line-strong);margin-right:14px}.project-card h3{font-size:1.24rem}.project-card h3 a:after{content:"";z-index:2;position:absolute;inset:0}.project-card h3 a:focus-visible{outline:none}.project-card:has(h3 a:focus-visible){outline:2px solid var(--blue);outline-offset:4px}.project-card p{color:var(--muted);font-size:.94rem;line-height:1.6}.project-card-role{border-top:1px dashed var(--line-strong);color:var(--ink);align-items:flex-start;gap:10px;margin-top:auto;padding-top:14px;font-size:.84rem;font-weight:600;display:flex}.project-card-role svg{width:16px;height:16px;color:var(--blue);flex-shrink:0;margin-top:2px}.project-grid-featured .project-card:first-child{grid-area:span 2/span 2}.project-grid-featured .project-card:first-child .project-card-media{aspect-ratio:auto;flex:1;min-height:360px}.project-grid-featured .project-card:first-child .project-card-body{flex:none;padding:26px 28px}.project-grid-featured .project-card:first-child h3{font-size:1.7rem}.filters{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);flex-direction:column;gap:16px;margin-bottom:36px;padding:20px 22px;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.filter-label{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);min-width:84px;font-size:.72rem}.filter-chip{border:1px solid var(--line-strong);color:var(--ink);min-height:40px;transition:background var(--fast), border-color var(--fast), color var(--fast);background:#fff;border-radius:2px;padding:8px 14px;font-size:.86rem;font-weight:600}.filter-chip:hover{border-color:var(--ink)}.filter-chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}:root{--select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230a1428' stroke-width='1.8'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.filter-select{border:1px solid var(--line-strong);background:#fff var(--select-chevron) no-repeat right 12px center;appearance:none;min-height:42px;color:var(--ink);cursor:pointer;transition:border-color var(--fast), box-shadow var(--fast);border-radius:2px;padding:8px 38px 8px 12px;font-size:.88rem;font-weight:600}.filter-select:hover{border-color:var(--muted)}.filter-select:focus-visible{border-color:var(--blue);outline:none;box-shadow:0 0 0 4px #1d4ed81f}.filter-summary{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-top:1px dashed var(--line-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:14px;font-size:.76rem;display:flex}.filter-summary .text-link{font-family:var(--mono);font-weight:500}.filter-empty{text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r);color:var(--muted);padding:56px 24px}.process-tabs{border:1px solid var(--line-strong);border-radius:3px;gap:0;margin-bottom:36px;padding:3px;display:inline-flex}.process-tabs button{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);min-height:44px;transition:background var(--fast), color var(--fast);background:0 0;border:0;border-radius:2px;padding:10px 20px;font-size:.78rem}.process-tabs button[aria-selected=true]{background:var(--ink);color:#fff}.process-steps{counter-reset:step;border-top:1px solid var(--line-strong);grid-template-columns:repeat(5,minmax(0,1fr));gap:0;list-style:none;display:grid}.process-steps li{padding:34px 24px 8px 0;position:relative}.process-steps li:before{counter-increment:step;content:counter(step, decimal-leading-zero);border-top:2px solid var(--ink);font-family:var(--mono);color:var(--blue);min-width:40px;padding-top:10px;font-size:.74rem;position:absolute;top:-1px;left:0}.process-steps li:after{content:"";background:var(--orange);width:9px;height:9px;position:absolute;top:-5px;left:0;transform:translate(-4px)rotate(45deg)}.process-steps h3{margin-top:12px;font-size:1.08rem}.process-steps p{color:var(--muted);margin-top:10px;font-size:.9rem;line-height:1.6}.on-dark .process-tabs{border-color:var(--night-line-strong)}.on-dark .process-tabs button{color:var(--night-muted)}.on-dark .process-tabs button[aria-selected=true]{color:var(--night-900);background:#fff}.on-dark .process-steps{border-color:var(--night-line-strong)}.on-dark .process-steps li:before{color:var(--signal-soft);border-color:#fff}.on-dark .process-steps p,.on-dark .muted{color:var(--night-muted)}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.feature{border:1px solid var(--line);border-radius:var(--r);transition:border-color var(--med);background:#fff;gap:20px;padding:28px;display:flex;position:relative}.feature:hover{border-color:var(--line-strong)}.feature .feature-num{font-family:var(--mono);color:var(--blue);flex-shrink:0;min-width:28px;padding-top:4px;font-size:.76rem}.feature h3{font-size:1.14rem}.feature p{color:var(--muted);margin-top:8px;font-size:.94rem;line-height:1.6}.feature .link-arrow{margin-top:14px}.cta-band{isolation:isolate;background:var(--night-900);color:var(--night-text);border-radius:var(--r-lg);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:36px 64px;padding:clamp(36px,5.5vw,72px);display:grid;position:relative;overflow:hidden}.cta-band:before{content:"";z-index:-1;background-image:linear-gradient(#ffffff0c 1px,#0000 1px),linear-gradient(90deg,#ffffff0c 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 120% at 0 100%,#000 20%,#0000 75%);mask-image:radial-gradient(90% 120% at 0 100%,#000 20%,#0000 75%)}.cta-band:after{content:"";z-index:-1;background:radial-gradient(closest-side,#4f86ff3d,#0000);width:700px;height:700px;position:absolute;top:-300px;right:-260px}.cta-band h2{color:#fff;font-size:clamp(2rem,3.8vw,3.3rem)}.cta-band p{color:var(--night-muted);max-width:540px;margin-top:16px;font-size:1.06rem}.cta-band .btn-light{background:var(--orange);color:var(--night-950)}.cta-band .btn-light:hover{background:var(--orange-soft)}.cta-options{border-top:1px solid var(--night-line);gap:0;display:grid}.cta-option{border-bottom:1px solid var(--night-line);color:#fff;transition:padding var(--med) var(--ease-out), background var(--med);align-items:center;gap:18px;padding:20px 4px;display:flex}.cta-option:hover{background:linear-gradient(90deg,#4f86ff1f,#0000);padding-left:14px}.cta-option svg{width:22px;height:22px;color:var(--signal-soft);flex-shrink:0}.cta-option strong{font-size:1rem;font-weight:600;display:block}.cta-option small{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--night-muted);margin-top:2px;font-size:.7rem;display:block}.cta-option .cta-go{width:18px;height:18px;color:var(--night-muted);transition:transform var(--med) var(--ease-out), color var(--med);margin-left:auto}.cta-option:hover .cta-go{color:#fff;transform:translate(3px,-3px)}.sticky-card{top:calc(var(--header-h) + 24px);position:sticky}.aside-card{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:26px;position:relative}.aside-card h3{font-size:1.16rem}.aside-card p{color:var(--muted);margin-top:8px;font-size:.93rem}.aside-card .btn{width:100%;margin-top:20px}.aside-card .aside-links{border-top:1px dashed var(--line-strong);gap:10px;margin-top:18px;padding-top:18px;font-size:.92rem;list-style:none;display:grid}.aside-card .aside-links a{color:var(--ink);align-items:center;gap:10px;font-weight:600;display:flex}.aside-card .aside-links svg{width:17px;height:17px;color:var(--blue)}.aside-card-dark{background:var(--night-900);border-color:var(--night-900);color:var(--night-text);overflow:hidden}.aside-card-dark:before{content:"";pointer-events:none;background:radial-gradient(300px at 100% 0,#4f86ff33,#0000 70%);position:absolute;inset:0}.aside-card-dark>*{position:relative}.aside-card-dark h3{color:#fff}.aside-card-dark p{color:var(--night-muted)}.aside-card-dark .aside-links{border-color:var(--night-line-strong)}.aside-card-dark .aside-links a{color:#fff}.aside-card-dark .aside-links svg{color:var(--orange)}.service-list-links{list-style:none;display:grid}.service-list-links a{border-bottom:1px solid var(--line);color:var(--ink);transition:padding var(--med) var(--ease-out), color var(--fast);justify-content:space-between;align-items:center;gap:16px;padding:20px 4px;font-weight:600;display:flex}.service-list-links a:hover{color:var(--blue);padding-left:12px}.service-list-links svg{flex-shrink:0;width:18px;height:18px}.service-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:clamp(32px,5vw,80px);display:grid}.restricted-panel{border-radius:var(--r);background-color:var(--night-900);color:#fffc;background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px);background-size:40px 40px;flex-direction:column;justify-content:center;gap:12px;min-height:clamp(240px,36vw,420px);margin-top:clamp(28px,4vw,44px);padding:clamp(28px,5vw,64px);display:flex;position:relative;overflow:hidden}.restricted-panel .eyebrow{color:#f7c56b}.restricted-panel p:not(.eyebrow){color:#fff;max-width:46ch;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.5}.restricted-mark{background:linear-gradient(#ffffff4d,#ffffff4d) 50%/1px 76px no-repeat,linear-gradient(#ffffff4d,#ffffff4d) 50%/76px 1px no-repeat;border:1px solid #ffffff4d;border-radius:50%;width:52px;height:52px;position:absolute;top:clamp(20px,4vw,40px);right:clamp(20px,4vw,40px)}.restricted-panel-compact{border-radius:0;justify-content:flex-end;align-items:flex-start;width:100%;height:100%;min-height:0;margin:0;padding:20px}.restricted-panel-compact .restricted-mark{width:38px;height:38px;top:18px;right:18px}
.scroll-progress{display:none}@supports (animation-timeline:scroll()){.scroll-progress{z-index:200;pointer-events:none;transform-origin:0;background:linear-gradient(90deg, var(--blue), var(--signal), var(--cyan));height:2px;animation:linear both scroll-progress;animation-timeline:scroll(root);display:block;position:fixed;inset:0 0 auto}@keyframes scroll-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}}.topbar{background:var(--night-950);color:var(--night-muted);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}.topbar-inner{justify-content:space-between;align-items:center;gap:24px;min-height:36px;display:flex}.topbar-status{align-items:center;gap:10px;display:inline-flex}.topbar-status i{background:var(--orange);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #f3a11a33}.topbar a{color:var(--night-text);transition:color var(--fast);align-items:center;gap:7px;display:inline-flex}.topbar a:hover{color:#fff}.topbar nav{align-items:center;gap:22px;display:flex}.topbar svg{opacity:.8;width:14px;height:14px}.site-header{z-index:100;-webkit-backdrop-filter:saturate(1.6)blur(16px);transition:border-color var(--med), background var(--med);background:#ffffffd9;border-bottom:1px solid #0000;position:sticky;top:0}.site-header.is-scrolled{border-color:var(--line);background:#ffffffeb}.header-inner{height:var(--header-h);align-items:center;gap:24px;display:flex}.logo{flex-shrink:0;align-items:center;display:inline-flex}.logo img{width:auto;height:28px}.primary-nav{align-items:center;gap:2px;margin-left:auto;display:flex}.nav-item{position:relative}.nav-link{height:42px;font-family:var(--body);color:var(--ink);transition:color var(--fast);background:0 0;border:0;border-radius:2px;align-items:center;gap:6px;padding:0 13px;font-size:.93rem;font-weight:600;display:inline-flex;position:relative}.nav-link:after{content:"";background:var(--blue);transform-origin:0;height:1.5px;transition:transform var(--med) var(--ease-out);position:absolute;bottom:6px;left:13px;right:13px;transform:scaleX(0)}.nav-link:hover:after,.nav-item.is-open>.nav-link:after,.nav-link.is-active:after,.nav-link[aria-current=page]:after{transform:scaleX(1)}.nav-link[aria-current=page],.nav-link.is-active{color:var(--blue)}.nav-link .caret{width:13px;height:13px;transition:transform var(--med) var(--ease-out)}.nav-item.is-open .caret{transform:rotate(180deg)}.nav-panel{border:1px solid var(--line);border-radius:var(--r);width:380px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:opacity var(--fast) var(--ease), transform var(--med) var(--ease-out), visibility var(--fast);background:#fff;padding:10px;position:absolute;top:calc(100% + 14px);left:0;transform:translateY(8px)}.nav-panel:before{content:"";height:16px;position:absolute;top:-16px;left:0;right:0}.nav-item.is-open .nav-panel{opacity:1;visibility:visible;transform:translateY(0)}.nav-panel-wide{width:720px}.nav-panel-wide ul{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-panel ul{gap:0;list-style:none;display:grid}.nav-panel a.nav-sub{transition:background var(--fast);border-radius:2px;align-items:flex-start;gap:14px;padding:10px 12px;display:flex}.nav-panel a.nav-sub:hover{background:var(--surface)}.nav-sub strong{color:var(--ink);font-size:.92rem;font-weight:700;line-height:1.35;display:block}.nav-sub small{color:var(--muted);margin-top:2px;font-size:.8rem;line-height:1.45;display:block}.nav-sub .nav-icon{border:1px solid var(--line);width:36px;height:36px;color:var(--blue);transition:background var(--fast), color var(--fast), border-color var(--fast);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.nav-sub:hover .nav-icon{background:var(--ink);border-color:var(--ink);color:#fff}.nav-sub .nav-icon svg{stroke-width:1.4px;width:19px;height:19px}.nav-panel-footer{border-top:1px dashed var(--line-strong);flex-wrap:wrap;gap:8px 24px;margin-top:4px;padding:12px 12px 4px;display:flex}.nav-panel-footer a{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);align-items:center;gap:6px;font-size:.74rem;display:inline-flex}.nav-panel-footer svg{width:14px;height:14px}.header-actions{align-items:center;gap:10px;display:flex}.header-phone{color:var(--ink);white-space:nowrap;align-items:center;gap:8px;padding:0 6px;font-size:.9rem;font-weight:700;display:inline-flex}.header-phone svg{width:17px;height:17px;color:var(--blue)}.search-trigger{border:1px solid var(--line-strong);height:42px;color:var(--muted);transition:border-color var(--fast), color var(--fast);background:#fff;border-radius:2px;align-items:center;gap:10px;padding:0 8px 0 12px;font-size:.88rem;display:inline-flex}.search-trigger:hover{border-color:var(--ink);color:var(--ink)}.search-trigger svg{width:17px;height:17px}.search-trigger kbd,.cmd kbd{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:2px;padding:3px 6px;font-size:.68rem}.menu-toggle{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--ink);background:#fff;border-radius:2px;justify-content:center;align-items:center;display:none}.menu-toggle svg{width:22px;height:22px}.mobile-nav,.action-bar{display:none}.cmd{border-radius:var(--r-lg);width:min(680px,100vw - 32px);max-height:72vh;box-shadow:var(--shadow-lg), 0 0 0 1px var(--line);color:var(--text);background:#fff;border:0;margin:12vh auto auto;padding:0;overflow:hidden}.cmd[open]{animation:cmd-in var(--med) var(--ease-out);flex-direction:column;display:flex}.cmd::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in var(--med) var(--ease);background:#040914a6}.cmd-input{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:0 18px;display:flex}.cmd-input svg{width:20px;height:20px;color:var(--blue);flex-shrink:0}.cmd-input input{min-width:0;height:64px;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:1.1rem}.cmd-input input::placeholder{color:var(--faint)}.cmd-input input::-webkit-search-cancel-button{display:none}.cmd-results{overscroll-behavior:contain;flex:1;padding:8px;overflow-y:auto}.cmd-group+.cmd-group{margin-top:6px}.cmd-group-label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:10px 12px 6px;font-size:.68rem}.cmd-group ul{list-style:none}.cmd-item{color:var(--ink);cursor:pointer;border-radius:2px;align-items:center;gap:14px;padding:11px 12px;display:flex}.cmd-item[aria-selected=true]{background:var(--ink);color:#fff}.cmd-item[aria-selected=true] small{color:#c3cee0}.cmd-item[aria-selected=true] .cmd-go{opacity:1}.cmd-item strong{font-size:.95rem;font-weight:600;display:block}.cmd-item small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;line-height:1.4;display:block;overflow:hidden}.cmd-item>span{flex:1;min-width:0}.cmd-go{opacity:0;flex-shrink:0;width:16px;height:16px}.cmd-empty{text-align:center;color:var(--muted);padding:36px 16px}.cmd-foot{border-top:1px solid var(--line);background:var(--surface);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);gap:18px;padding:10px 16px;font-size:.68rem;display:flex}.cmd-foot span{align-items:center;gap:6px;display:inline-flex}@keyframes cmd-in{0%{opacity:0;transform:translateY(-10px)scale(.98)}}@keyframes fade-in{0%{opacity:0}}.site-footer{background:var(--night-950);color:var(--night-muted);isolation:isolate;font-size:.94rem;position:relative;overflow:hidden}.site-footer:before{content:"";z-index:-1;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 70%);mask-image:linear-gradient(#000,#0000 70%)}.footer-statement{border-bottom:1px solid var(--night-line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px 48px;padding-block:clamp(56px,7vw,96px) clamp(40px,5vw,56px);display:grid}.footer-statement h2{color:#fff;letter-spacing:-.05em;max-width:14ch;font-size:clamp(2.2rem,5vw,4.4rem)}.footer-statement h2 span{color:var(--signal-soft)}.footer-main{grid-template-columns:1.5fr 1fr 1fr 1.25fr;gap:40px;padding-block:clamp(64px,7vw,96px) clamp(40px,5vw,56px);display:grid}.footer-brand img{filter:brightness(0)invert();opacity:.95;width:auto;height:28px}.footer-brand p{max-width:340px;margin-top:18px;line-height:1.7}.footer-brand .link-arrow{color:var(--orange-soft);margin-top:20px}.footer-col h3{color:#fff;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;font-size:.72rem;font-weight:500}.footer-col ul{gap:10px;list-style:none;display:grid}.footer-col a{transition:color var(--fast)}.footer-col a:hover{color:#fff}.footer-contact li{align-items:flex-start;gap:10px;display:flex}.footer-contact svg{width:16px;height:16px;color:var(--orange);flex-shrink:0;margin-top:4px}.footer-offices{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.footer-offices a{border:1px solid var(--night-line-strong);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--night-text);transition:border-color var(--fast), color var(--fast);border-radius:2px;padding:5px 10px;font-size:.7rem}.footer-offices a:hover{color:#fff;border-color:#fff}.footer-wordmark{font-family:var(--heading);letter-spacing:-.07em;color:#0000;-webkit-text-stroke:1px #ffffff1f;-webkit-user-select:none;user-select:none;white-space:nowrap;text-align:center;margin-bottom:-.12em;font-size:clamp(4rem,17vw,15rem);font-weight:500;line-height:.8}.footer-bottom{border-top:1px solid var(--night-line);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:20px;font-size:.7rem;display:flex}.footer-bottom nav{gap:20px;display:flex}.footer-bottom a:hover{color:#fff}
.hero{color:#fff;background:var(--night-950);isolation:isolate;align-items:flex-end;min-height:min(92vh,880px);display:flex;position:relative;overflow:hidden}.hero-media{z-index:-3;position:absolute;inset:0}.hero-media img{object-fit:cover;object-position:50% 58%;filter:saturate(.55)contrast(1.08)brightness(.85);width:100%;height:100%;animation:hero-zoom 20s var(--ease-out) both}.hero:before{content:"";z-index:-2;background:linear-gradient(90deg,#040914f7 0%,#040914d9 34%,#0409146b 68%,#04091433 100%),linear-gradient(#04091400 50%,#040914 100%),linear-gradient(#04091499 0%,#04091400 30%);position:absolute;inset:0}.hero-grid{z-index:-1;pointer-events:none;animation:grid-in 1.6s var(--ease-out) both;background-image:linear-gradient(#ffffff10 1px,#0000 1px),linear-gradient(90deg,#ffffff10 1px,#0000 1px);background-position:calc(50% + 40px) 0;background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 90% at 30% 60%,#000 20%,#0000 80%);mask-image:radial-gradient(80% 90% at 30% 60%,#000 20%,#0000 80%)}.hero:after{content:"";z-index:-1;pointer-events:none;height:30%;animation:scan 2.4s var(--ease) .3s both;background:linear-gradient(#0000,#4f86ff14 70%,#8fb2ff33 99%,#0000);position:absolute;inset:0 0 auto}.hero-coords{right:var(--gutter);font-family:var(--mono);letter-spacing:.12em;color:#ffffff8c;text-transform:uppercase;align-items:center;gap:18px;font-size:.7rem;display:flex;position:absolute;top:28px}.hero-coords:before{content:"";background:linear-gradient(#ffffff4d,#ffffff4d) 50%/1px 52px no-repeat,linear-gradient(#ffffff4d,#ffffff4d) 50%/52px 1px no-repeat;border:1px solid #ffffff4d;border-radius:50%;width:34px;height:34px}.hero-inner{width:100%;padding-block:clamp(120px,18vh,200px) clamp(40px,6vh,64px);position:relative}.hero-copy{max-width:940px}.dim{max-width:560px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--signal-soft);align-items:center;gap:12px;margin-bottom:26px;font-size:.7rem;display:flex;position:relative}.dim:before,.dim:after{content:"";transform-origin:0;height:1px;animation:draw 1.2s var(--ease-out) .2s both;background:#8fb2ff80;flex:1}.dim:after{transform-origin:100%}.dim span{flex-shrink:0}.dim-tick{background:#8fb2ffb3;width:1px;height:11px;position:absolute;top:50%;transform:translateY(-50%)}.dim-tick:first-child{left:0}.dim-tick:last-child{right:0}.hero .eyebrow{color:var(--orange-soft)}.hero h1{color:#fff;font-size:clamp(2.7rem,5.4vw,4.9rem);line-height:.98}.hero h1 em{color:#0000;background:linear-gradient(90deg, #fff 0%, var(--signal-soft) 60%, var(--cyan));-webkit-background-clip:text;background-clip:text;font-style:normal}.hero-lead{color:#c9d4e6;max-width:620px;margin-top:26px;font-size:clamp(1.06rem,1.45vw,1.24rem);line-height:1.6}.hero .btn-row{margin-top:36px}.hero-foot{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-top:clamp(48px,8vh,88px);padding-top:0;display:grid}.hero-proof{border-top:1px solid #ffffff2e;grid-template-columns:repeat(4,minmax(0,auto));gap:0;display:grid}.hero-proof div{flex-direction:column;padding:18px clamp(18px,3vw,44px) 0 0;display:flex;position:relative}.hero-proof div+div{border-left:1px solid #ffffff1f;padding-left:clamp(18px,3vw,44px)}.hero-proof div:before{content:"";background:var(--orange);width:24px;height:2px;position:absolute;top:-1px;left:0}.hero-proof div+div:before{left:clamp(18px,3vw,44px)}.hero-proof strong{font-family:var(--heading);color:#fff;letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(1.9rem,3.2vw,2.9rem);font-weight:400;line-height:1}.hero-proof span{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--night-muted);margin-top:10px;font-size:.68rem}.hero-caption{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#fff9;text-align:right;align-items:center;gap:10px;font-size:.68rem;display:inline-flex}.hero-caption:before{content:"";background:var(--orange);flex-shrink:0;width:7px;height:7px}@keyframes hero-zoom{0%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes grid-in{0%{opacity:0;background-size:120px 120px}}@keyframes scan{0%{opacity:1;transform:translateY(-100%)}to{opacity:0;transform:translateY(380%)}}@keyframes draw{0%{transform:scaleX(0)}}.logo-strip{border-bottom:1px solid var(--line);background:#fff;padding-block:28px}.logo-strip-inner{grid-template-columns:230px minmax(0,1fr);align-items:center;gap:36px;display:grid}.logo-strip p{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-size:.7rem;line-height:1.6}.logo-strip p strong{color:var(--ink);font-size:.74rem;display:block}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.marquee-track{align-items:center;gap:60px;width:max-content;list-style:none;animation:52s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track li{flex-shrink:0;align-items:center;height:44px;display:flex}.marquee-track img{object-fit:contain;filter:grayscale();opacity:.6;width:auto;max-width:140px;height:36px;transition:filter var(--med), opacity var(--med)}.marquee-track li:hover img{filter:none;opacity:1}@keyframes marquee{to{transform:translate(-50%)}}.logo-on-dark{background:var(--night-900);border-radius:2px;padding:6px 10px}.logo-on-axis{background:#97144d;border-radius:2px;padding:6px 10px}.marquee-track img.logo-on-dark,.marquee-track img.logo-on-axis{filter:none;opacity:.8}.page-hero{background:linear-gradient(180deg, var(--surface), #fff);border-bottom:1px solid var(--line);padding-block:clamp(44px,6vw,88px) clamp(52px,7vw,96px);position:relative;overflow:hidden}.page-hero:after{content:"";pointer-events:none;width:92px;height:92px;animation:spin-in 1.4s var(--ease-out) both;background:linear-gradient(#0a142824,#0a142824) 50%/1px 130px no-repeat,linear-gradient(#0a142824,#0a142824) 50%/130px 1px no-repeat;border:1px solid #0a142824;border-radius:50%;position:absolute;top:clamp(28px,5vw,64px);right:clamp(20px,6vw,96px)}.page-hero-media:after{display:none}.page-hero h1{max-width:17ch}.page-hero .lead{max-width:680px;color:var(--muted);margin-top:24px}.page-hero-tagline{font-family:var(--heading);color:var(--ink);opacity:.8;margin-top:20px;font-size:1.1rem;font-style:italic}.page-hero-tagline+.lead{margin-top:14px}.page-hero .btn-row{margin-top:32px}.page-hero-media{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(32px,5vw,72px);display:grid}.page-hero-media h1{max-width:none}.page-hero-image{border-radius:var(--r);aspect-ratio:4/3;background:var(--surface-2);position:relative;overflow:hidden}.page-hero-image img{object-fit:cover;width:100%;height:100%}.page-hero-image:after{content:"";pointer-events:none;border:1px solid #ffffff59;position:absolute;inset:12px}.breadcrumb{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:26px;font-size:.72rem;list-style:none;display:flex}.breadcrumb a{color:var(--muted);transition:color var(--fast)}.breadcrumb a:hover{color:var(--blue)}.breadcrumb li+li:before{content:"/";color:var(--line-strong);margin-right:8px}.breadcrumb [aria-current=page]{color:var(--ink)}@keyframes spin-in{0%{opacity:0;transform:rotate(-90deg)scale(.6)}}.intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,104px);display:grid}.intro-media{position:relative}.intro-media>img{border-radius:var(--r);aspect-ratio:5/4;object-fit:cover;width:100%}.intro-media:before{content:"";border:1px solid var(--line-strong);z-index:-1;position:absolute;inset:-14px 14px 14px -14px}.intro-media .intro-badge{background:var(--night-900);color:#fff;box-shadow:var(--shadow-lg);border-radius:2px;max-width:250px;padding:22px 26px;position:absolute;bottom:28px;right:-20px}.intro-badge strong{font-family:var(--heading);letter-spacing:-.05em;font-size:2.8rem;font-weight:400;line-height:1;display:block}.intro-badge span{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--night-muted);margin-top:10px;font-size:.68rem;line-height:1.6;display:block}.intro-points{border-top:1px solid var(--line);gap:0;margin-top:30px;list-style:none;display:grid}.intro-points li{border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;padding:14px 0;display:flex}.intro-points svg{width:20px;height:20px;color:var(--blue);flex-shrink:0;margin-top:3px}.intro .btn-row{margin-top:34px}.footprint-band{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.footprint-band .stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px}.footprint-offices{flex-wrap:wrap;gap:6px;margin-top:28px;list-style:none;display:flex}.footprint-offices li{border:1px solid var(--night-line-strong);color:var(--night-text);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border-radius:2px;padding:6px 12px;font-size:.72rem}.footprint-offices li.is-head{border-color:var(--orange);color:#fff}.footprint-art{aspect-ratio:9/10;max-height:580px;margin-inline:auto;position:relative}.footprint-art img{object-fit:contain;opacity:.9;filter:drop-shadow(0 0 24px #4f86ff33);width:100%;height:100%}.footprint-art .pin{background:var(--cyan);border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:absolute;box-shadow:0 0 0 4px #7fe3ff26,0 0 14px #7fe3ffb3}.footprint-art .pin.is-office{background:var(--orange);width:12px;height:12px;margin:-6px 0 0 -6px;box-shadow:0 0 0 5px #f3a11a33,0 0 18px #f3a11acc}.footprint-art .pin.is-office:after{content:"";border:1px solid var(--orange);animation:ping 2.6s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:-5px}.footprint-legend{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--night-muted);flex-wrap:wrap;justify-content:center;gap:22px;margin-top:18px;font-size:.7rem;display:flex}.footprint-legend span{align-items:center;gap:8px;display:inline-flex}.footprint-legend i{background:var(--cyan);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 10px #7fe3ffb3}.footprint-legend i.is-office{background:var(--orange);box-shadow:0 0 10px #f3a11acc}@keyframes ping{0%{opacity:1;transform:scale(.6)}80%,to{opacity:0;transform:scale(2.4)}}.leader{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.leader-photo{border-radius:var(--r);aspect-ratio:4/5;background:var(--surface-2);position:relative;overflow:hidden}.leader-photo img{object-fit:cover;width:100%;height:100%}.leader-photo:after{content:"";pointer-events:none;border:1px solid #fff6;position:absolute;inset:12px}.leader-role{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-top:14px;font-size:.76rem}.leader-copy .prose{color:var(--text);margin-top:24px;font-size:1.06rem}.credential-list{flex-wrap:wrap;gap:6px;margin-top:28px;list-style:none;display:flex}.people-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.person{border:1px solid var(--line);border-radius:var(--r);background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden}.person img{aspect-ratio:4/3;object-fit:cover;object-position:50% 25%;background:var(--surface-2);filter:grayscale(.3);width:100%;transition:filter var(--med)}.person:hover img{filter:none}.person-body{padding:20px}.person h3{font-size:1.08rem}.person-role{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-top:8px;font-size:.7rem;line-height:1.55}.person-bio{color:var(--muted);margin-top:10px;font-size:.9rem;line-height:1.6}.case-hero{padding-top:clamp(28px,4vw,48px)}.case-title{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px 48px;display:grid}.case-title h1{font-size:clamp(2.4rem,5vw,4.2rem)}.case-meta{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.case-image{border-radius:var(--r);background:var(--surface-2);margin-top:clamp(28px,4vw,44px);position:relative;overflow:hidden}.case-image img{object-fit:cover;width:100%;max-height:74vh}.case-image figcaption,.case-gallery figcaption{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 2px 0;font-size:.7rem;line-height:1.6}.case-body{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:clamp(32px,6vw,96px);display:grid}.case-body h2{font-size:clamp(1.8rem,3vw,2.6rem)}.case-body h3{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-size:.76rem;font-weight:500}.case-body .lead{margin-top:22px}.scope-list{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin-top:14px;list-style:none;display:grid}.scope-list li{border-bottom:1px solid var(--line);gap:12px;padding:12px 0;font-size:.95rem;display:flex}.scope-list svg{width:19px;height:19px;color:var(--blue);flex-shrink:0;margin-top:3px}.facts{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:4px 22px;position:relative}.facts:before{content:"SPEC / PROJECT";font-family:var(--mono);letter-spacing:.14em;color:var(--faint);background:#fff;padding:0 8px;font-size:.64rem;position:absolute;top:-9px;left:16px}.facts div{border-bottom:1px dashed var(--line-strong);grid-template-columns:120px minmax(0,1fr);gap:16px;padding:14px 0;font-size:.93rem;display:grid}.facts div:last-child{border-bottom:0}.facts dt{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:.7rem}.facts dd{color:var(--ink);margin:0;font-weight:600}.facts-note{color:var(--muted);margin-top:12px;font-size:.8rem;line-height:1.5}.case-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.case-gallery figure{min-width:0}.case-gallery .project-photo-link{border-radius:var(--r);background:var(--surface-2);overflow:hidden}.case-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform 1s var(--ease-out)}.case-gallery .project-photo-link:hover img{transform:scale(1.04)}.case-gallery-supporting{grid-template-columns:repeat(3,minmax(0,1fr))}.case-gallery-single{grid-template-columns:minmax(0,1fr);max-width:960px}.photo-expand{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border-radius:2px;background:#ffffffeb!important}.disclosure{border:1px solid #f3d39a;border-left:3px solid var(--orange);color:#6b4300;background:#fff7e8;border-radius:2px;align-items:flex-start;gap:12px;margin-top:20px;padding:14px 18px;font-size:.92rem;display:flex}.disclosure svg{flex-shrink:0;width:20px;height:20px;margin-top:2px}.adjacent{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.adjacent a{transition:background var(--med);flex-direction:column;gap:8px;padding:28px 4px;display:flex}.adjacent a:hover{background:linear-gradient(90deg, var(--surface), transparent)}.adjacent .adjacent-next:hover{background:linear-gradient(270deg, var(--surface), transparent)}.adjacent span{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.7rem}.adjacent strong{font-family:var(--heading);color:var(--ink);letter-spacing:-.03em;font-size:1.4rem;font-weight:500}.adjacent .adjacent-next{text-align:right;grid-column:2;align-items:flex-end}.client-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1px;list-style:none;display:grid}.client-card{min-height:160px;transition:background var(--med);background:#fff;flex-direction:column;gap:10px;padding:20px;display:flex}.client-card:hover{background:var(--surface)}.client-mark{place-items:center;height:64px;display:grid}.client-mark img{object-fit:contain;filter:grayscale();opacity:.8;width:auto;max-width:150px;max-height:50px;transition:filter var(--med), opacity var(--med)}.client-card:hover .client-mark img{filter:none;opacity:1}.client-mark-dark img{background:var(--night-900);filter:none;border-radius:2px;max-height:56px;padding:8px 12px}.client-mark-axis img{max-height:46px}.client-mark-text{background:var(--surface);border-radius:2px;padding:8px}.client-mark-text span{font-family:var(--heading);color:var(--ink);text-align:center;font-size:.98rem;font-weight:500;line-height:1.25}.client-name{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--muted);font-size:.68rem}.client-work{border-top:1px dashed var(--line-strong);margin-top:auto;padding-top:8px;font-size:.86rem}.client-work summary{cursor:pointer;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);align-items:center;min-height:32px;font-size:.7rem;list-style-position:inside;display:flex}.client-work summary::-webkit-details-marker{display:none}.client-work summary:before{content:"+";margin-right:8px}.client-work[open] summary:before{content:"–"}.client-work ul{gap:6px;margin-top:6px;list-style:none;display:grid}.client-work a{color:var(--ink);justify-content:space-between;gap:8px;font-weight:600;display:flex}.client-work a svg{width:15px;height:15px;color:var(--blue);flex-shrink:0;margin-top:4px}.client-footnote{color:var(--muted);margin-top:28px;font-size:.85rem}.sector-block+.sector-block{margin-top:64px}.sector-block-head{border-bottom:1px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:22px;padding-bottom:14px;display:flex}.sector-block-head h2{font-size:clamp(1.5rem,2.4vw,2rem)}.quote-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.quote-card{border:1px solid var(--line);border-radius:var(--r);background:#fff;flex-direction:column;gap:20px;padding:32px;display:flex;position:relative}.quote-card svg{width:28px;height:28px;color:var(--orange)}.quote-card blockquote p{font-family:var(--heading);color:var(--ink);white-space:pre-line;letter-spacing:-.015em;font-size:1.2rem;line-height:1.5}.quote-card figcaption{border-top:1px dashed var(--line-strong);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:auto;padding-top:16px;font-size:.7rem}.faq-list{border-top:1px solid var(--line);gap:0;display:grid}.faq-item{border-bottom:1px solid var(--line);transition:background var(--med);background:0 0}.faq-item[open]{background:linear-gradient(90deg, var(--surface), transparent)}.faq-item summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:18px;padding:22px 6px;font-size:1.04rem;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover{color:var(--blue)}.faq-symbol{border:1px solid var(--line-strong);width:30px;height:30px;transition:background var(--fast), border-color var(--fast);border-radius:2px;flex-shrink:0;position:relative}.faq-item[open] .faq-symbol{background:var(--ink);border-color:var(--ink)}.faq-symbol:before,.faq-symbol:after{content:"";background:var(--ink);width:11px;height:1.5px;transition:transform var(--med) var(--ease-out);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-symbol:after{transform:translate(-50%,-50%)rotate(90deg)}.faq-item[open] .faq-symbol:before,.faq-item[open] .faq-symbol:after{background:#fff}.faq-item[open] .faq-symbol:after{transform:translate(-50%,-50%)rotate(0)}.faq-answer{color:var(--text);max-width:780px;padding:0 6px 24px}.faq-answer .text-link{margin-top:12px}.faq-nav{flex-wrap:wrap;gap:6px;margin-bottom:44px;display:flex}.faq-group+.faq-group{margin-top:72px}.workflow{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.workflow-steps{counter-reset:step;border-left:1px solid var(--line-strong);gap:0;margin-left:8px;list-style:none;display:grid}.workflow-steps li{grid-template-columns:56px minmax(0,1fr);gap:12px;padding:20px 0 26px 24px;display:grid;position:relative}.workflow-steps li:before{counter-increment:step;content:counter(step, decimal-leading-zero);font-family:var(--mono);color:var(--blue);padding-top:4px;font-size:.76rem}.workflow-steps li:after{content:"";background:var(--orange);width:9px;height:9px;position:absolute;top:26px;left:-5px;transform:rotate(45deg)}.workflow-steps h3{font-size:1.14rem}.workflow-steps p{color:var(--muted);margin-top:6px;font-size:.95rem}.office-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;display:grid}.office-card{border:1px solid var(--line);border-radius:var(--r);background:#fff;flex-direction:column;gap:10px;padding:24px;display:flex;position:relative}.office-card.is-head{border-color:var(--ink);box-shadow:inset 0 3px 0 var(--orange)}.office-card h3{font-size:1.24rem}.office-card address{color:var(--muted);font-size:.93rem;font-style:normal;line-height:1.6}.office-card address span{display:block}.office-actions{border-top:1px dashed var(--line-strong);flex-wrap:wrap;gap:16px;margin-top:auto;padding-top:14px;font-size:.9rem;display:flex}.contact-methods{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.contact-method{border:1px solid var(--line);border-radius:var(--r);transition:border-color var(--med);background:#fff;align-items:center;gap:16px;padding:22px;display:flex;position:relative}.contact-method:hover{border-color:var(--ink)}.contact-method .contact-icon{border:1px solid var(--line-strong);width:46px;height:46px;color:var(--blue);transition:background var(--fast), color var(--fast), border-color var(--fast);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.contact-method:hover .contact-icon{background:var(--ink);color:#fff;border-color:var(--ink)}.contact-method .contact-icon svg{width:22px;height:22px}.contact-method>span>span{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem;display:block}.contact-method strong{color:var(--ink);overflow-wrap:anywhere;margin-top:4px;font-size:1.04rem;display:block}.enquiry-context{background:var(--blue-50);border-left:3px solid var(--blue);color:var(--blue-700);border-radius:2px;margin-bottom:18px;padding:12px 16px;font-weight:600}.enquiry-section{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:start;gap:clamp(32px,5vw,80px);display:grid}.enquiry-intro h2 span{color:var(--blue)}.enquiry-intro>p:not(.eyebrow){color:var(--muted);margin-top:18px}.enquiry-aside-note{background:var(--surface);border-radius:var(--r);border:1px solid var(--line);margin-top:28px;padding:22px}.enquiry-aside-note span{font-family:var(--mono);letter-spacing:.14em;color:var(--blue);font-size:.7rem}.enquiry-aside-note p{color:var(--text);margin-top:8px;font-size:.95rem}.enquiry-panel{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);background:#fff;padding:clamp(24px,3.5vw,44px);position:relative}.enquiry-panel:before{content:"BRIEF / NEW PROJECT";font-family:var(--mono);letter-spacing:.14em;color:var(--faint);background:#fff;padding:0 8px;font-size:.64rem;position:absolute;top:-9px;left:22px}.enquiry-form-heading h3{font-size:1.5rem}.enquiry-form-heading p{color:var(--muted);margin-top:6px;font-size:.92rem}.enquiry-fields{border:0;min-width:0;margin:24px 0 0;padding:0}.enquiry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.enquiry-field{flex-direction:column;gap:8px;min-width:0;display:flex}.enquiry-field label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);justify-content:space-between;gap:8px;font-size:.7rem;font-weight:500;display:flex}.enquiry-field label span{color:var(--faint)}.enquiry-field input,.enquiry-field select,.enquiry-field textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:50px;color:var(--ink);transition:border-color var(--fast), box-shadow var(--fast), background var(--fast);border-radius:2px;padding:12px 14px;font-size:1rem}.enquiry-field textarea{resize:vertical;min-height:140px;line-height:1.55}.enquiry-field input:hover,.enquiry-field select:hover,.enquiry-field textarea:hover{border-color:var(--muted)}.enquiry-field input:focus,.enquiry-field select:focus,.enquiry-field textarea:focus{border-color:var(--blue);background:#fff;outline:none;box-shadow:0 0 0 4px #1d4ed81f}.enquiry-field select,.enquiry-field select:focus{appearance:none;background-image:var(--select-chevron);cursor:pointer;background-position:right 14px center;background-repeat:no-repeat;padding-right:42px}.enquiry-field [aria-invalid=true]{border-color:#b3261e}.enquiry-brief{margin-top:20px}.field-error{color:#b3261e;font-size:.86rem;font-weight:600}.field-hint{color:var(--muted);font-size:.84rem}.enquiry-details{border-top:1px dashed var(--line-strong);margin-top:20px;padding-top:14px}.enquiry-details summary{cursor:pointer;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);align-items:center;gap:8px;min-height:40px;font-size:.74rem;display:flex}.enquiry-details summary span{color:var(--muted)}.enquiry-details .enquiry-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.enquiry-trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.enquiry-privacy{color:var(--muted);margin-top:20px;font-size:.84rem}.enquiry-privacy a{color:var(--blue);text-underline-offset:2px;text-decoration:underline}.enquiry-submit{isolation:isolate;background:var(--ink);color:#fff;width:100%;min-height:56px;margin-top:18px;font-size:1rem;position:relative;overflow:hidden}.enquiry-submit:hover:not(:disabled){background:var(--blue)}.enquiry-submit:disabled{opacity:.6;cursor:progress}.enquiry-errors{color:#8c1d18;background:#fdf1f0;border:1px solid #f0b8b4;border-left:3px solid #b3261e;border-radius:2px;margin-top:18px;padding:16px 18px}.enquiry-errors p{font-weight:700}.enquiry-errors ul{margin:6px 0 0 18px;font-size:.9rem}.enquiry-errors a{text-decoration:underline}.enquiry-result{padding:12px 0}.enquiry-result h3{margin-top:6px;font-size:1.5rem}.enquiry-result p{color:var(--muted);margin-top:10px}.enquiry-result textarea{border:1px solid var(--line-strong);width:100%;min-height:200px;font-family:var(--mono);background:var(--surface);border-radius:2px;margin-top:14px;padding:14px;font-size:.82rem}.draft-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.draft-actions .button,.draft-actions a.button{background:var(--ink);color:#fff}.draft-recipient{color:var(--muted);margin-top:8px;font-size:.9rem}.button{border-radius:var(--r-sm);background:var(--ink);color:#fff;border:0;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 22px;font-size:.95rem;font-weight:700;display:inline-flex}.button svg{width:18px;height:18px}.enquiry-fallback{padding-block:32px}.profile-card{border-radius:var(--r);background:var(--surface);border:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px 48px;padding:clamp(28px,4vw,48px);display:grid;position:relative;overflow:hidden}.profile-card:after{content:"PDF";font-family:var(--heading);letter-spacing:-.06em;color:#0000;-webkit-text-stroke:1px #0a142814;pointer-events:none;font-size:9rem;font-weight:500;position:absolute;bottom:-34px;right:-8px}.profile-card h2{font-size:clamp(1.7rem,2.8vw,2.4rem)}.profile-card p{color:var(--muted);max-width:560px;margin-top:10px}.profile-meta{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:8px;margin-top:12px;font-size:.7rem;display:flex}.profile-actions{z-index:1;flex-wrap:wrap;align-items:center;gap:12px;display:flex;position:relative}.checklist{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;display:grid}.checklist li{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:28px;position:relative}.checklist li:before{counter-increment:step;content:counter(step, decimal-leading-zero);font-family:var(--mono);color:var(--blue);border-bottom:1px dashed var(--line-strong);margin-bottom:18px;padding-bottom:12px;font-size:.76rem;display:block}.checklist h3{font-size:1.1rem}.checklist p{color:var(--muted);margin-top:8px;font-size:.94rem}.discipline-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;list-style:none;display:grid}.discipline-grid a{border:1px solid var(--line);border-radius:var(--r);color:var(--ink);transition:border-color var(--fast);background:#fff;align-items:center;gap:14px;padding:16px 18px;font-weight:600;display:flex}.discipline-grid a:hover{border-color:var(--ink)}.discipline-grid .nav-icon{border:1px solid var(--line);width:38px;height:38px;color:var(--blue);border-radius:2px;flex-shrink:0;place-items:center;display:grid}.discipline-grid .nav-icon svg{width:20px;height:20px}.privacy-copy section+section{margin-top:40px}.privacy-copy h2{margin-bottom:12px;font-size:1.5rem}.privacy-copy p+p{margin-top:12px}.privacy-copy a{color:var(--blue);text-decoration:underline}.not-found{text-align:left}.not-found h1{max-width:14ch}.not-found .lead{color:var(--muted);max-width:560px;margin-top:18px}.not-found .btn-row{margin-top:28px}.footprint .eyebrow{margin-bottom:14px}.case-body .aside-card h3{font-family:var(--heading);letter-spacing:-.02em;text-transform:none;color:var(--ink);font-size:1.2rem;font-weight:600}.case-body .aside-card-dark h3{color:#fff}.path-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.path-card{border:1px solid var(--line);border-radius:var(--r);transition:border-color var(--med) var(--ease), transform var(--med) var(--ease-out);background:#fff;flex-direction:column;gap:12px;padding:26px;display:flex;position:relative}.path-card:hover{border-color:var(--line-strong);transform:translateY(-4px)}.path-top{justify-content:space-between;align-items:flex-start;display:flex}.path-index{font-family:var(--mono);letter-spacing:.1em;color:var(--faint);font-size:.72rem}.path-card h3{margin-top:12px;font-size:1.3rem}.path-card h3 a:hover{color:var(--blue)}.path-card:hover .practice-icon{background:var(--ink);border-color:var(--ink);color:#fff}.path-card p{color:var(--muted);font-size:.93rem;line-height:1.6}.path-card .path-stats{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border-top:1px dashed var(--line-strong);margin-top:auto;padding-top:14px;font-size:.72rem}.path-links{flex-direction:column;gap:10px;display:flex}.path-search{border:1px dashed var(--line-strong);border-radius:var(--r);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding:16px 20px;display:flex}.path-search p{color:var(--muted);font-size:.95rem}.quote-band{border-top:1px solid var(--line);max-width:1080px;margin-inline:auto;padding:clamp(40px,6vw,72px) 0 clamp(8px,2vw,16px) clamp(56px,8vw,120px);position:relative}.quote-mark{font-family:var(--heading);color:var(--orange);font-size:clamp(6rem,12vw,10rem);line-height:1;position:absolute;top:clamp(20px,4vw,40px);left:0}.quote-band blockquote p{font-family:var(--heading);letter-spacing:-.03em;color:var(--ink);text-wrap:balance;font-size:clamp(1.6rem,3.1vw,2.7rem);line-height:1.22}.quote-band figcaption{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:28px;font-size:.72rem;display:flex}@media (max-width:1240px){.path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.path-grid{grid-template-columns:minmax(0,1fr);gap:12px}.path-card{padding:20px}.path-card>p:not(.path-stats){display:none}.path-links{flex-flow:wrap;gap:8px 20px}.quote-band{padding-top:72px;padding-left:0}.quote-mark{font-size:5.5rem;top:8px}}
@media (max-width:1240px){.header-phone,.search-trigger .search-label{display:none}.nav-link{padding:0 10px}.nav-link:after{left:10px;right:10px}.practice-grid,.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:20px}.people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-main{grid-template-columns:1fr 1fr}.hero-proof{grid-template-columns:repeat(2,minmax(0,auto))}.hero-proof div:nth-child(3){border-left:0;padding-left:0}.hero-proof div:nth-child(3):before{left:0}.hero-proof div:nth-child(n+3){border-top:1px solid #ffffff1f;margin-top:18px}}@media (max-width:1023px){:root{--header-h:64px}.topbar,.primary-nav,.header-actions>.btn{display:none}.header-actions{margin-left:auto}.menu-toggle{display:inline-flex}.search-trigger{justify-content:center;width:44px;height:44px;padding:0}.search-trigger kbd{display:none}.mobile-nav{inset:var(--header-h) 0 0 0;z-index:99;padding:8px var(--gutter) 120px;opacity:0;visibility:hidden;transition:opacity var(--fast) var(--ease), transform var(--med) var(--ease-out), visibility var(--fast);background:#fff;display:block;position:fixed;overflow-y:auto;transform:translateY(-8px)}.mobile-nav:before{content:"";inset:var(--header-h) 0 0;z-index:-1;pointer-events:none;background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);background-size:48px 48px;position:fixed;-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.mobile-nav.is-open{opacity:1;visibility:visible;transform:none}.mobile-nav-group{border-bottom:1px solid var(--line);counter-increment:mnav}.mobile-nav-group>button,.mobile-nav-group>a{width:100%;font-family:var(--heading);letter-spacing:-.03em;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:14px;padding:18px 2px;font-size:1.6rem;font-weight:500;display:flex}.mobile-nav-group>button:before,.mobile-nav-group>a:before{content:counter(mnav, decimal-leading-zero);font-family:var(--mono);letter-spacing:.08em;color:var(--faint);width:22px;font-size:.7rem}.mobile-nav-group>button svg{margin-left:auto}.mobile-nav-group svg{width:20px;height:20px;transition:transform var(--med) var(--ease-out)}.mobile-nav-group button[aria-expanded=true] svg{transform:rotate(180deg)}.mobile-nav-group ul{gap:0;padding:0 0 14px 36px;list-style:none;display:grid}.mobile-nav-group ul[hidden]{display:none}.mobile-nav-group ul a{color:var(--text);padding:10px 0;font-weight:600;display:block}.mobile-nav-group ul a:hover{color:var(--blue)}.mobile-nav-contact{gap:10px;margin-top:28px;display:grid}.mobile-nav-contact .btn{width:100%}body.menu-open{overflow:hidden}.split,.intro,.leader,.footprint-band,.case-body,.service-layout,.workflow,.enquiry-section,.page-hero-media,.cta-band,.footer-statement{grid-template-columns:minmax(0,1fr)}.sticky-card{position:static}.intro-media .intro-badge{bottom:16px;right:16px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid-featured .project-card:first-child{grid-area:auto/span 2}.logo-strip-inner{grid-template-columns:minmax(0,1fr);gap:16px}.leader-photo{max-width:420px}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist,.contact-methods{grid-template-columns:minmax(0,1fr)}.footprint-art{max-width:420px}.page-hero:after{width:64px;height:64px}}@media (max-width:767px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom));font-size:1rem}.action-bar{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:98;-webkit-backdrop-filter:blur(14px)saturate(1.4);background:#07101fe6;border:1px solid #ffffff1f;border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid;position:fixed;box-shadow:0 14px 34px -10px #04091480}.action-bar a{color:#fff;border-radius:3px;justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:.84rem;font-weight:700;display:flex}.action-bar svg{width:18px;height:18px;color:var(--signal-soft)}.action-bar a.is-primary{background:var(--orange);color:var(--night-950)}.action-bar a.is-primary svg{color:var(--night-950)}.hero{min-height:0}.hero-inner{padding-block:96px 36px}.hero:before{background:linear-gradient(#040914a6 0%,#040914e6 45%,#040914 100%)}.hero-coords{font-size:.62rem;top:18px}.hero .btn-row .btn{flex:100%}.hero-search{display:none!important}.hero-foot{grid-template-columns:minmax(0,1fr)}.hero-caption{display:none}.hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-proof div,.hero-proof div+div{padding:16px 12px 0 0}.hero-proof div:nth-child(2n){padding-left:16px}.hero-proof div:nth-child(2n):before{left:16px}.hero h1{font-size:2.5rem}.dim{font-size:.62rem}.section-head{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(odd){border-left:0;padding-left:0}.stat:nth-child(odd):before{left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}.section-navy .stat:nth-child(n+3){border-color:var(--night-line)}.footprint-band .stats{grid-template-columns:repeat(3,minmax(0,1fr))}.footprint-band .stat{padding:18px 10px 0}.footprint-band .stat:first-child{padding-left:0}.footprint-band .stat:nth-child(3){border-left:1px solid var(--night-line)}.footprint-band .stat:nth-child(n+3){border-top:0}.footprint-band .stat strong{font-size:2rem}.practice-grid,.sector-grid,.project-grid,.feature-grid,.quote-grid,.grid-2,.grid-3,.grid-4,.split-even,.case-gallery,.case-gallery-supporting,.adjacent{grid-template-columns:minmax(0,1fr)}.project-grid-featured .project-card:first-child{grid-column:auto}.project-grid-featured .project-card:first-child .project-card-media{aspect-ratio:4/3;min-height:0}.adjacent .adjacent-next{grid-column:auto}.practice-card{flex-direction:row;align-items:center;gap:16px;min-height:0;padding:16px}.practice-card h3{flex:1;margin-top:0;font-size:1rem}.practice-card p,.practice-card>.link-arrow,.practice-card>.practice-icon:after{display:none}.practice-card-cta{flex-direction:column;align-items:flex-start;padding:24px}.practice-card-cta>.link-arrow{display:inline-flex}.scroller{scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter) * -1);padding:8px var(--gutter) 20px;scrollbar-width:none;gap:14px;overflow-x:auto;border:0!important;display:flex!important}.scroller::-webkit-scrollbar{display:none}.scroller>*{scroll-snap-align:start;flex:0 0 84%}.process-steps.scroller>li{flex-basis:78%;padding-right:12px}.process-steps.scroller{border-top:0!important}.process-steps.scroller li{border-top:1px solid var(--line-strong)}.on-dark .process-steps.scroller li{border-color:var(--night-line-strong)}.sector-card .sector-logos,.intro-media:before{display:none}.intro-media .intro-badge{align-items:center;gap:14px;max-width:none;margin:-36px 16px 0;display:flex;position:relative;bottom:auto;right:auto}.intro-badge strong{font-size:2rem}.intro-badge span{margin-top:0}.people-grid{grid-template-columns:minmax(0,1fr)}.person{flex-direction:row}.person img{aspect-ratio:1;border-radius:2px;align-self:flex-start;width:108px;height:auto;margin:16px 0 16px 16px}.person-body{padding:16px}.scope-list{grid-template-columns:minmax(0,1fr)}.facts div{grid-template-columns:minmax(0,1fr);gap:2px}.enquiry-grid,.enquiry-details .enquiry-grid,.profile-card,.case-title{grid-template-columns:minmax(0,1fr)}.footer-main{grid-template-columns:minmax(0,1fr);gap:32px}.filters{padding:16px}.filter-label{width:100%;min-width:0}.filter-select{width:100%;max-width:100%}.process-tabs{display:flex}.process-tabs button{flex:1;padding-inline:8px;font-size:.7rem}.page-hero:after{display:none}.logo-strip{padding-block:20px}.cmd{max-height:calc(100dvh - 16px);margin-top:8px}.cmd-foot{display:none}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-card{min-height:0;padding:12px}.client-mark{height:52px}.client-mark img{max-width:100%}.cta-band{padding:32px 20px}.cta-option{gap:14px;min-width:0}.cta-option strong{overflow-wrap:anywhere}}@media print{.topbar,.site-header,.action-bar,.mobile-nav,.scroll-progress,.cmd{display:none!important}}
.page-enter{animation:page-enter .5s var(--ease-out) both}@keyframes page-enter{0%{opacity:.4;transform:translateY(10px)}}.reveal{transition:opacity .7s var(--ease-out) var(--reveal-delay,0s), transform .7s var(--ease-out) var(--reveal-delay,0s), clip-path 1s var(--ease-out) var(--reveal-delay,0s)}.reveal-waiting{opacity:0;transform:translateY(22px)}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.path-grid>*,.practice-grid>*,.sector-grid>*,.project-grid>*,.feature-grid>*,.process-steps>li,.quote-grid>*,.office-grid>*,.people-grid>*,.checklist>li,.stat,.client-grid>li{animation:linear both rise;animation-timeline:view();animation-range:entry entry 55%}.section-head{animation:linear both head-line;animation-timeline:view();animation-range:entry entry 70%}.scroller>*{animation:none}}@keyframes rise{0%{opacity:0;transform:translateY(28px)}}@keyframes head-line{0%{opacity:.4;border-top-color:#0000}}}@media (prefers-reduced-motion:reduce){html[data-scroll-behavior=smooth]{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.reveal-waiting{opacity:1;transform:none}.hero:after,.scroll-progress{display:none}.marquee{-webkit-mask-image:none;mask-image:none}.marquee-track{flex-wrap:wrap;justify-content:center;gap:18px 32px;width:auto;animation:none}.marquee-track li[aria-hidden=true],.marquee-track li:nth-child(n+13){display:none}}
