/* All project browsing follows the natural vertical document flow. */
.gallery-scroll{height:auto}
.gallery-pin{position:relative;top:auto;height:auto;min-height:0;padding:28px var(--g)}
.gallery-track{display:grid;grid-template-columns:1fr 1fr;width:100%;height:auto;min-height:0;flex:none;gap:28px;padding:12px 0 24px;transform:none!important;overflow:visible;scroll-snap-type:none;will-change:auto}
.art-card{width:100%;min-width:0;max-width:none;height:clamp(360px,44vw,580px);min-height:0;padding:26px 30px 0;rotate:0;scroll-snap-align:none}
.art-card img{width:100%;height:auto;flex:1;min-height:0;max-height:calc(100% - 48px);object-fit:contain}
.art-card figcaption{font-size:9px;flex-direction:row;justify-content:space-between;padding:18px 0;gap:12px}
.art-card.reveal{opacity:0;translate:0 45px;rotate:-4deg;scale:.97;transition:opacity .65s,translate .85s cubic-bezier(.16,1,.3,1),rotate .85s,scale .85s}
.art-card:nth-child(even).reveal{rotate:4deg}
.art-card.reveal.visible{opacity:1;translate:0 0;rotate:0deg;scale:1}
.art-card:hover{rotate:0;translate:0 -4px}
.gallery-footer{margin-top:0;font-size:9px}
.gallery-title h2 em{font-family:inherit;font-style:normal;font-weight:800;color:#63766a;letter-spacing:-.06em}
/* C: bold lettering, a tilted label and a small offset shadow. */
.type-sticker,.medical-heading h2 .type-sticker,.contact-title .type-sticker{display:inline-block;font-family:Arial,'Microsoft YaHei','PingFang SC',sans-serif;font-style:normal;font-weight:900;font-size:.88em;letter-spacing:-.06em;line-height:1.15;background:#60756b;color:#f2efe9;padding:.035em .12em .065em;box-shadow:.045em .06em 0 #ac978a;rotate:-4deg;vertical-align:baseline}
.contact-title .type-sticker{background:#e0d4c3;color:#42584c;box-shadow:.045em .06em 0 #829889;margin-top:.14em}
.presentation .sheet-a{transform:translate(calc(-5px - var(--p)*25px),calc(70px - var(--p)*70px)) rotate(calc(-2deg - var(--p)*9deg))}
.presentation .sheet-b{transform:translate(calc(5px + var(--p)*25px),calc(70px - var(--p)*70px)) rotate(calc(2deg + var(--p)*9deg))}
.presentation .front-sheet{transform:translateY(calc(30px - var(--p)*30px)) rotate(calc(5deg - var(--p)*5deg)) scale(calc(.95 + var(--p)*.05));transform-origin:center bottom;will-change:transform}
.presentation-sticker{transform:rotate(calc(-15deg + var(--p)*27deg)) scale(calc(.75 + var(--p)*.25));will-change:transform}
dialog[open]{animation:note-in .45s cubic-bezier(.18,1,.3,1)}
@keyframes note-in{from{opacity:0;transform:translateY(50px) rotate(-2deg) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:650px){
 .gallery-title{display:block;margin-top:30px;margin-bottom:25px}.gallery-title h2{font-size:40px}.project-intro{margin-top:25px}
 .gallery-track{grid-template-columns:1fr;gap:22px;padding:12px 0 22px}
 .art-card{height:clamp(380px,110vw,570px);padding:24px 26px 0}
 .art-card figcaption{font-size:9px}
 .contact-title{font-size:12vw}
}
@media(prefers-reduced-motion:reduce){
 .art-card.reveal,.art-card:nth-child(even).reveal{opacity:1;translate:none;rotate:0deg;scale:1;transition:none}
 .presentation .sheet-a{transform:rotate(-11deg)}.presentation .sheet-b{transform:rotate(11deg)}.presentation .front-sheet{transform:none}.presentation-sticker{transform:rotate(12deg)}
 dialog[open]{animation:none}
}
