:root{--blue:#0071e3;--blue-hi:#2997ff;--ink:#1d1d1f;--muted:#6e6e73;--soft:#f5f5f7;--line:#d2d2d7;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
nav{position:fixed;top:0;left:0;right:0;z-index:100;height:54px;background:rgba(0,0,0,.78);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;height:54px}
.logo{color:#f5f5f7;font-weight:600;font-size:1.02rem;letter-spacing:-.02em}
.nav ul{display:flex;gap:28px;list-style:none;align-items:center}
.nav ul a{color:#d2d2d7;font-size:.82rem;transition:color .2s}
.nav ul a:hover,.nav ul a.on{color:#fff}
.nav .pill{background:var(--blue);color:#fff!important;padding:7px 15px;border-radius:980px;font-size:.82rem}
.bhead{background:#000;color:#f5f5f7;padding:150px 0 90px;text-align:center;position:relative;overflow:hidden}
.bhead::before{content:"";position:absolute;left:50%;top:70%;width:min(900px,140vw);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 35% 35%,rgba(41,151,255,.4),rgba(94,92,230,.25) 40%,rgba(191,90,242,.15) 58%,transparent 70%);filter:blur(30px)}
.bhead .wrap{position:relative}
.eyebrow{font-size:1.05rem;font-weight:600;color:var(--blue-hi);margin-bottom:14px;display:block;letter-spacing:-.01em}
.bhead h1{font-size:clamp(2.3rem,6.4vw,4.6rem);letter-spacing:-.045em;line-height:1.04;max-width:900px;margin:0 auto;font-weight:700}
.bhead p{color:#a1a1a6;font-size:clamp(1.05rem,2vw,1.3rem);max-width:620px;margin:20px auto 0;letter-spacing:-.01em}
.meta{margin-top:22px;color:#86868b;font-size:.95rem}
.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;padding:70px 0 110px}
.card{background:var(--soft);border-radius:28px;padding:36px 32px;display:flex;flex-direction:column;min-height:300px;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.card .tag{font-size:.85rem;font-weight:600;color:var(--blue);letter-spacing:.01em;margin-bottom:14px}
.card h2{font-size:1.7rem;letter-spacing:-.035em;line-height:1.1;margin-bottom:12px}
.card p{color:var(--muted);font-size:1.03rem}
.card .more{margin-top:auto;padding-top:24px;color:var(--blue);font-weight:500}
.card .more::after{content:" \203A"}
.art{max-width:720px;margin:0 auto;padding:70px 24px 30px}
.art p{font-size:1.14rem;color:#3a3a3c;margin-bottom:20px}
.art h2{font-size:1.75rem;letter-spacing:-.03em;line-height:1.15;margin:46px 0 14px}
.art ol,.art ul{padding-left:1.3em;display:grid;gap:12px;margin-bottom:24px}
.art li{font-size:1.12rem;color:#3a3a3c;padding-left:4px}
.art li strong{color:var(--ink)}
.cta{max-width:720px;margin:20px auto 110px;padding:0 24px}
.cta div{background:#000;color:#f5f5f7;border-radius:32px;padding:44px 38px;text-align:center}
.cta h3{font-size:clamp(1.7rem,4vw,2.4rem);letter-spacing:-.04em;line-height:1.08;margin-bottom:12px}
.cta p{color:#a1a1a6;margin-bottom:26px;font-size:1.08rem}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 26px;border-radius:980px;font-weight:500;font-size:1.05rem;transition:transform .2s var(--ease),background .2s;letter-spacing:-.01em}
.btn:hover{transform:scale(1.03)}
.btn-blue{background:var(--blue);color:#fff}
.btn-ghost{color:var(--blue-hi)}
.btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;align-items:center}
.back{display:inline-block;margin-bottom:8px;color:var(--blue);font-weight:500}
footer{background:var(--soft);color:var(--muted);font-size:.9rem;padding:34px 0;text-align:center}
footer a{color:var(--blue)}
.logo,.nav .pill{white-space:nowrap}
@media(max-width:680px){.logo{font-size:.9rem}.nav ul{gap:14px}.nav .pill{padding:6px 12px}.nav ul li.hs{display:none}.bhead{padding:120px 0 70px}.card{min-height:0}.art{padding-top:50px}.cta div{padding:36px 24px}}
.inl{color:var(--blue);text-decoration:underline}
