@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--ink:#333;--text:#777;--nav:#444;--line:#7f7f7f;--bar:#1a1a1a;--band:#2f2f2f;--accent:#f0f;--gold:#c5b358;--silver:silver;--bronze:#8c7853;--wrap:970px;--sans:"europa", "Helvetica Neue", Helvetica, Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#fbfbfb url(/img/site/pattern.png);margin:0;font-size:14px;line-height:1.66;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip{background:var(--ink);color:#fff;z-index:100;padding:.75rem 1rem;position:absolute;top:0;left:-9999px}.skip:focus{left:0}.wrap{width:min(var(--wrap), 100% - 40px);margin-inline:auto}.site-header{height:125px}.site-header .wrap{justify-content:space-between;align-items:center;height:100%;display:flex}.logo{flex:none;width:200px;margin-left:5px;display:block}.logo img{width:200px;height:auto}.site-nav{margin-right:5px;display:flex}.site-nav a{letter-spacing:1px;text-transform:uppercase;color:var(--nav);padding:2px 20px 0;font-size:14px;font-weight:600;line-height:20px;text-decoration:none;transition:color .2s}.site-nav a:hover{color:var(--accent)}.site-nav a:last-child{padding-right:0}.menu-toggle{appearance:none;cursor:pointer;width:44px;height:44px;color:var(--nav);background:0 0;border:0;margin-right:-10px;padding:0;display:none}.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{content:"";background:currentColor;width:20px;height:3px;margin:0 auto;display:block;position:relative}.menu-toggle span:before{position:absolute;top:-7px;left:0;right:0}.menu-toggle span:after{position:absolute;top:7px;left:0;right:0}@media (width<=960px){.site-header{z-index:10;height:88px;position:relative}.logo,.logo img{width:150px;margin-left:0}.menu-toggle{display:block}.site-nav{background:#fbfbfb url(/img/site/pattern.png);border-bottom:1px solid #e2e2e2;flex-direction:column;margin:0;padding:10px 20px 20px;display:none;position:absolute;top:100%;left:0;right:0}.site-header.is-open .site-nav{display:flex}.site-nav a,.site-nav a:last-child{padding:12px 0}}.hero{text-align:center;padding:30px 0 0}.hero-title{letter-spacing:-.01em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(34px,5.2vw,60px);font-weight:400;line-height:1.08}.hero-sub{max-width:620px;color:var(--text);text-wrap:balance;margin:22px auto 0;font-size:clamp(16px,1.6vw,20px);line-height:1.55}.filters{flex-wrap:wrap;justify-content:center;gap:0 20px;padding:39px 0 38px;display:flex}.filter{appearance:none;cursor:pointer;line-height:13px;font:700 13px/13px var(--sans);letter-spacing:1px;color:var(--line);background:0 0;border:2px solid #0000;padding:11px 12px;transition:border-color .2s,color .2s}.filter:hover{color:var(--ink)}.filter.is-active{border-color:var(--line)}.grid{grid-template-columns:repeat(4,1fr);display:grid}@media (width<=1139px){.grid{grid-template-columns:repeat(3,1fr)}}@media (width<=960px){.grid{grid-template-columns:repeat(2,1fr);margin-inline:20px}}@media (width<=700px){.grid{grid-template-columns:1fr}}.card{aspect-ratio:1;background:#ddd;text-decoration:none;display:block;position:relative;overflow:hidden}.card-media{position:absolute;inset:0}.card-media img{object-fit:cover;width:100%;height:100%}.card-placeholder{background:#ddd;width:100%;height:100%}.card:after{content:"";opacity:0;pointer-events:none;background:#000;transition:opacity .3s;position:absolute;inset:0}.card-title{z-index:2;text-align:center;background:var(--bar);color:#fff;letter-spacing:1px;text-transform:uppercase;justify-content:center;align-items:center;height:88px;padding:0 20px 22px;font-size:14px;font-weight:700;line-height:18px;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.card:hover:after,.card:focus-visible:after{opacity:.4}.card:hover .card-title,.card:focus-visible .card-title{transform:none}.grid-empty{text-align:center;padding:3rem 0}.orn{width:min(var(--wrap), 100% - 40px);color:var(--ink);align-items:center;margin:40px auto;display:flex}.orn:before,.orn:after{content:"";border-top:2px solid;flex:1}.orn-title{text-transform:uppercase;border-left:2px solid;border-right:2px solid;margin:0;padding:0 36px;font-size:40px;font-weight:400;line-height:46px}@media (width<=560px){.orn-title{padding:0 20px;font-size:28px;line-height:34px}}.awards{background:var(--band) url(/img/site/pattern-dark.png) repeat;color:#fff;margin-top:40px;padding:125px 0 94px;scroll-margin-top:0}.awards .orn{color:#fff;margin:0 auto 35px}.awards-grid{grid-template-columns:repeat(4,1fr);gap:20px 0;width:min(1000px,100% - 40px);margin:0 auto;padding:0;list-style:none;display:grid}@media (width<=760px){.awards-grid{grid-template-columns:repeat(2,1fr)}}.flip{perspective:900px;outline-offset:-4px;height:200px}.flip-inner{height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.7,.2,1);position:relative}.flip:hover .flip-inner,.flip:focus .flip-inner,.flip:focus-within .flip-inner{transform:rotateY(180deg)}.flip-face{text-align:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;flex-direction:column;justify-content:flex-start;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.flip-back{justify-content:center;transform:rotateY(180deg)}.trophy{width:60px;height:60px;margin:20px 0 46px}.flip-name{color:#777;font-size:20px;line-height:23px}.flip-back .flip-name{color:var(--tier);margin-bottom:10px}.flip-desc{color:#bbb;font-size:16px;line-height:22px}.tier-gold{--tier:var(--gold)}.tier-silver{--tier:var(--silver)}.tier-bronze{--tier:var(--bronze)}.trophy{color:var(--tier)}.experience .orn{margin:130px auto 80px}.jobs{width:min(var(--wrap), 100% - 40px);margin:0 auto;padding:0;list-style:none}.job{grid-template-columns:1fr 1fr;column-gap:30px;margin-bottom:40px;font-size:16px;line-height:26.5px;display:grid}.job-years{text-align:right;font-style:italic}.job-title{color:var(--ink);flex-direction:column;margin:0;font-size:16px;font-weight:700;line-height:26.5px;display:flex}.job-org{margin:0}.job-clients{margin:20px 0 0;font-style:italic}@media (width<=700px){.job{grid-template-columns:1fr;margin-bottom:32px}.job-years{text-align:left}}.resume{text-align:center;padding:30px 0 110px}.btn-outline{border:2px solid var(--line);color:var(--line);align-items:center;gap:14px;padding:15px 24px;font-size:16px;line-height:25px;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.btn-outline:hover{color:var(--ink);border-color:var(--ink)}.btn-outline svg{fill:currentColor;width:16px;height:20px}.site-footer{background:var(--band) url(/img/site/pattern-dark.png) repeat;color:gray;text-align:center;letter-spacing:1px;padding:26px 20px 30px;font-size:13px}.site-footer a{text-decoration:none}.site-footer a:hover{color:#fff}.project{padding-bottom:60px}.project-title{text-align:center;letter-spacing:3px;text-transform:uppercase;color:#555;margin:39px 0 80px;font-size:18px;font-weight:400;line-height:26px}.project-visit{margin:-40px 0 -52px;line-height:0}.btn-visit{border:2px solid var(--ink);color:var(--ink);letter-spacing:2px;text-transform:uppercase;padding:12px 30px;font-size:12px;font-weight:700;line-height:26px;text-decoration:none;transition:color .2s,border-color .2s;display:inline-block}.btn-visit:hover{color:var(--accent);border-color:var(--accent)}.stack{width:min(var(--wrap), 100% - 40px);justify-items:center;gap:80px;margin-inline:auto;padding:0 35px 0 5px;display:grid}@media (width<=1010px){.stack{padding:0}}.shot{max-width:100%;margin:0}.shot img{width:auto;max-width:100%;margin-inline:auto}.shot-lead,.shot-lead img{width:100%}.video{aspect-ratio:16/9;background:#111;width:min(884px,100%);position:relative}.video-trigger{cursor:pointer;background:#111;border:0;width:100%;padding:0;position:absolute;inset:0}.video-trigger img{object-fit:cover;width:100%;height:100%}.video-bg{background:#111;position:absolute;inset:0}.video-play{color:#fff;place-items:center;transition:color .2s;display:grid;position:absolute;inset:0}.video-trigger:hover .video-play{color:var(--accent)}.video iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.project-nav{border-top:2px solid #e2e2e2;justify-content:space-between;gap:2rem;margin-top:90px;padding-top:24px;display:flex}.pn{flex-direction:column;gap:2px;max-width:45%;text-decoration:none;display:flex}.pn-next{text-align:right;margin-left:auto}.pn span{letter-spacing:2px;text-transform:uppercase;font-size:12px}.pn strong{letter-spacing:1px;text-transform:uppercase;color:var(--ink);font-size:14px;font-weight:700}.pn:hover strong{color:var(--accent)}.notfound{text-align:center;padding:80px 20px 120px}.notfound h1{color:var(--ink);margin:0 0 10px;font-size:40px;font-weight:400}.card-media,.vt-target{view-transition-class:hero}::view-transition-group(*.hero){animation-duration:.6s;animation-timing-function:cubic-bezier(.2,.7,.2,1);overflow:clip}::view-transition-old(*.hero),::view-transition-new(*.hero){object-fit:cover;width:100%;height:100%}
