#scenes{scroll-snap-align:start}
#scenes .section-heading h2{font-size:clamp(32px,4vw,56px);line-height:1.18;letter-spacing:-1.5px}
#scenes .scene-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:20px;align-items:stretch;margin-top:42px}
#scenes .scene-card{isolation:isolate;display:flex;flex-direction:column;grid-column:auto;grid-row:auto;height:400px;min-height:0;padding:28px;border-radius:14px;overflow:hidden;transition:box-shadow .35s ease,border-color .35s ease,transform .35s cubic-bezier(.22,1,.36,1);transform:translateY(0)}
#scenes .scene-card>div:not(.hsg-detail-body){display:contents}
#scenes .scene-card>img,#scenes .scene-card__shade{border-radius:inherit}
#scenes .scene-card>img{transition:transform .95s cubic-bezier(.22,1,.36,1);transform:scale(1)}
#scenes .scene-card__shade{background:linear-gradient(180deg,rgba(12,17,20,.56),rgba(12,17,20,.7))}
#scenes .scene-card h3{max-width:none;margin:14px 0 20px;font-size:25px;line-height:1.4;letter-spacing:-.4px}
#scenes .scene-card>span:not([aria-hidden]),#scenes .scene-card>div>span{font-size:12px;letter-spacing:1px}
#scenes .scene-card--feature>div>span,#scenes .scene-card--photo>div>span{color:#f4eeea}
#scenes .hsg-details{margin-top:auto;padding-top:0;color:inherit}
#scenes .hsg-details summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:13px;font-weight:600;line-height:1.6;border:0;padding:0;min-height:34px;user-select:none}
#scenes .hsg-details summary::-webkit-details-marker{display:none}
#scenes .hsg-details summary::after{content:'＋';display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;font-size:22px;line-height:1;font-weight:300;transition:transform .6s cubic-bezier(.22,1,.36,1),background-color .32s ease}
#scenes .hsg-details[open] summary::after{transform:rotate(45deg)}
#scenes .hsg-detail-body{box-sizing:border-box;padding-top:16px;font-size:14px;line-height:1.8;max-height:220px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
#scenes .hsg-detail-body dl,#scenes .hsg-detail-body dd{margin:0}
#scenes .hsg-detail-body dl>div+div{margin-top:13px}
#scenes .hsg-detail-body dt{font-size:11px;opacity:.65;margin-bottom:3px;letter-spacing:.5px}
#scenes .hsg-detail-body dd{font-weight:400;white-space:pre-line}
#scenes .hsg-detail-body a{display:inline-block;color:inherit;text-decoration:none;font-size:13px;font-weight:600;margin-top:16px;padding:3px 0}
#scenes .hsg-details summary:focus-visible,#scenes .hsg-detail-body a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
#scenes .scene-card.is-expanded{box-shadow:0 14px 32px rgba(32,26,20,.11);transform:translateY(-4px)}
#scenes .scene-card.is-expanded>img{transform:scale(1.045)}
@media(hover:hover) and (pointer:fine){#scenes .scene-card:hover{border-color:#ada79d}#scenes .scene-card--red:hover{border-color:var(--red)}}
@media(max-width:1100px){#scenes .scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#scenes .scene-card h3{font-size:24px}}
@media(max-width:760px){#scenes .section-heading h2{letter-spacing:-1px}#scenes .scene-grid{grid-template-columns:1fr;gap:16px;margin-top:30px}#scenes .scene-card{height:auto;min-height:240px;padding:25px;grid-row:auto;grid-column:auto}#scenes .scene-card--feature,#scenes .scene-card--photo{min-height:290px}#scenes .scene-card h3{font-size:24px;margin-bottom:28px}#scenes .hsg-detail-body{max-height:none;font-size:15px}#scenes .scene-card.is-expanded{transform:none}}
@media(prefers-reduced-motion:reduce){#scenes .scene-card,#scenes .scene-card>img,#scenes .hsg-details summary::after{transition:none}#scenes .scene-card.is-expanded{transform:none}}
/* Asymmetric resting composition; hovered card takes approximately one quarter of the total area. */
@media(min-width:1000px){
 #scenes .scene-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(180px,auto);gap:16px}
 #scenes .scene-card{height:auto;min-height:180px;padding:22px}
 #scenes .scene-card--feature{grid-column:span 2;grid-row:span 2}
 #scenes .scene-card--wide,#scenes .scene-card--photo,#scenes .scene-card:nth-child(6),#scenes .scene-card:nth-child(9){grid-column:span 2}
 #scenes .scene-card h3{font-size:22px;margin:10px 0 15px;line-height:1.4}
 #scenes .scene-card.is-expanded{transform:none}
 #scenes .hsg-moving-grid{display:block;position:relative}
 #scenes .hsg-moving-grid .scene-card{position:absolute;margin:0;min-height:0;transition:left .95s cubic-bezier(.22,1,.36,1),top .95s cubic-bezier(.22,1,.36,1),width .95s cubic-bezier(.22,1,.36,1),height .95s cubic-bezier(.22,1,.36,1),box-shadow .4s ease,border-color .4s ease}
 #scenes .hsg-moving-grid .scene-card h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 #scenes .hsg-moving-grid .scene-card>span:not([aria-hidden]),#scenes .hsg-moving-grid .scene-card>div>span{font-size:11px;letter-spacing:.4px}
 #scenes .hsg-moving-grid.has-active .scene-card:not(.is-expanded) h3{font-size:18px}
 #scenes .hsg-moving-grid .scene-card.is-expanded{padding:34px;box-shadow:0 12px 30px #28221a12}
 #scenes .hsg-moving-grid .scene-card.is-expanded h3{display:block;font-size:clamp(28px,2.7vw,39px);line-height:1.35;margin:25px 0 30px;max-width:580px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-details{margin-top:34px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body{max-height:390px;font-size:16px;padding-top:24px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body dt{font-size:12px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body dl>div+div{margin-top:25px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body a{margin-top:30px}
}
@media(prefers-reduced-motion:reduce){#scenes .hsg-moving-grid .scene-card{transition:none}}
@media(min-width:1000px){#scenes .hsg-moving-grid .scene-card.is-expanded{justify-content:center}}

@media(min-width:1000px){
 #scenes .hsg-moving-grid .scene-card.is-expanded{padding:24px;justify-content:center}
 #scenes .hsg-moving-grid .scene-card.is-expanded h3{font-size:26px;line-height:1.35;margin:12px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-details{margin-top:12px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body{max-height:160px;font-size:14px;padding-top:14px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body dl>div+div{margin-top:12px}
 #scenes .hsg-moving-grid .scene-card.is-expanded .hsg-detail-body a{margin-top:14px}
}

#scenes .scene-card{cursor:pointer}#scenes .hsg-detail-body{cursor:auto}
/* Pointer feedback is independent of the click-only disclosure. */
@media(hover:hover) and (pointer:fine){
 #scenes .hsg-details summary::after{transition:transform .55s cubic-bezier(.22,1,.36,1),background-color .4s ease,box-shadow .4s ease}
 #scenes .scene-card:hover .hsg-details summary::after{transform:rotate(90deg) scale(1.12);background-color:rgba(128,120,110,.12);box-shadow:0 0 0 5px rgba(128,120,110,.06)}
 #scenes .scene-card:hover .hsg-details[open] summary::after{transform:rotate(135deg) scale(1.12)}
 #scenes .scene-card--red:hover .hsg-details summary::after,#scenes .scene-card--dark:hover .hsg-details summary::after,#scenes .scene-card--feature:hover .hsg-details summary::after,#scenes .scene-card--photo:hover .hsg-details summary::after{background-color:rgba(255,255,255,.16);box-shadow:0 0 0 5px rgba(255,255,255,.06)}
}
@media(prefers-reduced-motion:reduce){#scenes .hsg-details summary::after{transition:none}}
