:root{--ink:#170b18;--plum:#321127;--coral:#ff5c45;--cream:#f6f0e9;--line:rgba(23,11,24,.14);--pad:clamp(22px,5vw,80px)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.detail-header{height:88px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white;border-bottom:1px solid rgba(255,255,255,.14)}.brand img{width:130px;filter:brightness(0) invert(1)}.back-link{display:flex;align-items:center;gap:11px;font-size:14px}.back-link span{color:var(--coral);font-size:21px}.album-hero{background:var(--plum);color:white;padding:clamp(90px,10vw,150px) var(--pad);display:grid;grid-template-columns:1.2fr .55fr;gap:8vw;align-items:end;min-height:520px;position:relative;overflow:hidden}.album-hero::after{content:'';position:absolute;width:480px;height:480px;border:1px solid rgba(255,92,69,.2);border-radius:50%;right:-190px;top:-270px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;display:flex;align-items:center;gap:12px}.eyebrow span{width:35px;height:1px;background:var(--coral)}h1{font:800 clamp(52px,7vw,105px)/.92 'Manrope';letter-spacing:-.07em;margin:32px 0 0;overflow-wrap:anywhere}.album-description{border-top:1px solid rgba(255,255,255,.2);padding-top:24px;position:relative;z-index:1}.album-description strong{font:800 48px 'Manrope';color:var(--coral)}.album-description>span{text-transform:uppercase;letter-spacing:.15em;font-size:9px;margin-left:8px;color:#baa8b4}.album-description p{color:#c4b4be;line-height:1.65;font-size:15px}.photo-section{padding:clamp(60px,8vw,120px) var(--pad)}.photo-grid{columns:3;column-gap:15px}.photo-item{display:block;width:100%;position:relative;margin:0 0 15px;padding:0;border:0;background:#ddd0d7;cursor:zoom-in;overflow:hidden;break-inside:avoid}.photo-item img{width:100%;height:auto;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s}.photo-item::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(23,11,24,.62),transparent 45%);opacity:0;transition:.3s}.photo-item>span{position:absolute;z-index:2;left:18px;right:18px;bottom:15px;display:flex;justify-content:space-between;color:white;font:600 10px 'Manrope';opacity:0;transform:translateY(8px);transition:.3s}.photo-item:hover img{transform:scale(1.035);filter:saturate(.78)}.photo-item:hover::after,.photo-item:hover>span{opacity:1}.photo-item:hover>span{transform:none}.archive-return{display:inline-flex;gap:12px;align-items:center;margin-top:55px;padding-bottom:8px;border-bottom:1px solid var(--coral);font-weight:700;font-size:14px}.archive-return span{color:var(--coral)}.no-photos{text-align:center;color:#887580;padding:80px}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;border:0;padding:0;background:rgba(11,4,12,.97);color:white}.lightbox::backdrop{background:rgba(11,4,12,.97)}.lightbox figure{margin:0;width:100%;height:100%;display:grid;place-items:center;padding:55px 110px}.lightbox figure img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain}.lightbox figcaption{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font:600 11px 'Manrope';letter-spacing:.12em;color:#8d7c87}.lightbox .current{color:var(--coral)}.lightbox-close,.lightbox-arrow{position:absolute;z-index:3;border:0;background:transparent;color:white;cursor:pointer}.lightbox-close{right:28px;top:18px;font:300 42px 'DM Sans';opacity:.7}.lightbox-arrow{top:50%;transform:translateY(-50%);font-size:28px;width:65px;height:65px;border:1px solid rgba(255,255,255,.18);border-radius:50%}.lightbox-arrow:hover{background:var(--coral);border-color:var(--coral)}.lightbox-arrow.previous{left:25px}.lightbox-arrow.next{right:25px}footer{padding:45px var(--pad);display:grid;grid-template-columns:1fr 1fr 1fr 1fr;align-items:center;gap:30px;background:#0f0710;color:#8e7e89;font-size:12px}footer img{width:120px;filter:brightness(0) invert(1);opacity:.85}footer nav{display:flex;gap:18px}footer p:last-child{text-align:right}
.archive-actions{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-top:55px}.archive-actions .archive-return{margin-top:0}.archive-add{display:inline-flex;gap:10px;align-items:center;background:var(--coral);color:white;border-radius:99px;padding:14px 20px;font-weight:700;font-size:13px}.archive-add:hover{background:#ff8438}.archive-add span{font-size:18px}
@media(max-width:900px){.album-hero{grid-template-columns:1fr;min-height:500px}.album-description{max-width:550px}.photo-grid{columns:2}footer{grid-template-columns:1fr 1fr}footer p:last-child{text-align:left}}
@media(max-width:560px){.detail-header{height:72px}.brand img{width:105px}.back-link{font-size:12px}.album-hero{min-height:450px}.photo-grid{columns:1}.lightbox figure{padding:60px 15px}.lightbox-arrow{top:auto;bottom:18px;width:50px;height:50px}.lightbox-arrow.previous{left:18px}.lightbox-arrow.next{right:18px}.lightbox figcaption{bottom:38px}footer{grid-template-columns:1fr}footer nav{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.photo-item img,.photo-item>span{transition:none}}
