:root{color-scheme:dark;font-family:Inter,PingFang SC,Microsoft YaHei,Noto Sans CJK SC,system-ui,sans-serif;background:#080806;color:#f3efe4;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #080806;--paper: #f3efe4;--paper-soft: #d8d0be;--muted: #a9a091;--panel: #12110f;--panel-soft: #1d1a16;--line: rgba(243, 239, 228, .18);--line-strong: rgba(243, 239, 228, .8);--accent: #ff4f2f;--accent-blue: #6fd7ff;--accent-acid: #d9ff56;--shadow: 0 32px 80px rgba(0, 0, 0, .44);--max-width: 1240px;--radius: 2px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(rgba(243,239,228,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(243,239,228,.035) 1px,transparent 1px),linear-gradient(180deg,#080806,#11100e 52%,#080806);background-size:32px 32px,32px 32px,auto}body.no-scroll{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}#root{min-height:100vh}.site-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;width:min(100% - 2rem,var(--max-width));min-height:72px;margin:0 auto;border-bottom:2px solid var(--line-strong);background:#080806c7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:.75rem;min-width:0;color:var(--paper);font-size:.78rem;font-weight:900;letter-spacing:0;animation:brandSignal 4.8s ease-in-out infinite}.brand-avatar{width:44px;height:44px;flex:0 0 auto;border:2px solid var(--paper);border-radius:var(--radius);object-fit:cover;object-position:center;background:var(--panel)}.nav-links{display:flex;align-items:center;gap:0;border:2px solid var(--line-strong);background:var(--ink)}.nav-links a{min-width:3.35rem;padding:.5rem .82rem;border-right:2px solid var(--line-strong);color:var(--paper-soft);font-size:.86rem;font-weight:800;text-align:center}.nav-links a:last-child{border-right:0}.nav-links a:hover,.nav-links a:focus-visible{color:var(--ink);background:var(--accent-acid);outline:none}main{position:relative;overflow:hidden}.hero{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto 1fr auto;gap:1rem;width:min(100% - 2rem,var(--max-width));min-height:calc(100svh - 72px);margin:0 auto;padding:2rem 0 3rem}.hero:before{content:"PORTFOLIO";position:absolute;right:-.2rem;bottom:.7rem;z-index:0;color:transparent;font-size:7rem;font-weight:950;letter-spacing:0;line-height:.8;opacity:.34;pointer-events:none;-webkit-text-stroke:1px rgba(243,239,228,.34);text-stroke:1px rgba(243,239,228,.34)}.hero-copy{position:relative;z-index:2;grid-column:1 / 8;grid-row:1 / 3;align-self:center;padding:1.5rem 0 2rem}.hero-copy:before{content:"PEOPLE / LIGHT / COLOR";display:inline-block;margin-bottom:1rem;border:2px solid var(--paper);padding:.24rem .45rem;color:var(--ink);background:var(--accent-acid);font-size:.72rem;font-weight:950;letter-spacing:0}.hero-copy:after{content:"2026 SELECTED WORKS";position:absolute;left:calc(100% + .55rem);top:1.7rem;color:var(--accent-blue);font-size:.78rem;font-weight:950;letter-spacing:0;line-height:1;white-space:nowrap;writing-mode:vertical-rl}.eyebrow{margin:0 0 .9rem;color:var(--accent-blue);font-size:.82rem;font-weight:900;letter-spacing:0;text-transform:uppercase}h1,h2,h3{margin:0;color:var(--paper);font-weight:950;letter-spacing:0}h1{position:relative;display:inline-block;max-width:5.7em;font-size:4.9rem;line-height:.9;text-wrap:balance;text-shadow:0 0 0 var(--paper),.08em .08em 0 rgba(255,79,47,.46),-.05em .05em 0 rgba(111,215,255,.42);animation:titleKinetic 5.5s cubic-bezier(.22,1,.36,1) infinite}h1:after{content:"";position:absolute;left:0;bottom:-.12em;width:100%;height:.12em;background:var(--accent-acid);transform-origin:left center;animation:titleUnderline 3.8s steps(5,end) infinite}h2{font-size:4.6rem;line-height:.95;text-wrap:balance}h3{font-size:2.25rem;line-height:1;text-wrap:balance}.tagline{max-width:31rem;margin:1.25rem 0 0;color:var(--paper-soft);font-size:1.18rem;font-weight:700;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.9rem}.primary-action,.secondary-action,.text-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;border:2px solid var(--paper);border-radius:var(--radius);font-weight:950;letter-spacing:0;transition:transform .16s ease,background .16s ease,color .16s ease}.primary-action,.secondary-action{padding:0 1.05rem}.primary-action{color:var(--ink);background:var(--accent)}.secondary-action,.text-button{color:var(--paper);background:transparent}.text-button{flex:0 0 auto;padding:0 1rem;cursor:pointer}.primary-action:hover,.primary-action:focus-visible,.secondary-action:hover,.secondary-action:focus-visible,.text-button:hover,.text-button:focus-visible{color:var(--ink);background:var(--accent-acid);outline:none;transform:translate(-2px,-2px)}.hero-panel{position:relative;z-index:1;display:block;grid-column:6 / 13;grid-row:1 / 4;align-self:stretch;width:100%;min-height:38rem;overflow:hidden;border:0;border-left:2px solid var(--line-strong);border-bottom:2px solid var(--line-strong);border-radius:0;padding:0;color:inherit;background:linear-gradient(90deg,rgba(243,239,228,.08) 1px,transparent 1px),linear-gradient(rgba(243,239,228,.08) 1px,transparent 1px);background-color:#12110f8c;background-size:24px 24px;box-shadow:var(--shadow);cursor:pointer}.hero-panel:before{content:"FEATURED ALBUM";position:absolute;top:1rem;right:1rem;z-index:4;border:2px solid var(--paper);padding:.24rem .45rem;color:var(--paper);background:var(--ink);font-size:.72rem;font-weight:950;letter-spacing:0}.featured-stack{position:relative;display:block;height:100%;min-height:38rem}.mini-card{position:absolute;overflow:hidden;border:2px solid var(--paper);border-radius:0;background:var(--panel);box-shadow:0 30px 70px #0000006b;transition:transform .42s ease,filter .42s ease}.mini-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) contrast(1.08)}.mini-card.card-1{left:7%;top:8%;z-index:1;width:53%;height:73%;transform:rotate(-5deg)}.mini-card.card-2{right:2%;top:20%;z-index:2;width:48%;height:55%;transform:rotate(6deg)}.mini-card.card-3{left:35%;bottom:5%;z-index:3;width:39%;height:37%;transform:rotate(-1deg)}.hero-panel:hover .mini-card.card-1,.hero-panel:focus-visible .mini-card.card-1{transform:translate(-8px,-8px) rotate(-7deg)}.hero-panel:hover .mini-card.card-2,.hero-panel:focus-visible .mini-card.card-2{transform:translate(9px,-2px) rotate(8deg)}.hero-panel:hover .mini-card.card-3,.hero-panel:focus-visible .mini-card.card-3{transform:translateY(10px) rotate(1deg)}.hero-panel:hover .mini-card img,.hero-panel:focus-visible .mini-card img{filter:saturate(1.08) contrast(1.12)}.live-note{position:absolute;left:1rem;bottom:1rem;z-index:5;display:block;max-width:20rem;border:2px solid var(--ink);border-radius:var(--radius);padding:.85rem .95rem;color:var(--ink);background:var(--paper);text-align:left;transform:rotate(-1.5deg)}.live-note strong{display:block;font-size:1rem;font-weight:950}.live-note span{display:block;margin-top:.25rem;color:#4b4137;font-size:.8rem;font-weight:800;line-height:1.45}.section{position:relative;width:min(100% - 2rem,var(--max-width));margin:0 auto;padding:5.5rem 0}.section-heading{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;margin-bottom:1rem;border-top:2px solid var(--line-strong);border-bottom:2px solid var(--line-strong);padding:.95rem 0}.section-heading:after{content:"INDEX";position:absolute;right:0;top:-1.85rem;color:var(--accent);font-size:.75rem;font-weight:950;letter-spacing:0}.section-note{margin:0 0 .25rem;color:var(--accent-acid);font-size:.95rem;font-weight:950}.category-tabs{position:sticky;top:72px;z-index:18;display:flex;flex-wrap:wrap;gap:0;margin:0 0 .95rem;border:2px solid var(--line-strong);background:#080806db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.category-tabs button{min-height:2.15rem;border:0;border-right:2px solid var(--line-strong);border-radius:0;padding:0 .85rem;color:var(--paper-soft);font-size:.82rem;font-weight:900;background:transparent;cursor:pointer;transition:transform .16s ease,background .16s ease,color .16s ease}.category-tabs button:last-child{border-right:0}.category-tabs button:hover,.category-tabs button:focus-visible,.category-tabs button.active{color:var(--ink);background:var(--accent-blue);outline:none}.album-grid{display:grid;grid-template-columns:repeat(15,minmax(0,1fr));grid-auto-flow:dense;gap:.65rem;counter-reset:album}.album-card{position:relative;display:block;grid-column:span 3;scroll-margin-top:96px;overflow:hidden;border:2px solid var(--line-strong);border-radius:0;padding:0;color:inherit;background:var(--panel);cursor:pointer;text-align:left;counter-increment:album;transition:transform .19s ease,border-color .19s ease,box-shadow .19s ease}.album-card:nth-child(5n+1),.album-card:nth-child(5n+2),.album-card:nth-child(5n+4),.album-card:nth-child(5n){grid-column:span 3}.album-card:before{content:"";position:absolute;top:0;left:0;z-index:3;width:1.25rem;height:4.25rem;background:var(--accent)}.album-card:nth-child(3n+2):before{background:var(--accent-blue)}.album-card:nth-child(3n):before{background:var(--accent-acid)}.album-card-trigger{display:grid;grid-template-rows:auto auto;width:100%;height:100%;border:0;padding:0;color:inherit;background:transparent;cursor:pointer;text-align:left}.album-grid .album-card.expanded{display:grid;grid-column:1 / -1;grid-template-columns:minmax(10rem,.26fr) minmax(0,.74fr);align-items:stretch}.album-card.expanded .album-card-trigger{grid-template-columns:1fr;grid-template-rows:minmax(0,auto) auto;border-right:2px solid var(--line-strong)}.album-card:hover,.album-card:focus-within,.album-card.active{border-color:var(--accent-acid);box-shadow:12px 12px #d9ff5638;transform:translate(-3px,-3px);outline:none}.album-card-trigger:focus-visible{outline:none}.album-card:hover .album-cover img,.album-card-trigger:focus-visible .album-cover img,.album-card.active .album-cover img{transform:scale(1.045)}.album-cover{display:block;aspect-ratio:3 / 4;min-height:0;width:100%;overflow:hidden;border-bottom:2px solid var(--line-strong);background:linear-gradient(90deg,rgba(243,239,228,.08) 1px,transparent 1px),linear-gradient(rgba(243,239,228,.08) 1px,transparent 1px),var(--panel-soft);background-size:20px 20px}.album-card:nth-child(5n+1) .album-cover,.album-card:nth-child(5n) .album-cover{aspect-ratio:3 / 4}.album-cover img{width:100%;height:100%;object-fit:cover;transition:transform .42s ease}.album-card.expanded .album-cover{aspect-ratio:4 / 3;max-height:none;border-right:0;border-bottom:2px solid var(--line-strong)}.album-card.expanded .album-meta{min-height:auto}.album-meta{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem;min-height:5.4rem;padding:2.15rem .7rem .68rem;background:var(--panel)}.album-meta:before{content:"0" counter(album);position:absolute;left:.9rem;top:.55rem;color:var(--accent);font-size:1.5rem;font-weight:950;line-height:.9}.album-card:nth-child(n+10) .album-meta:before{content:counter(album)}.album-meta span{min-width:0}.album-meta strong,.contact-item strong{display:block;color:var(--paper);font-size:.9rem;font-weight:950}.album-meta small,.contact-item small{display:block;margin-top:.2rem;color:var(--muted);font-size:.72rem;font-weight:750}.album-meta>span:last-child{flex:0 0 auto;color:var(--accent-blue);font-size:.68rem;font-weight:900}.inline-album-panel{min-width:0;border-top:0;padding:.95rem;background:#0d0c0a}.inline-album-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1.5rem;margin-bottom:1rem}.inline-album-heading p:last-child{max-width:46rem;margin:.9rem 0 0;color:var(--paper-soft);font-weight:650;line-height:1.75}.expanded-photo-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.55rem}.photo-tile{display:block;overflow:hidden;aspect-ratio:1 / 1;border:2px solid var(--line);border-radius:0;padding:0;background:var(--panel-soft);cursor:zoom-in;animation:photoTileArrive .52s cubic-bezier(.22,1,.36,1) both}.photo-tile:nth-child(2){animation-delay:45ms}.photo-tile:nth-child(3){animation-delay:90ms}.photo-tile:nth-child(4){animation-delay:135ms}.photo-tile:nth-child(n+5){animation-delay:.17s}.photo-tile:nth-child(7n+1),.photo-tile:nth-child(7n+5){grid-column:span 2;aspect-ratio:4 / 3}.photo-tile:hover,.photo-tile:focus-visible{border-color:var(--accent-acid);outline:none}.photo-tile:hover img,.photo-tile:focus-visible img{transform:scale(1.04)}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:transform .42s ease}.about-section,.contact-section{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;border-top:2px solid var(--line-strong)}.about-section>div:first-child,.contact-section>div:first-child{grid-column:1 / 5;min-width:0}.about-content,.contact-grid{grid-column:5 / 13;min-width:0}.about-content{border-left:2px solid var(--line-strong);padding-left:1.25rem}.about-content p{max-width:50rem;margin:0;color:var(--paper-soft);font-size:1.28rem;font-weight:700;line-height:1.85}.specialty-list{display:flex;flex-wrap:wrap;gap:0;margin:1.7rem 0 0;padding:0;border:2px solid var(--line-strong);list-style:none}.specialty-list li{padding:.58rem .82rem;border-right:2px solid var(--line-strong);border-bottom:2px solid var(--line-strong);color:var(--paper);background:transparent;font-size:.9rem;font-weight:900}.specialty-list li:nth-child(3n+1){color:var(--accent-acid)}.specialty-list li:nth-child(3n+2){color:var(--accent-blue)}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.contact-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;width:100%;min-height:5rem;border:2px solid var(--line-strong);border-radius:0;padding:.95rem;color:inherit;background:var(--panel);text-align:left;cursor:pointer}.contact-copy-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.contact-item svg{color:var(--accent-blue)}.contact-item:hover,.contact-item:focus-visible{color:var(--ink);background:var(--accent-acid);outline:none}.contact-item:hover strong,.contact-item:hover small,.contact-item:hover svg,.contact-item:focus-visible strong,.contact-item:focus-visible small,.contact-item:focus-visible svg{color:var(--ink)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(100% - 2rem,var(--max-width));margin:0 auto;padding:1.4rem 0 2.4rem;border-top:2px solid var(--line-strong);color:var(--muted);font-size:.85rem;font-weight:800}.gallery-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;color:#fff;background:#000;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;animation:galleryViewerIn .22s ease-out both}.gallery-topbar{position:relative;z-index:4;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:5.25rem;padding:calc(env(safe-area-inset-top) + .85rem) 1rem .85rem;background:linear-gradient(180deg,#000000c2,#0000)}.gallery-title{min-width:0}.gallery-title strong,.gallery-title span{display:block}.gallery-title strong{overflow:hidden;color:#fff;font-size:1.05rem;font-weight:900;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.gallery-title span{margin-top:.15rem;color:#ffffff9e;font-size:.86rem;font-weight:800}.gallery-icon-button,.gallery-nav-button{display:inline-grid;place-items:center;border:0;color:#fff;background:transparent;cursor:pointer}.gallery-icon-button{width:2.9rem;height:2.9rem;border-radius:999px}.gallery-icon-button:hover,.gallery-icon-button:focus-visible,.gallery-nav-button:hover,.gallery-nav-button:focus-visible{color:var(--accent-acid);outline:none}.gallery-stage{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;padding:1.25rem 5.5rem;touch-action:none;cursor:grab}.gallery-stage:active{cursor:grabbing}.gallery-image-frame{display:grid;place-items:center;width:auto;height:auto;max-width:calc(100vw - 11rem);max-height:calc(100svh - 13rem);animation:galleryPhotoJumpIn .28s cubic-bezier(.22,1,.36,1) both;will-change:transform,opacity,filter}.gallery-image-frame[data-direction=open]{animation-name:galleryPhotoOpenIn;animation-duration:.42s}.gallery-image-frame[data-direction=next]{animation-name:galleryPhotoNextIn}.gallery-image-frame[data-direction=previous]{animation-name:galleryPhotoPreviousIn}.gallery-main-image{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;transform-origin:center center;transition:transform .16s ease-out;will-change:transform}.gallery-nav-button{position:fixed;top:50%;z-index:5;width:3.4rem;height:3.4rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;transform:translateY(-50%);background:#0000005c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.gallery-nav-previous{left:.5rem}.gallery-nav-next{right:.5rem}.gallery-caption{position:relative;z-index:4;min-height:2rem;padding:0 1rem .65rem;color:#ffffff7a;text-align:center;animation:galleryCaptionIn .26s ease-out both}.gallery-caption span{max-width:42rem;margin:0 auto;font-size:.78rem;font-weight:650;line-height:1.45}.gallery-filmstrip{position:relative;z-index:4;display:flex;gap:.46rem;overflow-x:auto;overflow-y:hidden;padding:.75rem 1rem calc(env(safe-area-inset-bottom) + 1.2rem);background:linear-gradient(0deg,#000000db,#0000);scrollbar-width:none}.gallery-filmstrip::-webkit-scrollbar{display:none}.gallery-thumb{position:relative;display:block;width:3.25rem;height:3.25rem;flex:0 0 auto;overflow:hidden;border:2px solid transparent;border-radius:7px;padding:0;background:#171717;cursor:pointer;opacity:.62}.gallery-thumb.active{border-color:#fff;opacity:1;transform:translateY(-2px)}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;grid-template-columns:4.5rem minmax(0,1fr) 4.5rem;align-items:center;gap:1rem;padding:1rem;background:#000000f0}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border:2px solid var(--paper);border-radius:var(--radius);color:var(--paper);background:var(--ink);cursor:pointer}.icon-button:hover,.icon-button:focus-visible{color:var(--ink);background:var(--accent-acid);outline:none}.close-button{position:absolute;top:1rem;right:1rem}.previous-button,.next-button{justify-self:center}.lightbox-figure{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:1rem;width:100%;max-width:88rem;max-height:calc(100vh - 2rem);margin:0 auto}.lightbox-image-wrap{display:grid;place-items:center;min-height:0;overflow:hidden;border:2px solid var(--line-strong);background:#050505}.lightbox-image-wrap img{width:auto;max-width:100%;height:auto;max-height:calc(100vh - 10rem);object-fit:contain}.lightbox figcaption{display:grid;grid-template-columns:minmax(12rem,.5fr) minmax(0,1fr);gap:1rem;color:var(--paper-soft)}.lightbox figcaption strong{display:block;color:var(--paper);font-size:1.05rem}.lightbox figcaption small{display:block;margin-top:.2rem;color:var(--muted)}.lightbox figcaption p{margin:0}.image-fallback{display:grid;place-items:center;gap:.55rem;width:100%;height:100%;min-height:12rem;color:var(--muted);background:linear-gradient(90deg,rgba(243,239,228,.08) 1px,transparent 1px),linear-gradient(rgba(243,239,228,.08) 1px,transparent 1px),var(--panel-soft);background-size:18px 18px;font-size:.9rem;font-weight:800}@keyframes brandSignal{0%,to{color:var(--paper);text-shadow:none}45%{color:var(--accent-acid);text-shadow:.08em 0 0 rgba(255,79,47,.7),-.08em 0 0 rgba(111,215,255,.64)}52%{color:var(--paper);text-shadow:-.06em 0 0 rgba(255,79,47,.58),.06em 0 0 rgba(111,215,255,.58)}}@keyframes titleKinetic{0%,to{transform:translate(0) skew(0);text-shadow:0 0 0 var(--paper),.08em .08em 0 rgba(255,79,47,.46),-.05em .05em 0 rgba(111,215,255,.42)}38%{transform:translate(-.03em,.02em) skew(-2deg)}44%{transform:translate(.04em,-.01em) skew(2deg);text-shadow:-.07em 0 0 rgba(255,79,47,.65),.07em 0 0 rgba(111,215,255,.65)}50%{transform:translate(0) skew(0)}}@keyframes titleUnderline{0%,to{transform:scaleX(.18)}45%{transform:scaleX(1)}60%{transform:scaleX(.58)}}@keyframes photoTileArrive{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes galleryViewerIn{0%{opacity:0;filter:blur(8px);transform:scale(.985)}to{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes galleryPhotoOpenIn{0%{opacity:0;filter:blur(14px) saturate(.88);transform:translate3d(0,2.25rem,0) scale(.74)}58%{opacity:1;filter:blur(2px) saturate(1.04);transform:translate3d(0,-.2rem,0) scale(1.018)}to{opacity:1;filter:blur(0) saturate(1);transform:translateZ(0) scale(1)}}@keyframes galleryPhotoNextIn{0%{opacity:0;filter:blur(10px);transform:translate3d(4.5rem,0,0) scale(.975)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes galleryPhotoPreviousIn{0%{opacity:0;filter:blur(10px);transform:translate3d(-4.5rem,0,0) scale(.975)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes galleryPhotoJumpIn{0%{opacity:0;filter:blur(8px);transform:translate3d(0,1.2rem,0) scale(.985)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes galleryCaptionIn{0%{opacity:0;transform:translateY(.45rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:1100px){h1{font-size:4.15rem}h2{font-size:3.8rem}.hero:before{font-size:5.8rem}.album-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.album-card,.album-card:nth-child(5n+1),.album-card:nth-child(5n+2){grid-column:span 3}.album-card:nth-child(5n+4),.album-card:nth-child(5n){grid-column:span 6}}@media(max-width:960px){.hero{grid-template-columns:repeat(8,minmax(0,1fr));min-height:auto}.hero-copy{grid-column:1 / 6}.hero-panel{grid-column:4 / 9;min-height:32rem}.featured-stack{min-height:32rem}.expanded-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.about-section,.contact-section{grid-template-columns:1fr}.about-section>div:first-child,.contact-section>div:first-child,.about-content,.contact-grid{grid-column:auto}.about-content{border-left:0;padding-left:0}}@media(max-width:840px){h1{font-size:4.15rem}h2{font-size:3.1rem}h3{font-size:1.9rem}.hero{display:block}.hero:before,.hero-copy:after{display:none}.hero-copy{padding:1.2rem 0 1.4rem}.hero-panel,.featured-stack{min-height:27rem}.album-grid .album-card.expanded{grid-template-columns:1fr}.album-card.expanded .album-card-trigger{grid-template-columns:1fr;border-right:0}.album-card.expanded .album-cover{border-right:0;border-bottom:2px solid var(--line-strong)}.album-card.expanded .inline-album-panel{border-top:2px solid var(--line-strong)}.contact-grid{grid-template-columns:1fr}.gallery-viewer{grid-template-rows:auto minmax(0,1fr) auto}.gallery-topbar{min-height:5.8rem;padding:calc(env(safe-area-inset-top) + .9rem) .85rem .75rem}.gallery-title strong{font-size:1.22rem}.gallery-title span{font-size:.94rem}.gallery-nav-button{display:inline-grid;width:2.65rem;height:2.65rem;color:#ffffffe0;background:#0000004d}.gallery-nav-previous{left:.35rem}.gallery-nav-next{right:.35rem}.gallery-stage{padding:0}.gallery-image-frame,.gallery-main-image{width:100%;height:100%;max-width:100%;max-height:100%}.gallery-caption{min-height:2.2rem;padding:0 1.2rem .6rem;text-align:left}.gallery-caption span{max-width:none;margin:0;font-size:.73rem}.gallery-filmstrip{gap:.42rem;padding:.7rem .7rem calc(env(safe-area-inset-bottom) + 1rem)}.gallery-thumb{width:3rem;height:3.25rem;border-radius:6px}.lightbox{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);align-items:center;justify-items:center;gap:0;padding:calc(env(safe-area-inset-top) + 3.4rem) .75rem calc(env(safe-area-inset-bottom) + .9rem)}.lightbox-figure{align-items:center;grid-template-rows:minmax(0,1fr) auto;gap:.72rem;height:100%;max-height:none}.lightbox-image-wrap{width:100%;height:min(68svh,calc(100svh - 9.25rem));min-height:54svh;border-color:#f3efe494}.lightbox-image-wrap img{width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center}.previous-button,.next-button{position:fixed;top:50%;transform:translateY(-50%)}.previous-button{left:.75rem}.next-button{right:.75rem}.lightbox figcaption{grid-template-columns:1fr;gap:.35rem;width:100%;max-height:7.5rem;overflow:auto;font-size:.88rem}}@media(max-width:840px)and (max-height:560px){.lightbox{padding:calc(env(safe-area-inset-top) + .75rem) 3.6rem calc(env(safe-area-inset-bottom) + .75rem)}.lightbox-figure{grid-template-columns:minmax(0,1fr) minmax(10rem,.34fr);grid-template-rows:1fr;gap:.8rem}.lightbox-image-wrap{height:calc(100svh - 1.5rem);min-height:0}.lightbox figcaption{align-self:center;max-height:calc(100svh - 1.5rem)}}@media(max-width:700px){.site-header{grid-template-columns:1fr;align-items:stretch;padding:.75rem 0}.nav-links{width:100%}.nav-links a{flex:1;min-width:0}.category-tabs{top:113px}}@media(max-width:620px){h1{font-size:3.05rem}h2{font-size:2.45rem}h3{font-size:1.6rem}.hero,.section{width:min(100% - 1rem,var(--max-width))}.hero{padding-top:1rem}.tagline{font-size:1.02rem}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.primary-action,.secondary-action{padding:0 .75rem}.hero-panel,.featured-stack{min-height:22rem}.mini-card.card-1{left:3%;width:60%}.mini-card.card-2{right:0;width:50%}.mini-card.card-3{left:30%;width:46%}.live-note{max-width:calc(100% - 2rem)}.section{padding:4rem 0}.section-heading,.inline-album-heading{display:block}.section-note{margin-top:.75rem}.album-grid,.expanded-photo-grid{grid-template-columns:1fr}.album-card,.album-card:nth-child(5n+1),.album-card:nth-child(5n+2),.album-card:nth-child(5n+4),.album-card:nth-child(5n){grid-column:auto}.album-cover,.album-card:nth-child(5n+1) .album-cover,.album-card:nth-child(5n) .album-cover{aspect-ratio:16 / 10}.inline-album-heading .text-button{margin-top:1rem}.photo-tile:nth-child(7n+1),.photo-tile:nth-child(7n+5){grid-column:auto;aspect-ratio:4 / 5}.about-content p{font-size:1.08rem}.site-footer{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
