.portfolio-hero{min-height:750px;padding-bottom:170px}
.portfolio-hero h1{font-size:clamp(80px,11vw,170px)}
.portfolio-hero .hero-image{object-position:center 45%}
.portfolio-intro{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}
.portfolio-intro h2{font-size:clamp(55px,6vw,88px)}
.portfolio-intro p{max-width:340px;font-size:14px;line-height:1.8;color:var(--muted)}
.archive-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0 30px;font:10px/1.6 monospace;letter-spacing:.12em;color:var(--blue)}
.photo-grid{columns:3;column-gap:22px}
.photo-card{display:block;min-width:0;break-inside:avoid;margin-bottom:26px}
.photo-card a{display:block;overflow:hidden;background:#101620;position:relative}
.photo-card img{height:auto;transition:transform .4s,filter .4s}
.photo-card a:hover img{transform:scale(1.025);filter:brightness(1.08)}
.photo-card a::after{content:'';background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='square'%3E%3Cpath d='M3.5 12.5l9-9M5.5 3.5h7v7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:16px;position:absolute;bottom:15px;right:15px;display:grid;place-items:center;width:38px;height:38px;background:#07090dbb;color:#fff;font-size:22px;border:1px solid #ffffff55}
.photo-card figcaption{display:flex;justify-content:space-between;gap:12px;padding-top:12px;font:10px/1.6 monospace;letter-spacing:.1em;color:var(--muted)}
.photo-card figcaption span:first-child{color:var(--blue)}
.archive-end{text-align:center;padding-top:55px;font:11px monospace;letter-spacing:.1em;color:var(--muted)}
.archive-nav{position:sticky;top:0;z-index:15;display:flex;justify-content:center;gap:0;background:#0c111af5;backdrop-filter:blur(12px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 6%}
.archive-nav a{display:flex;align-items:center;justify-content:center;gap:20px;padding:24px 35px;font:23px var(--display);letter-spacing:.05em;min-height:60px}
.archive-nav a:hover,.archive-nav a:focus-visible{background:#8ab9ff15;color:var(--blue)}
.archive-nav a span{font:11px monospace;color:var(--blue)}
.portfolio-collection{scroll-margin-top:0;padding-top:55px}
.portfolio-collection+.portfolio-collection{margin-top:75px;border-top:1px solid var(--line)}
.collection-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:25px}
.collection-heading .eyebrow{color:var(--blue);font-size:10px;margin-bottom:18px}
.collection-heading h3{font-size:clamp(38px,4.5vw,68px);line-height:1}
.collection-heading>p{max-width:310px;font-size:14px;line-height:1.8;color:var(--muted)}
@media(max-width:760px){.archive-nav{padding:0 3%;justify-content:space-between}.archive-nav a{font-size:16px;padding:18px 8px;gap:7px;letter-spacing:.02em}.archive-nav a span{font-size:9px}.portfolio-collection{padding-top:35px;scroll-margin-top:0}.portfolio-collection+.portfolio-collection{margin-top:45px}.collection-heading{display:block}.collection-heading>p{margin-top:18px;font-size:13px}}
.lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:28px;background:#07090df7;color:var(--ink)}
.lightbox::backdrop{background:#07090d}
.lightbox[open]{display:flex;flex-direction:column}
.lightbox-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-shrink:0}
.lightbox-label{font:12px monospace;letter-spacing:.12em;color:var(--blue)}
.lightbox button{background:transparent;border:1px solid #ffffff55;color:var(--ink);width:48px;height:48px;font-size:25px;cursor:pointer}
.lightbox button:hover{background:var(--blue);color:var(--bg)}
.lightbox-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:20px 0;touch-action:pan-y}
.lightbox-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.lightbox-bottom{display:flex;justify-content:center;align-items:center;gap:28px;flex-shrink:0}
.lightbox-counter{font:12px monospace;letter-spacing:.1em;min-width:85px;text-align:center}
@media(max-width:760px){.portfolio-hero{min-height:730px;padding-top:155px;padding-bottom:245px}.portfolio-hero h1{font-size:clamp(70px,14vw,105px)}.portfolio-intro{display:block}.portfolio-intro p{margin-top:25px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 12px}.photo-card.landscape{grid-column:span 2}.photo-card figcaption{font-size:8px;letter-spacing:.03em}.photo-card a::after{width:30px;height:30px;font-size:18px;bottom:10px;right:10px}.archive-meta{font-size:9px;letter-spacing:.06em}.lightbox{padding:18px}.lightbox-label{font-size:10px}.lightbox button{width:44px;height:44px}}
@media(max-width:760px){.photo-grid{columns:2;column-gap:12px}}
@media(prefers-reduced-motion:reduce){.photo-card img{transition:none}}
