.tech-field[data-astro-cid-ozqaugmy]{width:100%;max-width:620px;aspect-ratio:1 / var(--aspect);-webkit-user-select:none;user-select:none;justify-self:center;position:relative;container-type:inline-size}.tile-node[data-astro-cid-ozqaugmy]{cursor:grab;will-change:transform;position:absolute;top:0;left:0}.tile-node[data-astro-cid-ozqaugmy]:hover,.tile-node[data-astro-cid-ozqaugmy].is-named{z-index:2}.tile-node[data-astro-cid-ozqaugmy].is-held{z-index:3;cursor:grabbing}.tile[data-astro-cid-ozqaugmy]{aspect-ratio:1;transition:scale .38s var(--ease-spatial,ease), box-shadow .38s var(--ease-spatial,ease);animation:tile-in .7s var(--ease-spatial,ease-out) calc(var(--i) * 45ms + .12s) backwards;background:#242938;border-radius:23%;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 10px 22px -10px #101a2a66,0 2px 5px -2px #101a2a33}.tile[data-astro-cid-ozqaugmy] img[data-astro-cid-ozqaugmy]{object-fit:contain;pointer-events:none;width:64%;height:64%}.tile-glyph[data-astro-cid-ozqaugmy]{aspect-ratio:1;width:64%;-webkit-mask:var(--glyph) center / contain no-repeat;mask:var(--glyph) center / contain no-repeat;background:#fff}.tile-node[data-astro-cid-ozqaugmy]:hover .tile[data-astro-cid-ozqaugmy],.tile-node[data-astro-cid-ozqaugmy].is-named .tile[data-astro-cid-ozqaugmy]{scale:1.12;box-shadow:inset 0 1px #ffffff14,0 20px 34px -14px #101a2a80,0 4px 10px -4px #101a2a40}.tile-node[data-astro-cid-ozqaugmy].is-held .tile[data-astro-cid-ozqaugmy]{scale:1.18}.tile-label[data-astro-cid-ozqaugmy]{background:var(--ink);font:10px var(--mono);letter-spacing:.03em;color:var(--paper);white-space:nowrap;opacity:0;transition:opacity .25s, translate .25s var(--ease-spatial,ease);pointer-events:none;border-radius:99px;padding:3px 8px;position:absolute;top:calc(100% + 12px);left:50%;translate:-50% -4px}.tile-node[data-astro-cid-ozqaugmy]:hover .tile-label[data-astro-cid-ozqaugmy],.tile-node[data-astro-cid-ozqaugmy].is-named .tile-label[data-astro-cid-ozqaugmy]{opacity:1;translate:-50%}@keyframes tile-in{0%{opacity:0;scale:.4}}@media (width<=800px){.tech-field[data-astro-cid-ozqaugmy]{max-width:480px}}@media (prefers-reduced-motion:reduce){.tile[data-astro-cid-ozqaugmy]{transition:none;animation:none}.tile-label[data-astro-cid-ozqaugmy]{transition:none}}.hero{grid-template-columns:1fr 1.05fr;gap:4%;min-height:min(850px,100svh - 100px);padding-block:56px 28px}.hero h1{letter-spacing:-.075em;white-space:normal;font-size:clamp(64px,7.3vw,108px);line-height:.91}.hero h1>span{display:block}.hero h1 em{font-style:normal}.hero-intro{margin-bottom:28px;font-size:10px}.hero-discipline{font:12px var(--mono);margin-top:27px}.hero-discipline span{color:var(--accent);margin-inline:7px}.hero-statement{max-width:380px;margin-top:18px;font-size:16px}.work{padding-top:64px}.work .section-heading{margin-bottom:64px;padding-top:28px}.work .section-heading h2{font-size:clamp(38px,4.5vw,68px)}.project{margin-bottom:80px}.project-roya{grid-template-columns:.8fr 1.5fr}.project-info h3{font-size:clamp(40px,4.6vw,65px)}@media (width<=999px){.hero{padding-top:44px}.hero h1{font-size:clamp(60px,8vw,84px)}.hero-intro{max-width:240px;display:block}.hero-intro .small-line{display:none}}@media (width<=800px){.hero{grid-template-columns:1fr;gap:38px}.hero h1{font-size:clamp(66px,12vw,100px)}.hero-intro{max-width:none}.project-roya{grid-template-columns:1fr 1.2fr}.project-info h3{font-size:36px}.project{margin-bottom:75px}}@media (width<=560px){.hero{gap:32px;padding-block:30px 24px}.hero h1{font-size:clamp(62px,17vw,90px)}.hero-discipline{margin-top:22px;font-size:10px}.hero-statement{font-size:15px}.hero-intro{margin-bottom:22px;font-size:9px}.work{padding-top:64px}.work .section-heading{margin-bottom:36px}.project-roya{grid-template-columns:1fr}.project{margin-bottom:64px}}.hero .hero-intro{flex-wrap:wrap;gap:9px;max-width:none;display:flex}.hero .hero-name{letter-spacing:.05em;color:var(--ink);font-size:11px}.hero .hero-intro .small-line{width:14px;display:inline-block}@media (width<=560px){.hero .hero-intro{gap:2px 8px}.hero .hero-name{font-size:10px}.hero .hero-intro .small-line{width:10px;margin:0}}.hero h1>span{animation:type-arrive .65s var(--ease-spatial) both}.hero h1>span:nth-child(2){animation-delay:65ms}.hero h1>span:nth-child(3){animation-delay:.13s}.work .section-heading.revealed h2,.contact h2.revealed{animation:type-arrive .65s var(--ease-spatial) both}@keyframes type-arrive{0%{clip-path:inset(0 0 100%);transform:translateY(.12em)}to{clip-path:inset(-5%);transform:none}}@media (width<=560px){.work{padding-top:32px}.project .visual-link{order:0}}
