/* Visual refresh for the original PHP blog: listing, categories and articles. */
:root{--bg-light:#EEF3FA;--line:#DCE5F2;--shadow-sm:none;--shadow-md:none}
body{background:#fff;color:#071C49;font-size:16px}
.container{max-width:880px;padding:0 36px}.container-wide,.hero-blog .container,.hero-blog .container-wide{max-width:1160px}
.topbar{background:#fff;backdrop-filter:none;border-bottom:1px solid #DCE5F2}.topbar .in{max-width:1160px;height:88px;padding:0 36px;gap:20px}
.logo{font-size:15px;font-weight:600}.logo small{font-size:9px;letter-spacing:2px;margin-top:5px}.logo-mark{width:42px;height:42px}.back-link{font-size:13px;border:0;padding:10px 0;border-radius:0;font-weight:400;min-height:44px;display:inline-flex;align-items:center}
.hero-blog{background:#EEF3FA;color:#071C49;padding:48px 0 55px}.crumbs,.crumbs a{font-size:12px;color:#5A6577}.crumbs{margin-bottom:28px}.crumbs a:hover{color:#1E56CC}
.hero-blog h1{color:#071C49;font-size:clamp(34px,5vw,58px);font-weight:500;line-height:1.15;letter-spacing:-.048em;margin-bottom:20px;max-width:1000px}.hero-blog .lead{max-width:760px;font-size:18px;line-height:1.8;color:#5A6577}
main{max-width:1160px;margin:0 auto;padding:0 36px 24px}.cat-nav{padding:32px 0;border-bottom:1px solid #DCE5F2;margin:0 0 36px;gap:9px;max-width:none}.cat-nav a{border-radius:7px;padding:10px 15px;font-size:13px;min-height:44px;line-height:1.7;font-weight:400;color:#5A6577}.cat-nav a.on,.cat-nav a.on:hover{background:#071C49;color:#fff;border-color:#071C49}.cat-nav a:hover{border-color:#2C6DF4;color:#1E56CC}
.post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px;padding-bottom:41px;max-width:none}.post-card{border:0;border-radius:0;box-shadow:none;overflow:visible;min-width:0;background:#fff}.post-card:hover{transform:none;box-shadow:none}.post-card .thumb{height:auto;aspect-ratio:1.91;background:#EEF3FA;border-radius:12px;overflow:hidden}.post-card .thumb img{object-fit:contain}.post-card .body{padding:18px 0 0}.post-card .date{font-size:11px;color:#1E56CC;letter-spacing:.03em;text-transform:none;font-weight:400;margin-bottom:10px}.post-card .date .cat{color:#1E56CC}.post-card h2{font-size:20px;line-height:1.4;font-weight:500;letter-spacing:-.025em;margin-bottom:13px}.post-card p{font-size:14px;line-height:1.75;color:#5A6577;margin-bottom:16px}.post-card .more{font-size:12px;font-weight:600;color:#1E56CC;padding-top:8px}.post-card:hover h2{color:#1E56CC}.post-card:hover img{filter:brightness(.96)}
.post-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.12fr 1fr;gap:42px;padding-bottom:36px;border-bottom:1px solid #DCE5F2;align-items:center}.post-card:first-child .body{padding:0}.post-card:first-child h2{font-size:30px;line-height:1.3;letter-spacing:-1px}.post-card:first-child p{font-size:16px}
.post-meta{color:#5A6577;font-size:13px;gap:10px}.post-meta .chip{background:#fff;border:1px solid #DCE5F2;color:#1E56CC;border-radius:7px}.post-meta a.chip{color:#1E56CC}.post-meta a.chip:hover{background:#DCE5F2;color:#071C49}
.article-cover{max-width:852px;padding:0 36px;margin-bottom:20px}.article-cover img{max-height:none;height:auto;object-fit:contain;border:0;box-shadow:none;border-radius:14px}article.prose{max-width:780px;margin:34px auto 0}.prose p,.prose li{font-size:17px;line-height:1.85;color:#354158}.prose h2{font-size:25px;line-height:1.35;font-weight:500;margin:38px 0 14px}.prose h3{font-weight:500}.prose blockquote{margin:30px 0;padding:16px 24px;border-left:3px solid #2C6DF4;background:#EEF3FA;border-radius:0}.prose a{color:#1E56CC}
.article-cta{max-width:780px;padding:28px;background:#EEF3FA;color:#071C49;border-radius:12px;text-align:left}.article-cta h3{color:#071C49;font-weight:500}.article-cta p{color:#5A6577}.btn{border-radius:8px;font-size:14px;font-weight:600;min-height:48px;padding:12px 18px}.btn-primary{background:#2C6DF4;color:#fff;box-shadow:none}.btn-primary:hover,.btn-primary:focus-visible{background:#1E56CC;color:#fff}.btn-primary:active{background:#071C49;color:#fff}.btn-back{font-size:14px;max-width:780px;min-height:44px;align-items:center}
footer{background:#071C49;margin-top:24px;padding:30px 0;font-size:12px}footer .container{max-width:1160px}.empty{margin-top:32px}
a:focus-visible,button:focus-visible{outline:3px solid #2C6DF4;outline-offset:5px}
@media(max-width:720px){.container,.hero-blog .container,.hero-blog .container-wide,.topbar .in,.article-cover{padding-left:22px;padding-right:22px}.topbar .in{height:78px;gap:12px}.hero-blog{padding:30px 0 36px}.hero-blog h1{font-size:38px;letter-spacing:-1.6px}.hero-blog .lead{font-size:16px}.logo{font-size:13px}.logo small{font-size:8px;letter-spacing:1px;display:block}.back-link{font-size:11px;padding:10px 0}main{padding:0 22px 20px}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}.post-card:first-child{grid-template-columns:1fr;gap:22px}.post-card:first-child h2{font-size:26px}.article-cover img{max-height:none;border-radius:14px}.prose p,.prose li{font-size:17px;line-height:1.85}.prose h2{font-size:25px}.crumbs{white-space:normal;overflow:visible;overflow-wrap:anywhere}.article-cta{padding:24px}.cat-nav{padding:26px 0}}
@media(max-width:440px){.post-grid{grid-template-columns:1fr}.cat-nav a{font-size:12px;padding:9px 11px}.post-card h2{font-size:22px}.logo-mark{width:32px;height:32px}.logo{gap:8px}.hero-blog h1{font-size:32px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
