@charset "UTF-8";
.gallery-page{background:#f8f6f1}.gallery-intro{animation:gallery-intro-in 1.15s cubic-bezier(.2,.75,.2,1) both}.gallery-intro .information-intro__line{transform-origin:left;animation:gallery-line-in 1.3s .25s cubic-bezier(.2,.75,.2,1) both}.gallery-intro .information-kicker,.gallery-intro .information-intro__text{animation:gallery-copy-in .9s .15s ease both}
@keyframes gallery-intro-in{from{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:none}}@keyframes gallery-line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes gallery-copy-in{from{opacity:0;letter-spacing:.55em}to{opacity:1}}
.gallery-filter{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px clamp(22px,3vw,48px);padding:23px clamp(18px,4vw,64px);background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.gallery-filter:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(183,146,76,.08) 50%,transparent 65%);transform:translateX(-120%);animation:gallery-filter-glint 7s 1.2s ease-in-out infinite}.gallery-filter a{position:relative;padding:9px 2px;color:#80786c;font-size:9px;letter-spacing:.22em;transition:color .35s,letter-spacing .35s}.gallery-filter a:before{content:"";position:absolute;right:50%;bottom:0;left:50%;height:1px;background:var(--gold);transition:left .45s cubic-bezier(.2,.8,.2,1),right .45s cubic-bezier(.2,.8,.2,1)}.gallery-filter a:hover,.gallery-filter a.is-current{color:var(--gold);letter-spacing:.31em}.gallery-filter a:hover:before,.gallery-filter a.is-current:before{right:0;left:0}@keyframes gallery-filter-glint{0%,55%{transform:translateX(-120%)}80%,100%{transform:translateX(120%)}}
.gallery-stage{padding:clamp(30px,4vw,68px) clamp(18px,3.2vw,52px) clamp(75px,9vw,140px);overflow:hidden}.gallery-grid{column-count:4;column-gap:clamp(12px,1.5vw,25px)}.gallery-item{display:inline-block;width:100%;margin:0 0 clamp(14px,1.7vw,27px);break-inside:avoid;opacity:0;transform:translateY(80px) rotate(.8deg) scale(.94);filter:blur(8px);transition:opacity .9s ease,transform 1.05s cubic-bezier(.16,.84,.28,1),filter .9s ease}.gallery-item.is-visible{opacity:1;transform:none;filter:none}.gallery-card{position:relative;display:block;width:100%;padding:0;border:0;background:#ece6da;text-align:left;cursor:zoom-in;overflow:hidden;box-shadow:0 12px 42px rgba(41,34,24,.06);transition:transform .65s cubic-bezier(.16,.84,.28,1),box-shadow .65s ease}.gallery-card:after{content:"";position:absolute;inset:0;border:1px solid rgba(194,160,94,0);transition:border-color .45s,transform .55s;transform:scale(.94);pointer-events:none}.gallery-card:hover{z-index:2;transform:translateY(-8px);box-shadow:0 28px 65px rgba(41,34,24,.2)}.gallery-card:hover:after{border-color:rgba(194,160,94,.75);transform:scale(1)}.gallery-card__image{position:relative;display:block;overflow:hidden;background:#ddd5c8}.gallery-card__image:after{content:"";position:absolute;top:-25%;bottom:-25%;left:-55%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:rotate(12deg);transition:left .9s ease}.gallery-card:hover .gallery-card__image:after{left:130%}.gallery-card__image img{display:block;width:100%;height:auto;min-height:180px;object-fit:cover;filter:saturate(.72) contrast(1.03);transition:transform 1.2s cubic-bezier(.16,.84,.28,1),filter .8s ease}.gallery-card:hover .gallery-card__image img{transform:scale(1.07) rotate(.35deg);filter:saturate(.95) contrast(1.02)}.gallery-card__caption{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;padding:18px 20px 20px;background:#fff}.gallery-card__caption b{font-size:13px;letter-spacing:.1em;color:#39342d}.gallery-card__caption small{color:var(--gold);font-size:7px;letter-spacing:.19em}.gallery-card__number{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.55);background:rgba(24,21,17,.25);backdrop-filter:blur(6px);color:#fff;font-size:7px;letter-spacing:.12em;transition:transform .55s,background .55s}.gallery-card:hover .gallery-card__number{transform:rotate(360deg);background:rgba(153,115,48,.65)}
.gallery-lightbox{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:clamp(12px,3vw,48px);visibility:hidden;opacity:0;transition:opacity .45s ease,visibility 0s linear .45s}.gallery-lightbox.is-open{visibility:visible;opacity:1;transition:opacity .45s ease}.gallery-lightbox__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(12,10,8,.88);backdrop-filter:blur(13px);cursor:zoom-out}.gallery-lightbox__window{position:relative;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.65fr);width:min(1380px,100%);max-height:calc(100vh - 32px);background:#f8f6f1;box-shadow:0 35px 110px rgba(0,0,0,.55);overflow:hidden;opacity:0;transform:perspective(1600px) rotateX(8deg) scale(.82);clip-path:inset(48% 48% 48% 48%);transition:opacity .35s,transform .85s cubic-bezier(.16,.84,.28,1),clip-path .85s cubic-bezier(.16,.84,.28,1)}.gallery-lightbox.is-open .gallery-lightbox__window{opacity:1;transform:none;clip-path:inset(0)}.gallery-lightbox__visual{display:grid;place-items:center;min-height:min(76vh,780px);background:#131210;overflow:hidden}.gallery-lightbox__visual img{display:block;max-width:100%;width:100%;height:100%;max-height:calc(100vh - 32px);object-fit:contain;opacity:0;transform:scale(1.14);transition:opacity .65s .3s,transform 1.15s .2s cubic-bezier(.16,.84,.28,1)}.gallery-lightbox.is-open .gallery-lightbox__visual img{opacity:1;transform:scale(1)}.gallery-lightbox__content{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,5vw,82px) clamp(28px,4vw,64px);background:#f8f6f1;overflow-y:auto}.gallery-lightbox__content>p{margin:0 0 22px;color:var(--gold);font-size:8px;letter-spacing:.32em}.gallery-lightbox__content h2{margin:0;color:#302c27;font-size:clamp(20px,2.2vw,34px);line-height:1.55;letter-spacing:.1em}.gallery-lightbox__line{width:48px;height:1px;margin:30px 0;background:var(--gold);transform-origin:left}.gallery-lightbox__text{font-size:15px;line-height:2.15;letter-spacing:.06em;color:#6b6358}.gallery-lightbox__count{margin-top:44px;color:#9b9182;font-size:8px;letter-spacing:.25em}.gallery-lightbox__close{position:absolute;top:18px;right:18px;width:48px;height:48px;border:1px solid #c9baa0;background:rgba(248,246,241,.88);cursor:pointer;transition:transform .45s,background .3s}.gallery-lightbox__close:hover{transform:rotate(90deg);background:#fff}.gallery-lightbox__close span{position:absolute;top:23px;left:13px;width:20px;height:1px;background:#4e463b}.gallery-lightbox__close span:first-child{transform:rotate(45deg)}.gallery-lightbox__close span:last-child{transform:rotate(-45deg)}.gallery-lightbox__prev,.gallery-lightbox__next{position:absolute;bottom:18px;width:48px;height:42px;border:1px solid #c9baa0;background:rgba(248,246,241,.9);color:#554b3f;cursor:pointer;transition:background .3s,color .3s,transform .3s}.gallery-lightbox__prev{right:72px}.gallery-lightbox__next{right:18px}.gallery-lightbox__prev:hover,.gallery-lightbox__next:hover{background:var(--gold);color:#fff;transform:translateY(-3px)}.gallery-modal-open{overflow:hidden}
@media(max-width:1180px){.gallery-grid{column-count:3}}@media(max-width:820px){.gallery-grid{column-count:2}.gallery-lightbox__window{grid-template-columns:1fr;overflow-y:auto}.gallery-lightbox__visual{min-height:0;height:58vh}.gallery-lightbox__visual img{max-height:58vh}.gallery-lightbox__content{min-height:260px;padding:32px 24px 75px}.gallery-lightbox__content>p{margin-bottom:13px}.gallery-lightbox__line{margin:20px 0}.gallery-lightbox__count{margin-top:25px}.gallery-lightbox__close{top:10px;right:10px}.gallery-lightbox__prev,.gallery-lightbox__next{bottom:10px}.gallery-lightbox__prev{right:64px}.gallery-lightbox__next{right:10px}}@media(max-width:560px){.gallery-filter{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto}.gallery-filter a{flex:0 0 auto}.gallery-stage{padding-right:12px;padding-left:12px}.gallery-grid{column-count:2;column-gap:10px}.gallery-item{margin-bottom:10px}.gallery-card__caption{display:block;padding:12px}.gallery-card__caption b{display:block;font-size:11px}.gallery-card__caption small{display:block;margin-top:7px}.gallery-card__number{top:8px;right:8px;width:28px;height:28px}.gallery-card__image img{min-height:120px}.gallery-lightbox{padding:0}.gallery-lightbox__window{width:100%;max-height:100vh;height:100vh}.gallery-lightbox__visual{height:57vh}.gallery-lightbox__content{min-height:43vh}.gallery-lightbox__text{font-size:12px}}
@media(prefers-reduced-motion:reduce){.gallery-intro,.gallery-intro *,.gallery-filter:before,.gallery-item,.gallery-card,.gallery-card *,.gallery-lightbox,.gallery-lightbox *{animation:none!important;transition-duration:.01ms!important}.gallery-item{opacity:1;transform:none;filter:none}}

/* Mobile categories and full-height lightbox scrolling (including iOS Safari). */
@media (max-width:820px) {
  .gallery-filter {
    box-sizing:border-box;
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:6px 18px;
    width:100%;
    overflow:visible;
  }
  .gallery-filter::before {pointer-events:none;}
  .gallery-filter a {flex:0 0 auto;white-space:nowrap;}
  .gallery-lightbox {
    align-items:stretch;
    justify-items:stretch;
    overflow:hidden;
  }
  .gallery-lightbox__window {
    display:block;
    width:100%;
    height:100%;
    max-height:100%;
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
  }
  .gallery-lightbox__visual {
    height:min(54vh,540px);
    min-height:0;
  }
  .gallery-lightbox__visual img {height:100%;max-height:100%;}
  .gallery-lightbox__content {
    min-height:0;
    overflow:visible;
    padding-bottom:90px;
  }
  .gallery-lightbox__close,
  .gallery-lightbox__prev,
  .gallery-lightbox__next {z-index:2;}
  .gallery-lightbox__prev,.gallery-lightbox__next {bottom:14px;}
}
@media (max-width:560px) {
  .gallery-lightbox {height:100vh;height:100dvh;}
  .gallery-lightbox__window {height:100vh;height:100dvh;}
  .gallery-lightbox__visual {height:52vh;height:52dvh;}
}
