:root{--color-accent:#1318c8;--color-accent-hover:#0e1299;--color-surface:#fff;--color-ink:#303049;--color-ink-soft:#303049;--color-muted:#6d6d82;--color-line:#3030491f;--color-paper:#f6f6f6;--color-bg:#fff;--color-bg-deep:#ececec;--color-steel:#303049;--color-mint:#d4f0e6;--color-cream:#fff4e6;--color-sky:#9eb4ff;--font-display:"Bricolage Grotesque", "Avenir Next", sans-serif;--font-body:"Plus Jakarta Sans", "Segoe UI", sans-serif;--space-xs:.5rem;--space-sm:.85rem;--space-md:1.35rem;--space-lg:2.5rem;--space-xl:5rem;--space-2xl:7.5rem;--width:82rem;--radius:.85rem;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-size:1.05rem;line-height:1.65}#app{flex-direction:column;min-height:100vh;display:flex}img{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--color-accent)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);margin:0 0 .55em;font-weight:600;line-height:1.05}h1{font-size:clamp(3.4rem,9vw,6.75rem);font-weight:650}h2{font-size:clamp(2.25rem,5.2vw,3.75rem)}h3{letter-spacing:-.02em;font-size:clamp(1.2rem,2vw,1.5rem)}p{margin:0 0 1em}p:last-child{margin-bottom:0}.container{width:min(100% - 3rem, var(--width));margin-inline:auto}@media (width<=700px){.container{width:min(100% - 2rem, var(--width))}}.section{padding-block:var(--space-xl)}.section--tight{padding-block:var(--space-lg)}.eyebrow{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.75rem;font-size:.8rem;font-weight:600;display:block}.lead{color:var(--color-muted);max-width:34rem;font-size:1.15rem;line-height:1.55}.page-hero__grid{gap:.85rem;display:grid}.page-hero__row{grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr);align-items:baseline;gap:clamp(1.75rem,4vw,3.5rem);display:grid}.page-hero__aside{gap:1.25rem;display:grid}.page-hero__aside .lead,.page-hero__row>.lead{max-width:none;margin:0;font-size:clamp(1.1rem,1.6vw,1.25rem)}.page-hero__row>h1{margin:0}@media (width<=900px){.page-hero__row{grid-template-columns:1fr;align-items:start;gap:1rem}}.btn{border-radius:var(--radius);font-family:var(--font-body);letter-spacing:.01em;transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.95rem 1.5rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn--primary{color:var(--color-ink);background:#9eb4ff}.btn--primary:after{content:"→";transition:transform .5s var(--ease);margin-left:.25rem;font-size:1.35em;font-weight:500;line-height:1;display:inline-block}.btn--primary:hover{background:color-mix(in srgb, #9eb4ff 78%, var(--color-ink));color:var(--color-ink)}.btn--primary:hover:after{transform:rotate(360deg)}.btn--ghost{border-color:var(--color-ink);color:var(--color-ink);background:0 0}.btn--ghost:hover{background:var(--color-ink);color:#fff}.btn-row{margin-top:var(--space-md);flex-wrap:wrap;gap:.75rem;display:flex}.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}@keyframes rise{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}.animate-rise{animation:rise .9s var(--ease) both}.animate-rise-delay{animation:rise .9s var(--ease) .12s both}.animate-rise-late{animation:rise .9s var(--ease) .24s both}.animate-fade{animation:fade 1.1s var(--ease) both}[data-reveal]{opacity:0;transition:opacity .85s var(--ease), transform .85s var(--ease);transform:translateY(1.35rem)}[data-reveal].is-in{opacity:1;transform:none}[data-reveal-stagger]>*{opacity:0;transition:opacity .75s var(--ease), transform .75s var(--ease);transform:translateY(1.1rem)}[data-reveal-stagger].is-in>:first-child{transition-delay:40ms}[data-reveal-stagger].is-in>:nth-child(2){transition-delay:.1s}[data-reveal-stagger].is-in>:nth-child(3){transition-delay:.16s}[data-reveal-stagger].is-in>:nth-child(4){transition-delay:.22s}[data-reveal-stagger].is-in>:nth-child(5){transition-delay:.28s}[data-reveal-stagger].is-in>:nth-child(6){transition-delay:.34s}[data-reveal-stagger].is-in>:nth-child(7){transition-delay:.4s}[data-reveal-stagger].is-in>:nth-child(8){transition-delay:.46s}[data-reveal-stagger].is-in>:nth-child(n+9){transition-delay:.5s}[data-reveal-stagger].is-in>*{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.animate-rise,.animate-rise-delay,.animate-rise-late,.animate-fade,.project-card,.hero__image{animation:none!important}[data-reveal],[data-reveal-stagger]>*{opacity:1!important;transition:none!important;transform:none!important}.btn:hover,.btn--primary:hover:after{transform:none}.pm,.pm__media,.pm__side{transition:none!important}}.header[data-astro-cid-nen7h5rs]{z-index:40;backdrop-filter:blur(16px);background:color-mix(in srgb, var(--color-paper) 86%, transparent);box-shadow:none;transition:background .25s var(--ease), border-color .25s var(--ease), backdrop-filter .25s var(--ease);border-bottom:0;border-radius:0 0 clamp(1.25rem,3vw,2rem) clamp(1.25rem,3vw,2rem);position:sticky;top:0}.header--transparent[data-astro-cid-nen7h5rs]{backdrop-filter:none;background:0 0;border-bottom-color:#0000;position:absolute;inset-inline:0}.header--transparent[data-astro-cid-nen7h5rs].is-solid{box-shadow:none;backdrop-filter:none;background:#fff;border-bottom:0;position:fixed;inset-inline:0}.header__inner[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:1.25rem;min-height:5rem;display:flex}.logo[data-astro-cid-nen7h5rs]{flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.logo__img[data-astro-cid-nen7h5rs]{width:auto;height:2.35rem;transition:filter .25s var(--ease)}.header--transparent[data-astro-cid-nen7h5rs]:not(.is-solid) .logo__img[data-astro-cid-nen7h5rs]{filter:brightness(0)invert()}.nav[data-astro-cid-nen7h5rs]{align-items:center;gap:2rem;display:flex}.nav__list[data-astro-cid-nen7h5rs]{align-items:center;gap:1.75rem;margin:0;padding:0;list-style:none;display:flex}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink);transition:color .2s var(--ease);font-size:clamp(1.1rem,1.35vw,1.3rem);font-weight:700;line-height:1;text-decoration:none}.header--transparent[data-astro-cid-nen7h5rs]:not(.is-solid) .nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:#fff}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--color-accent)}.header--transparent[data-astro-cid-nen7h5rs]:not(.is-solid) .nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.header--transparent[data-astro-cid-nen7h5rs]:not(.is-solid) .nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:#fff}.nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page],.header--transparent[data-astro-cid-nen7h5rs]:not(.is-solid) .nav__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{box-shadow:inset 0 -3px 0 var(--color-sky)}.nav-toggle[data-astro-cid-nen7h5rs]{cursor:pointer;background:0 0;border:0;width:2.75rem;height:2.75rem;padding:0;display:none}.nav-toggle__bars[data-astro-cid-nen7h5rs]{gap:.45rem;width:1.45rem;margin-inline:auto;display:grid}.nav-toggle__bar[data-astro-cid-nen7h5rs]{background:var(--color-ink);width:100%;height:2px;display:block}.header--transparent[data-astro-cid-nen7h5rs]:not(.is-solid) .nav-toggle__bar[data-astro-cid-nen7h5rs]{background:#fff}.nav-mobile[data-astro-cid-nen7h5rs]{display:none}@media (width<=480px){.logo__img[data-astro-cid-nen7h5rs]{height:1.85rem}}@media (width<=820px){.nav[data-astro-cid-nen7h5rs]{display:none}.nav-toggle[data-astro-cid-nen7h5rs]{place-items:center;display:grid}.nav-mobile[data-astro-cid-nen7h5rs]{z-index:100;-webkit-overflow-scrolling:touch;background:#fff;flex-direction:column;padding:0 0 2rem;display:none;position:fixed;inset:0;overflow:auto}.nav-mobile[data-astro-cid-nen7h5rs].is-open{display:flex}.nav-mobile__top[data-astro-cid-nen7h5rs]{z-index:1;min-height:5rem;padding-inline:max(1rem, calc((100vw - var(--width)) / 2));background:#fff;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:sticky;top:0}.nav-mobile__logo[data-astro-cid-nen7h5rs]{align-items:center;display:inline-flex}.nav-mobile__logo[data-astro-cid-nen7h5rs] img[data-astro-cid-nen7h5rs]{width:auto;height:2.35rem}.nav-mobile__close[data-astro-cid-nen7h5rs]{width:2.75rem;height:2.75rem;color:var(--color-ink);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.nav-mobile__close[data-astro-cid-nen7h5rs]:hover{color:var(--color-accent)}.nav-mobile__nav[data-astro-cid-nen7h5rs]{flex:1;align-items:center;padding:1rem 1.5rem 2rem;display:flex}.nav-mobile__list[data-astro-cid-nen7h5rs]{width:min(100%,24rem);margin:0 auto;padding:0;list-style:none;display:grid}.nav-mobile__list[data-astro-cid-nen7h5rs] li[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--color-line)}.nav-mobile__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-ink);padding-block:1.15rem;font-size:clamp(1.65rem,7vw,2.15rem);font-weight:700;line-height:1.1;text-decoration:none;display:block}.nav-mobile__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--color-accent);box-shadow:inset 4px 0 0 var(--color-sky);padding-left:.85rem}.nav-mobile__list[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--color-accent)}.nav-mobile__contact[data-astro-cid-nen7h5rs]{border-top:1px solid var(--color-line);gap:.45rem;width:min(100%,24rem);margin:0 auto;padding:1.5rem 1.5rem 0;display:grid}.nav-mobile__contact[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--color-muted);font-size:1.05rem;font-weight:600;text-decoration:none}.nav-mobile__contact[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--color-accent)}}html.nav-open,html.nav-open body{overflow:hidden}@media (width<=820px){.nav-mobile[data-nav]{z-index:100;-webkit-overflow-scrolling:touch;background:#fff;flex-direction:column;padding:0 0 2rem;display:none;position:fixed;inset:0;overflow:auto}.nav-mobile[data-nav].is-open{display:flex}.nav-mobile[data-nav][hidden]{display:none!important}}.footer[data-astro-cid-jo6i4kqk]{background:var(--color-steel);color:#ffffffb8;padding-top:var(--space-xl);margin-top:auto}.footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:#ffffffc7;text-decoration:none}.footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:#fff}.footer__grid[data-astro-cid-jo6i4kqk]{gap:var(--space-lg);padding-bottom:var(--space-lg);grid-template-columns:1.4fr 1fr 1fr;display:grid}.footer__logo[data-astro-cid-jo6i4kqk]{margin-bottom:1rem;display:inline-block}.footer__logo[data-astro-cid-jo6i4kqk] img[data-astro-cid-jo6i4kqk]{filter:brightness(0)invert();width:auto;height:2rem}.footer__tagline[data-astro-cid-jo6i4kqk]{max-width:22rem;margin:0}.footer__heading[data-astro-cid-jo6i4kqk]{letter-spacing:.1em;text-transform:uppercase;color:#fff;margin:0 0 .85rem;font-size:.8rem;font-weight:600}.footer__links[data-astro-cid-jo6i4kqk]{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.footer__bottom[data-astro-cid-jo6i4kqk]{color:#ffffff73;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;font-size:.88rem;display:flex}.footer__bottom[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{margin:0}.footer__sep[data-astro-cid-jo6i4kqk]{margin-inline:.45rem}.footer__madeby[data-astro-cid-jo6i4kqk]{opacity:.7;transition:opacity .2s var(--ease);margin-left:auto;display:inline-flex}.footer__madeby[data-astro-cid-jo6i4kqk]:hover{opacity:1}.footer__madeby[data-astro-cid-jo6i4kqk] img[data-astro-cid-jo6i4kqk]{width:auto;height:.55rem;display:block}@media (width<=800px){.footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}}html.pm-open,html.pm-open body{overflow:hidden}.pm[data-astro-cid-xlb753yp]{z-index:80;color:var(--color-ink);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s var(--ease), visibility .35s var(--ease);background:#fff;grid-template-columns:minmax(0,1.7fr) minmax(18rem,24rem);display:grid;position:fixed;inset:0}.pm[data-astro-cid-xlb753yp].is-open{opacity:1;visibility:visible;pointer-events:auto}.pm[data-astro-cid-xlb753yp][hidden]{display:none}.pm[data-astro-cid-xlb753yp]:not([hidden]){display:grid}.pm__media[data-astro-cid-xlb753yp]{background:var(--color-steel);min-height:0;transition:transform .55s var(--ease);position:relative;overflow:hidden;transform:scale(1.02)}.pm[data-astro-cid-xlb753yp].is-open .pm__media[data-astro-cid-xlb753yp]{transform:none}.pm__slides[data-astro-cid-xlb753yp]{pointer-events:none;position:absolute;inset:0}.pm__slides[data-astro-cid-xlb753yp] .pm__image{object-fit:cover;object-position:center;opacity:0;width:100%;height:100%;transition:opacity .35s var(--ease);position:absolute;inset:0}.pm__slides[data-astro-cid-xlb753yp] .pm__image.is-active{opacity:1}.pm__shot[data-astro-cid-xlb753yp]{z-index:2;pointer-events:auto;background:var(--color-accent);color:#fff;cursor:pointer;width:4rem;height:4rem;transition:background .2s var(--ease), color .2s var(--ease);border:0;place-items:center;display:grid;position:absolute;top:50%;translate:0 -50%}.pm__shot[data-astro-cid-xlb753yp]:hover{background:var(--color-sky);color:var(--color-ink)}.pm__shot--prev[data-astro-cid-xlb753yp]{left:0}.pm__shot--next[data-astro-cid-xlb753yp]{right:0}.pm__side[data-astro-cid-xlb753yp]{border-left:1px solid var(--color-line);opacity:.55;min-height:0;transition:transform .45s var(--ease), opacity .45s var(--ease);background:#fff;grid-template-rows:auto 1fr;display:grid;transform:translate(1.5rem)}.pm[data-astro-cid-xlb753yp].is-open .pm__side[data-astro-cid-xlb753yp]{opacity:1;transform:none}.pm__top[data-astro-cid-xlb753yp]{border-bottom:1px solid var(--color-line);grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;padding:1rem 1.25rem;display:grid}.pm__nav[data-astro-cid-xlb753yp]{font:inherit;color:var(--color-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.35rem 0;font-size:.92rem;font-weight:500;display:inline-flex}.pm__nav--end[data-astro-cid-xlb753yp]{justify-self:end}.pm__nav[data-astro-cid-xlb753yp]:hover{color:var(--color-accent)}.pm__close[data-astro-cid-xlb753yp]{width:2.85rem;height:2.85rem;color:var(--color-ink);cursor:pointer;border-radius:var(--radius);transition:color .25s var(--ease), background .25s var(--ease), transform .35s var(--ease);background:0 0;border:0;place-items:center;display:grid}.pm__close[data-astro-cid-xlb753yp] svg[data-astro-cid-xlb753yp]{transition:transform .35s var(--ease)}.pm__close[data-astro-cid-xlb753yp]:hover{color:var(--color-accent);background:color-mix(in srgb, var(--color-sky) 35%, transparent)}.pm__close[data-astro-cid-xlb753yp]:hover svg[data-astro-cid-xlb753yp]{transform:rotate(90deg)scale(1.08)}.pm__body[data-astro-cid-xlb753yp]{padding:clamp(1.5rem,4vh,2.75rem) 1.5rem 2rem;overflow:auto}.pm__badge[data-astro-cid-xlb753yp]{color:var(--color-muted);background:#d6dfff;margin:0 0 1.1rem;padding:.35rem .65rem;font-size:.82rem;font-weight:600;display:inline-flex}.pm__title[data-astro-cid-xlb753yp]{letter-spacing:-.03em;margin:0 0 1.25rem;font-size:clamp(1.55rem,2.4vw,2.1rem);font-weight:700;line-height:1.15}.pm__row[data-astro-cid-xlb753yp]{color:var(--color-ink);margin:0 0 .45rem;font-size:1rem}.pm__row[data-astro-cid-xlb753yp][data-pm-work-row]{max-width:22rem;margin-top:.85rem;line-height:1.45}.pm__share[data-astro-cid-xlb753yp]{border:1px solid var(--color-line);width:2.5rem;height:2.5rem;color:var(--color-ink);cursor:pointer;transition:border-color .2s var(--ease), color .2s var(--ease);background:#fff;place-items:center;margin-top:1.5rem;display:grid}.pm__share[data-astro-cid-xlb753yp]:hover,.pm__share[data-astro-cid-xlb753yp][data-copied]{border-color:var(--color-accent);color:var(--color-accent)}@media (width<=900px){.pm[data-astro-cid-xlb753yp]{grid-template-rows:minmax(42svh,52svh) 1fr;grid-template-columns:1fr;overflow:auto}.pm__media[data-astro-cid-xlb753yp]{min-height:42svh}.pm__side[data-astro-cid-xlb753yp]{border-left:0;border-top:1px solid var(--color-line);transform:translateY(1rem)}.pm__shot[data-astro-cid-xlb753yp]{width:3.25rem;height:3.25rem}}@media (prefers-reduced-motion:reduce){.pm[data-astro-cid-xlb753yp],.pm__media[data-astro-cid-xlb753yp],.pm__side[data-astro-cid-xlb753yp]{transition:none}.pm__media[data-astro-cid-xlb753yp],.pm__side[data-astro-cid-xlb753yp]{opacity:1;transform:none}}.cookie[data-astro-cid-hq3mgpmn]{z-index:80;pointer-events:none;padding:1rem;position:fixed;inset:auto 0 0}.cookie__inner[data-astro-cid-hq3mgpmn]{pointer-events:auto;background:var(--color-steel);color:#ffffffdb;border-radius:var(--radius);gap:1rem;width:min(100%,42rem);margin-inline:auto;padding:1.15rem 1.25rem;display:grid;box-shadow:0 18px 40px #12142847}.cookie__text[data-astro-cid-hq3mgpmn]{margin:0;font-size:.95rem;line-height:1.5}.cookie__text[data-astro-cid-hq3mgpmn] a[data-astro-cid-hq3mgpmn]{color:#fff;text-underline-offset:.16em;text-decoration:underline}.cookie__actions[data-astro-cid-hq3mgpmn]{flex-wrap:wrap;gap:.65rem;display:flex}.cookie__btn[data-astro-cid-hq3mgpmn]{padding:.7rem 1.15rem}.cookie__btn[data-astro-cid-hq3mgpmn].btn--ghost{color:#fff;border-color:#ffffff73}.cookie__btn[data-astro-cid-hq3mgpmn].btn--ghost:hover{color:var(--color-ink);background:#fff}.cookie__btn[data-astro-cid-hq3mgpmn].btn--primary:after{content:none}@media (width>=720px){.cookie__inner[data-astro-cid-hq3mgpmn]{grid-template-columns:1fr auto;align-items:center}}
