*{box-sizing:border-box}body{margin:0;background:#090a0b;color:#f5f5f2;font:16px/1.75 Manrope,Arial,sans-serif}a{color:inherit}.tech-journal,.tech-article{width:min(1160px,calc(100% - 80px));margin:auto}.tech-crumb{display:flex;gap:12px;align-items:center;padding:22px 0;border-bottom:1px solid #30343a;color:#aeb7c4;font-size:12px}.tech-crumb a{text-decoration:none}.tech-journal-heading{padding:55px 0 38px;max-width:820px}.tech-kicker{text-transform:uppercase;font-size:11px;letter-spacing:1.8px;color:#b2c8ff}.tech-journal-heading h1,.tech-article h1{font-size:clamp(38px,5.2vw,66px);font-weight:500;letter-spacing:-2.6px;line-height:1.12;margin:16px 0 22px}.tech-journal-heading>p:last-child{color:#b2b4b5}.tech-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 25px}.tech-blog-card{display:block;text-decoration:none;min-width:0}.tech-blog-image{aspect-ratio:1.6;overflow:hidden;border-radius:13px;background:#18212d}.tech-blog-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s}.tech-blog-card:hover img{transform:scale(1.035)}.tech-blog-meta{display:flex;gap:10px;justify-content:space-between;font-size:10px;color:#a5b2c4;margin:16px 0 9px}.tech-blog-card h3{font-size:22px;line-height:1.3;letter-spacing:-.6px;font-weight:600;margin:0 0 12px}.tech-blog-card p{font-size:13px;line-height:1.8;color:#b2b4b5;margin:0}.tech-read{display:block;margin-top:16px;font-size:12px;color:#c7d6f7}.journal-all{margin:35px 0 50px;font-size:13px;text-align:center}.journal-all a{border:1px solid #4b5666;border-radius:30px;padding:10px 20px;text-decoration:none;display:inline-block}.journal-archive{border-top:1px solid #30343a;padding:30px 0 60px}.journal-archive h2{font-size:27px;letter-spacing:-.8px;font-weight:500}.journal-archive a{display:block;padding:10px 0;color:#c5d7ff;font-size:14px}.tech-article-header{height:auto;display:block;max-width:850px;padding:50px 0 30px;border:0;background:none;position:static;backdrop-filter:none}.tech-deck{font-size:18px;line-height:1.8;color:#bac2ce;margin:0 0 22px;max-width:770px}.tech-byline{font-size:11px;color:#aab5c5;display:flex;gap:10px;flex-wrap:wrap}.tech-byline a{text-underline-offset:3px}.tech-hero{margin:0 0 45px}.tech-hero img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;display:block;border-radius:15px}.tech-hero figcaption{font-size:10px;color:#9faebe;margin-top:9px}.tech-prose{max-width:760px;margin:auto;padding-bottom:35px}.tech-prose p,.tech-prose li{font-size:16px;line-height:1.95;color:#c4cad3}.tech-prose p{margin:0 0 22px}.tech-prose h2{font-size:29px;line-height:1.25;letter-spacing:-.8px;font-weight:500;margin:40px 0 18px}.tech-prose h3{font-size:22px;line-height:1.3;font-weight:600;margin:28px 0 14px}.tech-prose a{color:#c3d5ff;text-underline-offset:3px}.tech-prose ul,.tech-prose ol{padding-left:23px;margin:20px 0 25px}.tech-prose li{margin:8px 0}.tech-prose blockquote{margin:25px 0;padding:4px 0 4px 20px;border-left:2px solid #b2c8ff}.tech-prose table{border-collapse:collapse;width:100%;font-size:13px;margin:25px 0;display:block;overflow-x:auto}.tech-prose th,.tech-prose td{text-align:left;border-bottom:1px solid #39414d;padding:12px;min-width:125px;vertical-align:top;color:#bfc8d6}.tech-prose th{background:#17202d;color:#f5f5f2}.tech-prose code{font-size:.9em;color:#d5e1ff;background:#1b2636;padding:2px 5px;border-radius:4px}.tech-editor-note{max-width:760px;margin:0 auto 35px;border-top:1px solid #30343a;padding-top:20px;color:#9eacbe;font-size:12px}.tech-related{max-width:760px;margin:0 auto 65px}.tech-related h2{font-size:29px;letter-spacing:-.8px;font-weight:500}.tech-related>a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #30343a;text-decoration:none;font-size:14px}.tech-related>a span{color:#b2c8ff}.blogs .tech-blog-card{color:#181b1d}.blogs .tech-blog-meta{color:#58665f}.blogs .tech-blog-card p{color:#545d57}.blogs .tech-read{color:#283e5e}.blogs .tech-blog-image{background:#192333}.blogs .journal-all a{color:#181b1d;border-color:#7b8880}@media(max-width:900px){.tech-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.tech-journal,.tech-article{width:calc(100% - 40px)}.tech-journal-heading{padding-top:35px}.tech-article h1,.tech-journal-heading h1{font-size:38px;letter-spacing:-1.5px}.tech-blog-grid{grid-template-columns:1fr;gap:35px}.tech-blog-card h3{font-size:24px}.tech-blog-meta{font-size:11px}.tech-article-header{padding-top:35px}.tech-deck{font-size:16px}.tech-prose p,.tech-prose li{font-size:15px}.tech-prose h2{font-size:26px}.tech-hero img{aspect-ratio:1.5}.tech-hero{margin-bottom:30px}.tech-byline{font-size:10px}.tech-related>a{min-height:48px}.tech-crumb a{padding:5px 0}}@media(prefers-reduced-motion:reduce){.tech-blog-image img{transition:none}}

/* Unified editorial image treatment and compact mobile grid. */
.tech-blog-image{aspect-ratio:16/10;border-radius:18px;background:linear-gradient(135deg,#182a42,#10171f);box-shadow:inset 0 0 0 1px #ffffff12;position:relative;isolation:isolate}
.tech-blog-image:after{content:'';position:absolute;inset:0;border:1px solid #ffffff12;border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,#ffffff08,transparent 50%)}
.tech-blog-image img{object-position:center;transition:transform .45s cubic-bezier(.2,.7,.2,1);filter:saturate(1.06)}
.tech-blog-card:hover .tech-blog-image img{transform:scale(1.045)}
.tech-hero img{border-radius:22px;box-shadow:0 20px 70px #0003}
@media(max-width:700px){
.tech-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}
.tech-blog-image{aspect-ratio:4/3;border-radius:12px}
.tech-blog-meta{font-size:9px;line-height:1.5;gap:4px;flex-wrap:wrap;margin:11px 0 8px}
.tech-blog-card h3{font-size:16px;line-height:1.35;letter-spacing:-.35px;margin-bottom:9px;overflow-wrap:anywhere}
.tech-blog-card p{font-size:11px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tech-read{font-size:11px;margin-top:12px}
.tech-hero img{border-radius:14px}
}
@media(prefers-reduced-motion:reduce){.tech-blog-image img{transition:none}}
