/* ブログ一覧・記事・その他の固定ページ・404 用 */

/* 見出しエリア（下層ページと同じ形） */
.page-hero{padding-block:clamp(64px,9vw,112px) clamp(40px,6vw,64px);border-bottom:1px solid var(--line);
  background:radial-gradient(ellipse 60% 80% at 90% 0%,color-mix(in srgb,var(--gold) 8%,transparent),transparent 70%),var(--paper)}
.page-hero .wrap{display:grid;gap:16px}
.crumbs{font-size:.74rem;color:var(--muted);letter-spacing:.1em;display:flex;gap:10px;flex-wrap:wrap}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--gold)}
.page-hero h1{font-size:clamp(1.6rem,3.6vw,2.6rem);letter-spacing:.1em;line-height:1.6}
.page-hero p{color:var(--muted);max-width:44rem}
.entry-meta{font-family:var(--f-latin);letter-spacing:.08em}

/* 記事一覧 */
.post-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 28px}
.post-card{display:grid;gap:14px;align-content:start;min-width:0}
.post-card-thumb{display:block;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.post-card-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.post-card:hover .post-card-thumb img{transform:scale(1.04)}
.post-card-noimg{display:grid;place-items:center;height:100%;font-family:var(--f-latin);font-style:italic;font-size:2.4rem;color:color-mix(in srgb,var(--gold) 60%,transparent)}
.post-card-body{display:grid;gap:8px}
.post-card-meta{display:flex;gap:12px;font-size:.78rem;color:var(--muted);letter-spacing:.08em;margin:0}
.post-card-meta span{color:var(--gold)}
.post-card-title{font-size:1.05rem;letter-spacing:.06em;line-height:1.6}
.post-card-title a{text-decoration:none}
.post-card-title a:hover{color:var(--gold)}
.post-card-excerpt{color:var(--muted);font-size:.9rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.no-posts{color:var(--muted)}
.pager{margin-top:56px}
.pager .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.pager .page-numbers{min-width:2.6em;padding:.5em .9em;border:1px solid var(--line);text-align:center;text-decoration:none;font-family:var(--f-latin)}
.pager .page-numbers.current{background:var(--gold);border-color:var(--gold);color:#fff}

/* 記事本文 */
.entry{max-width:46rem;margin-inline:auto}
.entry-thumb{margin:0 0 36px;border:1px solid var(--line)}
.entry-thumb img{display:block;width:100%;height:auto}
.entry-content{font-size:1rem;line-height:2}
.entry-content > *{margin-block:0 1.4em}
.entry-content h2{font-size:1.45rem;letter-spacing:.08em;margin-top:2.4em;padding-bottom:.4em;border-bottom:1px solid var(--line)}
.entry-content h3{font-size:1.2rem;letter-spacing:.06em;margin-top:2em}
.entry-content a{color:var(--gold)}
.entry-content img{height:auto}
.entry-content figure{margin-inline:0}
.entry-content blockquote{margin-inline:0;padding:.4em 1.4em;border-left:2px solid var(--gold);color:var(--muted)}
.entry-content ul,.entry-content ol{padding-left:1.4em}
.entry-content table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}
.entry-content th,.entry-content td{border:1px solid var(--line);padding:.6em .9em}
.entry-nav{max-width:46rem;margin:56px auto 0;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:.88rem}
.entry-nav a{text-decoration:none;color:var(--muted)}
.entry-nav a:hover{color:var(--gold)}
.entry-nav .next{text-align:right;margin-left:auto}

/* 記事下の相談の帯 */
.page-cta{border-top:1px solid var(--line);background:var(--band)}
.page-cta .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px}
.page-cta h2{font-size:clamp(1.3rem,2.6vw,1.8rem);letter-spacing:.12em}
.page-cta p{color:var(--muted);margin-top:8px}
.page-cta .actions{display:flex;flex-wrap:wrap;gap:12px}

/* 404 */
.actions-404{display:flex;flex-wrap:wrap;gap:12px}

@media (max-width:900px){.post-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.post-list{grid-template-columns:minmax(0,1fr)}}
