.cursor-glow-module__QCgYrG__viewport{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.cursor-glow-module__QCgYrG__glow{aspect-ratio:1;opacity:0;background:radial-gradient(circle,#3454440f 0%,#34544405 35%,#0000 68%);width:clamp(600px,70vw,1000px);transition:opacity .7s;position:absolute;top:0;left:0;transform:translate(50vw,50vh)translate(-50%,-50%)}.cursor-glow-module__QCgYrG__glow[data-active=true]{opacity:1}@media (prefers-color-scheme:dark){.cursor-glow-module__QCgYrG__glow{background:radial-gradient(circle,#b4d3bc0d 0%,#b4d3bc04 35%,#0000 68%)}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-glow-module__QCgYrG__glow{opacity:.5;transition:none}}
.gateway-module__7bYU6q__gateway{--gateway-background:#f7f6f2;--gateway-text:#000;--gateway-accent:#345444;--gateway-gap:clamp(40px, 3.8vw, 56px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100vh;background:var(--gateway-background);min-height:100svh;color:var(--gateway-text);grid-template-columns:minmax(0,1fr);place-items:center;padding:64px clamp(24px,4vw,64px);display:grid}.gateway-module__7bYU6q__home{isolation:isolate;position:relative}.gateway-module__7bYU6q__navigation{z-index:1;justify-items:center;gap:max(var(--gateway-gap), var(--preview-clearance,40px));text-align:center;width:min(100%,990px);min-width:0;display:grid;position:relative}.gateway-module__7bYU6q__link{overflow-wrap:anywhere;width:fit-content;min-width:0;max-width:100%;min-height:44px;font-family:var(--font-gateway), Georgia, serif;font-size:var(--type-display);font-optical-sizing:auto;letter-spacing:-.015em;color:var(--gateway-text);align-items:center;font-weight:400;line-height:1.3;text-decoration:none;animation:.48s ease-out both gateway-module__7bYU6q__title-reveal;display:grid;position:relative}.gateway-module__7bYU6q__link:nth-child(2){animation-delay:70ms}.gateway-module__7bYU6q__link:nth-child(3){animation-delay:.14s}.gateway-module__7bYU6q__linkWindow{display:block;position:relative}.gateway-module__7bYU6q__linkTitle,.gateway-module__7bYU6q__linkPreview{transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .28s}.gateway-module__7bYU6q__linkTitle{transform-origin:50%;display:block}.gateway-module__7bYU6q__linkPreview{top:calc(100% - var(--preview-height,48px) / 2);pointer-events:auto;width:min(85vw,520px);font-family:system-ui,sans-serif;font-size:var(--type-body);letter-spacing:0;opacity:0;visibility:hidden;justify-items:center;gap:4px;margin-top:0;padding:0;line-height:1.5;display:grid;position:absolute;left:50%;transform:translate(-50%,8px)}.gateway-module__7bYU6q__previewDescription{text-wrap:balance;max-width:44ch}.gateway-module__7bYU6q__previewPrompt{font-size:var(--type-meta);color:var(--gateway-accent)}@media (hover:hover) and (pointer:fine){.gateway-module__7bYU6q__link:hover .gateway-module__7bYU6q__linkTitle{transform:translateY(calc(var(--preview-height,48px) / -2 - 8px)) scale(.88)}.gateway-module__7bYU6q__link:hover .gateway-module__7bYU6q__linkPreview{opacity:1;visibility:visible;transform:translate(-50%)}}.gateway-module__7bYU6q__link:focus-visible .gateway-module__7bYU6q__linkTitle{transform:translateY(calc(var(--preview-height,48px) / -2 - 8px)) scale(.88)}.gateway-module__7bYU6q__link:focus-visible .gateway-module__7bYU6q__linkPreview{opacity:1;visibility:visible;transform:translate(-50%)}.gateway-module__7bYU6q__link:focus-visible{outline:2px solid var(--gateway-accent);outline-offset:8px;animation:none}@keyframes gateway-module__7bYU6q__title-reveal{0%{opacity:0}to{opacity:1}}.gateway-module__7bYU6q__srOnly{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gateway-module__7bYU6q__section{text-align:center;align-content:center;justify-items:center;gap:32px}.gateway-module__7bYU6q__title{font-family:var(--font-gateway), Georgia, serif;color:var(--gateway-text);font-size:var(--type-display);font-weight:400;line-height:1.25}.gateway-module__7bYU6q__back{color:var(--gateway-text);text-underline-offset:.2em;padding:12px;text-decoration:underline}.gateway-module__7bYU6q__back:focus-visible{outline:2px solid var(--gateway-accent);outline-offset:4px}@media (prefers-color-scheme:dark){.gateway-module__7bYU6q__gateway{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--gateway-background:#111210;--gateway-text:#f1f2eb;--gateway-accent:#b4d3bc}}@media (max-width:40rem){.gateway-module__7bYU6q__gateway{--gateway-gap:40px;padding:24px}.gateway-module__7bYU6q__navigation{max-width:342px}.gateway-module__7bYU6q__link{font-size:var(--type-display-mobile);line-height:1.35}}@media (prefers-reduced-motion:reduce){.gateway-module__7bYU6q__link{animation:none}.gateway-module__7bYU6q__linkTitle,.gateway-module__7bYU6q__linkPreview{transition:none}}@media (max-height:720px){.gateway-module__7bYU6q__gateway{min-height:auto;padding-block:40px}}.gateway-module__7bYU6q__link[data-dismissed=true] .gateway-module__7bYU6q__linkPreview{opacity:0;visibility:hidden}.gateway-module__7bYU6q__link[data-dismissed=true] .gateway-module__7bYU6q__linkTitle{transform:none}@media (hover:none) and (pointer:coarse){.gateway-module__7bYU6q__navigation{gap:var(--gateway-gap)}.gateway-module__7bYU6q__linkPreview{display:none}.gateway-module__7bYU6q__linkTitle{transform:none}.gateway-module__7bYU6q__link:focus-visible .gateway-module__7bYU6q__linkTitle{transform:none}}@media (max-width:40rem){.gateway-module__7bYU6q__gateway{min-height:auto;padding-block:40px}.gateway-module__7bYU6q__title{font-size:var(--type-display-mobile);overflow-wrap:anywhere}.gateway-module__7bYU6q__linkPreview{display:none}.gateway-module__7bYU6q__link:focus-visible .gateway-module__7bYU6q__linkTitle{transform:none}.gateway-module__7bYU6q__navigation{gap:var(--gateway-gap)}}
.portfolio-module__uPhFVa__page{overflow-wrap:anywhere;padding:180px clamp(24px,4vw,64px)}.portfolio-module__uPhFVa__content{width:min(100%,1080px);margin-inline:auto}.portfolio-module__uPhFVa__intro{gap:24px;max-width:760px;margin-bottom:80px;display:grid}.portfolio-module__uPhFVa__intro h1{font-family:var(--font-gateway), Georgia, serif;font-weight:400;font-size:var(--type-display);letter-spacing:-.015em;text-wrap:balance;line-height:1.2}.portfolio-module__uPhFVa__intro p,.portfolio-module__uPhFVa__description p{max-width:60ch;line-height:1.75}.portfolio-module__uPhFVa__label{font:inherit;font-size:var(--type-meta);color:var(--secondary)}.portfolio-module__uPhFVa__projects{gap:clamp(64px,8vw,120px);margin-top:32px;display:grid}.portfolio-module__uPhFVa__project{color:inherit;--glass-fill:linear-gradient(150deg, #ffffff9e, #ffffff47 55%, #fff6);--glass-edge:#ffffffbf;--glass-line:#5a5f5524;--glass-shadow:inset 0 1px 0 var(--glass-edge), 0 1px 2px #1416120a, 0 18px 40px -22px #1416122e;border:1px solid var(--glass-line);background:var(--glass-fill);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);border-radius:32px;padding:24px 24px 32px;text-decoration:none;display:block;overflow:hidden}@media (prefers-color-scheme:dark){.portfolio-module__uPhFVa__project{--glass-fill:linear-gradient(150deg, #ffffff17, #ffffff08 55%, #ffffff0f);--glass-edge:#ffffff24;--glass-line:#ffffff17;--glass-shadow:inset 0 1px 0 var(--glass-edge), 0 18px 40px -22px #0009}}.portfolio-module__uPhFVa__hero{aspect-ratio:1.827;background:#e7e9e8;border-radius:clamp(16px,1.8vw,24px);width:100%;position:relative;overflow:hidden}.portfolio-module__uPhFVa__heroImage{object-fit:contain;object-position:center;width:100%;max-width:100%;height:100%;display:block}.portfolio-module__uPhFVa__projectInfo{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,72px);padding:44px 0 0;display:grid}.portfolio-module__uPhFVa__projectTitle,.portfolio-module__uPhFVa__description{align-content:start;gap:12px;display:grid}.portfolio-module__uPhFVa__project h3{font-family:var(--font-gateway), Georgia, serif;text-wrap:balance;font-size:clamp(1.25rem,1rem + .7vw,1.65rem);font-weight:400;line-height:1.35}.portfolio-module__uPhFVa__projectTitle>.portfolio-module__uPhFVa__label{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem}.portfolio-module__uPhFVa__access{color:var(--secondary);font-size:var(--type-meta)}.portfolio-module__uPhFVa__action{color:var(--accent);text-underline-offset:5px;text-decoration:underline}.portfolio-module__uPhFVa__action span{display:inline-block}.portfolio-module__uPhFVa__project:focus-visible{outline:2px solid var(--accent);outline-offset:8px}@media (prefers-reduced-motion:no-preference){.portfolio-module__uPhFVa__heroImage{transition:transform .8s cubic-bezier(.22,1,.36,1)}.portfolio-module__uPhFVa__action span{transition:transform .4s cubic-bezier(.22,1,.36,1)}.portfolio-module__uPhFVa__project:focus-visible .portfolio-module__uPhFVa__heroImage{transform:scale(1.025)}.portfolio-module__uPhFVa__project:focus-visible .portfolio-module__uPhFVa__action span{transform:translate(3px,-3px)}@media (hover:hover) and (pointer:fine){.portfolio-module__uPhFVa__project:hover .portfolio-module__uPhFVa__heroImage{transform:scale(1.025)}.portfolio-module__uPhFVa__project:hover .portfolio-module__uPhFVa__action span{transform:translate(3px,-3px)}.portfolio-module__uPhFVa__project{transform:perspective(1600px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,background-color .3s}[data-tilting]>.portfolio-module__uPhFVa__project{transform:perspective(1600px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) scale(1.01);box-shadow:inset 0 1px 0 var(--glass-edge), 0 24px 48px -20px #14161238;will-change:transform}}}@media (max-width:40rem){.portfolio-module__uPhFVa__projectInfo{grid-template-columns:1fr;gap:24px;padding-top:24px}.portfolio-module__uPhFVa__hero{aspect-ratio:16/9}.portfolio-module__uPhFVa__project{border-radius:24px;padding:12px 12px 24px}}@media (max-width:40rem),(max-height:720px){.portfolio-module__uPhFVa__page{padding-top:48px;padding-bottom:48px}.portfolio-module__uPhFVa__intro{margin-bottom:48px}.portfolio-module__uPhFVa__intro h1{font-size:var(--type-display-mobile)}}
