.article-page{max-width:850px;margin:65px auto 85px;padding:0 12px}
.article-page header{max-width:790px;margin:0 0 32px}
.article-page h1{font-size:clamp(32px,4.8vw,56px);line-height:1.1;letter-spacing:-1.8px;margin:18px 0 24px}
.article-byline{font-size:13px;color:#c0c6c8;margin:0 0 20px}
.article-page .article-intro{font-size:20px;line-height:1.7;color:#e0e4e2}
.article-page figure{margin:36px 0 42px}
.article-page figure img{width:100%;max-height:510px;object-fit:contain;background:#191c20;border:1px solid #ffffff22;border-radius:18px}
.article-page figcaption{margin-top:12px;color:#b5bdc0;font-size:13px;line-height:1.6}
.article-page section{margin-top:38px}
.article-page h2{font-size:clamp(23px,3vw,30px);letter-spacing:-.7px;line-height:1.25;margin:0 0 18px}
.article-page section p{font-size:17px;line-height:1.9;color:#d0d6d6;margin:0 0 18px}
.article-page section a,.article-page figcaption a{color:#ffa253;text-decoration:underline;text-underline-offset:4px}
.build-map{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:25px 0 30px}
.build-map span{flex:1;min-width:145px;border:1px solid #ffffff24;border-radius:13px;background:#262d32;padding:18px 15px;font-size:14px;line-height:1.6;color:#e6ece9}
.build-map b{font-weight:400;color:#ff8d30}
.article-project-link{padding:25px 28px;border:1px solid #ffffff26;border-radius:17px;background:#252b30;margin-top:45px}
.article-project-link p{margin:0 0 15px;color:#c4cccd;line-height:1.7}
@media(max-width:650px){.article-page{margin:35px auto 55px;padding:0}.article-page h1{letter-spacing:-1px}.article-page .article-intro{font-size:18px}.article-page section p{font-size:16px}.build-map{flex-direction:column;align-items:stretch}.build-map b{align-self:center;transform:rotate(90deg)}}
