.app-nav{position:sticky;top:0;z-index:100;background-color:var(--color-bg);border-bottom:1px solid transparent;transition:border-color .25s cubic-bezier(.25,1,.5,1)}.app-nav--scrolled{border-bottom-color:var(--color-border)}.app-nav__inner{display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:0 auto;padding:0 24px;height:64px}@media (min-width: 768px){.app-nav__inner{padding:0 32px}}.app-nav__brand{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:1.3rem;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text);text-decoration:none;transition:color .15s cubic-bezier(.25,1,.5,1)}.app-nav__brand:hover{color:var(--color-accent)}.app-nav__right{display:none;align-items:center}@media (min-width: 768px){.app-nav__right{display:flex}}.app-nav__desktop{display:flex;align-items:center;gap:24px}.app-nav__desktop a{font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:.875rem;letter-spacing:.09em;text-transform:uppercase;color:var(--color-text-2);text-decoration:none;transition:color .15s cubic-bezier(.25,1,.5,1)}.app-nav__desktop a:hover{color:var(--color-text)}.app-nav__desktop a.router-link-active,.app-nav__desktop a.router-link-exact-active{color:var(--color-accent)}.app-nav__social{display:flex;align-items:center;gap:12px;padding-left:16px;margin-left:8px;border-left:1px solid var(--color-border)}.app-nav__social a{display:flex;align-items:center;color:var(--color-text-3);text-decoration:none;transition:color .15s cubic-bezier(.25,1,.5,1);line-height:1}.app-nav__social a:hover{color:var(--color-accent)}.app-nav__burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;margin-right:-8px}@media (min-width: 768px){.app-nav__burger{display:none}}.app-nav__bar{display:block;height:2px;background-color:var(--color-text);transition:transform .22s cubic-bezier(.25,1,.5,1),opacity .18s cubic-bezier(.25,1,.5,1)}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background-color:var(--color-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.nav-overlay__close{position:absolute;top:16px;right:16px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;line-height:1;color:var(--color-text-2);transition:color .15s cubic-bezier(.25,1,.5,1)}.nav-overlay__close:hover{color:var(--color-text)}.nav-overlay nav{display:flex;flex-direction:column;align-items:center;gap:12px}.nav-overlay__link{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(2.2rem,9vw,4rem);line-height:1;letter-spacing:-.02em;text-transform:uppercase;text-decoration:none;color:var(--color-text-2);transition:color .12s cubic-bezier(.25,1,.5,1)}.nav-overlay__link:hover{color:var(--color-accent)}.nav-overlay__link.router-link-active,.nav-overlay__link.router-link-exact-active{color:var(--color-text)}.nav-overlay__social{display:flex;gap:24px;margin-top:32px}.nav-overlay__social a{display:flex;align-items:center;gap:8px;font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-3);text-decoration:none;transition:color .15s cubic-bezier(.25,1,.5,1)}.nav-overlay__social a:hover{color:var(--color-accent)}.nav-overlay-enter-active{transition:opacity .22s cubic-bezier(.25,1,.5,1)}.nav-overlay-leave-active{transition:opacity .16s cubic-bezier(.4,0,.2,1)}.nav-overlay-enter-from,.nav-overlay-leave-to{opacity:0}.app-footer{border-top:1px solid var(--color-border);margin-top:96px}.app-footer__inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;max-width:1280px;margin:0 auto;padding:32px 24px}@media (min-width: 768px){.app-footer__inner{padding:32px}}.app-footer__copy{font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-3)}.app-main{min-height:calc(100dvh - 64px)}.page-enter-active,.page-leave-active{transition:opacity .18s cubic-bezier(.25,1,.5,1)}.page-enter-from,.page-leave-to{opacity:0}:root{--color-bg: oklch(97% .01 75);--color-bg-subtle: oklch(94.5% .013 72);--color-bg-muted: oklch(91.5% .017 70);--color-text: oklch(17% .012 58);--color-text-2: oklch(43% .022 62);--color-text-3: oklch(60% .018 66);--color-accent: oklch(60% .148 47);--color-accent-hover: oklch(53% .148 44);--color-accent-faint: oklch(93% .04 65);--color-slate: oklch(50% .04 238);--color-slate-faint: oklch(94% .014 238);--color-border: oklch(87% .016 74);--color-border-2: oklch(76% .022 70);--color-focus: oklch(60% .148 47);--ring-width: 2px;--ring-offset: 3px}@media (prefers-color-scheme: dark){:root{--color-bg: oklch(17% .016 58);--color-bg-subtle: oklch(22% .016 58);--color-bg-muted: oklch(26% .016 56);--color-text: oklch(93% .01 74);--color-text-2: oklch(67% .016 70);--color-text-3: oklch(52% .014 68);--color-accent: oklch(68% .148 47);--color-accent-hover: oklch(74% .14 50);--color-accent-faint: oklch(27% .055 50);--color-slate: oklch(60% .038 238);--color-slate-faint: oklch(24% .022 238);--color-border: oklch(28% .016 58);--color-border-2: oklch(38% .02 60);--color-focus: oklch(68% .148 47)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-tab-size:2;tab-size:2;scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{font-family:Literata,Georgia,serif;font-size:1rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{font-family:Big Shoulders Display,sans-serif;font-weight:900;line-height:1.05;letter-spacing:-.01em;color:var(--color-text)}a{color:var(--color-accent);text-decoration-thickness:1px;text-underline-offset:3px;transition:color .15s cubic-bezier(.25,1,.5,1)}a:hover{color:var(--color-accent-hover)}ul,ol{list-style:none}button{cursor:pointer;border:none;background:transparent;color:inherit}:focus-visible{outline:var(--ring-width) solid var(--color-focus);outline-offset:var(--ring-offset);border-radius:2px}@media (prefers-color-scheme: dark){img{opacity:.95}}.h-hero{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(4.5rem,16vw,12rem);line-height:.92;letter-spacing:-.025em;text-transform:uppercase;color:var(--color-text)}.h-1{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(2.75rem,6vw,5rem);line-height:.97;letter-spacing:-.02em;text-transform:uppercase;color:var(--color-text)}.h-2{font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:clamp(1.75rem,3.5vw,2.75rem);line-height:1.05;letter-spacing:-.01em;text-transform:uppercase;color:var(--color-text)}.h-3{font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.1;text-transform:uppercase;color:var(--color-text)}.label-caps{font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-2)}.body-lg{font-family:Literata,Georgia,serif;font-size:1.125rem;line-height:1.65;max-width:68ch}.body-base{font-family:Literata,Georgia,serif;font-size:1rem;line-height:1.65;max-width:68ch}.gallery-header{padding:48px 24px 32px;border-bottom:1px solid var(--color-border);margin-bottom:48px}@media (min-width: 768px){.gallery-header{padding:64px 32px 32px;margin-bottom:64px}}.gallery-header__inner{max-width:1280px;margin:0 auto}.gallery-header__title{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(2.5rem,8vw,6rem);line-height:.95;letter-spacing:-.025em;text-transform:uppercase;color:var(--color-text)}.gallery-header__breadcrumb{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-family:Big Shoulders Display,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.gallery-header__breadcrumb a{color:var(--color-text-2);text-decoration:none;transition:color .15s cubic-bezier(.25,1,.5,1)}.gallery-header__breadcrumb a:hover{color:var(--color-accent)}.gallery-header__breadcrumb span{color:var(--color-text-3)}.gallery-images{padding:0 24px 64px;max-width:1280px;margin:0 auto}@media (min-width: 768px){.gallery-images{padding:0 32px 64px}}
