@layer app-tokens{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-ink:#ececea;--color-muted:#9a9a96;--color-surface:#0c0c0b;--color-surface-raised:#171715;--color-line:#2a2a27;--color-accent:#d8d8d4;--color-accent-strong:#f3f3f0;--container-page:52rem}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-ink:#1b1b18;--color-muted:#6c6c64;--color-surface:#fbfaf8;--color-surface-raised:#efeee9;--color-line:#e3e2db;--color-accent:#3a3a34;--color-accent-strong:#141411}}@layer app-layout{.lander-shell{background:var(--color-surface);min-block-size:100vh;color:var(--color-ink)}.lander-container{inline-size:100%;max-inline-size:var(--container-page);padding-inline:var(--space-4);margin-inline:auto}.lander-main{padding-block:var(--space-5) calc(var(--space-8) + 4.5rem)}.lander-nav{z-index:20;background:color-mix(in srgb, var(--color-surface) 90%, transparent);-webkit-backdrop-filter:blur(.5rem);backdrop-filter:blur(.5rem);position:sticky;inset-block-start:0}.lander-nav__inner{justify-items:center;gap:var(--space-4);padding-block:var(--space-4);grid-template-columns:1fr;display:grid}.lander-nav__brand{justify-self:center}.lander-nav__side{align-items:center;gap:var(--space-3);min-inline-size:0;display:none}.lander-nav__links{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.lander-dock{z-index:40;padding-inline:var(--space-4);pointer-events:none;justify-content:center;display:flex;position:fixed;inset-block-end:calc(var(--space-4) + env(safe-area-inset-bottom,0px));inset-inline:0}.lander-dock__inner{align-items:center;gap:var(--space-3);max-inline-size:calc(100% - var(--space-5));padding:var(--space-2) var(--space-4);border:1px solid color-mix(in srgb, var(--color-line) 70%, transparent);background:color-mix(in srgb, var(--color-surface-raised) 60%, transparent);-webkit-backdrop-filter:blur(20px)saturate(160%);pointer-events:auto;border-radius:999px;display:flex;box-shadow:0 .5rem 1.5rem #00000047}.lander-dock__divider{background:var(--color-line);flex:none;block-size:1.25rem;inline-size:1px}.lander-home{gap:var(--space-7);display:grid}.lander-gallery-masonry{align-items:flex-start;inline-size:100%;min-inline-size:0;display:flex}.lander-gallery-masonry__column{flex-direction:column;flex:33.3333%;min-inline-size:0;display:flex}.lander-gallery-masonry__item{padding:calc(var(--space-3) / 2);box-sizing:border-box;min-inline-size:0;animation:.62s cubic-bezier(.16,1,.3,1) backwards lander-photo-enter;animation-delay:calc(var(--stagger,0) * 45ms);display:block}@keyframes lander-photo-enter{0%{opacity:0;transform:translateY(.875rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.lander-gallery-masonry__item{animation:none}}.lander-about{gap:var(--space-6);padding-block:var(--space-4) var(--space-8);display:grid}.lander-about__title{font-size:1.5rem;font-weight:650;line-height:1.2}.lander-about__body{justify-items:center;gap:var(--space-6);inline-size:100%;display:grid}.lander-about__portrait{border-radius:var(--radius-2);inline-size:100%;overflow:hidden}.lander-about__portrait img{block-size:auto;inline-size:100%;display:block}.lander-about__content{gap:var(--space-4);inline-size:100%;max-inline-size:40rem;color:var(--color-muted);font-size:1.05rem;line-height:1.75;display:grid}.lander-markdown h2,.lander-markdown h3{color:var(--color-ink);font-weight:650;line-height:1.25}.lander-markdown h2{font-size:1.2rem}.lander-markdown h3{font-size:1.05rem}.lander-markdown ul{gap:var(--space-2);padding-inline-start:1.25rem;display:grid}.lander-markdown a{color:var(--color-ink);text-underline-offset:.2em;text-decoration:underline}@media (width>=36rem){.lander-container{padding-inline:var(--space-5)}}@media (width>=48rem){.lander-main{padding-block:var(--space-5) var(--space-8)}.lander-nav__inner{grid-template-columns:1fr auto 1fr;place-items:center stretch}.lander-nav__side{display:flex}.lander-nav__side--start{grid-column:1;justify-content:flex-start}.lander-nav__brand{grid-column:2}.lander-nav__side--end{grid-column:3;justify-content:flex-end}.lander-dock{display:none}}@media (width>=56rem){.lander-home{gap:var(--space-8)}}.lander-contact{gap:var(--space-6);padding-block:var(--space-4) var(--space-8);inline-size:100%;display:grid}.lander-contact__title{inline-size:100%;max-inline-size:40rem;margin-inline:auto;font-size:1.5rem;font-weight:650;line-height:1.2}.lander-contact__body{gap:var(--space-5);justify-items:center;display:grid}.lander-contact__portrait{border-radius:var(--radius-2);inline-size:100%;overflow:hidden}.lander-contact__portrait img{block-size:auto;inline-size:100%;display:block}.lander-contact__details{gap:var(--space-4);inline-size:100%;max-inline-size:40rem;display:grid}.lander-contact__intro{color:var(--color-muted);font-size:1.05rem;line-height:1.75}.lander-contact__links{gap:var(--space-3);margin:0;display:grid}.lander-contact__link{gap:var(--space-3);border-block-end:1px solid var(--color-surface-raised);grid-template-columns:minmax(6rem,10rem) 1fr;align-items:baseline;padding-block-end:var(--space-3);display:grid}.lander-contact__link dt{color:var(--color-muted);font-size:.95rem}.lander-contact__link dd{color:var(--color-ink);margin:0}.lander-contact__link a{color:var(--color-ink);text-underline-offset:.2em;text-decoration:underline}.lander-contact__form{gap:var(--space-4);inline-size:100%;max-inline-size:40rem;margin-inline:auto;display:grid}.lander-contact__hp{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.lander-field{gap:var(--space-2);display:grid}.lander-field span{color:var(--color-muted);font-size:.9rem}.lander-field input,.lander-field textarea{inline-size:100%;padding:var(--space-3);border:1px solid var(--color-surface-raised);border-radius:var(--radius-2);background:var(--color-surface-raised);color:var(--color-ink);font:inherit;line-height:1.5}.lander-field textarea{resize:vertical}.lander-field input:focus-visible,.lander-field textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lander-button{padding:var(--space-3) var(--space-5);border:1px solid var(--color-accent);border-radius:var(--radius-2);background:var(--color-accent-strong);color:var(--color-surface);font:inherit;cursor:pointer;justify-self:start;font-weight:600}.lander-button:disabled{opacity:.6;cursor:progress}.lander-contact__notice{margin:0;font-size:.95rem}.lander-contact__notice--success{color:var(--color-ink)}.lander-contact__notice--error{color:#d66}}@layer app-components{.lander-nav__brand{color:var(--color-accent-strong);letter-spacing:.01em;font-size:1rem;font-weight:700;text-decoration:none}.lander-nav__links a{color:var(--color-muted);font-size:.9375rem;font-weight:550;line-height:1.4;text-decoration:none}.lander-nav__links a:hover,.lander-nav__links a.is-active{color:var(--color-ink)}.lander-gallery-dropdown{display:inline-flex;position:relative}.lander-gallery-dropdown__trigger{color:var(--color-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:.25rem;padding:0;font-size:.9375rem;font-weight:550;line-height:1.4;display:inline-flex}.lander-gallery-dropdown__trigger:hover,.lander-gallery-dropdown__trigger.is-active,.lander-gallery-dropdown__trigger.is-open{color:var(--color-ink)}.lander-gallery-dropdown__chevron{transition:transform .16s}.lander-gallery-dropdown__trigger.is-open .lander-gallery-dropdown__chevron{transform:rotate(180deg)}.lander-gallery-dropdown__panel{z-index:50;border:1px solid color-mix(in srgb, var(--color-line) 65%, transparent);border-radius:var(--radius-3);background:color-mix(in srgb, var(--color-surface-raised) 62%, transparent);-webkit-backdrop-filter:blur(20px)saturate(160%);gap:.125rem;min-inline-size:11rem;padding:.375rem;animation:.14s both lander-fade-in;display:grid;position:fixed;transform:translate(-50%)}.lander-gallery-dropdown__panel--up{transform:translateY(-100%)}.lander-gallery-dropdown__item{border-radius:var(--radius-2);color:var(--color-muted);white-space:nowrap;padding:.375rem .625rem;font-size:.9375rem;font-weight:550;line-height:1.4;text-decoration:none}.lander-gallery-dropdown__item:hover{background:color-mix(in srgb, var(--color-ink) 8%, transparent);color:var(--color-ink)}.lander-gallery-dropdown__item.is-active{color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 6%, transparent)}.lander-switch{border:1px solid var(--color-line);background:color-mix(in srgb, var(--color-surface-raised) 70%, transparent);border-radius:999px;align-items:center;gap:.125rem;padding:.1875rem;display:inline-flex}.lander-switch__option{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.25rem .5rem;font-size:.6875rem;font-weight:650;transition:color .14s,background-color .14s}.lander-switch__option:hover{color:var(--color-ink)}.lander-switch__option.is-active{background:var(--color-accent-strong);color:var(--color-surface)}.lander-icon-button{border:1px solid var(--color-line);background:color-mix(in srgb, var(--color-surface-raised) 70%, transparent);block-size:2rem;inline-size:2rem;color:var(--color-ink);cursor:pointer;border-radius:999px;place-items:center;padding:0;transition:color .14s,border-color .14s;display:grid}.lander-icon-button:hover{color:var(--color-accent-strong);border-color:var(--color-line)}.lander-icon-button svg,.lander-switch__option{pointer-events:auto}.lander-shell :focus-visible{outline:none}.lander-nav__brand:focus-visible,.lander-nav__links a:focus-visible,.lander-gallery-dropdown__trigger:focus-visible,.lander-gallery-dropdown__item:focus-visible,.lander-switch__option:focus-visible,.lander-markdown a:focus-visible{text-underline-offset:.3em;text-decoration:underline;text-decoration-thickness:.0625rem;-webkit-text-decoration-color:color-mix(in srgb, var(--color-ink) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--color-ink) 40%, transparent);outline:none}.lander-icon-button:focus-visible{color:var(--color-ink)}:is(.lander-nav__side,.lander-dock__inner) .lander-switch{background:0 0;border:0;border-radius:0;gap:0;padding:0}:is(.lander-nav__side,.lander-dock__inner) .lander-switch__option{letter-spacing:.08em;border-radius:0;padding-inline:.5rem;font-size:.75rem}:is(.lander-nav__side,.lander-dock__inner) .lander-switch__option:not(:last-child){border-inline-end:1px solid var(--color-line)}:is(.lander-nav__side,.lander-dock__inner) .lander-switch__option.is-active{color:var(--color-ink);background:0 0}:is(.lander-nav__side,.lander-dock__inner) .lander-icon-button{block-size:auto;inline-size:auto;color:var(--color-muted);background:0 0;border:0;border-radius:0;padding-inline:.25rem}:is(.lander-nav__side,.lander-dock__inner) .lander-icon-button:hover{color:var(--color-ink);border-color:#0000}.lander-state{padding-block:var(--space-7);color:var(--color-muted);font-size:.9375rem}.lander-state--loading{min-block-size:40vh;padding-block:var(--space-6);place-items:center;animation:.22s both lander-fade-in;display:grid}.lander-spinner{border:.15rem solid color-mix(in srgb, var(--color-ink) 16%, transparent);border-block-start-color:var(--color-ink);border-radius:50%;block-size:1.75rem;inline-size:1.75rem;animation:.72s linear infinite lander-spin}@keyframes lander-spin{to{transform:rotate(360deg)}}@keyframes lander-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.lander-spinner,.lander-state--loading{animation:none}}.lander-gallery-item{margin:0}.lander-gallery-item__trigger{cursor:pointer;background:0 0;border:0;inline-size:100%;min-inline-size:0;max-inline-size:100%;padding:0;display:block}.lander-gallery-item img{aspect-ratio:4/5;object-fit:contain;background:var(--color-surface-raised);block-size:auto;inline-size:100%;min-inline-size:0;max-inline-size:100%;display:block}.lander-photo-preview{--preview-pad:var(--space-4);--preview-toolbar-space:5.5rem;--color-ink:#ececea;--color-muted:#9a9a96;--color-surface:#0c0c0b;--color-surface-raised:#171715;--color-line:#2a2a27;--color-accent:#d8d8d4;--color-accent-strong:#f3f3f0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;z-index:100;color:var(--color-ink);position:fixed;inset:0}.lander-photo-preview__backdrop{background:var(--color-surface);cursor:pointer;opacity:calc(1 - var(--preview-dismiss,0) * .4);border:0;padding:0;position:absolute;inset:0}.lander-photo-preview__viewport{touch-action:none;cursor:grab;position:absolute;inset:0;overflow:clip}.lander-photo-preview__viewport:active{cursor:grabbing}.lander-photo-preview__track{z-index:1;pointer-events:none;block-size:100%;inline-size:100%;min-inline-size:0;transition:transform .28s cubic-bezier(.32,.72,0,1);display:flex;position:relative}.lander-photo-preview__slide{block-size:100%;inline-size:100%;min-inline-size:0;padding:max(var(--preview-pad), env(safe-area-inset-top,0px)) var(--preview-pad) var(--preview-toolbar-space);box-sizing:border-box;pointer-events:none;-webkit-user-select:none;user-select:none;flex:0 0 100%;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.lander-photo-preview__frame{pointer-events:auto;transform-origin:50%;will-change:transform, opacity;justify-content:center;align-items:center;block-size:100%;inline-size:100%;min-inline-size:0;display:flex}.lander-photo-preview__frame.is-dismiss-animating{transition:transform .28s cubic-bezier(.32,.72,0,1),opacity .28s}.lander-photo-preview__image{object-fit:contain;opacity:0;touch-action:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;block-size:auto;max-block-size:100%;inline-size:auto;max-inline-size:100%;transition:opacity .2s;display:block}.lander-photo-preview__image.is-loaded{opacity:1}.lander-photo-preview__fallback{aspect-ratio:4/5;border-radius:var(--radius-3);background:var(--color-surface-raised);inline-size:min(60vw,18rem)}.lander-photo-preview__nav{z-index:3;background:color-mix(in srgb, var(--color-surface-raised) 80%, transparent);block-size:2.75rem;inline-size:2.75rem;color:var(--color-ink);cursor:pointer;-webkit-backdrop-filter:blur(8px);border:0;border-radius:999px;place-items:center;padding:0;transition:opacity .12s linear,background-color .12s;display:none;position:absolute;inset-block-start:50%;transform:translateY(-50%)}.lander-photo-preview__nav svg{pointer-events:none}.lander-photo-preview__nav:hover{background:color-mix(in srgb, var(--color-surface-raised) 96%, transparent)}.lander-photo-preview__nav:disabled{opacity:.3;cursor:default}.lander-photo-preview__nav--prev{inset-inline-start:var(--space-5)}.lander-photo-preview__nav--next{inset-inline-end:var(--space-5)}@media (hover:hover) and (pointer:fine){.lander-photo-preview__nav{display:grid}}.lander-photo-preview__toolbar{z-index:4;padding:var(--space-4);pointer-events:none;justify-content:center;padding-block-end:calc(var(--space-4) + env(safe-area-inset-bottom,0px));transition:opacity .12s linear,transform .12s;display:flex;position:absolute;inset-block-end:0;inset-inline:0}.lander-photo-preview__toolbar-inner{align-items:center;gap:var(--space-2);max-inline-size:min(32rem, calc(100% - var(--space-6)));background:color-mix(in srgb, var(--color-surface-raised) 84%, transparent);-webkit-backdrop-filter:blur(14px);pointer-events:auto;border-radius:999px;padding:.3125rem;display:flex;box-shadow:0 .5rem 1.5rem #00000059}.lander-photo-preview__indicator{scrollbar-width:none;align-items:center;gap:.25rem;min-inline-size:0;padding-inline:.375rem;display:flex;overflow-x:auto}.lander-photo-preview__indicator::-webkit-scrollbar{display:none}.lander-photo-preview__dot{cursor:pointer;background:0 0;border:0;flex:0 0 .875rem;place-items:center;block-size:1.25rem;inline-size:.875rem;padding:0;display:grid}.lander-photo-preview__dot:before{content:"";background:color-mix(in srgb, var(--color-accent) 45%, transparent);opacity:.7;border-radius:50%;block-size:.375rem;inline-size:.375rem;transition:transform .16s,background-color .16s,opacity .16s}.lander-photo-preview__dot.is-active:before{background:var(--color-accent-strong);opacity:1;transform:scale(1.5)}.lander-photo-preview__toolbar-divider{background:color-mix(in srgb, var(--color-ink) 18%, transparent);flex:none;block-size:1.25rem;inline-size:1px}.lander-photo-preview__close{block-size:2rem;inline-size:2rem;color:var(--color-ink);cursor:pointer;background:0 0;border:0;border-radius:999px;flex:none;place-items:center;padding:0;transition:background-color .12s;display:grid}.lander-photo-preview__close:hover{background:color-mix(in srgb, var(--color-ink) 12%, transparent)}.lander-photo-preview__close svg{pointer-events:none}.lander-photo-preview.is-dismissing .lander-photo-preview__toolbar,.lander-photo-preview.is-dismissing .lander-photo-preview__nav{opacity:0;pointer-events:none}@media (prefers-reduced-motion:reduce){.lander-photo-preview__track,.lander-photo-preview__image,.lander-photo-preview__dot,.lander-photo-preview__frame.is-dismiss-animating,.lander-photo-preview__toolbar,.lander-photo-preview__nav{transition:none}}}
