.gallery-intro{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:clamp(35px,8vw,130px);align-items:end;padding-block:78px 85px}
.gallery-intro h1{max-width:1000px;color:var(--wine)}
.gallery-intro .lead{max-width:750px;margin-top:28px}
.gallery-intro-aside{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;border-top:1px solid var(--wine);padding-top:18px;min-height:170px;color:var(--wine)}
.gallery-total{font:300 clamp(72px,9vw,130px)/.9 var(--latin);letter-spacing:-.1em}
.gallery-intro-aside>span:last-child{font-size:11px;margin-top:18px}
.gallery-index{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid var(--line)}
.gallery-index a{display:flex;flex-direction:column;justify-content:space-between;gap:13px;min-height:91px;padding:14px 16px;border-inline-end:1px solid var(--line);font-size:11px;font-weight:650;line-height:1.4}
.gallery-index a:nth-child(5n){border-inline-end:0}
.gallery-index a:nth-child(n+6){border-top:1px solid var(--line)}
.gallery-index a:hover{background:var(--paper);color:var(--wine)}
.gallery-index span{font:700 10px/1 var(--latin);color:var(--clay)}
.gallery-notice{margin-block:28px 55px;padding-inline-start:18px;border-inline-start:2px solid var(--clay);font-size:12px;max-width:1450px}
.gallery-section{padding-block:58px 77px;border-top:1px solid var(--line);scroll-margin-top:18px}
.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}
.gallery-heading h2{color:var(--wine);margin:12px 0}
.gallery-heading p{max-width:650px;font-size:13px}
.gallery-heading .text-link{white-space:nowrap;font-size:11px}
.gallery-swipe{display:none}
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 18px}
.gallery-item{min-width:0}
.gallery-item a{display:block;overflow:hidden;background:var(--paper)}
.gallery-item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}
.gallery-item a:hover img{transform:scale(1.018)}
.gallery-item figcaption{display:flex;justify-content:space-between;gap:14px;margin-top:0;padding:10px 1px 0;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
.gallery-item figcaption span:first-child{font-family:var(--latin);font-weight:700;color:var(--clay);white-space:nowrap}
@media(max-width:1000px){.gallery-index{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-index a:nth-child(5n){border-inline-end:1px solid var(--line)}.gallery-index a:nth-child(2n){border-inline-end:0}.gallery-index a:nth-child(n+3){border-top:1px solid var(--line)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gallery-intro{display:block;padding-block:45px 50px}.gallery-intro .lead{margin-top:21px}.gallery-intro-aside{min-height:0;flex-direction:row;align-items:end;gap:25px;margin-top:40px;padding-top:14px}.gallery-total{font-size:70px}.gallery-intro-aside>span:last-child{margin:0 0 5px}.gallery-index{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;width:calc(100% - 20px);margin-inline-start:20px;border-bottom:0}.gallery-index a,.gallery-index a:nth-child(n+3),.gallery-index a:nth-child(n+6){flex:0 0 min(46vw,190px);min-height:82px;border-top:0;border-bottom:1px solid var(--line);scroll-snap-align:start}.gallery-index a:nth-child(2n){border-inline-end:1px solid var(--line)}.gallery-notice{margin-block:28px 47px;font-size:11px}.gallery-section{padding-block:43px 54px}.gallery-heading{display:block;margin-bottom:22px}.gallery-heading p{font-size:12px}.gallery-heading .text-link{margin-top:19px}.gallery-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;gap:12px;margin-inline:calc(-1 * (var(--gutter)));padding-inline:var(--gutter);padding-bottom:13px;scrollbar-width:thin}.gallery-item{flex:0 0 min(80vw,410px);scroll-snap-align:center}.gallery-item img{aspect-ratio:4/3}}
@media(max-width:440px){.gallery-grid{margin-inline:-20px;padding-inline:20px}}
@media(max-width:760px){.gallery-swipe{display:block;color:var(--clay);font-size:10px;margin:0 0 10px}}
