.dash{--dash-ink: #1b1c24}.dash__svg{display:block;width:100%;height:100%;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:italic;font-weight:700}.dash__fault{visibility:hidden}.dash__fault.is-on{visibility:visible}.dash__glyph{color:#ff4a26;filter:drop-shadow(0 0 3px rgba(255,70,30,.8))}.dash__fault.is-amber .dash__glyph{color:#ffb03a;filter:drop-shadow(0 0 3px rgba(255,160,40,.8))}.dash__fault.is-on .dash__glyph{animation:dash-mil 1.4s ease-in-out infinite}.dash__drum{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:700}@keyframes dash-mil{0%,45%{opacity:1}55%,95%{opacity:.08}to{opacity:1}}.radio{font-family:Arial Narrow,Helvetica Neue,Arial,sans-serif;font-stretch:condensed;font-weight:700;color:#d9d9d6}.radio.hud-unit{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E"),linear-gradient(180deg,#4a4a4f,#3c3c40 55%,#333337);box-shadow:inset 0 1px #ffffff1f,inset 0 -2px #00000080,inset 0 0 0 1px #0009,0 6px 18px #00000059;border-radius:6px}.radio__face{height:100%;padding:2px}.radio__body{height:100%;display:grid;gap:8px}.radio__lcd{position:relative;display:flex;flex-direction:column;justify-content:center;padding:6px 12px;border-radius:2px;background:linear-gradient(180deg,#1f3122,#172619);box-shadow:inset 0 3px 8px #000000d9,0 0 0 2px #1a1a1c,0 1px 0 2px #ffffff14;color:#a6ef5c;text-shadow:0 0 6px rgba(150,255,80,.55);font-family:ui-monospace,SF Mono,Menlo,monospace;font-style:italic;font-weight:600;filter:brightness(.55) saturate(.5);transition:filter .3s}.radio__lcd:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(165deg,rgba(255,255,255,.09) 0%,rgba(255,255,255,.02) 38%,transparent 40%);pointer-events:none}.radio.is-on .radio__lcd,.radio.is-muted .radio__lcd{filter:none}.radio__lcd-top{display:flex;align-items:baseline;gap:10px}.radio__band{font-size:9px;min-width:2.4em}.radio__freq{font-size:24px;line-height:1;letter-spacing:.04em;min-width:4ch;text-align:right;font-variant-numeric:tabular-nums}.radio__flags{margin-left:auto;display:flex;gap:6px}.radio__flags i{font-style:normal;font-size:8px;min-width:1.6em;text-align:center;opacity:.12}.radio__flags .is-lit{opacity:1}.radio__ticker{overflow:hidden;white-space:nowrap;font-size:9px;letter-spacing:.12em;text-transform:uppercase;margin-top:3px}.radio__ticker span{display:inline-block;padding-left:100%;animation:radio-ticker 9s linear infinite}.radio:not(.is-on) .radio__ticker span{padding-left:0;animation:none}.radio__presets{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:7px;padding-bottom:3px}.radio__preset{position:relative;height:30px;padding:0;border:0;border-radius:6px;background:linear-gradient(180deg,#727278,#55555a 18%,#424246 55%,#37373b 85%,#424246);box-shadow:inset 0 1px #ffffff4d,inset 0 0 0 1px #0000008c,0 2px #1c1c1e,0 3px 5px #0000008c;color:#dcdcd3;font-family:"M PLUS Rounded 1c",Arial Rounded MT Bold,Arial Narrow,sans-serif;font-weight:800;font-style:italic;font-stretch:normal;font-size:10.5px;text-transform:uppercase;letter-spacing:-.01em;text-shadow:0 0 .7px rgba(220,220,210,.9),0 1px 0 rgba(0,0,0,.7);cursor:pointer;transition:transform .05s,box-shadow .05s,background .05s}.radio__preset:before{content:"";position:absolute;inset:4px 6px;border-radius:50%;background:radial-gradient(ellipse 60% 38% at 50% 80%,rgba(255,255,255,.2),transparent 70%),linear-gradient(180deg,#2e2e32,#3c3c40 45%,#505055);box-shadow:inset 0 3px 4px #00000073;filter:blur(1.6px)}.radio__preset span{position:relative;display:inline-block;transform:scaleX(.92)}.radio__preset:active,.radio__preset.is-active{transform:translateY(3px);background:linear-gradient(180deg,#2b2b2e,#353538 40%,#3c3c40);box-shadow:inset 0 3px 5px #000000e6,inset 0 0 0 1px #000000b3,0 0 #0d0d0e,0 -1px #0009}.radio__preset:active:before,.radio__preset.is-active:before{background:radial-gradient(ellipse 60% 38% at 50% 80%,rgba(255,255,255,.08),transparent 70%),linear-gradient(180deg,#232326,#2d2d30,#3a3a3e);box-shadow:inset 0 2px 4px #00000080}.radio__preset:active span,.radio__preset.is-active span{opacity:.85}.radio__preset:focus,.radio__preset:focus-visible{outline:none}@keyframes radio-ticker{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes radio-blink{50%{opacity:.15}}@media(prefers-reduced-motion:reduce){.radio__ticker span{padding-left:0;animation:none}}.hud{position:fixed;inset:0;z-index:10;pointer-events:none;color:var(--hud-ink);font-size:14px}.hud button,.hud a,.hud input,.hud textarea,.hud .hud-stick{pointer-events:auto}.hud--classic{position:sticky;inset:auto;height:0}.hud kbd{display:inline-block;min-width:1.7em;padding:.1em .4em;margin:0 .1em;border:1px solid var(--hud-line);border-radius:5px;font:inherit;font-size:.9em;text-align:center;background:var(--hud-bg)}.hud-unit{box-sizing:border-box;width:380px;height:186px;padding:12px;border-radius:14px;background:linear-gradient(180deg,#2a2a2d,#1a1a1c);box-shadow:inset 0 1px #ffffff12}@media(max-width:760px){.hud-unit{width:220px;height:108px;padding:7px;border-radius:10px}}.hud-glass,.hud-stick,.hud-prompt button{background:var(--hud-bg);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border:1px solid var(--hud-line);border-radius:16px}.hud-pill{display:inline-flex;align-items:center;height:38px;padding:0 16px;border:1.5px solid var(--hud-ink);border-radius:999px;background:var(--hud-solid);color:var(--hud-ink);font:inherit;font-size:13px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:background-color .2s,color .2s}.hud-pill:hover,.hud-pill[aria-expanded=true]{background:var(--hud-ink);color:var(--hud-solid)}.hud-pill:focus-visible{outline:3px solid #002fa7;outline-offset:2px}.hud-icon{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1.5px solid currentColor;background:var(--hud-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;transition:background .2s,color .2s}.hud-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.hud-icon:hover{background:currentColor}.hud-icon:hover svg{stroke:var(--hud-solid)}.hud-icon:focus-visible{outline:3px solid #002fa7;outline-offset:2px}.hud-top{position:absolute;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:max(16px,env(safe-area-inset-top)) 20px 0}.hud--classic .hud-top{position:relative;padding-bottom:16px}.hud-top__logo{justify-self:start;width:72px;color:inherit;filter:drop-shadow(0 1px 8px var(--hud-bg))}.hud-top__logo:focus-visible{outline:3px solid #002fa7;outline-offset:4px}.hud-top__switches{display:flex;gap:10px;margin-right:8px}.hud-top__nav{justify-self:end;display:flex;gap:8px}@media(max-width:640px){.hud-top{gap:6px;padding-inline:10px}.hud-top__logo{width:46px}.hud-top__switches{gap:5px;margin-right:0}.hud-top__nav{gap:5px}.hud-top .hud-pill{height:32px;padding:0 9px;font-size:10.5px;letter-spacing:.03em}}@media(max-width:370px){.hud-top{gap:4px;padding-inline:8px}.hud-top__logo{width:38px}.hud-top .hud-pill{padding:0 7px;font-size:10px}}.hud-toggle{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;align-items:stretch;height:38px;padding:3px;border:1.5px solid var(--hud-ink);border-radius:999px;background:var(--hud-solid);color:var(--hud-ink);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;font-size:12px}.hud-toggle:focus-visible{outline:3px solid #002fa7;outline-offset:2px}.hud-toggle__thumb{position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:var(--hud-ink);transition:transform .35s cubic-bezier(.2,.8,.2,1)}.hud-toggle[aria-checked=true] .hud-toggle__thumb{transform:translate(100%)}.hud-toggle__opt{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border-radius:999px;transition:color .3s}.hud-toggle__opt.is-current{color:var(--hud-solid)}.hud-toggle__opt svg{width:18px;height:18px;fill:currentColor}@media(max-width:640px){.hud-toggle{height:32px;font-size:10px;letter-spacing:.03em}.hud-toggle__opt{padding:0 6px}.hud-toggle__opt svg{width:16px;height:16px}}.hud-switch{display:inline-flex;align-items:center;gap:10px;height:38px;padding:0 6px 0 16px;border:1.5px solid var(--hud-ink);border-radius:999px;background:var(--hud-solid);color:var(--hud-ink);font:inherit;font-size:13px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;cursor:pointer}.hud-switch:focus-visible{outline:3px solid #002fa7;outline-offset:2px}.hud-switch__icon{display:none}.hud-switch__icon svg{display:block;width:20px;height:20px;fill:currentColor}.hud-switch__track{position:relative;width:44px;height:26px;border:1.5px solid var(--hud-ink);border-radius:999px;transition:background-color .3s}.hud-switch__knob{position:absolute;top:2.5px;left:2.5px;width:18px;height:18px;border-radius:50%;background:var(--hud-ink);transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .3s}.hud-switch[aria-checked=true] .hud-switch__track{background:var(--hud-ink)}.hud-switch[aria-checked=true] .hud-switch__knob{transform:translate(18px);background:var(--hud-solid)}@media(max-width:640px){.hud-switch{height:32px;padding:0 4px 0 8px;gap:6px;font-size:11px}.hud-switch .hud-switch__label{display:none}.hud-switch .hud-switch__icon{display:block}.hud-switch__track{width:38px;height:22px}.hud-switch__knob{width:15px;height:15px;top:2px;left:2px}.hud-switch[aria-checked=true] .hud-switch__knob{transform:translate(16px)}}.hud-bottom{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:16px;padding:0 20px max(18px,env(safe-area-inset-bottom))}.hud-bottom__right{justify-self:end}@media(max-width:760px){.hud-bottom{grid-template-columns:1fr;padding-inline:12px}.hud-bottom__left{position:absolute;left:8px;bottom:max(16px,env(safe-area-inset-bottom))}.hud-bottom__right{display:none}}.hud-prompt{justify-self:center;transform:translateY(20px);opacity:0;transition:opacity .3s,transform .4s cubic-bezier(.2,.8,.2,1)}.hud-prompt.is-visible{opacity:1;transform:none}.hud-prompt:not(.is-visible) button{pointer-events:none}.hud-prompt button{display:flex;align-items:center;gap:14px;padding:10px 10px 10px 20px;border-radius:999px;cursor:pointer;max-width:calc(100vw - 24px)}.hud-prompt__label{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:22px;line-height:1.3;margin-block:-.15em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-prompt__action{padding:8px 14px;border-radius:999px;background:var(--hud-ink);color:var(--hud-solid);text-transform:uppercase;letter-spacing:.06em;font-size:12px;white-space:nowrap}@media(max-width:760px){.hud-prompt{margin-bottom:150px}}.hud-intro{position:absolute;inset:0;z-index:15;display:grid;place-content:center;justify-items:center;text-align:center;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.35);background:#080a0eb8;transition:opacity .9s,visibility 0s .9s}.hud-intro.is-done{visibility:hidden}.hud-intro.is-done{opacity:0}.hud-intro__name{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:clamp(38px,6.5vw,88px);animation:hud-intro-in 1s cubic-bezier(.2,.8,.2,1) both}.hud-intro__role{margin-top:12px;font-size:clamp(14px,1.6vw,19px);letter-spacing:.1em;text-transform:uppercase;animation:hud-intro-in 1s .15s cubic-bezier(.2,.8,.2,1) both}.hud-intro__how{display:flex;justify-content:center;gap:28px;margin-top:26px;font-size:14px;letter-spacing:.04em;animation:hud-intro-in 1s .35s cubic-bezier(.2,.8,.2,1) both}.hud-intro__how span{display:inline-flex;align-items:center}.hud-intro__how kbd:last-of-type{margin-right:8px}.hud-intro__how .hud-intro__stick{width:1.4em;height:1.4em;margin-right:8px}.hud-intro__how kbd{color:#fff;background:#00000040;border-color:#fff9;text-shadow:none}@keyframes hud-intro-in{0%{opacity:0;transform:translateY(24px)}}.hud-stick{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));width:124px;height:124px;border-radius:50%;touch-action:none;display:grid;place-items:center}.hud-stick span{width:52px;height:52px;border-radius:50%;background:var(--hud-ink);opacity:.85;transition:transform .15s}.hud-stick.is-active span{transition:none}.panel-backdrop{position:fixed;inset:0;z-index:20;background:#00000059;opacity:0;pointer-events:none;transition:opacity .4s}.panel-backdrop.is-open{opacity:1;pointer-events:auto}.panel{position:fixed;z-index:21;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--paper-2);color:var(--ink);transform:translate(100%);transition:transform .55s cubic-bezier(.2,.8,.2,1),visibility 0s .55s;visibility:hidden;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;outline:none;font-size:17px}.panel.is-open{transform:none;visibility:visible;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.panel__body{padding:60px 40px 48px}@media(max-width:560px){.panel__body{padding:60px 24px 40px}}.panel__close{position:absolute;top:20px;right:20px;width:40px;height:40px;border-radius:50%;border:1.5px solid currentColor;background:transparent;cursor:pointer}.panel__close:before,.panel__close:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:1.5px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}.panel__close:after{transform:translate(-50%,-50%) rotate(-45deg)}.panel__label{text-transform:uppercase;letter-spacing:.1em;font-size:13px;opacity:.7;margin:0 0 16px}.panel__label:not(:first-child){margin-top:48px}.panel__statement p{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-weight:500;font-size:22px;line-height:1.35}.panel__statement p+p{margin-top:.8em}.panel__social{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.panel__social a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1.5px solid var(--ink);border-radius:999px;color:var(--ink);font-size:13px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:background-color .25s,color .25s}.panel__social a svg{width:20px;height:20px}.panel__social a:hover{background:var(--ink);color:var(--paper-2)}.panel__social a:focus-visible{outline:3px solid #002fa7;outline-offset:3px}.panel__list{list-style:none}.panel__list li{display:grid;gap:4px;padding:16px 0;border-top:1px solid var(--line)}.panel__list a{text-decoration:none;background:linear-gradient(currentColor,currentColor) no-repeat right bottom/0 1px;transition:background-size .35s cubic-bezier(.6,0,.2,1)}.panel__list a:hover,.panel__list a:focus-visible{background-position:left bottom;background-size:100% 1px}.panel__dates{font-size:13px;opacity:.7}.portrait{position:relative;display:block;width:84px;height:84px;margin:0 0 28px;padding:0;border:0;border-radius:50%;overflow:hidden;background:var(--line);cursor:zoom-in}.portrait img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(var(--crop));transform-origin:48% 36%;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.portrait:hover img,.portrait:focus-visible img{transform:scale(calc(var(--crop) * 1.05))}.portrait:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.portrait.is-zoomed{visibility:hidden}.portrait-zoom{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:#0009;cursor:zoom-out;animation:portrait-fade .35s ease both}.portrait-zoom.is-closing{animation:portrait-fade .35s ease reverse both}.portrait-zoom__frame{width:min(560px,82vw,78vh);aspect-ratio:1;overflow:hidden;border-radius:16px;box-shadow:0 30px 80px #00000073}.portrait-zoom__frame img{display:block;width:100%;height:100%;object-fit:cover;transform-origin:48% 36%}.portrait-zoom__close{color:#fff;position:fixed}@keyframes portrait-fade{0%{background-color:#0000}}.dash.hud-unit{width:440px;height:203px;background:none;box-shadow:none}@media(max-width:920px){.dash.hud-unit{width:380px;height:175px}}@media(max-width:760px){.dash.hud-unit{width:264px;height:122px}}.radio.hud-unit{width:340px;height:auto;padding:10px}.contact__title{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:44px}.contact{display:grid;gap:28px;margin-top:40px}.contact__field{display:grid;gap:8px}.contact__field span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.7;transition:opacity .2s}.contact__field input,.contact__field textarea{width:100%;padding:8px 0 10px;border:0;border-bottom:1.5px solid var(--line);border-radius:0;background:transparent;color:inherit;font:inherit;font-size:17px;line-height:1.5;resize:none;transition:border-color .25s}.contact__field input::placeholder,.contact__field textarea::placeholder{color:inherit;opacity:.35}.contact__field input:focus,.contact__field textarea:focus{outline:none;border-color:var(--ink)}.contact__field textarea{height:calc(4.5em + 18px)}.contact__field:focus-within span{opacity:1}.contact__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:8px}.contact__send{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 24px;border:1.5px solid var(--ink);border-radius:999px;background:var(--ink);color:var(--paper-2);font:inherit;font-size:13px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background-color .25s,color .25s}.contact__send span{transition:transform .3s cubic-bezier(.33,1,.68,1)}.contact__send:hover{background:transparent;color:var(--ink)}.contact__send:hover span{transform:translate(4px)}.contact__send:focus-visible{outline:3px solid #002fa7;outline-offset:3px}.hud--touch .hud-stick{right:auto;left:50%;transform:translate(-50%)}.hud--touch .hud-prompt{margin-bottom:150px}.hud--classic .hud-top .hud-pill,.hud--classic .hud-top .hud-toggle,.hud--classic .hud-top .hud-switch{background:transparent}.hud--classic .hud-top .hud-pill:hover,.hud--classic .hud-top .hud-pill[aria-expanded=true]{background:var(--hud-ink)}.headline{position:relative;background:var(--paper-2);padding:calc(var(--u) * 240) calc(var(--u) * 36) calc(var(--u) * 36);transition:background-color .3s}body[data-mode=drive] .headline{padding-bottom:calc(var(--u) * 200)}.headline h1{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:calc(var(--u) * 108)}.headline__words{display:block;position:relative;height:1.2em;overflow:hidden}.headline__track{position:absolute;inset:0 auto auto 0;display:flex;flex-direction:column;animation:headline-words 16s cubic-bezier(.645,.045,.355,1) infinite}.headline__track span{display:block;height:1.2em;white-space:nowrap}@media(prefers-reduced-motion:reduce){.headline__track{animation:none}}body[data-world=narrow] .headline h1{font-size:calc(var(--u) * 60)}@keyframes headline-words{0%,21%{transform:translateY(0)}25%,46%{transform:translateY(-20%)}50%,71%{transform:translateY(-40%)}75%,96%{transform:translateY(-60%)}to{transform:translateY(-80%)}}.footer{position:relative;display:grid;grid-template-columns:minmax(0,1fr) calc(var(--u) * 260) minmax(0,1fr);grid-template-areas:"projects . contact" "base base base";column-gap:calc(var(--u) * 48);padding:calc(var(--u) * 120) calc(var(--u) * 36) calc(var(--u) * 56);min-height:calc(var(--u) * 620);background:var(--footer);color:#fff;transition:background-color .3s}.footer__end{left:50%;top:calc(var(--u) * 400)}.footer__label{font-size:calc(var(--u) * 15);letter-spacing:.14em;text-transform:uppercase;opacity:.5;margin-bottom:calc(var(--u) * 22)}.footer__projects{grid-area:projects}.footer__projects ul{list-style:none}.footer__projects li+li{margin-top:calc(var(--u) * 14)}.footer__projects a{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:calc(var(--u) * 36);text-decoration:none;background:linear-gradient(currentColor,currentColor) no-repeat right bottom/0 max(1px,calc(var(--u) * 1));transition:background-size .35s cubic-bezier(.6,0,.2,1)}.footer__projects a:hover,.footer__projects a:focus-visible{background-position:left bottom;background-size:100% max(1px,calc(var(--u) * 1))}.footer__contact{grid-area:contact;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.footer__email{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:calc(var(--u) * 36);text-decoration:none;background:linear-gradient(currentColor,currentColor) no-repeat right bottom/0 max(1px,calc(var(--u) * 1));transition:background-size .35s cubic-bezier(.6,0,.2,1)}.footer__email:hover,.footer__email:focus-visible{background-position:left bottom;background-size:100% max(1px,calc(var(--u) * 1))}.footer__buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:calc(var(--u) * 10 * var(--t, 1));margin-top:calc(var(--u) * 32)}.footer__buttons .button{position:relative;display:inline-flex;align-items:center;border:2px solid currentColor;background:transparent;color:inherit;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;overflow:hidden;cursor:pointer;white-space:nowrap;text-decoration:none;font:inherit;transition:border-color .3s cubic-bezier(.33,1,.68,1),color .2s cubic-bezier(.33,1,.68,1);padding:0 calc(var(--u) * 20 * var(--t, 1));font-size:calc(var(--u) * 16 * var(--t, 1));height:calc(var(--u) * 46 * var(--t, 1));border-width:max(1px,var(--u) * 1.8 * var(--t, 1))}body[data-mode=classic] .footer__buttons .button{padding:0 16px;font-size:13px;height:38px;border-width:1.5px}@media(max-width:640px){body[data-mode=classic] .footer__buttons .button{padding:0 9px;font-size:10.5px;height:32px}}.footer__buttons .button:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity .2s}.footer__buttons .button .string,.footer__buttons .button .icon{position:relative;display:inline-flex;transition:color .2s}.footer__buttons .button .letter{display:inline-block}.footer__buttons .button .letter[data-letter=" "]{width:.35em}@media(hover:hover)and (pointer:fine){.footer__buttons .button:hover:before{opacity:1}.footer__buttons .button:hover .string,.footer__buttons .button:hover .icon{color:var(--pill-bg, var(--paper))}}.footer__buttons .button:focus-visible{outline:3px solid #002fa7;outline-offset:3px}.footer__buttons .button{--pill-bg: var(--footer)}.footer__base{grid-area:base;align-self:end;display:flex;justify-content:space-between;gap:calc(var(--u) * 20);margin-top:calc(var(--u) * 80);padding-top:calc(var(--u) * 20);border-top:1px solid rgba(255,255,255,.14);font-size:calc(var(--u) * 15);opacity:.5}body[data-mode=drive] .footer__base{display:none}body[data-world=narrow] .footer{grid-template-columns:minmax(0,1fr);grid-template-areas:"contact" "projects" "base";row-gap:calc(var(--u) * 90);padding:calc(var(--u) * 120) calc(var(--u) * 120) calc(var(--u) * 420);text-align:center}body[data-world=narrow] .footer__contact{align-items:center;text-align:center}body[data-world=narrow] .footer__buttons{justify-content:center}body[data-world=narrow] .footer__end{top:auto;bottom:calc(var(--u) * 230)}body[data-world=narrow] .footer__label{font-size:calc(var(--u) * 18)}body[data-world=narrow] .footer__projects a,body[data-world=narrow] .footer__email{font-size:calc(var(--u) * 30)}body[data-world=narrow] .footer__base{flex-direction:column;align-items:center;gap:calc(var(--u) * 8);margin-top:0}body[data-mode=classic] .footer .footer__projects a,body[data-mode=classic] .footer .footer__email{font-size:calc(var(--u) * 26)}body[data-mode=classic][data-world=narrow] .footer .footer__projects a,body[data-mode=classic][data-world=narrow] .footer .footer__email{font-size:calc(var(--u) * 24)}body[data-world=narrow][data-mode=classic] .footer{padding-bottom:calc(var(--u) * 80)}.page{position:relative;width:calc(var(--u) * 1764);background-color:var(--paper);transition:background-color .3s;overflow:hidden}.page:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--u) * 36);right:0;pointer-events:none;background-image:linear-gradient(90deg,var(--line) calc(var(--u) * 1),transparent calc(var(--u) * 1)),linear-gradient(90deg,var(--line) calc(var(--u) * 1),transparent calc(var(--u) * 1));background-size:calc(var(--u) * 216) 100%,calc(var(--u) * 216) 100%;background-position:0 0,calc(var(--u) * 180) 0}body[data-mode=classic] .page{width:100%}body[data-world=narrow] .page:before{background-size:calc(var(--u) * 255) 100%,calc(var(--u) * 255) 100%;background-position:0 0,calc(var(--u) * 219) 0}body[data-mode=drive][data-world=narrow] .page{width:calc(var(--u) * 1020)}[data-road-point]{position:absolute;width:1px;height:1px;pointer-events:none}.facer-logo{position:absolute;top:50%;left:30%;width:40%;height:auto;transform:translateY(-50%);pointer-events:none}.facer-logo .line{fill:none;stroke:#fff;stroke-width:72;stroke-miterlimit:10}.facer-logo .line-one{stroke-dasharray:72;stroke-dashoffset:72;animation:facer-1 12s cubic-bezier(.23,1,.32,1) infinite}.facer-logo .line-two{stroke-dasharray:72;stroke-dashoffset:72;animation:facer-2 12s cubic-bezier(.23,1,.32,1) infinite}.facer-logo .line-three{stroke-dasharray:72;stroke-dashoffset:72;animation:facer-3 12s cubic-bezier(.23,1,.32,1) infinite}.facer-logo .line-four{stroke-dasharray:144;stroke-dashoffset:144;animation:facer-4 12s cubic-bezier(.23,1,.32,1) infinite}.facer-logo .line-five{stroke-dasharray:1080;stroke-dashoffset:1080;animation:facer-5 12s cubic-bezier(.19,1,.22,1) infinite}@media(prefers-reduced-motion:reduce){.facer-logo .line{animation:none;stroke-dashoffset:0}}@keyframes facer-1{0%,5%{stroke-dashoffset:72}9%,55%{stroke-dashoffset:0}59%,to{stroke-dashoffset:72}}@keyframes facer-2{0%,6%{stroke-dashoffset:72}10%,56%{stroke-dashoffset:0}60%,to{stroke-dashoffset:72}}@keyframes facer-3{0%,7%{stroke-dashoffset:72}11%,57%{stroke-dashoffset:0}61%,to{stroke-dashoffset:72}}@keyframes facer-4{0%,8%{stroke-dashoffset:144}16%,58%{stroke-dashoffset:0}68%,to{stroke-dashoffset:144}}@keyframes facer-5{0%,9%{stroke-dashoffset:1080}41%,61%{stroke-dashoffset:0}91%,to{stroke-dashoffset:-1080}}.project-card{position:relative;transition:transform .45s cubic-bezier(.2,.8,.2,1)}.project-card.is-active{transform:translateY(calc(var(--u) * -10))}.project-card--compact{border-top:calc(var(--u) * 1) solid var(--ink);padding-top:calc(var(--u) * 24)}.project-card--compact .project-card__meta{align-items:center;padding-bottom:0}.project-card__link{display:block;color:inherit;text-decoration:none;cursor:pointer}h2 .project-card__link{display:inline}@media(hover:hover)and (pointer:fine){.project-card:has(.project-card__link:hover) .button:before{opacity:1}.project-card:has(.project-card__link:hover) .button .string,.project-card:has(.project-card__link:hover) .button .icon{color:var(--pill-bg, var(--paper))}}.project-card__kicker{margin:0 0 calc(var(--u) * 18 * var(--t, 1));font-size:calc(var(--u) * 14 * var(--t, 1));letter-spacing:.08em;line-height:1;text-transform:uppercase}.project-card__toolbar{position:relative;height:calc(var(--u) * 48);background:var(--paper-2);border:calc(var(--u) * 1) solid var(--line);border-radius:calc(var(--u) * 12) calc(var(--u) * 12) 0 0}.project-card__toolbar i{position:absolute;top:calc(var(--u) * 16);width:calc(var(--u) * 18);height:calc(var(--u) * 18);border-radius:99px;border:calc(var(--u) * 1) solid var(--line);background:var(--paper)}.project-card__toolbar i:nth-child(1){left:calc(var(--u) * 16)}.project-card__toolbar i:nth-child(2){left:calc(var(--u) * 42)}.project-card__toolbar i:nth-child(3){left:calc(var(--u) * 68)}.project-card__toolbar i:nth-child(4){right:calc(var(--u) * 16);top:calc(var(--u) * 19);width:calc(var(--u) * 36);height:calc(var(--u) * 12)}.project-card__media{position:relative;border:calc(var(--u) * 1) solid var(--line);border-top:0;background:var(--paper-2)}.project-card__media img,.project-card__media video{display:block;width:100%;height:auto}.project-card__meta{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--u) * 24);padding:calc(var(--u) * 18) 0}.project-card__meta h2{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:calc(var(--u) * 36)}.project-card .button{position:relative;display:inline-flex;align-items:center;border:2px solid currentColor;background:transparent;color:inherit;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;overflow:hidden;cursor:pointer;white-space:nowrap;text-decoration:none;font:inherit;transition:border-color .3s cubic-bezier(.33,1,.68,1),color .2s cubic-bezier(.33,1,.68,1);padding:0 calc(var(--u) * 20 * var(--t, 1));font-size:calc(var(--u) * 16 * var(--t, 1));height:calc(var(--u) * 46 * var(--t, 1));border-width:max(1px,var(--u) * 1.8 * var(--t, 1))}body[data-mode=classic] .project-card .button{padding:0 16px;font-size:13px;height:38px;border-width:1.5px}@media(max-width:640px){body[data-mode=classic] .project-card .button{padding:0 9px;font-size:10.5px;height:32px}}.project-card .button:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity .2s}.project-card .button .string,.project-card .button .icon{position:relative;display:inline-flex;transition:color .2s}.project-card .button .letter{display:inline-block}.project-card .button .letter[data-letter=" "]{width:.35em}@media(hover:hover)and (pointer:fine){.project-card .button:hover:before{opacity:1}.project-card .button:hover .string,.project-card .button:hover .icon{color:var(--pill-bg, var(--paper))}}.project-card .button:focus-visible{outline:3px solid #002fa7;outline-offset:3px}.project-card .button{flex-shrink:0}body[data-world=narrow] .project-card__meta h2{font-size:calc(var(--u) * 30)}.projects{position:relative;padding:calc(var(--u) * 120) 0 calc(var(--u) * 360);min-height:calc(var(--u) * 800)}.project{position:relative;padding:calc(var(--u) * 96) 0 calc(var(--u) * 240)}.project__back{position:relative;display:inline-flex;align-items:center;border:2px solid currentColor;background:transparent;color:inherit;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;overflow:hidden;cursor:pointer;white-space:nowrap;text-decoration:none;font:inherit;transition:border-color .3s cubic-bezier(.33,1,.68,1),color .2s cubic-bezier(.33,1,.68,1);padding:0 calc(var(--u) * 20 * var(--t, 1));font-size:calc(var(--u) * 16 * var(--t, 1));height:calc(var(--u) * 46 * var(--t, 1));border-width:max(1px,var(--u) * 1.8 * var(--t, 1))}body[data-mode=classic] .project__back{padding:0 16px;font-size:13px;height:38px;border-width:1.5px}@media(max-width:640px){body[data-mode=classic] .project__back{padding:0 9px;font-size:10.5px;height:32px}}.project__back:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity .2s}.project__back .string,.project__back .icon{position:relative;display:inline-flex;transition:color .2s}.project__back .letter{display:inline-block}.project__back .letter[data-letter=" "]{width:.35em}@media(hover:hover)and (pointer:fine){.project__back:hover:before{opacity:1}.project__back:hover .string,.project__back:hover .icon{color:var(--pill-bg, var(--paper))}}.project__back:focus-visible{outline:3px solid #002fa7;outline-offset:3px}.project__back{--pill-bg: var(--paper-2);margin-bottom:calc(var(--u) * 36);transition:border-color .3s,color .15s,transform .4s}.project__back.is-active{transform:translate(calc(var(--u) * -8))}.project__description{position:relative}.project__description h2,.project__description h3{font-family:Playfair Display,Georgia,serif;font-weight:700;line-height:1;-webkit-font-smoothing:antialiased;font-size:calc(var(--u) * 48);margin:0 0 calc(var(--u) * 48)}.project__description p{font-size:calc(var(--u) * 19 * var(--t, 1));line-height:1.6}.project__description p+p{margin-top:calc(var(--u) * 14 * var(--t, 1))}body[data-mode=drive]:not([data-world=narrow]) .project__description p,body[data-mode=drive]:not([data-world=narrow]) .project__description ul,body[data-mode=drive]:not([data-world=narrow]) .project__description ol{max-width:calc(var(--u) * 432)}.project__description a:not(.button){text-decoration:underline}.project__description .button{position:relative;display:inline-flex;align-items:center;border:2px solid currentColor;background:transparent;color:inherit;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;overflow:hidden;cursor:pointer;white-space:nowrap;text-decoration:none;font:inherit;transition:border-color .3s cubic-bezier(.33,1,.68,1),color .2s cubic-bezier(.33,1,.68,1);padding:0 calc(var(--u) * 20 * var(--t, 1));font-size:calc(var(--u) * 16 * var(--t, 1));height:calc(var(--u) * 46 * var(--t, 1));border-width:max(1px,var(--u) * 1.8 * var(--t, 1))}body[data-mode=classic] .project__description .button{padding:0 16px;font-size:13px;height:38px;border-width:1.5px}@media(max-width:640px){body[data-mode=classic] .project__description .button{padding:0 9px;font-size:10.5px;height:32px}}.project__description .button:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;transition:opacity .2s}.project__description .button .string,.project__description .button .icon{position:relative;display:inline-flex;transition:color .2s}.project__description .button .letter{display:inline-block}.project__description .button .letter[data-letter=" "]{width:.35em}@media(hover:hover)and (pointer:fine){.project__description .button:hover:before{opacity:1}.project__description .button:hover .string,.project__description .button:hover .icon{color:var(--pill-bg, var(--paper))}}.project__description .button:focus-visible{outline:3px solid #002fa7;outline-offset:3px}.project__description .button{margin-top:calc(var(--u) * 28 * var(--t, 1))}.project__brand{position:relative;aspect-ratio:4/3;overflow:hidden;background:#fff}.project__brand img,.project__brand video,.project__brand svg{position:absolute;top:50%;left:50%;width:50%;height:auto;transform:translate(-50%,-50%);pointer-events:none}.project__brand[data-brand=street-food-circus] img{width:47%}.project__brand[data-brand=facer-printers]{background:#0d0d0d}.project__brand[data-brand=facer-printers] img{width:100%}.project__brand[data-brand=facer-printers] .facer-logo--brand{left:35%;width:30%;transform:translateY(-50%)}.project__brand[data-brand=ultimate] img{top:0;left:0;width:100%;transform:none}.project__brand[data-brand=sonexos] img{left:27%;width:46%;transform:translateY(-50%)}.project__brand[data-brand=vapour-creative] img{left:46%;width:8%;transform:translateY(-50%)}.project__brand[data-brand=hype-presentations]{background:#1b1c3c}.project__brand[data-brand=hype-presentations] img{left:36%;width:28%;transform:translateY(-50%)}.project__item{position:relative;display:grid;gap:calc(var(--u) * 36)}.project__frame{background:var(--paper-2);border:calc(var(--u) * 1) solid var(--line);border-radius:calc(var(--u) * 12) calc(var(--u) * 12) 0 0;overflow:hidden}.project__frame img,.project__frame video{display:block;width:100%;height:auto}.project__toolbar{position:relative;height:calc(var(--u) * 48);border-bottom:calc(var(--u) * 1) solid var(--line)}.project__toolbar i{position:absolute;top:calc(var(--u) * 16);width:calc(var(--u) * 18);height:calc(var(--u) * 18);border-radius:99px;border:calc(var(--u) * 1) solid var(--line);background:var(--paper)}.project__toolbar i:nth-child(1){left:calc(var(--u) * 16)}.project__toolbar i:nth-child(2){left:calc(var(--u) * 42)}.project__toolbar i:nth-child(3){left:calc(var(--u) * 68)}.project__toolbar i:nth-child(4){right:calc(var(--u) * 16);top:calc(var(--u) * 19);width:calc(var(--u) * 36);height:calc(var(--u) * 12)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--paper: #e9e9e4;--paper-2: #ffffff;--ink: #0d0d0d;--line: #bdbdb9;--footer: #0d0d0d;--sky-top: #4b91db;--sky-bottom: #d4e6ff;--hud-bg: rgba(255, 255, 255, .82);--hud-ink: #0d0d0d;--hud-line: rgba(0, 0, 0, .12);--hud-solid: #ffffff;color-scheme:light}:root[data-theme=dark]{--paper: #262c35;--paper-2: #1c2129;--ink: #ffffff;--line: #717a87;--footer: #14171b;--sky-top: #05070b;--sky-bottom: #1d2330;--hud-bg: rgba(20, 24, 31, .82);--hud-ink: #ffffff;--hud-line: rgba(255, 255, 255, .14);--hud-solid: #14181f;color-scheme:dark}html,body{font-family:Funnel Sans,system-ui,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--ink);background:var(--sky-top);transition:background-color .4s}img,video,svg{display:block;max-width:100%}a{color:inherit}button{font:inherit;color:inherit}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}body[data-mode=classic]{--u: calc(100vw / 1764);background:var(--paper)}body[data-mode=classic][data-world=narrow]{--u: calc(100vw / 802)}body[data-mode=drive]{--t: .6}body[data-world=narrow]{--t: 1.5}body[data-mode=drive]{overflow:hidden;position:fixed;inset:0;overscroll-behavior:none;background:linear-gradient(0deg,var(--sky-bottom) 0%,var(--sky-top) 70%);background-attachment:fixed}
