/* Compact, unlinked snapshots keep the closing gallery focused on atmosphere. */
#happy-moments{padding-block:54px 64px}
#happy-moments .smile-wall-heading{margin-bottom:20px}
#happy-moments .atmosphere-wall{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row;grid-auto-rows:auto;gap:8px;padding:12px 3px 18px;align-items:start}
#happy-moments .atmosphere-wall>figure{grid-column:span 1;grid-row:span 1;aspect-ratio:4/5;height:auto;border:2px solid #fff;box-shadow:0 3px 8px rgba(37,57,99,.08);--tilt:0deg;--lift:0px;transform:translateY(var(--lift)) rotate(var(--tilt));pointer-events:none}
#happy-moments .atmosphere-wall>figure:nth-child(6n+1){--tilt:-1deg;--lift:3px}
#happy-moments .atmosphere-wall>figure:nth-child(6n+3){--tilt:.8deg;--lift:-3px}
#happy-moments .atmosphere-wall>figure:nth-child(6n+5){--tilt:-.6deg;--lift:2px}
#happy-moments .atmosphere-wall img{width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,50% 28%)}
.drama-section{background:var(--cream,#fffdf6);padding-block:56px 64px}
.drama-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:60px;margin-bottom:28px}
.drama-heading h2{font-size:clamp(31px,3.5vw,45px);line-height:1.15;max-width:600px;margin-bottom:0}
.drama-heading>p{max-width:430px;color:var(--muted);font-size:14px;line-height:1.8;margin:0 0 3px}
.drama-heading .eyebrow{margin-bottom:13px}
.drama-gallery{display:grid;grid-template-columns:3fr 1fr;gap:18px;align-items:stretch;max-width:1050px;margin-inline:auto}
.drama-gallery figure{margin:0;min-width:0;overflow:hidden;background:#fff}
.drama-cast{aspect-ratio:16/9}
.drama-cast img{display:block;width:100%;height:100%;object-fit:contain}
.drama-detail{position:relative}
.drama-detail img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 36%}
.creative-highlights{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){
 #happy-moments .atmosphere-wall{grid-template-columns:repeat(9,minmax(0,1fr));gap:7px}
 .drama-heading{gap:28px;grid-template-columns:1.1fr 1fr}
 .drama-gallery{gap:12px}
}
@media(max-width:600px){
 #happy-moments{padding-block:38px 46px}
 #happy-moments .atmosphere-wall{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;padding-inline:2px}
 #happy-moments .atmosphere-wall>figure{border-width:1px}
 .drama-section{padding-block:38px 42px}
 .drama-heading{display:block;margin-bottom:23px}
 .drama-heading h2{font-size:31px}
 .drama-heading>p{font-size:13px;margin-top:16px;line-height:1.75}
 .drama-gallery{grid-template-columns:1fr .38fr;gap:8px;align-items:center}
 .drama-cast{aspect-ratio:16/10}
 .drama-detail{height:100%;min-height:0}
 .creative-highlights{grid-template-columns:1fr}
 .creative-highlights .camp-creative-card:last-child{grid-column:auto}
}
@media(min-width:601px) and (max-width:760px){
 .creative-highlights .camp-creative-card:last-child{grid-column:auto}
}