/* BLOG — isolated visual layer; does not alter the existing site system */
.blog-home-section,.blog-list-section{position:relative;overflow:hidden}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.blog-grid-large{gap:22px}
.blog-card{min-width:0;border:1px solid rgba(110,150,210,.16);border-radius:18px;overflow:hidden;background:linear-gradient(145deg,#0b2243,#061329);box-shadow:0 18px 45px rgba(0,0,0,.18);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.blog-card:hover{transform:translateY(-7px);border-color:rgba(76,201,255,.42);box-shadow:0 28px 70px rgba(0,0,0,.3),0 0 35px rgba(37,99,235,.08)}
.blog-card-link{display:block;text-decoration:none;height:100%}
.blog-card-image{height:220px;position:relative;overflow:hidden;background:#07152a}
.blog-card-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s ease}
.blog-card:hover .blog-card-image img{transform:scale(1.045)}
.blog-image-glow{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(3,8,23,.42));pointer-events:none}
.blog-card-placeholder{display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,#1553a3,transparent 42%),linear-gradient(135deg,#0c2850,#061329)}
.blog-card-placeholder span{font:800 12px Sora;letter-spacing:.2em;color:#76b5ff}
.blog-card-body{padding:21px 21px 23px}
.blog-card-meta{display:flex;align-items:center;gap:9px;color:#7792b7;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.blog-card-meta i{width:4px;height:4px;border-radius:50%;background:#4ca9ff;display:block}
.blog-card h3{font:700 22px/1.2 Sora;color:#f4f8ff;letter-spacing:-.035em;margin:13px 0 10px}
.blog-card p{color:#9fb2cc;font-size:14px;line-height:1.75;margin:0 0 17px}
.blog-read{display:inline-flex;align-items:center;gap:8px;color:#6eb4ff;font-size:12px;font-weight:800}
.blog-read b{font-size:15px}
.blog-view-all{white-space:nowrap;margin-top:10px}
.blog-hero{overflow:hidden}
.blog-list-section{padding-top:30px}
.empty-blog-state{max-width:700px;margin:0 auto;text-align:center;border:1px dashed #29466d;border-radius:20px;padding:60px 25px;background:linear-gradient(145deg,#081b35,#061329)}
.empty-blog-state span,.blog-side-card>span{font:800 10px Sora;letter-spacing:.18em;color:#68aaff}
.empty-blog-state h2{font:700 36px Sora;margin:12px 0}
.empty-blog-state p{color:#93a8c4}
.blog-article-hero{padding:80px 25px 0;background:radial-gradient(circle at 50% 0,rgba(35,115,225,.18),transparent 42%)}
.blog-article-wrap{max-width:920px;margin:auto;text-align:center}
.blog-article-wrap h1{font:800 clamp(42px,6vw,72px)/1.02 Sora;letter-spacing:-.055em;color:#f6f9ff;margin:20px auto;max-width:900px}
.blog-article-wrap h1 em{font-style:normal;color:#55a8ff}
.blog-article-excerpt{max-width:720px;margin:0 auto;color:#a8bad1;font-size:18px;line-height:1.75}
.blog-article-feature{margin:42px auto 0;max-width:1100px;border:1px solid rgba(110,150,210,.22);border-radius:22px;overflow:hidden;background:#061329;box-shadow:0 30px 90px rgba(0,0,0,.3)}
.blog-article-feature img{display:block;width:100%;max-height:580px;object-fit:cover}
.blog-article-section{padding-top:55px}
.blog-article-layout{max-width:1160px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:50px;align-items:start}
.blog-content{min-width:0;color:#c6d3e4;font-size:17px;line-height:1.9}
.blog-content>p:first-child{font-size:19px;color:#e2eaf5}
.blog-content h2{font:750 34px/1.2 Sora;color:#f5f8ff;letter-spacing:-.035em;margin:42px 0 14px}
.blog-content h3{font:700 25px/1.3 Sora;color:#f5f8ff;margin:32px 0 12px}
.blog-content h4{font:700 19px Sora;color:#f5f8ff;margin:25px 0 9px}
.blog-content p{margin:0 0 20px}
.blog-content ul,.blog-content ol{padding-left:25px;margin:10px 0 24px}
.blog-content li{margin:7px 0}
.blog-content a{color:#62b0ff;text-decoration:underline;text-underline-offset:3px}
.blog-content strong{color:#fff}.blog-content blockquote{margin:30px 0;padding:20px 24px;border-left:3px solid #398cff;border-radius:0 12px 12px 0;background:linear-gradient(90deg,rgba(40,108,205,.15),transparent);color:#dbe7f7;font-size:19px}
.blog-content img{display:block;max-width:100%;height:auto;margin:28px auto;border-radius:14px;border:1px solid rgba(110,150,210,.18);box-shadow:0 20px 50px rgba(0,0,0,.22)}
.blog-content figure{margin:30px 0}.blog-content figcaption{font-size:12px;color:#7891b1;text-align:center;margin-top:8px}
.blog-content hr{border:0;border-top:1px solid rgba(110,150,210,.18);margin:36px 0}
.blog-content pre,.blog-content code{background:#061329;border:1px solid #1b3558;border-radius:8px}.blog-content pre{padding:16px;overflow:auto}
.blog-sidebar{position:sticky;top:95px;display:grid;gap:15px}
.blog-side-card{border:1px solid rgba(110,150,210,.16);border-radius:17px;padding:20px;background:linear-gradient(145deg,#0b2243,#061329);box-shadow:0 18px 45px rgba(0,0,0,.16)}
.blog-side-card h3{font:700 21px Sora;color:#f4f8ff;margin:10px 0 18px}.blog-side-card>p{color:#93a8c4;font-size:13px;line-height:1.7}
.blog-side-list{display:grid;gap:10px}.blog-side-list .blog-card{box-shadow:none;border-radius:12px}.blog-side-list .blog-card-image{height:100px}.blog-side-list .blog-card-body{padding:12px}.blog-side-list .blog-card-meta{font-size:8px}.blog-side-list .blog-card h3{font-size:14px;margin:7px 0 0}.blog-side-list .blog-card p,.blog-side-list .blog-read{display:none}
.blog-cta-card{background:radial-gradient(circle at 100% 0,rgba(48,132,255,.2),transparent 55%),linear-gradient(145deg,#0d2850,#061329)}
.blog-cta-card h3{font-size:24px;line-height:1.25}.blog-cta-card .btn{display:inline-block;text-decoration:none;margin-top:8px}
@media(max-width:1000px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-article-layout{grid-template-columns:1fr}.blog-sidebar{position:static;grid-template-columns:1fr 1fr}.blog-side-list{grid-template-columns:1fr}}
@media(max-width:680px){.blog-grid{grid-template-columns:1fr}.blog-card-image{height:205px}.blog-card h3{font-size:20px}.blog-home-section .section-head{display:flex;gap:12px}.blog-home-section .section-head .blog-view-all{font-size:11px}.blog-article-hero{padding:60px 18px 0}.blog-article-wrap h1{font-size:clamp(36px,10vw,52px)}.blog-article-excerpt{font-size:16px}.blog-article-feature{margin-top:28px;border-radius:15px}.blog-article-section{padding-top:35px}.blog-content{font-size:16px}.blog-content h2{font-size:29px}.blog-content h3{font-size:22px}.blog-sidebar{grid-template-columns:1fr}.empty-blog-state h2{font-size:29px}}
