/*
Theme Name: Frontier Cinematic
Description: 五屏科幻工业风展示主题，可配合 Frontier 实时编辑器。
Version: 3.4.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: frontier
*/
@font-face{font-family:Frontier Display;src:url(assets/fonts/barlow-condensed-600.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Frontier Display;src:url(assets/fonts/barlow-condensed-700.woff2) format("woff2");font-weight:700;font-display:swap}
:root{--accent:#d8ff38;--ink:#0e1416;--paper:#e7ebe6;--fle-nav:#16c7eb;--fle-header:#0b1319;--fle-height:108px;--fle-width:1100px;--fle-pad:10vw;--fle-title:96px;--fle-opacity:.45;--header-offset:0px;--ease:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y proximity;scrollbar-color:#6b7777 var(--ink)}body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.7 "Microsoft YaHei","PingFang SC",sans-serif}::selection{background:var(--accent);color:#101819}a{color:inherit;text-decoration:none;text-underline-offset:.25em}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--fle-nav);outline-offset:5px}button:disabled{cursor:default}img,video{max-width:100%}img{height:auto}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2{margin:0 0 28px;font-weight:900;letter-spacing:-.025em;line-height:1.08;text-wrap:balance}h1{font-size:clamp(46px,6.4vw,var(--fle-title))}h2{font-size:clamp(38px,4.8vw,72px)}p{margin:0 0 1.2em}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--accent);color:var(--ink);padding:10px 20px}.skip:focus{top:calc(var(--header-offset) + 8px)}
.site-header{position:fixed;inset:var(--header-offset) 0 auto;height:var(--fle-height);z-index:40;display:flex;align-items:center;padding-left:clamp(20px,2.4vw,48px);background:var(--fle-header);background:color-mix(in srgb,var(--fle-header) 94%,transparent);border-bottom:1px solid #ffffff16}.brand{margin-right:auto;min-width:0;flex-shrink:0;font-size:21px;font-weight:800;letter-spacing:.1em}.brand a{display:block}.brand img{display:block;width:auto;max-width:160px;max-height:64px}.site-header nav{height:100%;display:flex;margin-left:20px;align-items:stretch}.nav-item{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:0 clamp(12px,1.5vw,28px);color:#f1f4f2;min-width:0;transition:background .2s,color .2s}.nav-item:after{content:"";position:absolute;left:20%;right:20%;bottom:16px;height:2px;background:var(--fle-nav);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.nav-item.active,.nav-item:hover{color:var(--fle-nav);background:#ffffff04}.nav-item.active:after{transform:scaleX(1)}.nav-en{font:700 clamp(18px,1.5vw,27px)/1 "Frontier Display",sans-serif;letter-spacing:.015em;white-space:nowrap}.nav-zh{font-size:12px;font-weight:600;margin-top:7px;white-space:nowrap}.header-tools{display:flex;align-items:center;gap:10px;padding:0 20px;margin-left:14px;border-left:1px solid #ffffff1c;height:100%}.tool-button{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:0;background:none;color:#c9d1d0;transition:color .2s,background .2s}.tool-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linejoin:round}.tool-button:hover,.sound-toggle[aria-pressed=true]{color:var(--fle-nav)}.tool-button:disabled{opacity:.35}.menu{display:none}.header-status{position:absolute;right:20px;top:100%;background:var(--ink);padding:8px 14px;font-size:13px}.header-status:empty{display:none}
.screen{position:relative;min-height:100svh;display:flex;align-items:center;padding:calc(var(--fle-height) + 54px) var(--fle-pad) 90px;scroll-snap-align:start;overflow:clip;background:var(--ink)}.screen{background:var(--paper);color:var(--ink)}.screen:nth-child(even){background:var(--ink);color:var(--paper)}.screen:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#101819b3,#10181910);z-index:0}.screen:after{background:linear-gradient(90deg,#e7ebe6e6,#e7ebe620)}.screen:nth-child(even):after{background:linear-gradient(90deg,#101819b3,#10181910)}.backdrop,.video-bg{position:absolute;inset:0;width:100%;height:100%;background-position:center;background-size:cover;z-index:0}.backdrop{opacity:var(--fle-opacity)}.video-bg{object-fit:cover;opacity:.55}.content{position:relative;width:100%;max-width:var(--fle-width);z-index:2}.eyebrow{margin-bottom:22px;font-family:"Frontier Display",sans-serif;font-size:13px;font-weight:600;letter-spacing:.25em;color:var(--accent)}.screen .eyebrow{color:#4a5d24}.screen:nth-child(even) .eyebrow{color:var(--accent)}#home .eyebrow{color:var(--accent)}.intro{max-width:38em;white-space:pre-line;font-size:clamp(15px,1.15vw,18px);line-height:1.85}.action{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:50px;margin:20px 12px 0 0;padding:14px 28px;border:0;background:var(--accent);color:#101819;font-weight:700;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));transition:background .2s,translate .25s var(--ease)}.action:hover{background:#ecff89;translate:3px 0}.action:focus-visible{outline:0;box-shadow:inset 0 0 0 3px var(--fle-nav)}.action svg{flex-shrink:0;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.play{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1px #ffffff66}.play:hover{background:#ffffff14}.number{position:absolute;right:5vw;bottom:46px;font:700 120px/1 "Frontier Display",sans-serif;opacity:.1;z-index:1;pointer-events:none}.rail{position:fixed;right:18px;top:50%;transform:translateY(-50%);display:grid;gap:2px;z-index:35}.rail a{width:32px;height:32px;display:grid;place-items:center}.rail a:before{content:"";width:6px;height:6px;background:#74837c;border:1px solid #d0d8cc;transition:width .2s,background .2s}.rail a.active:before{width:14px;background:var(--accent);border-color:var(--accent)}
.hero-layout{display:flex;align-items:center;gap:clamp(24px,4vw,80px)}.hero-copy{flex:1;min-width:0}.hero-logo-wrap{width:40%;display:grid;place-items:center;min-height:200px}.hero-logo{display:block;width:100%;max-height:52svh;object-fit:contain;transform:translate(var(--logo-x,0px),var(--logo-y,0px)) scale(var(--logo-scale,1));transform-origin:center}.hero-logo[hidden]{display:none}#home .content{max-width:max(var(--fle-width),1350px)}
#about .about-image-panel{position:absolute;inset:0 0 0 auto;width:40%;background:var(--paper);clip-path:polygon(60% 0,100% 0,100% 100%,0 100%);z-index:1;pointer-events:none}#about .content{width:min(100%,50vw)}.about-body{max-width:var(--about-width,850px);font-family:var(--about-font,inherit);font-size:var(--about-size,20px);font-weight:var(--about-weight,400);color:var(--about-color,var(--paper));text-align:var(--about-align,left);line-height:var(--about-line,1.8);letter-spacing:var(--about-spacing,0px);transform:translate(var(--about-x,0px),var(--about-y,0px));overflow-wrap:anywhere}.about-block{margin-bottom:var(--about-gap,24px)}.about-block:last-child{margin-bottom:0}.about-block p{margin:0;white-space:pre-line}.about-block h3{font-size:1.2em;margin:0 0 .6em}#about h2{font-family:var(--about-title-font,inherit);font-size:var(--about-title-size,70px);font-weight:var(--about-title-weight,900);color:var(--about-title-color,var(--paper));text-align:var(--about-title-align,left);line-height:var(--about-title-line,1.1);letter-spacing:var(--about-title-spacing,0px)}#about.about-entered .eyebrow,#about.about-entered h2,#about.about-entered .about-block{animation:about-text-in .8s var(--ease) both}#about.about-entered h2{animation-delay:.07s}#about.about-entered .about-block{animation-delay:.14s}#about.about-entered .about-block:nth-child(2){animation-delay:.22s}#about.about-entered .about-block:nth-child(n+3){animation-delay:.3s}#about.about-entered .about-image-panel{animation:about-panel-in .8s var(--ease) both}@keyframes about-text-in{from{opacity:.15;clip-path:inset(0 100% 0 0);translate:-32px 0}to{opacity:1;clip-path:inset(0 0 0 0);translate:0 0}}@keyframes about-panel-in{from{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}to{clip-path:polygon(60% 0,100% 0,100% 100%,0 100%)}}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:38px}.card{position:relative;display:block;padding:0 0 22px;border-bottom:1px solid #ffffff35;min-width:0;transition:border-color .2s}.card:after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.card:hover:after,.card:focus-visible:after{transform:scaleX(1)}.card img{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;margin-bottom:20px}.card .fine{font:600 13px "Frontier Display",sans-serif;letter-spacing:.12em;color:var(--accent)}.card h3{font-size:clamp(19px,1.5vw,24px);line-height:1.5;margin:12px 0}.card p{font-size:14px;line-height:1.8;color:#cbd4cb;margin:0}.news-empty{padding:28px 0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;grid-column:1/-1;color:#cbd4cb}.fine{font-size:12px;letter-spacing:.1em}footer{background:var(--ink);padding:34px var(--fle-pad);border-top:1px solid #ffffff1c;color:#cbd4cb;font-size:12px}.screen article{max-width:70ch;width:100%}.screen article img{height:auto}.screen article h1{font-size:clamp(30px,4vw,56px)}.screen article h2{font-size:30px}.screen article p{line-height:1.9}.screen article a:not(.action){text-decoration:underline}.screen article pre{overflow:auto}.screen article table{display:block;max-width:100%;overflow:auto}.wp-block-embed__wrapper iframe{max-width:100%}dialog{width:min(900px,94vw);max-height:90svh;background:var(--ink);color:var(--paper);border:1px solid #63716a;padding:18px}dialog::backdrop{background:#080d12dc}dialog video{display:block;width:100%;max-height:74svh}.close{display:block;margin-left:auto;width:44px;height:44px;border:0;background:none;color:inherit;font-size:28px}
body.admin-bar{--header-offset:32px}@media(max-width:1200px){.site-header{height:90px}.site-header nav{margin-left:10px}.nav-item{padding:0 12px}.nav-en{font-size:21px}.nav-zh{font-size:11px}.header-tools{gap:0;margin-left:8px;padding:0 8px}.brand{font-size:18px}.brand img{max-width:125px}.screen{padding-top:144px}.cards{gap:18px}}
@media(max-width:1000px){html{scroll-snap-type:none}.site-header{height:76px;padding:0 20px}.brand{font-size:18px}.brand img{max-height:50px;max-width:125px}.menu{display:inline-flex;align-items:center;justify-content:center;order:3;min-height:44px;padding:0 14px;margin-left:8px;background:transparent;color:#f1f4f2;border:1px solid #62716c;font-size:13px}.header-tools{height:auto;margin-left:12px;border:0;padding:0;gap:2px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;height:auto;max-height:calc(100svh - 76px - var(--header-offset));overflow:auto;margin:0;padding:12px 20px 20px;background:var(--fle-header);border-bottom:1px solid #ffffff25}.site-header nav.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item{min-height:76px;padding:14px}.nav-en{font-size:24px}.nav-zh{font-size:12px}.nav-item:after{bottom:8px;left:14px;right:14px}.screen{padding:130px 7vw 72px}.hero-layout{gap:26px}.hero-logo-wrap{width:37%}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}#about .content{width:55vw}#about h2{font-size:min(var(--about-title-size,70px),60px)}}
@media(max-width:782px){body.admin-bar{--header-offset:46px}}
@media(max-width:700px){.site-header{padding:0 16px}.brand{font-size:16px;letter-spacing:.06em}.brand img{max-width:110px}.header-tools{margin-left:8px}.tool-button{width:40px;min-height:44px;padding:9px}.header-tools .share-page{display:none}.menu{padding:0 10px}.screen{padding:120px 28px 70px;min-height:100svh}h1{font-size:clamp(40px,10vw,var(--fle-title))}h2{font-size:38px}.intro{font-size:15px}.eyebrow{letter-spacing:.18em;margin-bottom:18px}.hero-layout{flex-direction:column;align-items:flex-start}.hero-logo-wrap{width:65%;align-self:center;min-height:70px}.hero-logo{max-height:26svh}.action{gap:20px;padding:12px 22px}.rail{right:0}.rail a{width:24px;height:32px}.number{font-size:76px;right:28px;bottom:26px}#about{padding-bottom:calc(28svh + 70px)}#about .content{width:100%}.about-body{font-size:min(var(--about-size,20px),26px);max-width:100%}#about h2{font-size:clamp(32px,8vw,var(--about-title-size,70px))}#about .about-image-panel{inset:auto 0 0;width:100%;height:28svh;clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}.cards{grid-template-columns:1fr;gap:28px}.card img{margin-bottom:16px}footer{padding:28px}.skip{left:10px}@keyframes about-panel-in{from{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}to{clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.nav-en,.nav-zh{max-width:180px;overflow:hidden;text-overflow:ellipsis}.screen:target{scroll-margin-top:0}

#world .content{max-width:max(var(--fle-width),1200px)}#world .eyebrow{display:none}#world h2{margin-bottom:18px}

/* Alternating palette: light/dark/light/dark/light. */
#news .card{border-color:#18212340}#news .card:after{background:var(--fle-nav)}#news .card .fine{color:#285b62}#news .card p,#news .news-empty{color:#354b49}#news .news-empty{border-color:#18212340}
#home .home-text-panel{position:absolute;inset:0 auto 0 0;width:48%;z-index:1;background:var(--ink);clip-path:polygon(0 0,65% 0,100% 100%,0 100%);pointer-events:none}
#home .hero-copy{color:var(--paper);flex:0 1 40%;min-width:0}#home .hero-logo-wrap{margin-left:auto;width:43%}#home .eyebrow{max-width:30vw}#home .hero-layout{align-items:center}#home .hero-actions{display:flex;flex-wrap:wrap;gap:0}#home .hero-copy h1{font-family:var(--home-title-font,inherit);font-size:min(var(--home-title-size,var(--fle-title)),5.3vw);font-weight:var(--home-title-weight,900);color:var(--home-title-color,var(--paper));text-align:var(--home-title-align,left);line-height:var(--home-title-line,1.08);letter-spacing:var(--home-title-spacing,-.02em)}
.hero-body{max-width:var(--home-width,650px);font-family:var(--home-font,inherit);font-size:var(--home-size,18px);font-weight:var(--home-weight,400);color:var(--home-color,var(--paper));text-align:var(--home-align,left);line-height:var(--home-line,1.85);letter-spacing:var(--home-spacing,0px);transform:translate(var(--home-x,0px),var(--home-y,0px));overflow-wrap:anywhere}.home-block{margin-bottom:var(--home-gap,24px)}.home-block:last-child{margin-bottom:0}.home-block p{margin:0;white-space:pre-line}.home-block h3{font-size:1.2em;margin:0 0 .6em}
#home.home-entered .home-text-panel{animation:home-panel-in .9s var(--ease) both}#home.home-entered .eyebrow,#home.home-entered .hero-copy{animation:home-copy-in .85s .12s var(--ease) both}#home.home-entered .hero-actions{animation:home-copy-in .85s .25s var(--ease) both}
@keyframes home-panel-in{from{clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{clip-path:polygon(0 0,65% 0,100% 100%,0 100%)}}
@keyframes home-copy-in{from{opacity:.1;clip-path:inset(0 100% 0 0);translate:-36px 0}to{opacity:1;clip-path:inset(0 0 0 0);translate:0 0}}
@media(max-width:1000px) and (min-width:701px){#home .hero-copy{flex-basis:43%}#home .home-text-panel{width:52%}#home .hero-logo-wrap{width:40%}#home .hero-copy h1{font-size:min(var(--home-title-size,80px),5vw)}}
@media(max-width:700px){#home{display:block;padding:0 0 64px}#home .content{max-width:none}#home .home-text-panel{display:none}#home .eyebrow{position:absolute;left:28px;top:118px;max-width:calc(100% - 56px);z-index:3}#home .hero-layout{display:flex;gap:26px}#home .hero-copy{position:relative;width:100%;flex-basis:auto;min-height:55svh;padding:165px 28px 72px;background:var(--ink);clip-path:polygon(0 0,100% 0,100% 92%,0 100%)}#home .hero-copy h1{font-size:min(var(--home-title-size,80px),9vw)}#home .hero-logo-wrap{width:65%;margin:0 auto;align-self:center}.hero-body{font-size:min(var(--home-size,18px),26px);max-width:100%}#home.home-entered .hero-copy{animation:home-copy-in .85s .1s var(--ease) both}#home .hero-logo{max-height:28svh}.screen:nth-child(even) .number{color:var(--paper)}.screen:nth-child(odd) .number{color:var(--ink)}}

@media(max-width:700px){#home.home-entered .hero-copy{animation:home-mobile-copy .85s .1s var(--ease) both}@keyframes home-mobile-copy{from{opacity:.15;translate:-28px 0}to{opacity:1;translate:0 0}}}

/* Header brand image has independent positioning and scale. */
.brand .header-brand-image{display:block;width:var(--header-logo-width,160px);max-width:none;max-height:none;height:auto;object-fit:contain;transform:translate(var(--header-logo-x,0px),var(--header-logo-y,0px)) scale(var(--header-logo-scale,1));transform-origin:left center}.brand .header-brand-image[hidden],.brand-text[hidden]{display:none}.brand .brand-link{display:flex;align-items:center;min-height:44px;overflow:visible}
/* The art shares the panel's timing, never its polygon clipping. */
#about .about-visual{position:absolute;inset:0 0 0 auto;width:40%;z-index:1;overflow:visible;pointer-events:none;opacity:1;translate:0 0;transition:opacity .8s var(--ease),translate .8s var(--ease)}
#about .about-visual .about-image-panel{inset:0;width:100%;height:100%}
#about .about-art-placement{position:absolute;left:50%;top:50%;width:var(--about-art-width,100%);height:auto;transform:translate(calc(-50% + var(--about-art-x,0px)),calc(-50% + var(--about-art-y,0px))) scale(var(--about-art-scale,1));transform-origin:center;z-index:2;overflow:visible}
#about .about-panel-art{display:block;width:100%;height:auto;max-width:none;max-height:none;object-fit:contain}
#about .about-panel-art[hidden]{display:none}
#about.about-visual-ready:not(.about-entered) .about-visual{opacity:0;translate:48px 0}
#about.about-entered .about-art-placement{animation:about-art-in .8s var(--ease) both}
@keyframes about-art-in{from{opacity:0;translate:48px 0}to{opacity:1;translate:0 0}}
@media(max-width:1000px){.brand .header-brand-image{width:min(var(--header-logo-width,160px),135px)}}
@media(max-width:700px){.brand .header-brand-image{width:min(var(--header-logo-width,160px),110px)}#about .about-visual{inset:auto 0 0;width:100%;height:28svh}#about .about-visual .about-image-panel{inset:0;width:100%;height:100%}#about .about-art-placement{width:var(--about-art-width,100%)}}
@media(prefers-reduced-motion:reduce){#about .about-visual,#about.about-entered .about-art-placement{transition:none;animation:none}}

@media(min-width:1001px){#world .content:has(.fwg){max-width:none}#world .content:has(.fwg)>div:not(.fwg){position:absolute;left:0;top:50%;translate:0 -50%;width:28%;z-index:3}#world .content:has(.fwg)>div:not(.fwg) h2{font-size:clamp(30px,3vw,58px);margin:0}}
