:root{--ink:#171b26;--paper:#f4efe7;--coral:#f05a47;--lime:#d7ed7b;--line:rgba(23,27,38,.18);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;opacity:.045;z-index:99;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.site-header{height:92px;display:flex;align-items:center;gap:40px;padding:0 max(24px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);margin-right:auto}.brand span{width:42px;height:42px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-style:italic;font-weight:600}.brand b{font-size:14px;letter-spacing:.04em}.site-header nav{display:flex;gap:32px}.site-header nav a{color:var(--ink);text-decoration:none;font-size:13px;position:relative}.site-header nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--coral);transition:.3s}.site-header nav a:hover:after,.site-header nav a.active:after{right:0}.pill,.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;border-radius:50px;text-decoration:none;font-weight:600}.pill{padding:12px 18px;border:1px solid var(--ink);color:var(--ink);font-size:12px}.pill span,.button span{transition:transform .3s}.pill:hover span,.button:hover span{transform:translate(3px,-3px)}.menu{display:none;background:none;border:0}.hero{min-height:calc(100vh - 92px);position:relative;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:60px;padding-top:60px;padding-bottom:80px}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:12px}.eyebrow span{width:36px;height:1px;background:var(--coral)}h1,h2,p{margin-top:0}.hero h1,.page-hero h1,.contact-hero h1{font-family:var(--serif);font-size:clamp(60px,7vw,105px);line-height:.92;letter-spacing:-.045em;margin:30px 0}.hero h1 em,.page-hero h1 em,.display em,.section-head em,.contact-hero em,.awards em{font-weight:500;color:var(--coral)}.lede,.page-lede{font-size:18px;line-height:1.7;max-width:620px;color:#5a5d65}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:38px}.button{padding:16px 24px;font-size:13px}.primary{background:var(--ink);color:#fff}.text-link{color:var(--ink);font-size:13px;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:4px}.hero-art{height:560px;position:relative;display:grid;place-items:center}.portrait-card{width:310px;height:430px;background:var(--ink);border-radius:160px 160px 20px 20px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 30px 70px rgba(23,27,38,.18)}.portrait-card:before{content:'';position:absolute;width:280px;height:280px;background:var(--coral);border-radius:50%;top:-100px;right:-100px}.portrait-card:after{content:'';position:absolute;width:200px;height:200px;border:1px solid rgba(255,255,255,.2);border-radius:50%;bottom:-60px;left:-50px}.monogram{font-family:var(--serif);font-size:150px;color:#fff;font-style:italic;letter-spacing:-35px;z-index:1}.monogram span{color:var(--lime)}.portrait-card p{position:absolute;bottom:25px;right:25px;color:#fff;font-size:9px;line-height:1.5;letter-spacing:.22em;text-align:right;z-index:2}.orbit{position:absolute;border:1px solid rgba(23,27,38,.2);border-radius:50%;animation:spin 18s linear infinite}.orbit-a{width:470px;height:470px}.orbit-b{width:390px;height:520px;animation-direction:reverse}.orbit:after{content:'';position:absolute;width:12px;height:12px;background:var(--coral);border-radius:50%;top:45px;left:55px}.float-card{position:absolute;background:white;padding:18px 20px;box-shadow:0 15px 50px rgba(23,27,38,.12);display:flex;flex-direction:column;z-index:4}.float-card b{font-family:var(--serif);font-size:38px;color:var(--coral)}.float-card span{font-size:9px;text-transform:uppercase;letter-spacing:.12em}.fc-one{left:0;bottom:65px}.fc-two{right:-10px;top:80px}.scroll-note{position:absolute;left:0;bottom:25px;font-size:10px;text-transform:uppercase;letter-spacing:.15em}.scroll-note span{color:var(--coral);margin-left:8px}.band{background:var(--ink);color:#fff}.intro{padding:130px 0}.split{display:grid;grid-template-columns:1fr 3fr;gap:60px}.section-no{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral)}.display,.section-head h2,.awards h2{font-family:var(--serif);font-size:clamp(44px,6vw,78px);line-height:1.02;letter-spacing:-.04em}.large-copy{font-size:21px;line-height:1.7;max-width:760px;color:#bdc0c8}.circle-link{margin-top:40px;width:130px;height:130px;border:1px solid rgba(255,255,255,.35);border-radius:50%;color:white;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:12px;font-size:12px;transition:.3s}.circle-link:hover{background:var(--coral);border-color:var(--coral);transform:rotate(-5deg)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding-top:100px;padding-bottom:100px}.metric{padding:20px 50px;border-left:1px solid var(--line)}.metric:first-child{border:0}.metric b{display:block;font-family:var(--serif);font-size:72px;color:var(--coral)}.metric span{font-size:13px;line-height:1.5}.expertise,.education,.capabilities{padding-top:110px;padding-bottom:130px}.section-head{display:grid;grid-template-columns:1fr 3fr;gap:60px;margin-bottom:70px}.service-list a{display:grid;grid-template-columns:70px 1.3fr 1fr 40px;gap:25px;align-items:center;color:var(--ink);text-decoration:none;border-top:1px solid var(--line);padding:32px 10px;transition:.3s}.service-list a:last-child{border-bottom:1px solid var(--line)}.service-list a:hover{background:var(--coral);color:white;padding-left:25px;padding-right:25px}.service-list span{font-size:11px}.service-list b{font-family:var(--serif);font-size:28px}.service-list p{margin:0;font-size:13px;line-height:1.5}.service-list i{font-style:normal;font-size:22px}.cta{padding:120px 0;background:var(--coral)}.cta h2{font-family:var(--serif);font-size:clamp(45px,6vw,82px);line-height:1;letter-spacing:-.04em}.cta h2 em{font-weight:500;color:var(--ink)}.eyebrow.light span{background:white}.light-button{background:white;color:var(--ink)}footer{background:#0e111a;color:#fff;padding:55px 0}footer .shell{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:center;gap:30px}.brand.inverse{color:white}.brand.inverse+ p{margin:0;color:#8e929d;font-size:12px}footer div div{display:flex;gap:20px}footer div div a{color:white;text-decoration:none;font-size:12px}footer small{color:#757984}.page-hero{padding-top:100px;padding-bottom:100px}.page-hero h1{font-size:clamp(55px,7vw,92px)}.page-lede{margin-left:auto;margin-right:10%;max-width:580px}.timeline-wrap{padding:100px 0}.timeline{margin-left:25%;margin-top:50px}.timeline article{display:grid;grid-template-columns:190px 1fr;border-top:1px solid rgba(255,255,255,.22);padding:45px 0}.timeline-date{font-size:10px;color:var(--coral);letter-spacing:.1em}.timeline-body>p{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:#aeb1b8}.timeline-body h2{font-family:var(--serif);font-size:40px}.timeline-body ul,.project-card ul{padding-left:20px;color:#c7c8cd;line-height:1.7;font-size:14px}.timeline-body li{margin-bottom:9px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.tags span,.tag-cloud span{border:1px solid rgba(255,255,255,.3);border-radius:30px;padding:8px 13px;font-size:10px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid var(--line);padding:24px 18px}th{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--coral)}td:first-child{font-family:var(--serif);font-size:21px}.projects{padding:100px 0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-card{min-height:580px;padding:55px;display:flex;flex-direction:column}.project-card>p{font-size:10px;letter-spacing:.16em}.project-card h2{font-family:var(--serif);font-size:50px;line-height:1.05}.project-card.coral{background:var(--coral);color:var(--ink)}.project-card.ink{border:1px solid rgba(255,255,255,.2)}.project-stat{margin-top:auto}.project-stat b{font-family:var(--serif);font-size:85px}.project-stat span{font-size:11px;text-transform:uppercase}.project-card.coral ul{color:var(--ink)}.awards{padding:110px 0}.award-list article{border-top:1px solid rgba(255,255,255,.22);padding:28px 0}.award-list b{display:block;font-family:var(--serif);font-size:27px}.award-list span{font-size:12px;color:#a8abb4}.contact-hero{background:var(--ink);color:white;padding:110px 0}.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:center}.contact-hero h1{font-size:clamp(55px,7vw,90px)}.contact-hero>div>div>p:last-child{color:#aeb1b8;line-height:1.7}.contact-panel{background:var(--paper);color:var(--ink);padding:38px}.contact-panel>p{font-size:10px;letter-spacing:.15em;color:var(--coral);margin-bottom:20px}.contact-panel a,.contact-panel>div{color:var(--ink);text-decoration:none;border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:1fr auto;position:relative}.contact-panel small{grid-column:1;display:block;color:#777;font-size:10px;margin-bottom:5px}.contact-panel b{grid-column:1;font-size:14px}.contact-panel span{grid-column:2;grid-row:1/3;align-self:center}.contact-bottom{padding-top:100px;padding-bottom:110px;display:grid;grid-template-columns:1fr 1.5fr auto;gap:50px;align-items:end}.contact-bottom h2{font-family:var(--serif);font-size:34px}.tag-cloud{display:flex;gap:9px;flex-wrap:wrap}.tag-cloud span{border-color:var(--line)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.15s}.delay-2{transition-delay:.3s}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:850px){.site-header{height:76px}.site-header nav{position:fixed;inset:76px 0 auto;background:var(--paper);display:flex;flex-direction:column;padding:35px 24px;transform:translateY(-140%);transition:.35s;z-index:-1;border-bottom:1px solid var(--line)}body.menu-open .site-header nav{transform:none}.menu{display:block;width:35px;height:35px;padding:7px}.menu i{display:block;height:1px;background:var(--ink);margin:7px 0}.header-cta{display:none}.hero{grid-template-columns:1fr;padding-top:70px}.hero-art{height:500px}.hero h1{font-size:62px}.scroll-note{display:none}.split,.section-head{grid-template-columns:1fr}.metrics{grid-template-columns:1fr}.metric{border-left:0;border-top:1px solid var(--line)}.service-list a{grid-template-columns:35px 1fr 30px}.service-list a p{display:none}footer .shell{grid-template-columns:1fr 1fr}footer .brand.inverse+ p{display:none}.timeline{margin-left:0}.timeline article{grid-template-columns:1fr;gap:18px}.project-grid,.contact-grid,.contact-bottom{grid-template-columns:1fr}.project-card{min-height:520px}.contact-bottom{align-items:start}}@media(max-width:520px){.shell{width:min(100% - 30px,1180px)}.hero h1,.page-hero h1,.contact-hero h1{font-size:48px}.hero-art{height:430px}.portrait-card{width:240px;height:350px}.monogram{font-size:115px}.orbit-a{width:330px;height:330px}.orbit-b{width:290px;height:390px}.float-card{padding:12px}.fc-two{right:0}.hero-actions{align-items:flex-start;flex-direction:column}.intro,.timeline-wrap,.projects,.contact-hero{padding:80px 0}.metrics{padding-top:60px;padding-bottom:60px}.project-card{padding:30px;min-height:500px}.project-card h2{font-size:38px}.project-stat b{font-size:65px}.timeline-body h2{font-size:32px}.table-wrap table{min-width:650px}.service-list b{font-size:22px}footer .shell{grid-template-columns:1fr}footer small{margin-top:15px}}
