:root{--background:#f7f6f2;--text:#242923;--muted:#62685f;--accent:#b23f24;--line:#d8dbd2;--surface:#e9ece4;--page-width:1248px}*{box-sizing:border-box}body{background:var(--background);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}::selection{color:var(--text);background:#edd9bf}:focus-visible{outline:3px solid var(--accent);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}.container{width:min(var(--page-width), calc(100% - 112px));margin-inline:auto}.skip-link{z-index:10;background:var(--text);color:#fff;padding:12px 20px;position:absolute;top:-100px;left:24px}.skip-link:focus{top:16px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:106px;display:flex}.wordmark{letter-spacing:-.4px;align-items:center;gap:11px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);border-radius:50%;width:18px;height:18px;position:relative}.brand-mark:after{content:"";background:var(--background);border-radius:50%;width:8px;height:8px;position:absolute;top:5px;left:5px}.site-nav{align-items:center;gap:36px;font-size:14px;display:flex}.site-nav a{padding-block:8px;text-decoration:none}.site-nav a:hover,.site-nav a[aria-current]{text-decoration:underline;text-decoration-thickness:1px}.site-nav .contact-link{margin-left:16px}.eyebrow{text-transform:uppercase;letter-spacing:1.9px;font-size:11px;font-weight:600}.muted{color:var(--muted)}.accent{color:var(--accent)}.hero{padding:78px 0 69px}.hero .eyebrow{margin-bottom:29px}.hero-layout{grid-template-columns:1.7fr 1fr;align-items:end;gap:72px;display:grid}.hero h1{letter-spacing:-5px;font-size:clamp(54px,6.6vw,94px);line-height:1.04}.hero h1 em{font-family:Georgia,Times New Roman,serif;font-weight:400}.hero-intro{justify-self:end;max-width:310px;padding-bottom:6px}.hero-intro p{color:var(--muted);font-size:16px;line-height:1.75}.text-link{border-bottom:1px solid;align-items:center;gap:16px;padding-bottom:4px;font-size:14px;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--accent)}.hero-intro .text-link{margin-top:26px}.section-heading{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-top:23px;padding-bottom:25px;display:flex}.section-heading h2{text-transform:uppercase;letter-spacing:1.9px;font-size:11px;font-weight:600}.section-heading p{color:var(--muted);font-size:12px}.project-list{margin:0;padding:0;list-style:none}.project-item{border-bottom:1px solid var(--line)}.project-card{grid-template-columns:.85fr 1.4fr;gap:56px;padding:36px 0;text-decoration:none;display:grid}.project-copy{flex-direction:column;align-items:flex-start;padding-block:12px;display:flex}.project-number{color:var(--muted);margin-bottom:41px;font-size:12px}.project-card h3{letter-spacing:-2px;margin-bottom:17px;font-size:clamp(32px,3.3vw,48px);line-height:1.1}.project-description{color:var(--muted);max-width:300px;font-size:15px}.project-tags{flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-top:23px;display:flex}.tag{border:1px solid var(--line);letter-spacing:.2px;border-radius:20px;padding:5px 10px;font-size:10px}.project-action{align-items:center;gap:22px;margin-top:auto;font-size:13px;display:flex}.project-action .arrow{transition:transform .18s}.project-card:hover .arrow{transform:translate(4px,-4px)}.project-card:hover h3{color:var(--accent)}.project-art{aspect-ratio:1.55;object-fit:cover;width:100%}.contact-banner{justify-content:space-between;align-items:end;gap:40px;padding:91px 0 78px;display:flex}.contact-banner .eyebrow{margin-bottom:19px}.contact-banner h2{letter-spacing:-2px;font-size:clamp(36px,4vw,58px);line-height:1.15}.round-link{border:1px solid var(--text);border-radius:50%;flex-shrink:0;place-items:center;width:66px;height:66px;font-size:29px;text-decoration:none;display:grid}.round-link:hover{background:var(--text);color:var(--background)}.site-footer{border-top:1px solid var(--line);min-height:96px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:24px;font-size:12px;display:flex}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline}.back-link{color:var(--muted);align-items:center;gap:12px;margin-top:42px;font-size:13px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.project-hero{padding:47px 0 48px}.project-hero .eyebrow{color:var(--accent);margin-bottom:24px}.project-hero h1{letter-spacing:-4px;margin-bottom:23px;font-size:clamp(56px,7vw,96px);line-height:1.05}.project-hero .lead{letter-spacing:-.5px;max-width:690px;color:var(--muted);font-size:clamp(20px,2.1vw,28px);line-height:1.45}.project-meta{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:32px;margin:41px 0 0;padding-top:26px;display:grid}.project-meta dt{text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);margin-bottom:7px;font-size:10px}.project-meta dd{margin:0;font-size:14px}.detail-art{margin:0}.detail-art img{aspect-ratio:1.9;object-fit:cover;width:100%}.detail-art figcaption{color:var(--muted);margin-top:10px;font-size:11px}.case-section{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:80px;padding:67px 0;display:grid}.case-section h2{letter-spacing:-.7px;font-size:26px}.prose{max-width:700px}.prose p{color:var(--muted);font-size:17px}.prose p+p{margin-top:19px}.prose h3{letter-spacing:-.5px;margin-bottom:17px;font-size:22px;line-height:1.4}.process-list{counter-reset:process;margin:0;padding:0;list-style:none}.process-list li{counter-increment:process;padding-left:44px;position:relative}.process-list li+li{margin-top:30px}.process-list li:before{content:"0" counter(process);color:var(--accent);font-size:11px;position:absolute;top:4px;left:0}.process-list h3{margin-bottom:6px;font-size:18px}.process-list p{font-size:15px}.next-project{justify-content:space-between;align-items:center;gap:28px;padding:63px 0;text-decoration:none;display:flex}.next-project .eyebrow{color:var(--muted);margin-bottom:13px}.next-project h2{letter-spacing:-1.5px;font-size:39px}.next-project:hover h2{color:var(--accent)}.next-project>span{font-size:38px}.about-hero{grid-template-columns:1.45fr 1fr;align-items:start;gap:90px;padding:84px 0 80px;display:grid}.about-hero .eyebrow{margin-bottom:27px}.about-hero h1{letter-spacing:-3.5px;margin-bottom:30px;font-size:clamp(52px,5.6vw,80px);line-height:1.08}.about-hero h1 em{font-family:Georgia,Times New Roman,serif}.about-hero .prose{max-width:510px}.about-hero .text-link{margin-top:31px}.portrait-placeholder{margin:0}.portrait-placeholder img{aspect-ratio:4/4.5;object-fit:cover;width:100%}.portrait-placeholder figcaption{color:var(--muted);margin-top:10px;font-size:11px}.about-section{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:80px;padding:55px 0;display:grid}.about-section h2{letter-spacing:-.7px;font-size:26px}.experience-list{margin:0;padding:0;list-style:none}.experience-item{grid-template-columns:1fr auto;gap:24px;display:grid}.experience-item+.experience-item{border-top:1px solid var(--line);margin-top:28px;padding-top:28px}.experience-item h3{letter-spacing:-.4px;font-size:20px}.experience-item .company{color:var(--muted);margin-top:3px;font-size:14px}.experience-item .dates{color:var(--muted);padding-top:5px;font-size:12px}.experience-item .description{color:var(--muted);max-width:520px;margin-top:15px;font-size:14px}.skills-list{color:var(--muted);grid-template-columns:1fr 1fr;gap:13px 40px;margin:0;padding:0;list-style:none;display:grid}.contact-section{padding-bottom:88px;scroll-margin-top:30px}.contact-section .prose>p{margin-bottom:24px}.email-link{letter-spacing:-.8px;overflow-wrap:anywhere;font-size:clamp(21px,3vw,34px)}.contact-details{flex-wrap:wrap;gap:35px;margin-top:26px;font-size:13px;display:flex}.template-note{color:var(--muted);margin-top:30px;font-size:12px}@media (width<=900px){.container{width:calc(100% - 64px)}.hero-layout{grid-template-columns:1.5fr 1fr;gap:35px}.hero h1{letter-spacing:-3px}.project-card{grid-template-columns:1fr 1.25fr;gap:32px}.project-number{margin-bottom:24px}.project-card h3{font-size:35px}.project-art{height:100%;min-height:290px}.case-section,.about-section{grid-template-columns:1fr 2fr;gap:40px}.about-hero{gap:40px}.about-hero h1{letter-spacing:-2px}}@media (width<=640px){.container{width:calc(100% - 40px)}.site-header{gap:16px;min-height:83px}.wordmark{gap:8px;font-size:14px}.brand-mark{width:15px;height:15px}.brand-mark:after{width:7px;height:7px;top:4px;left:4px}.site-nav{gap:20px;font-size:13px}.site-nav .contact-link{display:none}.hero{padding:49px 0 46px}.hero .eyebrow{margin-bottom:24px}.hero-layout{grid-template-columns:1fr;gap:29px}.hero h1{letter-spacing:-2.5px;font-size:clamp(47px,11.6vw,72px)}.hero-intro{justify-self:start;max-width:340px}.hero-intro p{font-size:15px}.hero-intro .text-link{margin-top:18px}.section-heading{align-items:start;padding-top:20px;padding-bottom:0}.section-heading p{text-align:right;max-width:125px;font-size:10px}.project-card{grid-template-columns:1fr;gap:22px;padding:28px 0 34px}.project-copy{padding:0}.project-number{margin-bottom:17px}.project-card h3{margin-bottom:12px;font-size:37px}.project-description{max-width:350px}.project-tags{margin-bottom:20px;padding-top:18px}.project-art{aspect-ratio:1.35;height:auto;min-height:0}.contact-banner{gap:20px;padding:55px 0}.contact-banner h2{letter-spacing:-1.4px;font-size:35px}.round-link{width:52px;height:52px;font-size:25px}.site-footer{min-height:84px;font-size:11px}.back-link{margin-top:29px}.project-hero{padding:34px 0}.project-hero h1{letter-spacing:-3px;font-size:58px}.project-hero .lead{font-size:22px}.project-meta{grid-template-columns:1fr 1fr;gap:23px;margin-top:31px}.detail-art img{aspect-ratio:1.3}.case-section,.about-section{grid-template-columns:1fr;gap:25px;padding:37px 0}.prose p{font-size:16px}.next-project{padding:39px 0}.next-project h2{font-size:32px}.about-hero{grid-template-columns:1fr;gap:36px;padding:47px 0 43px}.about-hero h1{letter-spacing:-2.5px;font-size:56px}.portrait-placeholder{max-width:430px}.portrait-placeholder img{aspect-ratio:1.1}.experience-item{grid-template-columns:1fr;gap:5px}.experience-item .dates{grid-row:1;padding:0}.experience-item .description{margin-top:11px}.skills-list{gap:12px 25px;font-size:14px}.contact-section{padding-bottom:55px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home{--home-top:#0c081c;--home-bottom:#3701ea;--home-panel:#0e0820;--home-art:#3701e9;--home-text:#fff;--home-gutter:clamp(20px, 5.76vw, 83px);--home-card-gutter:clamp(16px, 3.82vw, 55px);background:linear-gradient(180deg, var(--home-top) 0%, var(--home-bottom) 100%);min-height:100vh;color:var(--home-text);font-family:Poppins,Arial,Helvetica,sans-serif;font-weight:300}.home ::selection{background:var(--home-text);color:var(--home-bottom)}.home :focus-visible{outline:2px solid var(--home-text);outline-offset:6px}.home .skip-link{background:var(--home-text);color:var(--home-top)}.home a{text-underline-offset:6px;text-decoration-thickness:1px}.home-header{padding:49px var(--home-gutter) 0;justify-content:space-between;align-items:flex-start;gap:32px;padding-right:clamp(20px,7.3vw,105px);display:flex}.home-brand{flex-direction:column;gap:22px;text-decoration:none;display:flex}.home-brand img{width:clamp(150px,15.6vw,225px);height:auto}.home-tagline{letter-spacing:.6px;font-size:18px;font-weight:400;line-height:1.3}.home-nav{gap:56px;padding-top:46px;font-size:16px;font-weight:400;display:flex}.home-nav a{text-decoration:none}.home-nav a:hover{text-decoration:underline}.home-hero{padding:clamp(64px, 10vw, 145px) var(--home-gutter) clamp(64px, 8.75vw, 126px)}.home-intro{letter-spacing:0;max-width:980px;font-size:clamp(25px,2.64vw,38px);font-weight:300;line-height:1.5}.home-intro a{text-underline-offset:7px;text-decoration:underline;text-decoration-thickness:2px}.home-intro a:hover{text-decoration-thickness:3px}.home-work{padding-inline:var(--home-card-gutter)}.home-projects{flex-direction:column;gap:clamp(48px,6vw,87px);margin:0;padding:0;list-style:none;display:flex}.home-project{grid-template-columns:693fr 636fr;text-decoration:none;display:grid}.home-project-copy{background:var(--home-panel);padding:clamp(28px,4.65vw,67px) clamp(24px,4.65vw,67px)}.home-project h3{letter-spacing:0;font-size:clamp(26px,2.64vw,38px);font-weight:300;line-height:1.3}.home-project p{margin-top:10px;font-size:clamp(16px,1.39vw,20px);font-weight:300;line-height:1.5}.home-project:hover h3{text-underline-offset:8px;text-decoration:underline}.home-project-art{aspect-ratio:636/555;background:var(--home-art);position:relative}.home-project-art img{width:100%;height:auto;transition:transform .3s;position:absolute;bottom:0;right:0}.home-project:hover .home-project-art img{transform:translateY(-8px)}.home-more{justify-content:center;padding-top:66px;display:flex}.home-pill{border:2px solid var(--home-text);border-radius:999px;justify-content:center;align-items:center;min-width:156px;height:48px;padding:0 24px;font-size:20px;text-decoration:none;display:inline-flex}.home-pill:hover{background:var(--home-text);color:var(--home-bottom)}.home-cta{padding:clamp(64px,6.2vw,89px) clamp(20px,5.35vw,77px) 0}.home-eyebrow{letter-spacing:0;font-size:20px;font-weight:600;line-height:1.4}.home-cta-text{max-width:980px;margin-top:22px;font-size:clamp(24px,2.36vw,34px);line-height:1.68}.home-cta-link{align-items:center;gap:18px;margin-top:30px;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.home-cta-link span{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.home-cta-link svg{transition:transform .2s}.home-cta-link:hover svg{transform:translate(3px,3px)}.home-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:clamp(80px,13.25vw,191px) clamp(20px,4.1vw,59px) 54px clamp(20px,5.35vw,77px);font-size:16px;font-weight:400;display:flex}.home-footer-links{gap:31px;display:flex}.home-footer a{text-decoration:none}.home-footer a:hover{text-decoration:underline}@media (width<=760px){.home-header{flex-direction:column;gap:28px;padding-top:32px}.home-nav{flex-wrap:wrap;gap:28px;padding-top:0}.home-tagline{font-size:15px}.home-brand{gap:14px}.home-project{grid-template-columns:1fr}.home-project-art{margin-top:0}.home-intro a,.home-intro a:hover{text-decoration-thickness:1px}}.home-nav a[aria-current]{text-underline-offset:10px;text-decoration:underline;text-decoration-thickness:2px}.home-header{z-index:30;position:relative}.home-nav button{color:inherit;font:inherit;line-height:inherit;cursor:pointer;text-underline-offset:6px;background:0 0;border:0;padding:0;text-decoration-thickness:1px}.home-nav button:hover{text-decoration:underline}.home-nav button[aria-expanded=true]{text-underline-offset:10px;text-decoration:underline;text-decoration-thickness:2px}.menu-open{overflow:hidden}.menu-open .home-nav a[aria-current]{text-decoration:none}.services-menu{z-index:20;padding:calc(var(--header-bottom,200px) + clamp(32px, 6.4vw, 92px)) var(--home-gutter) 48px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;visibility:hidden;background:#0c081cb8;transition:opacity .36s,visibility 0s linear .36s;position:fixed;inset:0;overflow-y:auto}.services-menu.is-open{opacity:1;visibility:visible;transition:opacity .36s,visibility}.services-menu ul{flex-direction:column;align-items:flex-start;gap:clamp(20px,2.6vw,38px);margin:0;padding:0;list-style:none;display:flex}.services-menu li{opacity:0;transition:opacity .3s,transform .3s;transform:translateY(10px)}.services-menu.is-open li{opacity:1;transition:opacity .42s ease calc(80ms + var(--i) * 50ms), transform .42s ease calc(80ms + var(--i) * 50ms);transform:none}.services-menu a{font-size:clamp(21px,1.8vw,26px);font-weight:300;line-height:1.5;text-decoration:none}.services-menu a:hover{text-decoration:underline}@media (prefers-reduced-motion:reduce){.services-menu,.services-menu.is-open,.services-menu li,.services-menu.is-open li{transition-duration:0s;transition-delay:0s;transform:none}}.work-title{padding:clamp(48px, 6.6vw, 95px) var(--home-gutter) 0;letter-spacing:0;font-size:clamp(28px,2.64vw,38px);font-weight:300;line-height:1.3}.work-grid{flex-wrap:wrap;justify-content:center;gap:clamp(20px,2.9vw,42px) clamp(20px,2.78vw,40px);margin:0;padding:clamp(40px,4.65vw,67px) clamp(20px,5.35vw,77px) 0;list-style:none;display:flex}.work-grid li{flex:0 0 calc(33.3333% - clamp(20px,2.78vw,40px)/1.5)}.work-tile{aspect-ratio:1;text-align:center;isolation:isolate;background:#2a2138;place-items:center;padding:24px;text-decoration:none;display:grid;position:relative;overflow:hidden}.work-tile:before{content:"";z-index:-1;background:linear-gradient(#3a2c42b8,#1e142cb8),url(/assets/airport-tarmac-DjgWrQ5L.png) 62% 70%/cover;transition:transform .4s;position:absolute;inset:0}.work-tile span{max-width:300px;font-size:clamp(20px,1.8vw,26px);font-weight:600;line-height:1.45}.work-tile:hover:before{transform:scale(1.05)}.work-tile:hover span{text-underline-offset:6px;text-decoration:underline}.work-footer{padding-top:clamp(56px,5.35vw,77px)}.case-hero,.case-next{background:linear-gradient(#2c2238bd,#1c1428bd),url(/assets/airport-tarmac-DjgWrQ5L.png) 50% 65%/cover}.case-hero{min-height:clamp(460px,46.3vw,667px);padding-bottom:64px}.case-hero-copy{padding:clamp(48px, 6.6vw, 95px) var(--home-gutter) 0}.case-title{letter-spacing:0;font-size:clamp(30px,2.64vw,38px);font-weight:300;line-height:1.3}.case-subtitle{margin-top:14px;font-size:clamp(17px,1.39vw,20px);font-weight:300;line-height:1.4}.case-body{padding:clamp(48px,6.2vw,89px) clamp(20px,3.82vw,55px) clamp(64px,8.1vw,117px)}.case-row{grid-template-columns:minmax(0,636fr) minmax(0,465fr);align-items:start;column-gap:clamp(32px,8vw,115px);padding-right:clamp(0px,7.9vw,114px);display:grid}.case-row img{background:#fff;width:100%}.case-text{padding-top:2px;font-size:clamp(16px,1.25vw,18px);line-height:1.5}.case-text p+p{margin-top:1.5em}.case-skills{font-weight:600}.case-media{background:var(--home-panel);height:clamp(220px,37.5vw,540px);margin:44px 0 80px}.case-next{min-height:clamp(400px,46.3vw,667px);padding:100px var(--home-gutter) 64px;flex-direction:column;justify-content:center;display:flex}.case-next-link{margin-top:44px}.case-footer{background:#3302d5;padding:37px clamp(20px,4.65vw,69px) 37px clamp(20px,5.35vw,77px)}.case-text h2{letter-spacing:0;margin-bottom:20px;font-size:clamp(22px,1.8vw,26px);font-weight:600;line-height:1.3}.case-text h3{letter-spacing:0;margin:1.8em 0 .6em;font-size:clamp(17px,1.32vw,19px);font-weight:600;line-height:1.4}.case-text h2+h3{margin-top:0}.case-solution{border-top:1px solid #ffffff38;grid-template-columns:minmax(0,636fr) minmax(0,465fr);align-items:start;column-gap:clamp(32px,8vw,115px);margin-top:clamp(64px,7vw,100px);padding:clamp(48px,5vw,72px) clamp(0px,7.9vw,114px) 0 0;display:grid}.case-reflection{margin:0;font-size:clamp(21px,1.95vw,28px);font-weight:300;line-height:1.5}.case-reflection:before{content:"";background:linear-gradient(90deg,#7b5cff,#3302d5);width:56px;height:3px;margin-bottom:28px;display:block}@media (width<=760px){.case-solution{grid-template-columns:1fr;row-gap:40px;padding-right:0}}@media (width<=900px){.work-grid li{flex-basis:calc(50% - clamp(20px,2.78vw,40px)/2)}}@media (width<=760px){.case-row{grid-template-columns:1fr;row-gap:32px;padding-right:0}.case-media{margin:40px 0 48px}}@media (width<=520px){.work-grid li{flex-basis:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}
