/* Single monochrome identity. The photography supplies the hero's visual depth. */
:root{--base:#f5f5f3;--purple:#171719;--ink:#171719;--muted:#606064;--orange:#171719;--surface:#ffffffed;--surface-solid:#fdfdfb;--border:#ffffffed;--rule:#c9c9c6;--soft:#e5e5e2;--on-accent:#fff;--hover:#39393d;--shadow:#15151912}
.page{position:relative}.header{position:absolute;top:0;left:0;right:0;margin:20px 28px;background:#fffffff2;border-color:#ffffffb8;box-shadow:0 8px 35px #00000010;border-radius:18px}.hero{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;padding:180px max(6.5vw,28px) 150px;text-align:left;background:#202022;color:#fff}.hero-content{position:relative;z-index:2;width:100%;max-width:1350px}.hero-eyebrow{display:block;font-family:Consolas,'Liberation Mono',monospace;font-size:9px;letter-spacing:2px;color:#ffffffd9;margin-bottom:32px;line-height:1.8}.hero h1{font-size:clamp(54px,6.6vw,112px);font-weight:400;letter-spacing:-.055em;line-height:1.07;max-width:1250px;margin:0;color:#fff;text-wrap:balance}.hero h1>span{display:block}.hero h1 em{color:#fff;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.055em}.hero p{font-size:clamp(16px,1.3vw,22px);color:#fffffff0;max-width:590px;line-height:1.7;letter-spacing:0;margin:32px 0 0;text-wrap:pretty}.london-slides{position:absolute;inset:0;z-index:0;overflow:hidden;background:#202022}.london-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1);opacity:0;transition:opacity 1.8s ease-in-out}.london-photo.is-active{opacity:1}.photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000000b8 0%,#0000008f 50%,#00000035 100%),linear-gradient(0deg,#0000006b,transparent 32%,transparent 85%,#00000025)}
.photo-controls{position:absolute;z-index:3;left:max(6.5vw,28px);bottom:35px;display:flex;align-items:center;gap:5px;color:#fff}.photo-location{font-family:Consolas,'Liberation Mono',monospace;font-size:9px;letter-spacing:2px;margin-right:22px;white-space:nowrap}.photo-dot,.photo-pause{width:44px;height:44px;display:grid;place-items:center;border:0;background:none;color:#fff;cursor:pointer;padding:0;border-radius:50%}.photo-dot span{display:block;width:21px;height:2px;background:#ffffff55;transition:background .2s}.photo-dot[aria-pressed=true] span{background:#fff}.photo-dot:disabled{opacity:.35;cursor:default}.photo-pause{margin-left:10px;border:1px solid #ffffff55}.photo-pause svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5}.photo-pause:hover{background:#ffffff18}.photo-pause:disabled{opacity:.5;cursor:default}.hero a:focus-visible,.hero button:focus-visible{outline:2px solid #fff;outline-offset:3px}.photo-credit{position:absolute;z-index:3;right:max(6.5vw,28px);bottom:49px;font-size:9px;letter-spacing:.2px;color:#ffffffc4}.photo-credit:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.site-content{padding-top:0}.site-content .expertise{border-top:0}.site-content .original-logo{mix-blend-mode:multiply}.site-content .original-logo img{filter:none}
@media(min-width:1700px){.hero{min-height:100svh;padding-top:190px;padding-bottom:165px}}
@media(max-width:1150px){.hero h1{font-size:clamp(53px,7vw,80px)}.hero p{font-size:18px;max-width:520px}.header{margin-inline:20px}}
@media(max-width:800px){.header{margin:12px;top:0}.hero{min-height:100svh;padding:155px 28px 155px;align-items:center}.hero h1{font-size:clamp(43px,7.6vw,64px);line-height:1.1;text-wrap:initial}.hero h1>span{max-width:none;margin:0}.hero-eyebrow{font-size:7px;letter-spacing:1.5px;max-width:310px;line-height:1.8;margin-bottom:28px}.hero p{font-size:17px;max-width:450px;margin-top:26px}.photo-shade{background:linear-gradient(90deg,#000000b3,#00000073),linear-gradient(0deg,#00000061,transparent 42%)}.photo-controls{left:28px;bottom:48px;gap:0}.photo-location{font-size:7px;letter-spacing:1px;margin-right:12px}.photo-pause{width:40px;height:40px;margin-left:8px}.photo-credit{left:28px;right:auto;bottom:23px;font-size:8px}.london-photo{object-position:68% 50%!important}}
@media(max-width:440px){.hero{padding:155px 24px 150px;min-height:100svh}.hero h1{font-size:clamp(38px,10.5vw,46px);line-height:1.12}.hero p{font-size:16px;max-width:310px}.hero-eyebrow{font-size:6px;letter-spacing:1.4px}.photo-controls,.photo-credit{left:24px}}
@media(prefers-reduced-motion:reduce){.london-photo,.photo-dot span{transition:none}.hero-enter .hero h1,.hero-enter .hero p{animation:none;filter:none}}
