.gallery-page{background:#1e3147;color:#e1e8ee;font-family:Arial,sans-serif;min-height:100svh;background:radial-gradient(ellipse at 50% 40%,#56708a55,transparent 70%),linear-gradient(180deg,#1a2b40 0%,#344e69 56%,#263d54 80%,#17293d 100%)}
.gallery-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:24px clamp(24px,5vw,86px);height:104px}
.home-signature{font-family:"Pinyon Script",Georgia,serif;font-size:3.5rem;line-height:1;color:inherit;text-decoration:none;width:fit-content}
.gallery-header h1{font-family:Georgia,serif;font-size:1rem;font-weight:400;letter-spacing:.02em;line-height:1.5;margin:0}
.back-home{justify-self:end;text-decoration:none;color:#d0dce7;font-size:.875rem;display:flex;gap:15px;align-items:center}
.gallery-room{min-height:calc(100svh - 104px);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}
.collection-menu{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:26px;padding:12px 24px 20px;color:#96a9bd}
.collection-menu button{appearance:none;border:0;border-bottom:1px solid transparent;background:none;color:#b9c7d6;font:1rem/1.7 Georgia,serif;cursor:pointer;padding:5px 0;transition:color .3s,border-color .3s}
.collection-menu button[aria-pressed="true"]{color:#f0f3f6;border-bottom-color:#d7e4ef8c}
.collection-menu button:hover{color:#fff}.collection-menu span{font:14px Georgia,serif;opacity:.6}
.gallery-stage{position:relative;display:flex;align-items:center;min-height:360px;overflow:hidden;touch-action:pan-y;outline-offset:-8px}
.gallery-track{display:flex;align-items:center;gap:clamp(70px,10vw,170px);padding:30px 0 42px;will-change:transform;transition:transform 850ms cubic-bezier(.22,.7,.18,1)}
.gallery-piece{margin:0;flex:none;opacity:.38;transform:scale(.88);transition:opacity .7s,transform .85s;transform-origin:center center}
.gallery-piece.is-current{opacity:1;transform:scale(1)}
.picture-frame{border:9px solid #192126;border-bottom-color:#10181e;border-right-color:#10181e;border-top-color:#3e484d;border-left-color:#303a41;box-shadow:0 26px 32px -12px #06101d88,0 5px 8px #07112065,inset 0 0 0 1px #ffffff30;background:#d9dedf;padding:clamp(20px,3vw,46px)}
.photo-mat{box-shadow:0 0 0 1px #13243822,0 1px 3px #111b284d;background:#e2e7e9}
.photo-mat img{display:block;width:auto;height:auto;max-width:min(62vw,960px);max-height:min(46svh,max(180px,calc(100svh - 520px)));object-fit:contain}
.gallery-piece--portrait .photo-mat img{max-width:42vw}
.gallery-piece--landscape .photo-mat img{max-width:min(68vw,1060px)}
.gallery-piece figcaption{margin:23px 0 0;text-align:center;color:#d6e1eb;min-height:44px}
.photo-title{display:block;font:1.12rem/1.5 Georgia,serif;letter-spacing:.01em}
.photo-location{display:block;font-size:.75rem;line-height:1.6;color:#acbece;letter-spacing:.035em;margin-top:5px}
.gallery-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:18px clamp(24px,5vw,86px) 30px}
.gallery-footer p{margin:0;font-size:.8125rem;line-height:1.6;color:#b1c2d2;letter-spacing:.01em}
.gallery-credit{text-align:right}.gallery-controls{display:flex;align-items:center;gap:25px}
.gallery-controls button{width:48px;height:48px;border:1px solid #aec4d653;border-radius:50%;background:#11213422;color:#edf2f6;font:1.45rem Georgia,serif;cursor:pointer;transition:background .2s,border-color .2s}
.gallery-controls button:hover:not(:disabled){background:#a8c4da19;border-color:#d5e6f1}
.gallery-controls button:disabled{opacity:.28;cursor:default}
#gallery-counter{font-variant-numeric:tabular-nums;min-width:56px;text-align:center;color:#d6e3ed;font-size:.875rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.no-script{text-align:center}.static-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;padding:30px}.static-gallery img{width:100%;height:auto}
@media(min-width:1600px){.photo-mat img{max-height:49svh}}
@media(max-width:650px){.gallery-header{height:88px;padding:18px 24px;gap:12px}.gallery-header h1{font-size:.9rem}.home-signature{font-size:3rem}.back-home{font-size:.8rem;gap:8px}.gallery-room{min-height:calc(100svh - 88px)}.collection-menu{gap:22px;padding:6px 18px 14px}.collection-menu button{font-size:.95rem}.gallery-stage{min-height:350px}.gallery-track{gap:65px;padding-bottom:24px}.picture-frame{padding:17px;border-width:6px}.photo-mat img{max-width:70vw;max-height:43svh}.gallery-piece figcaption{margin-top:20px}.photo-title{font-size:1rem}.gallery-footer{grid-template-columns:1fr;justify-items:center;gap:15px;padding:14px 22px 28px}.gallery-controls{grid-row:1}.gallery-credit{display:none}.gallery-footer p{font-size:.75rem}.gallery-piece{transform:scale(.9)}}
@media(max-height:540px) and (min-width:651px){.gallery-header{height:74px;padding-block:12px}.gallery-room{min-height:calc(100svh - 74px)}.collection-menu{padding-block:0}.gallery-stage{min-height:240px}.gallery-track{padding:18px 0}.photo-mat img{max-height:40svh}.picture-frame{padding:16px;border-width:6px}.gallery-piece figcaption{margin-top:12px}.gallery-footer{padding-block:10px}.gallery-controls button{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.gallery-track{will-change:auto}}
@media(max-width:650px){.gallery-piece--portrait .photo-mat img{max-width:64vw;max-height:43svh}.gallery-piece--landscape .photo-mat img{max-width:78vw;max-height:43svh}}
