/*
Theme Name: Kirin Space
Author: 宁波麒麟空间航天科技有限公司
Description: 麒麟空间官网主题，蓝白极简，展示产品与新闻。
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: kirin-space
*/
:root{--w:#fff;--m:#f3f6fb;--b:#0a5cff;--n:#06173f;--i:#bcd7ff;--t:#0d1b3d;--g:#5d6b88;--l:#dfe7f3;--f:"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif}
body.ks{margin:0;background:var(--w);color:var(--t);font:400 16px/1.75 var(--f);-webkit-font-smoothing:antialiased}
.ks *,.ks *:before,.ks *:after{box-sizing:border-box}
.ks a{color:inherit;text-decoration:none}
.ks a:focus-visible{outline:2px solid var(--i);outline-offset:4px}
/* 导航 */
.ks-nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:22px 5vw;color:#fff;transition:background .3s,color .3s,padding .3s}
body.admin-bar .ks-nav{top:32px}
.ks-nav.on{background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--t);padding:14px 5vw;box-shadow:0 1px 0 var(--l)}
.ks-logo{font:italic 900 22px/1 var(--f)}
.ks-logo b{font-weight:900;color:var(--i)}
.ks-nav.on .ks-logo b{color:var(--b)}
.ks-nav nav{display:flex;gap:40px;font-size:14px}
.ks-nav nav a{opacity:.8}.ks-nav nav a:hover{opacity:1}
/* 首屏：唯一的动效是轨迹线绘出一次 */
.ks-hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 5vw 6vh;color:#fff;overflow:hidden;background:linear-gradient(180deg,#030d2b 0,var(--n) 55%,#0a3fb8 130%)}
.ks-hero:after{content:"";position:absolute;left:50%;top:80%;width:170vw;height:170vw;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle at 50% 0,rgba(10,92,255,.55),rgba(10,92,255,.12) 18%,transparent 40%);border-top:1px solid rgba(188,215,255,.7)}
.ks-line{position:absolute;top:0;left:0;width:100%;height:100%}
.ks-line path{fill:none;stroke:#fff;stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;animation:ks-d 3s .4s cubic-bezier(.3,.6,.2,1) forwards}
@keyframes ks-d{to{stroke-dashoffset:0}}
.ks-hero h1{position:relative;z-index:2;max-width:11em;margin:0 0 28px;font:200 clamp(44px,8.5vw,128px)/1.04 var(--f);letter-spacing:-.03em}
.ks-hero p{position:relative;z-index:2;max-width:30em;margin:0 0 36px;color:rgba(255,255,255,.72)}
.ks-btn{display:inline-block;padding:14px 32px;margin:0 12px 12px 0;border:1px solid rgba(255,255,255,.55);font-size:14px;transition:background .2s,color .2s}
.ks-btn:hover{background:#fff;color:var(--n)}
.ks-btn.p{background:var(--b);border-color:var(--b)}.ks-btn.p:hover{background:#fff;border-color:#fff}
.ks-facts{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:12px 56px;margin-top:6vh;padding-top:24px;border-top:1px solid rgba(255,255,255,.22);font-size:14px;color:rgba(255,255,255,.7)}
.ks-facts b{margin-right:10px;font:300 28px/1 var(--f);color:#fff}
/* 区块 */
.ks-sec{padding:14vh 5vw}.ks-sec.g{background:var(--m)}
.ks-h{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:7vh}
.ks-h h2{margin:0;font:200 clamp(32px,5vw,64px)/1.1 var(--f);letter-spacing:-.02em}
.ks-h p{max-width:26em;margin:0;color:var(--g)}
.ks-h a{padding-bottom:3px;border-bottom:1px solid var(--b);font-size:14px;color:var(--b)}
/* 产品：整行条目，用分隔线而不是卡片 */
.ks-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) minmax(0,1fr);gap:4vw;padding:44px 0;border-top:1px solid var(--l)}
.ks-row:last-child{border-bottom:1px solid var(--l)}
.ks-row h3{margin:0;font:300 clamp(26px,3vw,40px)/1.2 var(--f);letter-spacing:-.01em}
.ks-row h3 small{display:block;margin-top:10px;font:400 14px/1.5 var(--f);color:var(--b)}
.ks-row p{margin:0;color:var(--g)}
.ks-row ul{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;margin:0;padding:0;list-style:none}
.ks-row li{padding:4px 14px;border:1px solid var(--i);font-size:13px;color:var(--b)}
.ks-row img{grid-column:1/-1;display:block;width:100%;max-height:360px;object-fit:cover}
/* 新闻 */
.ks-news{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 32px}
.ks-n a{display:block}
.ks-n .t{aspect-ratio:16/10;margin-bottom:20px;overflow:hidden;background:linear-gradient(135deg,#0a3fb8,var(--n))}
.ks-n img{display:block;width:100%;height:100%;object-fit:cover}
.ks-n time{font-size:13px;color:var(--b)}
.ks-n h3{margin:6px 0 8px;font:400 20px/1.5 var(--f)}
.ks-n a:hover h3{text-decoration:underline;text-underline-offset:4px}
.ks-n p{margin:0;font-size:14px;color:var(--g)}
.ks-empty{color:var(--g)}
/* 页脚 */
.ks-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:32px;padding:9vh 5vw 6vh;background:var(--n);color:#9fb3da;font-size:14px}
.ks-foot .ks-logo{display:inline-block;margin-bottom:14px;font-size:28px;color:#fff}
.ks-foot .ks-logo b{color:var(--i)}
.ks-foot p{margin:0}
.ks-foot div+div{text-align:right}
@media(max-width:860px){
.ks-nav nav{display:none}
.ks-row{grid-template-columns:1fr;gap:16px}
.ks-news{grid-template-columns:1fr}
.ks-h{display:block}.ks-h p{margin-top:16px}
.ks-foot div+div{text-align:left}
}
@media(prefers-reduced-motion:reduce){.ks-line path{animation:none;stroke-dashoffset:0}}
/* 内页 */
.ks-page{max-width:820px;margin:0 auto;padding:150px 5vw 12vh}
.ks-page article{margin:0 0 48px;padding:0 0 48px;border-bottom:1px solid var(--l)}
.ks-page h1{margin:0 0 16px;font:200 clamp(32px,5vw,56px)/1.15 var(--f);letter-spacing:-.02em}
.ks-page h2{margin:0 0 8px;font:300 28px/1.4 var(--f)}
.ks-page time{font-size:13px;color:var(--b)}
.ks-page p{color:var(--g)}
.ks-body{margin-top:32px}.ks-body p{color:var(--t)}.ks-body img{max-width:100%;height:auto}
.ks-body a{color:var(--b);text-decoration:underline;text-underline-offset:3px}
.ks-page .nav-links{display:flex;gap:16px;font-size:14px}
/* v1.1 */
.ks-logo{display:block;font-size:0;line-height:0}
.ks-logo img{display:block;width:auto;height:var(--lh,36px)}
.ks-nav:not(.on) .ks-logo.inv img,.ks-foot .ks-logo.inv img{filter:brightness(0) invert(1)}
.ks-nav nav{font-size:15px}
.ks-hero h1{max-width:16em;font-size:min(var(--hs,96px),12vw);line-height:1.08;text-wrap:balance}
.ks-hero p{font-size:var(--ss,18px)}
.ks-btn{padding:.9em 2.6em;font-size:var(--bs,18px);letter-spacing:.04em}
.ks-pg{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:56px 32px}
.ks-p a{display:block}
.ks-pic{position:relative;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(135deg,#eaf1ff,#cfe0ff)}
.ks-pic img{display:block;width:100%;height:100%;object-fit:cover}
.ks-pic.ph:after{content:"";position:absolute;left:8%;right:8%;top:50%;height:1px;background:linear-gradient(90deg,transparent,var(--b));transform:rotate(-22deg)}
.ks-p h3{margin:22px 0 8px;font:300 clamp(22px,2.4vw,30px)/1.3 var(--f);transition:color .2s}
.ks-p a:hover h3{color:var(--b)}
.ks-p p{margin:0 0 16px;font-size:15px;color:var(--g)}
.ks-p ul{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none}
.ks-p li{padding:3px 12px;border:1px solid var(--i);font-size:13px;color:var(--b)}
.ks-more{padding-bottom:3px;border-bottom:1px solid var(--b);font-size:14px;color:var(--b)}
.ks-page .ks-p{margin:0;padding:0;border:0}
.ks-wide{max-width:1200px}
.ks-lead{font-size:18px;color:var(--t)!important}
.ks-hero-img{display:block;width:100%;height:auto;margin:32px 0}
