/* Blog list + posts, placed inside the same header/newsletter/footer as every other page (src/templates/shell.html). */
@font-face{font-family:Angkor;font-weight:400;font-display:swap;src:url(/assets/fonts/angkor-latin-400-normal.woff2) format("woff2")}
.blogx{font-family:Montserrat,sans-serif;color:#383838;background:#fff}
.blogx .wrap{width:min(1160px,100% - 32px);margin-inline:auto}
.blog-head{padding:70px 0 34px;text-align:center}
.blog-head h1{font-family:Angkor,serif;letter-spacing:1px;font-weight:400;font-size:28.5px;line-height:1.25;color:#000;margin:0}
.blog-head h1 .r{color:#F34839;font-weight:700;font-size:30.4px;text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:9px}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:16px 0 70px}
.posts .empty{grid-column:1/-1;text-align:center;font-family:ui-sans-serif,system-ui,sans-serif;font-size:16px;color:#000;margin:0}
.post-card{display:block;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.12);text-decoration:none;color:#383838}
.post-card img{display:block;aspect-ratio:16/9;width:100%;object-fit:cover;background:#E8E9EB}
.post-card .pc{padding:16px 18px 20px}
.post-card h2{font-weight:700;font-size:20px;line-height:1.3;margin:0}
.post-card p{font-size:15px;line-height:1.5;margin:8px 0 0}
.post-card time{display:block;font-size:13px;color:#777;margin-top:10px}
.post{padding:50px 0 70px}
.post .wrap{max-width:820px}
.post h1{font-weight:900;font-size:40px;line-height:1.25;margin:0}
.post .meta{color:#777;font-size:15px;margin:10px 0 0}
.post .cover{display:block;border-radius:15px;margin-top:26px;width:100%;height:auto}
.post .body{font-size:19px;line-height:1.7;font-weight:500;margin-top:28px}
.post .body p,.post .body ul,.post .body ol,.post .body blockquote,.post .body figure{margin:0 0 1.1em}
.post .body h2{font-weight:800;font-size:28px;line-height:1.3;margin:1.4em 0 .5em}
.post .body h3{font-weight:700;font-size:22px;margin:1.2em 0 .4em}
.post .body a{color:#188BF6;font-weight:700}
.post .body blockquote{border-left:4px solid #014D94;padding:4px 0 4px 18px;color:#555;font-style:italic}
.post .body img{max-width:100%;height:auto;border-radius:10px}
.post .back{display:inline-block;margin-top:30px;font-weight:700;text-decoration:none;color:#188BF6}
@media (max-width:900px){.posts{grid-template-columns:1fr}.post h1{font-size:30px}.blog-head h1{font-size:22px}.blog-head h1 .r{font-size:23px}}
