*{box-sizing:border-box}html{background:#000;scroll-behavior:smooth}body{margin:0;background:#000;color:#e8e8e8;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;line-height:1.72;overflow-x:hidden}body.is-locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}a,button,input{outline:none}:focus-visible{outline:2px solid #fff;outline-offset:3px}.container{width:min(1280px,calc(100% - 48px));margin:auto}.narrow{width:min(900px,calc(100% - 48px));margin:auto}.site-header{position:sticky;top:0;z-index:900;background:rgba(0,0,0,.96);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(15px)}.nav-wrap{height:74px;display:flex;align-items:center;gap:20px;max-width:1280px;margin:auto;padding:0 24px}.brand{display:flex;align-items:center;min-width:112px;min-height:44px}.brand img,.panel-brand img,.footer-brand img{max-width:108px;max-height:34px;object-fit:contain}.brand strong{font-size:24px;color:#fff}.primary-nav{display:flex;gap:3px;white-space:nowrap}.nav-link,.nav-actions a,.nav-actions button{min-height:44px;display:inline-flex;align-items:center;padding:0 11px;border:0;border-radius:999px;background:transparent;color:#b0b0b0;white-space:nowrap}.nav-link:hover,.nav-link.is-current,.nav-actions a:hover,.nav-actions a.is-current,.nav-actions button:hover{background:#1a1a1a;color:#fff}.nav-actions{margin-left:auto;display:flex;gap:6px;align-items:center}.nav-actions .app-btn,.app-btn{background:#fff;color:#000!important;border-radius:999px;padding:0 16px;min-height:44px;display:inline-flex;align-items:center}.mobile-nav{display:none;height:64px;align-items:center;justify-content:space-between;padding:0 15px;position:relative}.mobile-nav button{min-height:44px;border:1px solid rgba(255,255,255,.25);background:#111;border-radius:999px;padding:0 14px}.mobile-nav .brand{position:absolute;left:50%;transform:translateX(-50%);min-width:0}.section{padding:82px 0;border-top:1px solid rgba(255,255,255,.12)}.section:first-child{border-top:0}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:#b0b0b0}.page-title,.display{margin:10px 0 20px;color:#fff;line-height:1;letter-spacing:-.05em}.page-title{font-size:clamp(40px,5vw,68px)}.display{font-size:clamp(48px,7vw,92px)}.lead{max-width:850px;font-size:18px;color:#ccc}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}.section-head h2{margin:5px 0 0;font-size:clamp(30px,4vw,48px);line-height:1.05;color:#fff}.section-head p{max-width:520px;color:#aaa}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.btn{min-height:46px;display:inline-flex;align-items:center;padding:0 20px;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-weight:800;white-space:nowrap}.btn-primary{background:#fff;color:#000;border-color:#fff}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{padding:24px;background:#111;border:1px solid rgba(255,255,255,.12);border-radius:14px}.card h2,.card h3{margin:6px 0 10px;color:#fff}.card p{margin:0;color:#b0b0b0}.tag{display:inline-flex;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:6px 11px;font-size:12px;color:#ccc}.media{border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;background:#0a0a0a}.media img{width:100%;height:auto;object-fit:contain}.placeholder{min-height:300px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,#171717,#050505);display:flex;align-items:end;padding:28px;font-size:42px;font-weight:900;color:#444}.hero-home{padding:34px 0 60px}.hero-grid{display:grid;grid-template-columns:1.85fr 1fr;grid-template-areas:"visual copy" "visual recs";gap:16px}.hero-copy{grid-area:copy;background:#0a0a0a;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:32px}.hero-copy h1{font-size:clamp(42px,5vw,72px);line-height:1;letter-spacing:-.05em;margin:12px 0 16px;color:#fff}.hero-visual{grid-area:visual;min-height:590px;display:flex;align-items:center}.hero-recs{grid-area:recs;display:grid;gap:10px}.hero-recs a{padding:17px 18px;background:#111;border:1px solid rgba(255,255,255,.12);border-radius:12px}.quick-strip{border-block:1px solid rgba(255,255,255,.12);background:#0a0a0a}.quick-strip .inner{display:flex;gap:8px;overflow-x:auto;padding:12px 0;scrollbar-width:none}.quick-strip a{flex:none;padding:8px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:13px}.feature{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.feature-copy{padding:30px;background:#111;border:1px solid rgba(255,255,255,.12);border-radius:16px}.feature-copy h2{font-size:34px;line-height:1.1;color:#fff}.track{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px}.track .card{flex:0 0 300px}.number-list{border-top:1px solid rgba(255,255,255,.12)}.number-row{display:grid;grid-template-columns:90px 240px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.12)}.num{font-size:48px;font-weight:900;color:#3d3d3d}.poster-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.poster{min-height:320px;padding:22px;background:#111;border:1px solid rgba(255,255,255,.12);border-radius:16px;display:flex;flex-direction:column;justify-content:flex-end}.poster:nth-child(even){transform:translateY(18px)}.festival article{display:grid;grid-template-columns:100px 1fr 190px;gap:20px;padding:26px 0;border-top:1px solid rgba(255,255,255,.12)}.magazine{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:14px}.magazine article{padding:25px;background:#111;border:1px solid rgba(255,255,255,.12);border-radius:14px}.magazine article:first-child{grid-row:span 2;min-height:430px}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.theme-card{min-height:280px;padding:26px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#111;display:flex;flex-direction:column;justify-content:flex-end}.theme-card:nth-child(3n){grid-column:span 2}.rank-row{display:grid;grid-template-columns:110px 1fr 200px;gap:22px;padding:26px 0;border-top:1px solid rgba(255,255,255,.12)}.timeline{border-left:1px solid rgba(255,255,255,.25);margin-left:15px}.timeline article{position:relative;padding:0 0 32px 32px}.timeline article:before{content:"";position:absolute;left:-6px;top:8px;width:11px;height:11px;border-radius:50%;background:#fff}.step{padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#111}.article-row,.privacy-row{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:26px 0;border-top:1px solid rgba(255,255,255,.12)}.product-hero{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.product-art{min-height:560px;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:26px;background:#0a0a0a}.policy-grid,.grade-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.faq-list details{padding:20px 0;border-top:1px solid rgba(255,255,255,.12)}.faq-list summary{cursor:pointer;font-size:18px;font-weight:800;color:#fff}.faq-list p{color:#aaa}.site-footer{padding:64px 0 30px;border-top:1px solid rgba(255,255,255,.12)}.footer-top{display:grid;grid-template-columns:300px 1fr;gap:36px}.footer-brand{display:flex;gap:12px;align-items:center}.footer-brand strong,.footer-brand small{display:block}.footer-brand small{color:#777}.footer-top p,.footer-note,.footer-bottom{color:#888}.footer-links{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.footer-links h2{font-size:13px;color:#777}.footer-links a{display:block;padding:5px 0;color:#aaa}.footer-note{padding:18px 0;border-block:1px solid rgba(255,255,255,.12);margin-top:30px;font-size:13px}.footer-bottom{display:flex;gap:18px;padding-top:18px;font-size:13px}.footer-bottom a:first-of-type{margin-left:auto}.overlay{position:fixed;inset:0;z-index:1090;background:rgba(0,0,0,.74);visibility:hidden;opacity:0;pointer-events:none}.overlay.is-open{visibility:visible;opacity:1;pointer-events:auto}.channel-panel{position:fixed;right:0;top:0;bottom:0;width:min(460px,88vw);z-index:1100;background:#0a0a0a;border-left:1px solid rgba(255,255,255,.16);transform:translateX(100%);visibility:hidden;pointer-events:none}.channel-panel.is-open{transform:none;visibility:visible;pointer-events:auto}.panel-head{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.12)}.panel-head button,.search-head button{min-height:44px;padding:0 15px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#111}.panel-brand{display:flex;align-items:center;gap:10px}.channel-body{height:calc(100% - 74px);overflow-y:auto;padding:10px 20px 30px}.channel-body section{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12)}.channel-body h2{font-size:12px;color:#777}.channel-body a{display:grid;grid-template-columns:105px 1fr;gap:12px;padding:10px 0}.channel-body span{font-size:13px;color:#888}.search-panel{position:fixed;left:0;right:0;top:74px;z-index:1100;background:#0a0a0a;border-bottom:1px solid rgba(255,255,255,.16);visibility:hidden;opacity:0;pointer-events:none}.search-panel.is-open{visibility:visible;opacity:1;pointer-events:auto}.search-panel>.container{padding:28px 0 36px}.search-head{display:flex;justify-content:space-between;align-items:flex-start}.search-head h2{margin:5px 0 18px;color:#fff}.search-box{display:grid;grid-template-columns:90px 1fr;align-items:center;padding:0 18px;border:1px solid rgba(255,255,255,.25);border-radius:14px;background:#111}.search-box input{height:58px;border:0;background:transparent}.search-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.search-list a{padding:17px;background:#111;border:1px solid rgba(255,255,255,.12);border-radius:12px}.search-list b,.search-list span{display:block}.search-list span{font-size:13px;color:#777}.search-list a[hidden]{display:none}.mobile-bottom{display:none}
@media(max-width:1100px){.primary-nav .nav-link{padding:0 7px;font-size:13px}.poster-wall{grid-template-columns:repeat(2,1fr)}.magazine{grid-template-columns:1fr 1fr}.magazine article:first-child{grid-column:span 2;grid-row:auto}.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.desktop-nav{display:none}.mobile-nav{display:flex}.container,.narrow{width:min(100% - 30px,1280px)}.section{padding:60px 0}.hero-grid{grid-template-columns:1fr;grid-template-areas:"copy" "visual" "recs"}.hero-copy{padding:22px}.hero-visual{min-height:0}.feature,.product-hero{grid-template-columns:1fr}.grid-3,.policy-grid,.grade-grid{grid-template-columns:1fr 1fr}.number-row{grid-template-columns:60px 1fr}.number-row p{grid-column:2}.festival article{grid-template-columns:70px 1fr}.festival article>p:last-child{grid-column:2}.rank-row{grid-template-columns:80px 1fr}.rank-row>*:last-child{grid-column:2}.article-row,.privacy-row{grid-template-columns:1fr;gap:8px}.theme-grid{grid-template-columns:1fr}.theme-card:nth-child(3n){grid-column:auto}.footer-top{grid-template-columns:1fr}.footer-links{grid-template-columns:repeat(2,1fr)}.search-panel{top:64px;bottom:0;overflow:auto}.search-list{grid-template-columns:1fr 1fr}.mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:880;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(0,0,0,.96);border-top:1px solid rgba(255,255,255,.14);padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom a{min-height:52px;display:flex;align-items:center;justify-content:center;color:#777;font-size:12px}.mobile-bottom a.is-current{color:#fff}.site-footer{padding-bottom:84px}.section-head{flex-direction:column;align-items:flex-start}.product-art{min-height:360px}}
@media(max-width:560px){.grid-2,.grid-3,.grid-4,.policy-grid,.grade-grid,.poster-wall,.search-list{grid-template-columns:1fr}.btn-row{display:grid}.btn{width:100%;justify-content:center}.poster:nth-child(even){transform:none}.magazine{grid-template-columns:1fr}.magazine article:first-child{grid-column:auto}.footer-links{grid-template-columns:1fr 1fr}.page-title{font-size:42px}.display{font-size:52px}.search-box{grid-template-columns:1fr}.search-box span{display:none}.channel-body a{grid-template-columns:88px 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
