/* Collector cinema: progressive enhancement, no scroll interception. */
.dream-scene{min-height:720px;display:flex;align-items:center;padding:85px 7%;overflow:hidden;background:#10192d!important}.dream-scene:before{content:'';position:absolute;inset:-4%;background:url('/assets/dream-observatory.webp') center/cover;z-index:-2;animation:dream-drift 30s ease-in-out infinite alternate}.dream-scene:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0a1326f0,#0a132677 45%,transparent 80%),linear-gradient(0deg,#10192d,transparent 25%)}.dream-copy{max-width:470px}.dream-copy h2{font-size:clamp(40px,5.5vw,73px)}.dream-copy p{color:#e6e9f7;font-size:18px}.dream-mote{position:absolute;width:5px;height:5px;left:var(--x);top:var(--y);border-radius:50%;background:#dcffe9;box-shadow:0 0 15px #adffdf;animation:dream-mote 7s ease-in-out infinite alternate;animation-delay:var(--delay);pointer-events:none}.dream-scene .cinema-link{background:#f3dfbf;color:#202c38!important}@keyframes dream-drift{to{transform:scale(1.055) translateX(-1%)}}@keyframes dream-mote{to{transform:translate(25px,-60px);opacity:.2}}@media(max-width:800px){.dream-scene{min-height:780px;align-items:flex-end;padding:55px 6%}.dream-scene:before{background-position:65% center}.dream-scene:after{background:linear-gradient(0deg,#0a1326f5 10%,#0a1326b0 50%,transparent 85%)}.dream-copy h2{font-size:43px}}
.grade-explorer{padding:130px 6% 80px}.grade-explorer h1{font-size:clamp(46px,7vw,92px);line-height:1.03;letter-spacing:-.06em;max-width:900px}.grade-explorer h1 em{color:#b9f8ee;font-style:normal}.grade-intro{font-size:19px;max-width:740px;margin:24px 0}.grade-status{padding:18px 22px;background:#1a2a40;border:1px solid #64758d;border-radius:10px;font-size:14px;max-width:900px;margin:25px 0}.grade-explorer>label{display:block;margin-top:35px;font-weight:700}.grade-explorer input{width:100%;padding:18px;max-width:800px;margin:12px 0;border-radius:8px}.grade-preferences{display:flex;gap:20px;flex-wrap:wrap;margin:10px 0 25px}.grade-preferences label{display:grid;gap:8px;color:#d3e0ee}.grade-preferences select{padding:12px 16px;border-radius:6px;min-width:220px}.character-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:25px 0}.character-tile{display:flex;flex-direction:column;align-items:flex-start;padding:25px;background:radial-gradient(ellipse at 50% 20%,hsl(var(--character-hue) 35% 27% / .6),#151e32 70%);border:1px solid #586a87;border-radius:15px;color:#e8f6ff;transition:transform .3s,box-shadow .3s;overflow:hidden}.character-tile:hover{transform:translateY(-7px);box-shadow:0 15px 45px #0006}.character-tile h2{font-size:23px;line-height:1.3;letter-spacing:-.025em;margin:18px 0}.character-orbit{align-self:center;display:grid;place-items:center;width:150px;height:180px;margin:30px;border:1px solid #9cd7e788;border-radius:20px;rotate:-8deg;font-size:60px;font-weight:900;background:linear-gradient(130deg,#ffffff15,#ffffff02);box-shadow:10px 12px 0 #ffffff06;color:#d7fbff}.character-tag{font-size:11px;letter-spacing:.09em;color:#b9f8ee}.character-tile>span:last-child{font-size:13px;color:#d6f9f3}.reference-photo{height:310px;width:100%;object-fit:contain;margin-bottom:22px;border-radius:8px;background:#fff}.reference-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:auto;padding-top:20px;font-size:13px}.reference-actions a{color:#b9f8ee;text-decoration:underline;min-height:32px}.grade-explorer .load-more{background:#b9f8ee;color:#0b2531;font-weight:800;padding:16px 25px;border-radius:6px}.character-tile[hidden]{display:none!important}@media(max-width:950px){.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.character-grid{grid-template-columns:1fr}.grade-explorer{padding:100px 6% 60px}.reference-photo{height:350px}}
.mhf .cinema{--ice:#b9f8ee;--rose:#f6b9d8;color:#f2f5ff;background:#090e21;position:relative;isolation:isolate}.cinema a:focus-visible,.cinema button:focus-visible{outline:3px solid #fff;outline-offset:5px}.cinema .eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#b9f8ee;font-weight:800}.cinema h2{font-size:clamp(38px,5.2vw,76px);line-height:1.06;letter-spacing:-.055em;margin:22px 0}.cinema p{color:#cdd7ed;line-height:1.75}.cinema .cinema-link{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 25px;background:#b9f8ee;color:#0b2531!important;border-radius:5px;font-size:14px;font-weight:800;min-height:52px;text-decoration:none;margin-top:20px}.cinema .cinema-link:hover{background:#e1fff8;transform:translateY(-3px)}
.cinema-journey{padding:100px max(6%,calc((100vw - 1240px)/2));background:radial-gradient(ellipse at 75% 45%,#34316370,transparent 55%),#090e21!important}.cinema-heading{max-width:770px;margin-bottom:60px}.cinema-heading>p:last-child{max-width:530px;font-size:18px}.cinema-chapters{display:grid;grid-template-columns:1fr 1.05fr;gap:7%;position:relative}.cinema-stage{position:sticky;top:105px;height:620px;max-height:76vh;align-self:start;display:grid;place-items:center;perspective:1200px;overflow:hidden;border:1px solid #4d5c7a;border-radius:24px;background:radial-gradient(ellipse,#414a7055,transparent 65%),linear-gradient(140deg,#192a3d,#17142d)}.cinema-stage:before,.cinema-stage:after{content:'';position:absolute;width:390px;height:390px;max-width:95%;border:1px solid #90d9d655;border-radius:50%;transform:rotateX(66deg);bottom:0}.cinema-stage:after{width:300px;height:300px;bottom:45px;border-color:#d49ee766}.cinema-stage img{width:75%;height:80%;object-fit:contain;position:absolute;transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .7s;filter:drop-shadow(0 24px 30px #0009);z-index:2}.cinema-stage img:not(.is-active){opacity:0;transform:translate3d(150px,100px,-250px) rotate(22deg) scale(.7)}.cinema-stage img.is-active{opacity:1;transform:translate3d(0,0,0) rotate(-5deg)}.cinema-stage .stage-label{position:absolute;bottom:22px;left:25px;z-index:3;letter-spacing:.15em;font-size:11px;color:#c8f9ee}.cinema-chapter{min-height:560px;display:flex;flex-direction:column;justify-content:center;border-top:1px solid #45506b;padding:50px 0}.cinema-chapter .chapter-number{font-size:13px;color:#b9f8ee;letter-spacing:.15em}.cinema-chapter h3{font-size:clamp(29px,3vw,43px);line-height:1.12;letter-spacing:-.035em;margin:22px 0}.cinema-chapter p{font-size:17px;max-width:470px}.cinema-chapter .cinema-link{align-self:flex-start}.cinema-chapter .mobile-art{display:none}.cinema-chapter.is-current .chapter-number{color:#f6b9d8}.cinema-chapter.is-current h3{text-shadow:0 0 40px #b0c2ff30}
.cinema-japan{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding:110px 7%;overflow:hidden;background:radial-gradient(ellipse at 85% 35%,#76314f44,transparent 65%),#101629!important;border-block:1px solid #43465c}.cinema-japan h2 span{color:#f6b9d8}.cinema-japan .japan-art{position:relative;min-height:560px;display:grid;place-items:center;perspective:1000px}.japan-art:before{content:'日本語';position:absolute;top:0;right:-15px;font-size:clamp(80px,11vw,165px);font-weight:900;color:#f6b9d812;writing-mode:vertical-rl}.japan-art:after{content:'';position:absolute;inset:14%;border:1px solid #e29db666;rotate:15deg;border-radius:25px;background:linear-gradient(145deg,#d082af10,transparent)}.japan-art img{max-width:85%;height:500px;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 25px 45px #0008);transform:rotate(-7deg);transition:transform .8s}.japan-art:hover img{transform:rotate(0) translateY(-15px)}.japan-meta{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.japan-meta span{padding:9px 13px;border:1px solid #75677d;color:#efd9e8;border-radius:30px;font-size:12px}.japan-small{font-size:12px;margin-top:18px;max-width:400px}
.cinema-graders{padding:85px 7%;background:linear-gradient(120deg,#152936,#10182a)!important;text-align:center;border-bottom:1px solid #45576c}.cinema-graders h2{font-size:clamp(32px,4vw,52px)}.cinema-graders>p{max-width:720px;margin:18px auto}.grader-list{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:30px 0}.grader-list span{font-weight:800;font-size:20px;padding:18px 24px;border:1px solid #597486;background:#0d1a2b;border-radius:9px;color:#e5f9ff}.grader-list span:last-child{font-size:15px;display:flex;align-items:center}.cinema .grader-note{font-size:13px;color:#c8d7e8}
.cinema-companion{width:88px;height:100px;position:absolute;top:8px;right:8%;pointer-events:none;z-index:3;animation:scout-roam 12s ease-in-out infinite}.scout-head{position:absolute;top:10px;left:14px;width:60px;height:40px;border:2px solid #b3eee6;background:#172d3d;border-radius:15px;box-shadow:0 0 25px #72e8dd33}.scout-head:before,.scout-head:after{content:'';position:absolute;top:14px;width:10px;height:6px;background:#b3eee6;border-radius:5px;box-shadow:0 0 10px #87efe7}.scout-head:before{left:10px}.scout-head:after{right:10px}.scout-body{position:absolute;top:55px;left:27px;width:35px;height:22px;border:1px solid #97d6d3;border-radius:6px;background:#1f3c4a}.scout-leg{position:absolute;top:79px;left:28px;width:10px;height:14px;border-radius:5px;background:#b3eee6;transform-origin:top;animation:scout-step .65s alternate infinite}.scout-leg:last-child{left:50px;animation-delay:-.65s}.cinema-progress{position:fixed;left:0;top:0;height:3px;width:100%;transform:scaleX(var(--reading-progress,0));transform-origin:left;background:linear-gradient(90deg,#a0ebdd,#dfafff);z-index:999;pointer-events:none}
.mhf .cinema-product{border:1px solid #52617d!important;background:linear-gradient(140deg,#1a2b41,#16182c)!important;border-radius:19px!important;overflow:hidden;transition:box-shadow .35s,border-color .35s,translate .35s}.mhf .cinema-product:hover{border-color:#b7ede5!important;box-shadow:0 18px 65px #0007;translate:0 -7px}.mhf .cinema-product>a:first-child{background:radial-gradient(ellipse at center,#4c567a55,#11182c 75%)!important;border-radius:12px;isolation:isolate}.mhf .cinema-product>a:first-child:after{content:'EXPLORE THIS PACK ↗';position:absolute;left:14px;right:14px;bottom:14px;border:1px solid #9ec3cf;background:#0d2131ee;color:#dffff7;padding:12px;text-align:center;font-size:11px;letter-spacing:.13em;font-weight:800;border-radius:5px;z-index:3}.mhf .cinema-product img{padding:10px 10px 35px;transition:transform .7s!important}.mhf .cinema-product:hover img{transform:scale(1.06) rotate(-3deg)}.mhf .cinema-product p{color:#d3ddf0!important}.cinema-browse{padding:22px 6%;display:flex;gap:12px;flex-wrap:wrap;background:#142134;border-bottom:1px solid #425870}.cinema-browse a{padding:12px 17px;border:1px solid #6c8c9e;border-radius:30px;color:#dffff7;background:#142134;font-size:14px;font-weight:700}.cinema-browse a:hover{background:#28465a}
@keyframes scout-step{to{transform:rotate(35deg)}}@keyframes scout-roam{0%,100%{transform:translateX(0) translateY(0)}45%,55%{transform:translateX(-90px) translateY(-4px)}}@keyframes cinema-arrive{from{opacity:.55;transform:translateY(45px) rotate(-3deg) scale(.95)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}.cinema-enter{animation:cinema-arrive .9s cubic-bezier(.2,.8,.2,1) both}
@media(max-width:800px){.cinema-journey{padding:70px 6%}.cinema-heading{margin-bottom:35px}.cinema h2{font-size:42px}.cinema-chapters{grid-template-columns:1fr}.cinema-stage{display:none}.cinema-chapter{min-height:0;padding:35px 0 45px}.cinema-chapter .mobile-art{display:block;width:100%;height:330px;object-fit:contain;background:radial-gradient(ellipse,#42517155,transparent 68%);margin:25px 0;filter:drop-shadow(0 20px 20px #0006)}.cinema-japan{grid-template-columns:1fr;padding:65px 6%;gap:20px}.cinema-japan .japan-art{min-height:380px}.japan-art img{height:360px}.cinema-graders{padding:60px 6%}.grader-list span{padding:13px 17px;font-size:18px}.cinema-companion{right:5%;top:5px;scale:.7;transform-origin:top right}.cinema-heading .eyebrow{max-width:210px}.cinema-product{translate:none!important}.cinema-browse{gap:8px}.cinema-browse a{font-size:12px}}
@media(prefers-reduced-motion:reduce){.cinema *,.cinema-product,.cinema-product *{animation:none!important;transition:none!important}.cinema-progress{display:none}}.mhf-motion-user-off .cinema *,.mhf-motion-user-off .cinema-product *{animation-play-state:paused!important;transition:none!important}
