.salon-album{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.salon-album summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:30px;line-height:1.25}
.salon-album summary::-webkit-details-marker{display:none}.salon-album summary small{display:block;margin-top:6px;font:14px/1.6 var(--sans);color:var(--muted)}
.album-symbol::before{content:'+';font:28px var(--sans)}.salon-album[open] .album-symbol::before{content:'−'}
.salon-album summary:focus-visible,.salon-album a:focus-visible,.salon-lightbox button:focus-visible{outline:3px solid var(--olive);outline-offset:4px}
.album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px;padding:4px 0 28px}.album-grid figure{margin:0;min-width:0}.album-grid a{display:block}.album-grid img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.album-grid figcaption{font:14px/1.6 var(--sans);margin-top:10px;color:var(--ink)}
body.salon-photo-open{overflow:hidden}
.salon-lightbox{width:min(1100px,calc(100% - 32px));max-width:none;height:min(900px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:20px 24px;border:1px solid var(--line);background:var(--paper);color:var(--ink);overflow:auto}
.salon-lightbox[open]{display:flex;flex-direction:column;gap:12px}.salon-lightbox::backdrop{background:rgba(20,25,18,.85)}
.salon-lightbox header{display:flex;align-items:center;justify-content:space-between;gap:14px}.salon-lightbox header h2{font:28px/1.2 var(--serif);letter-spacing:normal}.salon-lightbox button{min-height:44px;border:1px solid var(--line);background:transparent;padding:8px 14px;font-size:14px}.salon-lightbox header button{flex-shrink:0}.salon-lightbox header button span{font-size:22px;margin-left:8px}
.salon-lightbox figure{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;margin:0}.salon-lightbox figure img{width:100%;height:100%;min-height:0;flex:1;object-fit:contain}.salon-lightbox figcaption{font:14px/1.5 var(--sans);text-align:center}.salon-lightbox nav{display:flex;align-items:center;justify-content:space-between;gap:10px}.salon-lightbox [data-photo-counter]{font-size:14px;white-space:nowrap}.salon-lightbox .photo-error:empty{display:none}.salon-lightbox .photo-error{font-size:14px;color:var(--ink)}
@media(max-width:700px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.salon-lightbox{padding:14px;width:calc(100% - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.salon-lightbox header h2{font-size:24px}.salon-lightbox nav button{padding:8px 10px;font-size:13px}.salon-lightbox figcaption{font-size:13px}.salon-album summary{font-size:28px}}
