.photos-page{--pg-bg:#000;--pg-surface:#111;--pg-line:#ffffff24;--pg-text:#fff;--pg-muted:#ffffff94;--pg-accent:#fff;--pg-radius:4px;--pg-gap:10px;--pg-menu-h:60px;background-color:var(--pg-bg);color:var(--pg-text);min-height:100vh;padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}.photos-main{max-width:1800px;padding:calc(var(--pg-menu-h) + 40px) 20px 0;margin:0 auto}.photos-header{border-radius:var(--pg-radius);background-color:var(--pg-surface);align-items:flex-end;min-height:clamp(340px,58vh,600px);margin:0 0 28px;padding:40px 32px 32px;display:flex;position:relative;overflow:hidden}.photos-header picture{display:contents}.photos-header__cover{object-fit:cover;object-position:center 42%;width:100%;height:100%;position:absolute;inset:0}.photos-header:after{content:"";background:linear-gradient(#00000059 0%,#00000026 35%,#000000eb 100%);position:absolute;inset:0}.photos-header__body{z-index:1;width:100%;position:relative}.photos-header h1{text-transform:uppercase;letter-spacing:.01em;margin:0 0 8px;font-family:MontBold,sans-serif;font-size:clamp(26px,4vw,42px)}.photos-header__date{margin:0 0 6px;font-family:MontBold,sans-serif;font-size:clamp(18px,2.4vw,26px)}.photos-header__headliner{text-transform:uppercase;letter-spacing:.04em;margin:4px 0;font-family:MontBold,sans-serif;font-size:clamp(26px,4.2vw,46px);line-height:1.05}.photos-header__lineup{text-transform:uppercase;letter-spacing:.12em;margin:0 0 18px;font-family:MontRegular,sans-serif;font-size:clamp(13px,1.6vw,18px);line-height:1.6}.photos-header__count{text-transform:uppercase;letter-spacing:.12em;color:#ffffffd1;margin:0 0 6px;font-family:MontBold,sans-serif;font-size:clamp(14px,1.6vw,18px)}.photos-header__intro{color:#ffffffd1;max-width:60ch;margin:0;font-family:MontRegular,sans-serif;font-size:clamp(14px,1.6vw,17px)}.photos-toolbar{top:var(--pg-menu-h);z-index:5;background-color:var(--pg-bg);border-bottom:1px solid var(--pg-line);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;padding:12px 0;display:flex;position:sticky}.photos-toolbar__count{text-transform:uppercase;letter-spacing:.08em;color:var(--pg-text);white-space:nowrap;margin-left:auto;font-family:MontBold,sans-serif;font-size:13px}.photos-toolbar__btn{text-transform:uppercase;letter-spacing:.06em;color:var(--pg-text);border:1px solid var(--pg-line);cursor:pointer;background:0 0;border-radius:40px;align-items:center;gap:8px;padding:9px 18px;font-family:MontBold,sans-serif;font-size:13px;transition:background-color .2s linear,color .2s linear,border-color .2s linear;display:inline-flex}.photos-toolbar__btn:hover:not(:disabled){background-color:var(--pg-accent);border-color:var(--pg-accent);color:#000}.photos-toolbar__btn:disabled{opacity:.38;cursor:default}.photos-toolbar__hint{color:var(--pg-muted);font-family:MontRegular,sans-serif;font-size:13px}.photos-toolbar__hint--error{color:#ff6b6b}.pg{width:100%}.pg__surface{width:100%;position:relative}.pgc{border-radius:var(--pg-radius);will-change:transform;position:absolute;top:0;left:0;overflow:hidden}.pgc__hit{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:100%;height:100%;margin:0;padding:0;display:block}.pgc__img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity .35s ease-out;display:block}.pgc__img[data-crop]{object-fit:cover}.pgc__img[data-loaded]{opacity:1}.pgc[data-selected]:after{content:"";border:3px solid var(--pg-accent);border-radius:var(--pg-radius);pointer-events:none;background-color:#00000052;position:absolute;inset:0}.pgc__mark{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#0000;opacity:.92;cursor:pointer;box-sizing:content-box;outline-offset:2px;background-color:#00000073;border:1.5px solid #ffffffd9;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out,opacity .18s ease-out;display:flex;position:absolute;top:8px;left:8px}.pgc__mark:after{content:"";border-radius:50%;position:absolute;inset:-9px}.pgc:hover .pgc__mark{color:#ffffff8c;opacity:1}.pgc__mark:hover,.pgc__mark:focus-visible{color:#ffffffe6;opacity:1;background-color:#000000b3;border-color:#fff}@media (hover:none){.pgc__mark{opacity:1;color:#ffffff80}}.pgc[data-selected] .pgc__mark,.pgc[data-selected]:hover .pgc__mark{background-color:var(--pg-accent);border-color:var(--pg-accent);color:#000;opacity:1}.lb__check{color:#fff;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background-color:#ffffff0f;border:1px solid #ffffff47;border-radius:40px;align-items:center;gap:9px;height:40px;padding:0 14px 0 10px;font-family:MontBold,sans-serif;font-size:12px;transition:background-color .18s ease-out,border-color .18s ease-out;display:inline-flex}.lb__check:hover,.lb__check:focus-visible{background-color:#ffffff24;border-color:#ffffff80}.lb__check-box{color:#0000;border:1.5px solid #fffc;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:background-color .18s ease-out,border-color .18s ease-out,color .18s ease-out;display:flex}.lb__check[aria-checked=true]{background-color:#ffffff24;border-color:#ffffff8c}.lb__check[aria-checked=true] .lb__check-box{background-color:var(--pg-accent);border-color:var(--pg-accent);color:#000}@media (max-width:560px){.lb__check-text{display:none}.lb__check{padding:0 10px}}.pgc__controls{opacity:0;gap:4px;transition:opacity .18s linear;display:flex;position:absolute;bottom:6px;right:6px}.pgc:hover .pgc__controls,.pgc:focus-within .pgc__controls{opacity:1}@media (hover:none){.pgc__controls{opacity:.85}}.pgc__ctl{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background-color:#0000008c;border:0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background-color .15s linear,color .15s linear;display:inline-flex}.pgc__ctl:hover:not(:disabled){color:#000;background-color:#fff}.pgc__ctl:disabled{cursor:default}.pgc__spin{animation:1s linear infinite pg-spin}.selbar{z-index:40;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--pg-line);background-color:#000000eb;transition:transform .25s ease-out;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.selbar[data-visible]{transform:translateY(0)}.selbar__inner{justify-content:space-between;align-items:center;gap:16px;max-width:1800px;margin:0 auto;display:flex}.selbar__info{flex-direction:column;gap:6px;min-width:0;display:flex}.selbar__count{text-transform:uppercase;letter-spacing:.06em;color:#fff;font-family:MontBold,sans-serif;font-size:clamp(14px,2vw,18px)}.selbar__warn{color:#ffffffd1;max-width:62ch;font-family:MontRegular,sans-serif;font-size:13px;line-height:1.35}.selbar__track{background-color:#fff3;border-radius:2px;width:min(320px,60vw);height:3px;display:block;overflow:hidden}.selbar__fill{background-color:#fff;height:100%;transition:width .2s linear;display:block}.selbar__actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.selbar__ghost{text-transform:uppercase;letter-spacing:.06em;color:#ffffffc7;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:10px 6px;font-family:MontBold,sans-serif;font-size:13px;transition:color .2s linear;display:inline-flex}.selbar__ghost:hover{color:#fff}.photos-page .selbar__cta,.photos-page .btn.btn-primary{color:#000;text-transform:uppercase;white-space:nowrap;background-color:#fff;border:2px solid #fff;border-radius:40px;justify-content:center;align-items:center;gap:10px;padding:13px 28px;font-family:MontBold,sans-serif;font-size:15px;transition:background-color .2s linear,color .2s linear;display:inline-flex}.photos-page .selbar__cta:hover:not(:disabled),.photos-page .btn.btn-primary:hover{color:#fff;background-color:#0000}.photos-page .selbar__cta:disabled{opacity:.45;cursor:default}.lb{z-index:80;touch-action:pan-y;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lb__backdrop{background-color:#000000f0;position:absolute;inset:0}.lb__bar{z-index:2;padding:14px 16px calc(14px + env(safe-area-inset-top,0px));justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;top:0;left:0;right:0}.lb__counter{letter-spacing:.1em;color:#ffffffb3;font-family:MontBold,sans-serif;font-size:13px}.lb__actions{gap:8px;display:flex}.lb__btn{color:#fff;cursor:pointer;background-color:#0006;border:1px solid #ffffff38;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding:0;transition:background-color .15s linear,color .15s linear;display:inline-flex}.lb__btn:hover:not(:disabled),.lb__btn[data-active]{color:#000;background-color:#fff}.lb__spin{animation:1s linear infinite pg-spin}.lb__stage{z-index:1;padding:76px 16px calc(56px + env(safe-area-inset-bottom,0px));flex-direction:column;justify-content:center;align-items:center;gap:12px;max-width:100%;max-height:100%;margin:0;display:flex;position:relative}.lb__img{object-fit:contain;opacity:0;width:auto;max-width:min(100%,1600px);height:auto;max-height:calc(100vh - 150px);transition:opacity .25s ease-out}.lb__img[data-loaded]{opacity:1}.lb__name{color:#fff9;text-align:center;word-break:break-all;font-family:MontRegular,sans-serif;font-size:13px}.lb__nav{z-index:2;color:#fff;cursor:pointer;background-color:#00000073;border:0;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding:0;transition:background-color .15s linear,color .15s linear;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.lb__nav:hover{color:#000;background-color:#fff}.lb__nav--prev{left:12px}.lb__nav--next{right:12px}.photos-state{text-align:center;min-height:46vh;color:var(--pg-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-family:MontRegular,sans-serif;font-size:16px;display:flex}.photos-state__spin{animation:1.1s linear infinite pg-spin}.photos-notice{color:var(--pg-muted);border-top:1px solid var(--pg-line);text-align:center;max-width:70ch;margin:48px auto 0;padding-top:24px;font-family:MontRegular,sans-serif;font-size:13px;line-height:1.6}.photos-page footer .social a{filter:invert()}.photos-notice a{color:var(--pg-text);text-underline-offset:3px;text-decoration:underline;transition:opacity .2s linear}.photos-notice a:hover{opacity:.7}.photos-back{text-align:center;margin:20px 0 0}.photos-back a{text-transform:uppercase;letter-spacing:.1em;color:var(--pg-muted);font-family:MontBold,sans-serif;font-size:13px;transition:color .2s linear}.photos-back a:hover{color:#fff}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:60;color:#000;background-color:#fff;border-radius:40px;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:12px 12px 12px 20px;font-family:MontBold,sans-serif;font-size:14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 30px #00000080}.toast[data-tone=error]{background-color:#ffdcdc}.toast__close{color:#000;cursor:pointer;background-color:#00000014;border:0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.sk{border-radius:var(--pg-radius);background:linear-gradient(90deg,#141414 25%,#1e1e1e 37%,#141414 63%) 0 0/400% 100%;animation:1.4s ease-in-out infinite pg-shimmer}.sk--title{width:min(420px,80%);height:40px;margin-bottom:14px}.sk--line{width:min(260px,60%);height:18px}.sk-grid{gap:var(--pg-gap);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));margin-top:28px;display:grid}.sk--cell{aspect-ratio:3/2}.sk--cell[data-tall]{aspect-ratio:2/3}.photos-page button:focus-visible,.photos-page a:focus-visible,.lb button:focus-visible{outline-offset:2px;outline:3px solid #fff}@media (max-width:768px){.photos-main{padding:calc(var(--pg-menu-h) + 24px) 12px 0}.photos-header{min-height:clamp(300px,52vh,440px);padding:28px 20px 24px}.selbar__inner{flex-direction:column;align-items:stretch;gap:10px}.selbar__actions{justify-content:space-between}.photos-page .selbar__cta{flex:auto}.lb__nav{width:44px;height:44px}.lb__nav--prev{left:6px}.lb__nav--next{right:6px}}@keyframes pg-spin{to{transform:rotate(360deg)}}@keyframes pg-shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.pgc__img,.pgc__mark,.pgc__controls,.selbar,.lb__img,.selbar__fill{transition:none!important}.pgc__img,.lb__img{opacity:1!important}.sk{animation:none}}
