.campus-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-top:clamp(105px,7.2vw,148px);padding-top:36px;border-top:1px solid #ded4d8}
.campus-gallery-heading .gallery-label{margin:0 0 12px;color:var(--berry);font-size:12px;font-weight:800;letter-spacing:.1em}
.campus-gallery-heading h3{margin:0;color:var(--wine);font-size:clamp(24px,2vw,36px);font-weight:800;line-height:1.5}
.campus-gallery-heading>p{max-width:390px;margin:0;color:#766970;font-size:14px;line-height:1.8}
.campus-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 26px;margin-top:35px}
.gallery-card{display:block;min-width:0}
.gallery-card figure{margin:0}
.gallery-photo{overflow:hidden;background:#f3ebe7}
.gallery-photo img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .45s ease}
.gallery-card:hover .gallery-photo img{transform:scale(1.035)}
.gallery-card:focus-visible{outline:3px solid var(--orange);outline-offset:6px}
.gallery-card figcaption{padding:19px 0 0}
.gallery-category{color:#b15a32;font-size:11px;font-weight:800;letter-spacing:.08em}
.gallery-card h3{margin:8px 0;color:#59213a;font-size:20px;line-height:1.5}
.gallery-card p{margin:0;color:#75686f;font-size:13px;line-height:1.8}
.gallery-card .gallery-more{display:inline-block;margin-top:13px;color:var(--berry);font-size:12px;font-weight:800}
.gallery-card:hover h3{color:var(--berry)}
.article-scene{margin:0 0 32px}
.article-scene .detail-image{display:block;height:auto;max-height:none;margin:0;aspect-ratio:16/9;object-fit:cover}
.article-scene figcaption{margin-top:10px;color:#82777e;font-size:12px;line-height:1.7}
.story-text .article-scene{margin:30px 0}
@media(min-width:1550px){.gallery-card h3{font-size:24px}.gallery-card p{font-size:15px}.gallery-category,.gallery-card .gallery-more{font-size:13px}}
@media(min-width:561px) and (max-width:1050px){.campus-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.campus-gallery-heading{display:block;margin-top:65px;padding-top:28px}.campus-gallery-heading>p{margin-top:13px;max-width:none}.campus-gallery{gap:30px 20px;margin-top:26px}}
@media(max-width:560px){.campus-gallery{grid-template-columns:minmax(0,1fr)}.gallery-card h3{font-size:21px}.campus-gallery-heading h3{font-size:26px}.article-scene .detail-image{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.gallery-photo img{transition:none}.gallery-card:hover .gallery-photo img{transform:none}}
