:root{--color-bg:#fafaf8;--color-text:#1c1c1a;--color-text-muted:#6b6b66;--color-border:#e8e8e4;--color-accent:#d35400;--color-accent-muted:rgba(211,84,0,0.15);--color-surface:#f4f4f2;--color-surface-raised:#edede9;--font-family:var(--font-jetbrains),"JetBrains Mono",monospace;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--spacing-2xl:5rem;--transition-fast:150ms ease;--transition-base:300ms cubic-bezier(0.4,0,0.2,1);--transition-smooth:400ms cubic-bezier(0.16,1,0.3,1);--max-width:1400px;--header-height:80px}@media (prefers-color-scheme:dark){:root{--color-bg:#2d2d2b;--color-text:#e8e8e4;--color-text-muted:#8a8a85;--color-border:#2e2e2b;--color-accent:#e67e22;--color-accent-muted:rgba(230,126,34,0.15);--color-surface:#2a2a28;--color-surface-raised:#333330}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}.skip-link{position:absolute;top:-100%;left:var(--spacing-sm);z-index:10001;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-accent);color:#fff;font-size:var(--font-size-sm);border-radius:2px}.skip-link:focus{top:var(--spacing-sm)}html{font-size:16px;scroll-behavior:smooth}html,html:after{background:var(--color-bg)}html:after{content:"";position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top,0);z-index:10000;pointer-events:none}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:400;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}button{font:inherit;cursor:pointer;border:none;background:none}.header{position:fixed;top:0;left:0;right:0;height:calc(var(--header-height) + env(safe-area-inset-top, 0px));padding-top:env(safe-area-inset-top,0);background:var(--color-bg);z-index:100;border-bottom:1px solid var(--color-border)}.nav{justify-content:space-between;max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-lg);height:100%}.nav,.nav__brand{display:flex;align-items:center}.nav__brand{flex-direction:row;gap:var(--spacing-md);min-width:0}.nav__logo{font-size:var(--font-size-lg);font-weight:600;letter-spacing:-.01em;color:var(--color-text);line-height:1;display:inline-flex;align-items:baseline;gap:6px;flex:0 0 auto}.nav__logo-prefix{color:var(--color-accent);font-weight:500;letter-spacing:-.02em;opacity:.8}.nav__logo-name{color:var(--color-text)}.nav__brand-info{display:flex;flex-direction:column;justify-content:center;gap:3px;padding-left:var(--spacing-sm);border-left:1px solid var(--color-border);min-width:0}.nav__logo-sub{font-weight:500;letter-spacing:.12em;opacity:.75;text-transform:uppercase}.nav__logo-sub,.nav__subtitle{font-size:.65rem;color:var(--color-text-muted);line-height:1}.nav__subtitle{margin:0;letter-spacing:.04em;opacity:.85;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nav__subtitle-sep{opacity:.4;margin:0 4px}.nav__meta-led{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 4px rgba(211,84,0,.55);margin-left:6px;vertical-align:middle}@media (prefers-reduced-motion:no-preference){.nav__meta-led{animation:ledPulse 4s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center}}@media (max-width:768px){.nav__brand-info{display:none}.nav__brand{gap:0}}.nav__menu{display:flex;gap:var(--spacing-lg)}.nav__link{font-size:var(--font-size-sm);font-weight:400;color:var(--color-text-muted);transition:color var(--transition-fast);letter-spacing:.05em;position:relative;display:flex;align-items:baseline;gap:6px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nav__link-num{font-size:.7rem;opacity:.55;letter-spacing:.08em}.nav__link-sep{font-size:.7rem;opacity:.35}.nav__link-name{font-size:var(--font-size-sm)}.nav__link--active .nav__link-num,.nav__link:hover .nav__link-num{opacity:.9}.nav__link:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--color-accent);opacity:0;transform:scale(.5);transition:opacity var(--transition-fast),transform var(--transition-fast)}.nav__link--active:after,.nav__link:hover:after{opacity:.9;transform:scale(1)}.nav__link--active,.nav__link:hover{color:var(--color-text)}.nav__toggle{display:none;flex-direction:column;gap:6px;padding:var(--spacing-xs)}.nav__toggle span{display:block;width:24px;height:2px;background:var(--color-text);transition:var(--transition-base)}.main{min-height:calc(100vh - var(--header-height));padding-top:calc(var(--header-height) + env(safe-area-inset-top, 0px))}.featured{padding:var(--spacing-xl) 0 var(--spacing-lg)}.featured__header{padding:0 var(--spacing-lg);max-width:var(--max-width);margin:0 auto var(--spacing-md)}.featured__label{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--color-text-muted)}.featured__label:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.8;box-shadow:0 0 4px var(--color-accent-muted)}.featured__scroll{display:flex;gap:var(--spacing-sm);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:var(--spacing-lg);padding:0 var(--spacing-lg) var(--spacing-md);-webkit-overflow-scrolling:touch;scrollbar-width:none}.featured__scroll::-webkit-scrollbar{display:none}.featured__scroll>span{display:contents}.featured__scroll .gallery-card{flex:0 0 70vw;max-width:800px;scroll-snap-align:start;aspect-ratio:16/9}.archive__header{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);max-width:var(--max-width);margin:0 auto;border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.archive__toggle{display:inline-flex;gap:0;border:1px solid var(--color-border);border-radius:2px;padding:2px}.archive__toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:22px;background:transparent;color:var(--color-text-muted);opacity:.5;transition:opacity var(--transition-fast),color var(--transition-fast),background var(--transition-fast);cursor:pointer;padding:0}.archive__toggle-btn:hover{opacity:.85}.archive__toggle-btn--active{opacity:1;color:var(--color-accent);background:var(--color-surface)}.archive__toggle-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.archive__list{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-lg) var(--spacing-xl);list-style:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.archive__row{border-bottom:1px solid var(--color-border)}.archive__row:first-child{border-top:1px solid var(--color-border)}.archive__row-link{display:grid;grid-template-columns:40px minmax(0,2fr) minmax(0,1.5fr) 60px 100px;align-items:baseline;grid-gap:var(--spacing-md);gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xs);font-size:.85rem;letter-spacing:.02em;text-transform:lowercase;color:var(--color-text);transition:background var(--transition-fast),padding-left var(--transition-fast)}@media (hover:hover){.archive__row-link:hover{background:var(--color-surface);padding-left:var(--spacing-sm)}}.archive__row-num{color:var(--color-text-muted);font-size:.7rem;letter-spacing:.1em;opacity:.7}.archive__row-title{color:var(--color-text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive__row-frames,.archive__row-location,.archive__row-year{color:var(--color-text-muted);font-size:.75rem;letter-spacing:.04em}.archive__row-frames{text-align:right}.archive__row-frames-unit{opacity:.55}@media (max-width:768px){.archive__row-link{grid-template-columns:28px minmax(0,1fr) auto;grid-template-areas:"num title year" "num location frames";gap:2px var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-xs);font-size:.75rem}.archive__row-num{grid-area:num;align-self:start;padding-top:2px}.archive__row-title{grid-area:title}.archive__row-location{grid-area:location;font-size:.7rem}.archive__row-year{grid-area:year;text-align:right;font-size:.7rem}.archive__row-frames{grid-area:frames;text-align:right;font-size:.7rem}}.archive__label{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--color-text-muted)}.archive__label:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.8;box-shadow:0 0 4px var(--color-accent-muted)}.galleries{column-count:3;column-gap:var(--spacing-sm);column-fill:balance;padding:0 var(--spacing-lg) var(--spacing-xl);max-width:var(--max-width);margin:0 auto;counter-reset:gallery-index}.galleries .gallery-card{display:block;page-break-inside:avoid;break-inside:avoid;margin-bottom:var(--spacing-sm);aspect-ratio:auto;overflow:visible;background:transparent;position:relative;counter-increment:gallery-index;transition:border-color .15s ease;border:1px solid transparent}.galleries .gallery-card:before{content:counter(gallery-index,decimal-leading-zero);position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);font-size:.7rem;font-weight:500;letter-spacing:.05em;color:#fafaf8;background:rgba(28,28,26,.6);padding:2px 6px;border-radius:2px;z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background var(--transition-fast)}@media (hover:hover){.galleries .gallery-card:hover:before{background:rgba(28,28,26,.85)}.galleries .gallery-card:hover{border-color:var(--color-accent)}}.galleries .gallery-card__image{position:relative;width:100%;height:auto;overflow:hidden}.galleries .gallery-card__image img{width:100%;height:auto;object-fit:contain;display:block}.galleries .gallery-card__info{position:absolute;bottom:var(--spacing-sm);left:var(--spacing-sm);right:auto;background:var(--color-surface-raised);padding:var(--spacing-xs) var(--spacing-sm);color:var(--color-text);opacity:0;transform:translateY(8px);transition:opacity var(--transition-smooth),transform var(--transition-smooth);display:flex;align-items:baseline;gap:var(--spacing-xs);flex-wrap:wrap;font-size:var(--font-size-sm)}.galleries .gallery-card:hover .gallery-card__info{opacity:1;transform:translateY(0)}.galleries .gallery-card__info .gallery-card__title{color:var(--color-text);font-size:.75rem;font-weight:500}.galleries .gallery-card__info .gallery-card__meta{color:var(--color-text-muted);opacity:1}.gallery-card{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--color-surface);transition:border-color .15s ease;border:1px solid transparent}@media (hover:hover){.gallery-card:hover{border-color:var(--color-accent)}}.gallery-card__image{position:absolute;inset:0}.gallery-card__image img{width:100%;height:100%;object-fit:cover}.gallery-card__info{position:absolute;bottom:var(--spacing-sm);left:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-surface-raised);color:var(--color-text);transform:translateY(calc(100% + var(--spacing-sm)));opacity:0;transition:transform var(--transition-smooth),opacity var(--transition-smooth);display:flex;align-items:baseline;gap:var(--spacing-xs);flex-wrap:wrap;font-size:var(--font-size-sm)}.gallery-card:hover .gallery-card__info{transform:translateY(0);opacity:1}.gallery-card__title{font-size:.75rem;font-weight:500}.gallery-card__count,.gallery-card__meta{font-size:var(--font-size-sm);opacity:.8}.gallery-card__meta:before{content:"|";margin-right:var(--spacing-xs)}.gallery-stats{max-width:var(--max-width);margin:0 auto;padding:var(--spacing-sm) var(--spacing-lg);display:flex;flex-wrap:wrap;gap:var(--spacing-md) var(--spacing-xl);font-family:var(--font-family);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-bottom:1px solid var(--color-border)}.gallery-stat{display:inline-flex;align-items:baseline;gap:var(--spacing-xs)}.gallery-stat__label{font-size:.6rem;letter-spacing:.14em;color:var(--color-text-muted);opacity:.7;font-weight:500}.gallery-stat__value{font-size:.75rem;color:var(--color-text);letter-spacing:.04em}.gallery-header{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);max-width:var(--max-width);margin:0 auto;display:flex;align-items:stretch;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);gap:0}.gallery-footer{text-align:center;padding:var(--spacing-xl) var(--spacing-lg) var(--spacing-2xl)}.btn-back{position:relative;display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.08em;border:1px solid var(--color-border);border-radius:2px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.btn-back:hover{color:var(--color-text);border-color:var(--color-accent)}.btn-back:active{opacity:.8}.btn-back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-back svg{width:16px;height:16px;transition:transform .15s ease}.btn-back:hover svg{transform:translateX(-2px)}.btn-back span{position:relative}.gallery-header__primary{background:transparent;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 0;display:flex;flex-direction:column;justify-content:center;gap:4px;flex:0 0 auto;border-right:1px solid var(--color-border);margin-right:var(--spacing-md)}.gallery-header__title{font-size:var(--font-size-base);font-weight:500;letter-spacing:.02em;text-transform:lowercase;display:flex;align-items:center;gap:var(--spacing-xs);margin:0}.gallery-header__title:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.8;box-shadow:0 0 4px var(--color-accent-muted)}.gallery-header__meta{letter-spacing:.06em;text-transform:lowercase}.gallery-header__description,.gallery-header__meta{color:var(--color-text-muted);font-size:.7rem;margin:0}.gallery-header__description{background:transparent;padding:var(--spacing-sm) 0;line-height:1.7;display:flex;align-items:center;max-width:480px}.gallery-grid{column-count:3;column-gap:var(--spacing-sm);padding:0 var(--spacing-lg) var(--spacing-2xl);max-width:var(--max-width);margin:0 auto}.gallery-grid__item{page-break-inside:avoid;break-inside:avoid;margin-bottom:var(--spacing-sm);cursor:pointer;overflow:visible;background:var(--color-surface);border-radius:2px;border:1px solid transparent;transition:border-color .15s ease}.gallery-grid__item img{width:100%;height:auto;display:block;border-radius:2px}@media (hover:hover){.gallery-grid__item:hover{border-color:var(--color-accent)}}.lightbox{position:fixed;inset:0;background:rgba(28,28,26,.95);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease}.lightbox--active{opacity:1;visibility:visible}.lightbox__content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);max-width:90vw;max-height:90vh}.lightbox__content img{max-width:100%;max-height:calc(85vh - 5rem);object-fit:contain}.lightbox__close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);color:rgba(255,255,255,.7);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:2px;display:flex;align-items:center;justify-content:center;letter-spacing:.1em;transition:border-color .15s ease,color .15s ease}.lightbox__close:hover{color:rgba(255,255,255,.9);border-color:var(--color-accent)}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.7);font-size:var(--font-size-lg);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:2px;display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease}.lightbox__nav:hover{color:rgba(255,255,255,.9);border-color:var(--color-accent)}.lightbox__nav--prev{left:var(--spacing-lg)}.lightbox__nav--next{right:var(--spacing-lg)}.lightbox__counter{color:rgba(255,255,255,.6);font-size:.75rem;font-weight:500;letter-spacing:.15em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.about{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--spacing-2xl);gap:var(--spacing-2xl);padding:var(--spacing-2xl) var(--spacing-lg);max-width:var(--max-width);margin:0 auto;min-height:calc(100vh - var(--header-height) - 100px);align-items:center}.about__image{aspect-ratio:1/1;overflow:hidden;position:relative}.about__image img{width:100%;height:100%;object-fit:cover;object-position:top;filter:grayscale(100%) contrast(1.1);transition:filter .6s cubic-bezier(.16,1,.3,1)}.about__image:hover img{filter:grayscale(0) contrast(1)}.about__content h1{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.about__content h1:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.8;box-shadow:0 0 4px var(--color-accent-muted)}.about__content p{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-md);line-height:1.8}.about__spec{display:grid;grid-template-columns:minmax(80px,max-content) 1fr;grid-gap:6px var(--spacing-md);gap:6px var(--spacing-md);margin:0 0 var(--spacing-xl);padding:var(--spacing-md) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.about__spec-row{display:contents}.about__spec dt{font-size:.65rem;letter-spacing:.12em;color:var(--color-text-muted);opacity:.7;font-weight:500}.about__spec dd{margin:0;font-size:.75rem;color:var(--color-text);letter-spacing:.04em;line-height:1.6}.about__heading{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--color-text-muted);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.about__heading:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.8;box-shadow:0 0 4px var(--color-accent-muted)}.about__email{color:var(--color-text);text-decoration:underline;text-underline-offset:3px;transition:color var(--transition-fast)}.about__email:hover{color:var(--color-text-muted)}.about__social{display:flex;align-items:center;gap:var(--spacing-md) var(--spacing-lg);margin-top:var(--spacing-lg);flex-wrap:wrap}.about__social-primary{position:relative;display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.08em;border:1px solid var(--color-border);border-radius:2px;transition:border-color .15s ease,color .15s ease}.about__social-primary:hover{color:var(--color-text);border-color:var(--color-accent)}.about__social-primary:active{color:var(--color-accent)}.about__social-primary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.about__social svg{width:16px;height:16px;fill:currentColor}.about__social-secondary{display:inline-flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-muted);font-size:.75rem;letter-spacing:.04em;transition:color .15s ease}.about__social-secondary:hover{color:var(--color-text)}.about__social-tag{font-size:.55rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);opacity:.55;padding:1px 4px;border:1px solid var(--color-border);border-radius:2px;font-weight:500}.about__social-primary .about__social-tag{margin-left:var(--spacing-xs)}.contact{max-width:600px;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-lg)}.contact h1{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.contact h1:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.8;box-shadow:0 0 4px var(--color-accent-muted)}.contact__intro{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xl)}.contact__form{gap:var(--spacing-md)}.contact__form,.form-group{display:flex;flex-direction:column}.form-group{gap:var(--spacing-xs)}.form-group label{font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:lowercase;color:var(--color-text-muted)}.form-group input,.form-group textarea{padding:var(--spacing-sm);background:rgba(0,0,0,.02);border:1px solid rgba(0,0,0,.06);border-radius:2px;font:inherit;box-shadow:inset 0 2px 4px rgba(0,0,0,.06);transition:all .2s cubic-bezier(.16,1,.3,1)}.form-group input:hover,.form-group textarea:hover{border-color:rgba(0,0,0,.1);box-shadow:inset 0 2px 5px rgba(0,0,0,.07)}.form-group input:focus,.form-group textarea:focus{outline:none;background:rgba(0,0,0,.01);border-color:rgba(0,0,0,.15);box-shadow:inset 0 2px 6px rgba(0,0,0,.08)}.form-group textarea{min-height:150px;resize:vertical}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-muted);opacity:.6}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--spacing-md);gap:var(--spacing-md)}.btn-submit{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.08em;border:1px solid var(--color-border);border-radius:2px;cursor:pointer;transition:border-color .15s ease,color .15s ease;margin-top:var(--spacing-sm)}.btn-submit:hover{color:var(--color-text);border-color:var(--color-accent)}.btn-submit:active{opacity:.8}.btn-submit:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-submit svg{width:16px;height:16px;transition:transform .15s ease}.btn-submit:hover svg{transform:translateX(2px)}.btn-submit span{position:relative}.btn-submit.is-loading{pointer-events:none;opacity:.8}.btn-submit.is-loading svg{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.contact__error{display:flex;align-items:center;gap:var(--spacing-sm);font-family:var(--font-family);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#ff6b6b;padding:var(--spacing-xs) var(--spacing-sm);border-top:1px solid rgba(255,107,107,.35);border-bottom:1px solid rgba(255,107,107,.35);background:rgba(255,107,107,.04)}.contact__error:before{content:"";flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:#ff6b6b;box-shadow:0 0 4px rgba(255,107,107,.6)}.fault{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--header-height) - 240px);padding:var(--spacing-2xl) var(--spacing-lg);max-width:var(--max-width);margin:0 auto}.fault__card{width:100%;max-width:480px;padding:var(--spacing-lg) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.fault__header{display:flex;align-items:center;gap:var(--spacing-sm);font-family:var(--font-family);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.fault__led{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 6px rgba(211,84,0,.55)}@media (prefers-reduced-motion:no-preference){.fault__led{animation:ledPulse 1.6s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center}}.fault__code{letter-spacing:.22em}.fault__code,.fault__title{color:var(--color-text);font-weight:500}.fault__title{font-size:var(--font-size-xl);letter-spacing:.02em;text-transform:lowercase;margin:0 0 var(--spacing-md)}.fault__detail{display:grid;grid-template-columns:minmax(80px,max-content) 1fr;grid-gap:6px var(--spacing-md);gap:6px var(--spacing-md);margin:0 0 var(--spacing-lg);padding:var(--spacing-sm) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fault__row{display:contents}.fault__detail dt{font-size:.65rem;letter-spacing:.12em;color:var(--color-text-muted);opacity:.7;font-weight:500}.fault__detail dd{margin:0;font-size:.75rem;color:var(--color-text);letter-spacing:.04em}.contact__alt{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border);text-align:center}.contact__alt span{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);letter-spacing:.1em;margin-bottom:var(--spacing-md)}.contact__social{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-base);font-weight:500;color:var(--color-text);transition:color var(--transition-fast)}.contact__social:hover{color:var(--color-text-muted)}.contact__social svg{width:20px;height:20px;fill:currentColor}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-text);color:var(--color-bg);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.05em;border:none;cursor:pointer;transition:opacity var(--transition-fast)}.btn:hover{opacity:.8}.footer{padding:var(--spacing-md) var(--spacing-lg);color:var(--color-text-muted);font-size:.7rem;border-top:1px solid var(--color-border);letter-spacing:.04em}.footer__inner{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg);max-width:var(--max-width);margin:0 auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.footer__build{display:inline-flex;align-items:baseline;gap:var(--spacing-xs)}.footer__build-label{font-size:.6rem;letter-spacing:.14em;opacity:.55;font-weight:500}.footer__build-date{color:var(--color-text);letter-spacing:.04em}.footer__meta{display:inline-flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;justify-content:flex-end}.footer__sep{opacity:.35}.footer__copyright,.footer__location,.footer__meta a{color:var(--color-text-muted)}.footer__meta a{transition:color var(--transition-fast)}.footer__meta a:hover{color:var(--color-text)}@media (max-width:640px){.footer__inner{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.footer__meta{justify-content:flex-start}}@media (max-width:768px){.nav__menu{position:fixed;top:calc(var(--header-height) + env(safe-area-inset-top, 0px));left:0;right:0;bottom:0;background:var(--color-bg);flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xl);transform:translateX(100%);transition:transform var(--transition-base)}.nav__menu--active{transform:translateX(0)}.nav__toggle{display:flex}.nav__logo{font-size:var(--font-size-sm)}.featured{padding:var(--spacing-lg) 0 var(--spacing-sm)}.archive__header{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm)}.featured__scroll .gallery-card{flex:0 0 85vw}.gallery-card__title{font-size:var(--font-size-base)}.gallery-card__meta{font-size:.75rem}.gallery-grid__item{cursor:default;box-shadow:none}.gallery-header{flex-direction:column;padding:var(--spacing-md)}.gallery-header__description,.gallery-header__primary{width:100%}.gallery-header__primary{border-right:none;border-bottom:1px solid var(--color-border);margin-right:0;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);padding-right:0}.gallery-header__description{max-width:none}.galleries{column-count:2;padding:0 var(--spacing-md) var(--spacing-xl)}.galleries .gallery-card:before{display:none}.galleries .gallery-card__info{position:relative;display:flex;opacity:1;transform:none;width:100%;left:0;right:0;padding:var(--spacing-md) 0 var(--spacing-sm);font-size:.75rem;background:transparent;border-bottom:1px solid var(--color-border)}.galleries .gallery-card__info .gallery-card__meta,.galleries .gallery-card__info .gallery-card__title{font-size:.75rem}.gallery-grid{column-count:2;padding:0 var(--spacing-sm) var(--spacing-xl)}.about{grid-template-columns:1fr;padding:var(--spacing-lg)}.about__image{order:-1}.about__image img{filter:none}.form-row{grid-template-columns:1fr}.featured__scroll .gallery-card{aspect-ratio:auto;background:transparent;overflow:visible}.featured__scroll .gallery-card .gallery-card__image{position:relative;inset:auto;aspect-ratio:3/4;width:100%}.featured__scroll .gallery-card .gallery-card__info{position:relative;display:flex;opacity:1;transform:none;width:100%;left:0;right:0;padding:var(--spacing-md) 0 var(--spacing-sm);font-size:.75rem;background:transparent}.featured__scroll .gallery-card .gallery-card__info .gallery-card__meta,.featured__scroll .gallery-card .gallery-card__info .gallery-card__title{font-size:.75rem}}@media (max-width:480px){:root{--font-size-2xl:1.5rem;--font-size-xl:1.25rem}.galleries,.gallery-grid{column-count:1}}@keyframes ledPulse{0%,to{opacity:.7;transform:scale(.95)}50%{opacity:.95;transform:scale(1)}}@media (prefers-reduced-motion:no-preference){.about__content h1:after,.about__heading:after,.archive__label:after,.contact h1:after,.featured__label:after,.gallery-header__title:after{animation:ledPulse 4s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes drawLine{0%{width:0}to{width:100%}}.gallery-grid__item{opacity:0;animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(min(var(--i, 0), 11) * 60ms)}.galleries .gallery-card{transition:border-color .15s ease,transform var(--transition-smooth),box-shadow var(--transition-smooth)}@media (hover:hover){.galleries .gallery-card:hover{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.08)}}@media (hover:hover) and (prefers-color-scheme:dark){.galleries .gallery-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.25)}}.gallery-header__title{animation:slideIn .4s cubic-bezier(.16,1,.3,1) forwards}.gallery-header__meta{opacity:0;animation:slideIn .4s cubic-bezier(.16,1,.3,1) .1s forwards}.gallery-header__description{opacity:0;animation:slideIn .4s cubic-bezier(.16,1,.3,1) .2s forwards}.featured__scroll .gallery-card{transition:border-color .15s ease}@media (hover:hover){.featured__scroll .gallery-card:hover{border-color:var(--color-accent)}}.footer{position:relative;border-top:none}.footer:before{content:"";position:absolute;top:0;left:0;height:1px;width:0;background:var(--color-border);animation:drawLine .8s cubic-bezier(.16,1,.3,1) .3s forwards}@supports (view-transition-name:none){.gallery-header__primary{view-transition-name:gallery-header}::view-transition-new(gallery-header),::view-transition-old(gallery-header){animation-duration:.3s;animation-timing-function:cubic-bezier(.16,1,.3,1)}}.lightbox__filmstrip{position:absolute;bottom:var(--spacing-lg);left:50%;transform:translateX(-50%);display:flex;gap:4px;max-width:80vw;overflow-x:auto;scrollbar-width:none;padding:10px 6px;background:radial-gradient(circle 1.5px at 6px center,rgba(255,255,255,.35) 99%,transparent 100%) top /12px 6px repeat-x,radial-gradient(circle 1.5px at 6px center,rgba(255,255,255,.35) 99%,transparent 100%) bottom /12px 6px repeat-x,rgba(0,0,0,.4);background-clip:padding-box;border-radius:2px;box-shadow:inset 0 1px 2px rgba(0,0,0,.6),0 1px 0 rgba(255,255,255,.04)}.lightbox__filmstrip::-webkit-scrollbar{display:none}.lightbox__filmstrip-thumb{flex:0 0 48px;width:48px;height:48px;border:1px solid rgba(255,255,255,.15);border-radius:2px;overflow:hidden;cursor:pointer;opacity:.4;transition:opacity var(--transition-fast),border-color var(--transition-fast);padding:0;background:none}.lightbox__filmstrip-thumb:hover{opacity:.7}.lightbox__filmstrip-thumb--active{opacity:1;border-color:var(--color-accent)}.lightbox__filmstrip-thumb img{width:100%;height:100%;object-fit:cover}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lightboxScaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.lightbox--active{animation:lightboxFadeIn .2s ease forwards}.lightbox--active .lightbox__content{animation:lightboxScaleIn .3s cubic-bezier(.16,1,.3,1) forwards}.lightbox__content img{transition:opacity .2s ease}.lightbox__content img.lightbox__img--entering{opacity:0}.loading-bar{position:fixed;top:0;left:0;height:2px;background:var(--color-accent);z-index:10001;transition:width .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;pointer-events:none}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast-container{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:9999;display:flex;flex-direction:column;gap:var(--spacing-xs);pointer-events:none}.toast{pointer-events:auto;padding:var(--spacing-sm) var(--spacing-md);background:#2a2a28;color:#fafaf8;font-size:var(--font-size-sm);font-family:var(--font-family);letter-spacing:.02em;border-radius:2px;border-left:3px solid var(--color-accent);cursor:pointer;animation:toastSlideIn .3s cubic-bezier(.16,1,.3,1) forwards;max-width:360px}.toast--error{border-left-color:#ff6b6b}.scroll-counter{display:flex;align-items:center;gap:4px;padding:0 var(--spacing-lg);max-width:var(--max-width);margin:0 auto;font-size:.75rem;font-weight:500;letter-spacing:.1em;color:var(--color-text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scroll-counter__current{color:var(--color-text);transition:opacity .2s ease}.scroll-counter__separator{opacity:.4}.scroll-counter__total{opacity:.6}.scroll-counter__dash{opacity:.4;margin:0 var(--spacing-xs)}.scroll-counter__title{color:var(--color-text);letter-spacing:.04em;text-transform:lowercase;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@font-face{font-family:jetbrains;src:url(/_next/static/media/b8c97ebabd0473a4-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:jetbrains;src:url(/_next/static/media/375d6faec4786fe2-s.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:jetbrains;src:url(/_next/static/media/e6d3cf35d6fd69af-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:jetbrains Fallback;src:local("Arial");ascent-override:77.57%;descent-override:22.82%;line-gap-override:0.00%;size-adjust:131.49%}.__className_54932c{font-family:jetbrains,jetbrains Fallback}.__variable_54932c{--font-jetbrains:"jetbrains","jetbrains Fallback"}