.gallery-main{padding-top:47px;padding-bottom:85px}.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:44px 0 48px}.gallery-kicker{display:block;color:#9787a6;margin-bottom:13px;font-size:9px}.gallery-heading h1{font-size:clamp(38px,4.5vw,63px)}.gallery-heading p{font-size:13px;line-height:1.9;color:#afa1bb}.gallery-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;align-items:start}.gallery-sidebar{position:sticky;top:28px}.gallery-sidebar h2{font-size:9px;letter-spacing:1.8px;font-weight:600;color:#ac9ab9;margin:0 0 23px}.gallery-filters{display:flex;flex-direction:column;gap:7px}.gallery-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;width:100%;padding:12px 14px;background:transparent;border:1px solid transparent;border-left:2px solid transparent;font-size:12px;color:#b4a5c0;transition:background .2s,color .2s}.gallery-filter>span:last-child{font-size:10px;color:#a28bb4}.gallery-filter:hover{background:#c0a5ed0b;color:#f0edf5}.gallery-filter.is-selected{background:linear-gradient(90deg,#c0a5ed20,#c0a5ed05);border-color:#c0a5ed27;border-left-color:var(--accent);color:#e5d2fa}.sidebar-note{margin-top:42px;border-top:1px solid var(--line);padding:28px 14px;color:#a28eaf}.sidebar-note>span{display:block;font-size:40px;line-height:1;color:var(--accent);margin-bottom:15px}.sidebar-note p{font-size:11px;line-height:1.9}.collection-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--line)}.collection-bar h2{font-size:14px;font-weight:400;letter-spacing:0;margin:0}.collection-bar>span{font-size:10px;color:#ad98bc;letter-spacing:1px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-photo{position:relative;display:block;width:100%;aspect-ratio:3/4;padding:0;overflow:hidden;border:1px solid #3a3043;background:#1c1723;text-align:left}.gallery-photo[hidden]{display:none}.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}.photo-overlay{position:absolute;inset:0;padding:16px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;background:linear-gradient(0deg,#100c18e8,transparent 47%);transition:background .3s}.photo-overlay small{display:block;font-size:8px;letter-spacing:1.3px;color:#d4bde7;margin-bottom:5px}.photo-overlay strong{font-size:14px;font-weight:500;line-height:1.35;display:block}.photo-expand{display:grid;place-items:center;flex-shrink:0;width:27px;height:27px;border:1px solid #d9b9f05c;color:#e8cff8;font-size:17px}.gallery-photo:hover{border-color:#c0a5ed}.gallery-photo:hover img{transform:scale(1.045)}.gallery-photo:hover .photo-expand{background:#c0a5ed;color:#21152e}.photo-dialog{width:min(1120px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 32px);padding:18px 24px;background:#121016;color:var(--text);border:1px solid #685177;box-shadow:0 24px 120px #0009;overflow:auto}.photo-dialog::backdrop{background:#07050de8;backdrop-filter:blur(10px)}.lightbox-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:15px}.lightbox-top .eyebrow{font-size:9px}.lightbox-close{background:transparent;border:1px solid #65516f;color:#ecdef5;width:34px;height:34px;line-height:1;font-size:26px}.lightbox-close:hover,.lightbox-arrow:hover{background:#c0a5ed25;border-color:var(--accent)}.lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:180px;height:min(67dvh,760px);background:#0a090e}.lightbox-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.lightbox-image.is-loading{opacity:0}.lightbox-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:12px;color:#cab3dc;pointer-events:none}.lightbox-arrow{position:absolute;z-index:1;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:42px;height:48px;font-size:22px;background:#14101cbb;border:1px solid #a286b777;color:#f0e3fa}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0 0}.lightbox-category{font-size:8px;letter-spacing:1.5px;color:var(--accent)}.lightbox-bottom h2{font-size:20px;letter-spacing:-.3px;line-height:1.3;margin:4px 0}.lightbox-counter{font-size:11px;letter-spacing:2px;color:#c6afda;white-space:nowrap}.lightbox-hint{font-size:9px;color:#9b86aa;margin-top:13px;padding-top:10px;border-top:1px solid var(--line)}.lightbox-hint span{float:right}body.modal-open{overflow:hidden}
@media(max-width:1100px){.gallery-layout{grid-template-columns:180px minmax(0,1fr);gap:26px}.gallery-grid{gap:13px}.photo-overlay{padding:12px}.photo-overlay strong{font-size:12px}.photo-overlay small{font-size:7px}.photo-expand{width:23px;height:23px}}
@media(max-width:800px){.gallery-main{padding-top:30px}.gallery-heading{padding-block:28px 35px}.gallery-heading h1{font-size:42px}.gallery-heading p{font-size:11px}.gallery-layout{grid-template-columns:155px minmax(0,1fr);gap:20px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-filter{padding:10px;font-size:11px}.gallery-sidebar h2{font-size:8px;letter-spacing:1px}.photo-dialog{width:calc(100vw - 28px);padding:14px}.lightbox-stage{height:65dvh}}
@media(max-width:560px){.gallery-heading{display:block}.gallery-heading h1{font-size:40px}.gallery-heading p{margin-top:19px;font-size:12px}.gallery-layout{display:block}.gallery-sidebar{position:static;margin-bottom:27px}.gallery-sidebar h2{margin-bottom:12px}.gallery-filters{flex-direction:row;flex-wrap:wrap;gap:7px}.gallery-filter{width:auto;gap:10px;padding:9px 11px;border:1px solid #3c3046;font-size:11px}.gallery-filter.is-selected{border-color:#c0a5ed77}.sidebar-note{display:none}.gallery-grid{gap:12px}.photo-overlay{padding:11px}.photo-overlay strong{font-size:12px}.photo-overlay small{font-size:7px;letter-spacing:.8px}.photo-expand{display:none}.gallery-main{padding-bottom:45px}.photo-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px}.lightbox-stage{height:62dvh;min-height:150px}.lightbox-arrow{width:32px;height:40px;font-size:18px}.lightbox-prev{left:5px}.lightbox-next{right:5px}.lightbox-bottom h2{font-size:17px}.lightbox-hint{font-size:8px}}
@media(prefers-reduced-motion:reduce){.gallery-photo img{transition:none}}

.lightbox-description{font-size:12px;color:#bba5cb;white-space:pre-line;max-width:760px;margin-top:7px}
.public-empty{font-size:13px;color:#b8a0c8;padding:20px 0}
