
body{margin:0}
*{box-sizing:border-box}
a{color:#000000}a:hover{color:#000000}
.e{font-family:'Manrope',system-ui,sans-serif;background:#F5F5F5;color:#000000;line-height:1.6;font-size:17px;position:relative}
.w{max-width:1160px;margin:0 auto;padding:0 28px}
.serif{font-family:'Newsreader',Georgia,serif;font-weight:500;letter-spacing:-0.015em}
.lo{color:#55555B}
.skip{position:absolute;left:12px;top:-80px;background:#000000;color:#F5F5F5;padding:12px 18px;border-radius:8px;font-weight:700;z-index:99}
.skip:focus{top:12px}
.e a:focus-visible,.e button:focus-visible{outline:3px solid #4D40F0;outline-offset:3px;border-radius:4px}
.stripe{height:4px;background:linear-gradient(90deg,#4D40F0,#68008A,#ECB731,#C62A2C)}
.hd{border-bottom:1px solid #D6D6DA}
.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 28px;padding:16px 0}
.links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 26px;list-style:none;margin:0;padding:0}
.links a{color:#2B2B30;text-decoration:none;font-weight:600;display:inline-flex;align-items:center;min-height:44px}
.links a:hover{color:#000000;text-decoration:underline;text-underline-offset:6px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;background:#000000;color:#F5F5F5;font-weight:700;text-decoration:none;border:2px solid #000000}
.btn:hover{background:#000000;color:#F5F5F5}
.btn-o{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;color:#000000;font-weight:700;text-decoration:none;border:2px solid #55555B}
.btn-o:hover{border-color:#000000}
.paper{background:#000000;color:#F5F5F5}
.paper a{color:#F5F5F5}
.paper .lo{color:#A6A6AD}
.paper .btn{background:#F5F5F5;color:#000000;border-color:#F5F5F5}
.svc{display:grid;grid-template-columns:minmax(0,1fr);gap:8px 48px;padding:32px 0;border-top:1px solid #3A3A40}
@media(min-width:800px){.svc{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.card{border:1px solid #D6D6DA;border-radius:14px;padding:28px}
.dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:none}
.hero{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;align-items:end}
@media(min-width:1000px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}}
.mk{background:#FFFFFF;border:1px solid #D6D6DA;border-radius:18px;overflow:hidden;font-size:14px;line-height:1.45}
.mkg{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1.4fr)}
@media(max-width:560px){.mkg{grid-template-columns:minmax(0,1fr)}.mkl{display:none}}
.mkl{border-right:1px solid #D6D6DA;padding:10px}
.it{padding:10px;border-radius:10px;display:flex;flex-direction:column;gap:2px}
.ch{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#55555B}
.b{max-width:85%;padding:9px 12px;border-radius:14px}
.bu{background:#ECECEF;color:#000000;align-self:flex-start;border-bottom-left-radius:4px}
.ba{background:#000000;color:#F5F5F5;align-self:flex-end;border-bottom-right-radius:4px}
.sys{align-self:center;font-size:12px;color:#55555B;text-align:center}

.ph{border:2px dashed #A6A6AD;border-radius:12px;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;color:#A6A6AD;font-weight:600;aspect-ratio:1/1}
.soc{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}
.soc a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 16px;border:1px solid #C4C4CA;border-radius:999px;text-decoration:none;font-weight:600}
.soc a:hover{border-color:#000000}
.paper .soc a{border-color:#8A8A92}
.paper .soc a:hover{border-color:#F5F5F5}
.ft{border-top:1px solid #D6D6DA;padding:56px 0 40px;font-size:15px}
.ftg{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}
.ft ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ft a{color:#2B2B30}

.stripe{height:6px;background:linear-gradient(90deg,#68008A 0%,#4D40F0 33%,#C62A2C 66%,#ECB731 100%)}
.hd{background:#F5F5F5}
.btn{background:#4D40F0;color:#FFFFFF;border-color:#4D40F0}
.btn:hover{background:#3A2DD6;color:#FFFFFF;border-color:#3A2DD6}
.paper .btn{background:#4D40F0;color:#FFFFFF;border-color:#4D40F0}
.paper .btn:hover{background:#6A5FFF;border-color:#6A5FFF;color:#FFFFFF}
.btn-o:hover{border-color:#000000;color:#000000}
.paper .dot{outline:1px solid #6E6E75;outline-offset:1px}
.ba{background:#4D40F0;color:#FFFFFF}
.mk{box-shadow:0 24px 60px -24px rgba(77,64,240,0.35)}
.ft{background:#000000;color:#F5F5F5;border-top:0}
.ft .lo{color:#A6A6AD}
.ft a{color:#D6D6DA}
.ft a:hover{color:#FFFFFF}
.spec{display:flex;height:4px;width:96px;border-radius:2px;overflow:hidden;margin-bottom:20px}
.spec span{flex:1}

/* ---- Light & glass layer ---- */
.hd{position:sticky;top:0;z-index:50;background:rgba(245,245,245,0.72);-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%)}
.hero{position:relative}
.hero>*:not(.aurora){position:relative;z-index:1}
.aurora{position:absolute;right:-4%;top:-14%;width:60%;height:128%;pointer-events:none;filter:blur(64px);opacity:.6;z-index:0}
.aurora span{position:absolute;border-radius:50%;width:56%;height:52%}
.aurora .a1{background:#68008A;left:2%;top:8%;transform:translate(0,0)}
.aurora .a2{background:#4D40F0;left:40%;top:0;transform:translate(0,0)}
.aurora .a3{background:#C62A2C;left:12%;top:46%;opacity:.7;transform:translate(0,0)}
.aurora .a4{background:#ECB731;left:44%;top:44%;opacity:.8;transform:translate(0,0)}
.mk{background:rgba(255,255,255,0.64);-webkit-backdrop-filter:blur(22px) saturate(170%);backdrop-filter:blur(22px) saturate(170%);border:1px solid rgba(255,255,255,0.85);box-shadow:inset 0 1px 0 rgba(255,255,255,0.95),0 30px 70px -30px rgba(77,64,240,0.45)}
.mkl{border-right-color:rgba(0,0,0,0.08)}
.btn,.btn-o{transition:transform .2s ease,background-color .2s ease,border-color .2s ease}
.btn:hover,.btn-o:hover{transform:translateY(-2px)}
/* ---- Social section in violet ---- */
.violet{background:#68008A;color:#FFFFFF}
.violet .lo{color:#E2CDEA}
.violet a{color:#FFFFFF}
.violet .soc a{border-color:#C9A6D6}
.violet .soc a:hover{border-color:#FFFFFF;background:rgba(255,255,255,0.08)}
.violet .ph{border-color:#C9A6D6 !important;color:#E2CDEA !important;background:rgba(255,255,255,0.06)}
.violet a:focus-visible{outline-color:#ECB731}
/* ---- Motion (all short, one-time, and off for reduce-motion) ---- */
@keyframes drift{from{transform:translate(-12%,10%) scale(.8);opacity:0}}
@keyframes pop{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@keyframes sweep{from{background-position:100% 0}to{background-position:0 0}}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.motion .aurora span{animation:drift 4s cubic-bezier(.2,.7,.2,1) both}
.motion .aurora .a2{animation-delay:.2s}.motion .aurora .a3{animation-delay:.4s}.motion .aurora .a4{animation-delay:.6s}
.motion .stripe{background-size:300% 100%;animation:sweep 3s ease-out both}
.motion .mk .b,.motion .mk .sys{animation:pop .45s ease-out both}
.motion .mk .b:nth-child(1){animation-delay:.5s}
.motion .mk .sys:nth-child(2){animation-delay:1s}
.motion .mk .b:nth-child(3){animation-delay:1.3s}
.motion .mk .b:nth-child(4){animation-delay:2s}
.motion .mk .b:nth-child(5){animation-delay:2.5s}
.motion .mk .sys:nth-child(6){animation-delay:3s}
@supports (animation-timeline: view()){
.motion .card,.motion .svc,.motion .violet .ph{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
}
@media (prefers-reduced-motion: reduce){
.motion *,.motion *::before,.motion *::after{animation:none !important;transition:none !important}
.btn:hover,.btn-o:hover{transform:none}
}
@media(max-width:760px){
.hd{position:static}
.nav{padding:12px 0}
.links{gap:0 18px;font-size:15px}
.aurora{width:100%;right:-20%;top:auto;bottom:-10%;height:60%}
}

.form-note{font-size:14px;color:#55555B;margin:0}
.e{overflow-x:clip}
.links a.btn,.links a.btn:hover{color:#FFFFFF;text-decoration:none}
[aria-invalid="true"]{border-color:#C62A2C !important}

/* ===== Blog (Ghost) ===== */
.blog-head{padding:88px 28px 40px}
.blog-head h1{font-family:'Newsreader',Georgia,serif;font-weight:500;letter-spacing:-.015em;font-size:clamp(2.5rem,4.4vw + 1rem,4rem);line-height:1.05;margin:0;max-width:18ch}
.pills{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:32px 0 0;padding:0}
.pills a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #C4C4CA;border-radius:999px;text-decoration:none;font-weight:600}
.pills a:hover,.pills a[aria-current]{border-color:#000000}
.post-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;padding-bottom:104px}
.post-card{border:1px solid #D6D6DA;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.post-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.post-card .inner{padding:24px;display:flex;flex-direction:column;gap:8px;flex:1}
.post-card h2{font-size:1.3rem;line-height:1.3;margin:0}
.post-card h2 a{text-decoration:none}
.post-card h2 a:hover{text-decoration:underline}
.post-card.featured{grid-column:1/-1}
@media(min-width:900px){.post-card.featured{display:grid;grid-template-columns:1.1fr 1fr}.post-card.featured img{height:100%;aspect-ratio:auto}.post-card.featured h2{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:2.2rem;line-height:1.1}}
.meta{font-size:15px;color:#55555B;margin:0}
.empty{padding-bottom:104px;font-size:1.1rem}
.pagination{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding-bottom:104px}
.pagination a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #C4C4CA;border-radius:999px;text-decoration:none;font-weight:600}
/* Article */
.article{max-width:720px;margin:0 auto;padding:88px 28px 104px}
.article h1{font-family:'Newsreader',Georgia,serif;font-weight:500;letter-spacing:-.015em;font-size:clamp(2.3rem,3.6vw + 1rem,3.6rem);line-height:1.08;margin:10px 0 20px}
.article .excerpt{font-size:1.2rem;color:#2B2B30;margin:0 0 32px}
.article .feature img{width:100%;height:auto;border-radius:14px;display:block}
.article .feature figcaption,.gh-content figcaption{font-size:14px;color:#55555B;margin-top:8px;text-align:center}
.gh-content{font-size:1.1rem;line-height:1.7;color:#2B2B30;margin-top:32px}
.gh-content>*{margin:0 0 1.3em}
.gh-content h2{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:2rem;line-height:1.15;color:#000;margin:1.6em 0 .5em}
.gh-content h3{font-size:1.35rem;color:#000;margin:1.4em 0 .4em}
.gh-content a{color:#4D40F0}
.gh-content img{max-width:100%;height:auto;border-radius:12px}
.gh-content blockquote{border-left:4px solid #68008A;margin-left:0;padding-left:20px;font-style:italic}
.gh-content pre{background:#000;color:#F5F5F5;padding:20px;border-radius:12px;overflow-x:auto;font-size:15px}
.gh-content ul,.gh-content ol{padding-left:24px}
.kg-width-wide{width:min(1040px,calc(100vw - 56px));margin-left:50%;transform:translateX(-50%)}
.kg-width-full{width:100vw;margin-left:50%;transform:translateX(-50%)}
.kg-width-full img{border-radius:0}
.kg-image-card img,.kg-gallery-image img{display:block}
.kg-embed-card{display:flex;justify-content:center}
.back{margin-top:56px}
