.hero:has(.hero-gallery){justify-content:flex-start;min-height:0}
.hero:has(.hero-gallery) .hero-inner{padding-top:160px;padding-bottom:55px}
.hero:has(.hero-gallery) .hero-bottom{position:relative;inset:auto;padding-block:29px 33px}
.hero-gallery{position:relative;z-index:1;margin-bottom:18px;padding:23px 28px 21px;border:1px solid rgba(217,181,99,.33);background:linear-gradient(135deg,rgba(26,23,16,.94),rgba(8,8,7,.96));box-shadow:0 25px 90px rgba(0,0,0,.38)}
.hero-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;padding-bottom:20px}
.hero-gallery-kicker{display:block;margin-bottom:9px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.hero-gallery h2{margin:0;font-size:clamp(34px,3.3vw,49px);line-height:1.04}
.hero-gallery-controls{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.hero-gallery-controls>p{max-width:260px;margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.hero-gallery-controls button{padding:6px 12px;border:1px solid var(--line);background:rgba(217,181,99,.07);color:var(--gold-light);font:800 10px/1.3 var(--body);cursor:pointer}
.hero-gallery-controls button:hover{background:rgba(217,181,99,.17)}
.hero-gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#090909}
.hero-gallery-pair figure{position:relative;height:clamp(260px,31vw,390px);display:flex;align-items:center;justify-content:center;min-width:0;margin:0;overflow:hidden;background:#15130e}
.hero-gallery-pair figcaption{position:absolute;z-index:1;top:14px;left:14px;padding:7px 10px;border:1px solid rgba(217,181,99,.32);background:rgba(8,8,7,.85);color:var(--cream);font-size:10px;font-weight:800;letter-spacing:.12em;backdrop-filter:blur(8px)}
.hero-gallery-pair img{width:100%;height:100%;object-fit:contain;background:#0c0b09}
.hero-gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0 15px}
.hero-gallery-caption{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px 14px}
.hero-gallery-caption>span{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.11em}
.hero-gallery-caption>strong{font:600 23px/1.1 var(--display)}
.hero-gallery-caption>small{flex-basis:100%;color:var(--muted);font-size:10px;line-height:1.5}
.hero-gallery-links{display:flex;flex:none;gap:15px}
.hero-gallery-links a{border-bottom:1px solid var(--gold);padding-bottom:4px;color:var(--gold-light);font-size:11px;font-weight:800;white-space:nowrap}
.hero-gallery-links a:hover{color:var(--cream)}
.hero-gallery-index{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}
.hero-gallery-index button{position:relative;min-width:0;height:33px;padding:0 0 4px;border:0;border-top:1px solid rgba(217,181,99,.25);background:transparent;color:var(--muted);font:800 10px/1 var(--body);text-align:left;cursor:pointer}
.hero-gallery-index button:hover,.hero-gallery-index button.is-active{color:var(--gold-light)}
.hero-gallery-index button.is-active{border-top-color:var(--gold)}
.hero-gallery-index button.is-active::before{content:"";position:absolute;top:-2px;left:0;width:100%;height:3px;background:var(--gold);transform-origin:left}
.hero-gallery.is-playing .hero-gallery-index button.is-active::before{animation:gallery-progress 5s linear both}
@keyframes gallery-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
html[lang="ja"] .hero-gallery h2{font-size:clamp(27px,2.6vw,39px);line-height:1.3}
html[lang="ja"] .hero-gallery-caption>strong{font-size:18px}
@media(max-width:760px){.hero:has(.hero-gallery) .hero-inner{padding-top:135px;padding-bottom:48px}.hero-gallery{padding:16px}.hero-gallery-heading{display:block}.hero-gallery-controls{flex-direction:row;align-items:center;justify-content:space-between;margin-top:11px}.hero-gallery-controls>p{max-width:440px}.hero-gallery-controls button{flex:none}.hero-gallery-pair figure{height:clamp(220px,55vw,350px)}.hero-gallery-bottom{display:block}.hero-gallery-links{margin-top:12px;flex-wrap:wrap}.hero-gallery-index{gap:4px}}
@media(max-width:520px){.hero:has(.hero-gallery) .hero-inner{padding-top:125px;padding-bottom:38px}.hero-gallery{width:calc(100% - 24px);padding:12px}.hero-gallery h2{font-size:32px}.hero-gallery-heading{padding:6px 5px 14px}.hero-gallery-controls>p{font-size:11px}.hero-gallery-pair{gap:2px}.hero-gallery-pair figure{height:clamp(225px,65vw,310px)}.hero-gallery-pair figcaption{top:7px;left:6px;padding:5px;font-size:8px;letter-spacing:.05em}.hero-gallery-caption>strong{font-size:19px}.hero-gallery-links{gap:10px 16px}.hero-gallery-links a{font-size:10px}.hero-gallery-index button{height:36px;font-size:9px}.hero:has(.hero-gallery) .hero-bottom{padding-block:20px 23px}}
@media(prefers-reduced-motion:reduce){.hero-gallery-index button.is-active::before{animation:none!important}}
