.sporeth-copy { display:block; }
.sporeth-awake .sporeth-copy { padding:11px 18px; border-radius:12px; background:rgba(248,254,255,.78); box-shadow:0 5px 17px rgba(20,83,119,.13); }
.hero-sporeth { height:330px; width:100%; border:0; padding:0; background:transparent; cursor:pointer; transition:transform .5s ease; }
.hero-sporeth img { display:block; width:100%; height:100%; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 20px 15px rgba(0,0,0,.24)); }
.catalog-hero { position:relative; }
.return-gallery { display:none; position:absolute; z-index:3; top:18px; left:20px; border:1px solid #b9d9e4; border-radius:99px; padding:.48rem .8rem; background:#f7fcfd; color:#26617d; cursor:pointer; font:500 .72rem "Noto Sans SC",sans-serif; }
.sporeth-awake .return-gallery { display:block; }
.sporeth-awake .catalog-hero { min-height:500px; margin:24px -3% 0; border-radius:22px; transition:min-height .55s ease,margin .55s ease; }
.sporeth-awake .hero-sporeth { height:480px; transform:scale(1.04); }
@media (max-width:620px) { .hero-sporeth { height:230px; } .sporeth-awake .catalog-hero { min-height:410px; margin:18px 0 0; } .sporeth-awake .hero-sporeth { height:390px; } .return-gallery { top:12px; left:12px; } }

/* Reuse the original gallery cards in the transition state; no duplicate rail or wrapper is created. */
.sporeth-awake .archive-section { display:block; position:fixed; z-index:35; right:0; bottom:0; left:0; margin:0; padding:0; background:transparent; }
.sporeth-awake .archive-section .section-heading,.sporeth-awake .archive-section .legend { display:none; }
.sporeth-awake .archive-section .girl-grid { display:flex; flex-wrap:nowrap; gap:13px; overflow-x:auto; padding:0 24px 14px; }
.sporeth-awake .archive-section .girl-card { flex:0 0 196px; }
@media (max-width:620px) { .sporeth-awake .archive-section .girl-grid { padding:0 14px 12px; gap:10px; } .sporeth-awake .archive-section .girl-card { flex-basis:calc((100vw - 42px) / 2); } }

/* The expanded hero fills the remaining viewport and meets the original-card lineup directly. */
.sporeth-awake .catalog-hero { position:fixed; z-index:30; top:88px; right:3%; bottom:335px; left:3%; width:auto; min-height:0; margin:0; transform:none; }
.sporeth-awake .catalog-hero { grid-template-columns:1fr 1fr; align-items:center; overflow:hidden; padding:34px 7%; }
.sporeth-awake .catalog-hero>div { position:relative; z-index:3; min-width:0; align-self:center; transform:none; opacity:1; visibility:visible; }
.sporeth-awake .hero-sporeth { position:relative; z-index:2; align-self:end; justify-self:center; height:340px; transform:scale(1.9); transform-origin:center bottom; }
@media (max-width:620px) { .sporeth-awake .catalog-hero { top:64px; right:0; bottom:308px; left:0; margin:0; border-radius:0; grid-template-columns:.9fr 1.1fr; padding:28px 5%; } .sporeth-awake .catalog-hero>div { transform:none; } .sporeth-awake .hero-sporeth { height:250px; transform:scale(1.7); transform-origin:center bottom; } }
