/* ─── Page hero / breadcrumb ─────────────────────────────── */
.ph-page-hero {
  min-height: 280px;
  background: linear-gradient(135deg, var(--navy) 0%, #163055 100%);
  background-size: cover; background-position: center;
  position: relative;
  display: flex; align-items: flex-end;
  padding: 80px 24px 48px;
}
.ph-page-hero__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,33,55,.88) 0%, rgba(13,33,55,.4) 100%);
}
.ph-page-hero__inner { position: relative; z-index: 2; max-width: 1200px; margin: 0 auto; width: 100%; }
.ph-page-hero__title { font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(1.8rem, 3.5vw, 2.8rem); color: var(--white); font-weight: 700; margin: 12px 0 10px; }
.ph-page-hero__sub { color: rgba(255,255,255,.75); font-size: .95rem; }

.breadcrumb { font-size: .78rem; color: rgba(255,255,255,.6); display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.breadcrumb a { color: var(--gold); text-decoration: none; }
.breadcrumb a:hover { text-decoration: underline; }

/* ─── Page content ───────────────────────────────────────── */
.ph-page-content { padding: 60px 0 80px; }
.ph-content { max-width: 860px; }
.ph-content p { margin-bottom: 1em; line-height: 1.8; }
.ph-content h2 { font-size: 1.5rem; color: var(--navy); margin: 1.5em 0 .75em; }
.ph-content h3 { font-size: 1.2rem; color: var(--navy); margin: 1.4em 0 .7em; }
.ph-content ul, .ph-content ol { padding-left: 1.5em; margin-bottom: 1em; }
.ph-content li { margin-bottom: .4em; }
.ph-content img { border-radius: var(--radius); margin: 1em 0; }

/* ─── Blog post single ───────────────────────────────────── */
.ph-post-hero { min-height: 360px; background: var(--navy); background-size: cover; background-position: center; position: relative; display: flex; align-items: flex-end; padding: 100px 24px 48px; }
.ph-post-hero__overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(13,33,55,.9) 0%, rgba(13,33,55,.4) 100%); }
.ph-post-hero__inner { position: relative; z-index: 2; max-width: 1200px; margin: 0 auto; width: 100%; }
.ph-post-hero__inner h1 { font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(1.8rem, 3.5vw, 2.8rem); color: var(--white); margin: 12px 0 10px; }
.ph-post-meta { color: rgba(255,255,255,.6); font-size: .82rem; margin-top: 8px; }
.ph-post-body { padding: 56px 0 80px; }
.ph-post-layout { max-width: 1200px; margin: 0 auto; padding: 0 24px; display: grid; grid-template-columns: 1fr 320px; gap: 48px; align-items: start; }
.ph-post-content { font-size: .92rem; line-height: 1.85; color: var(--text); }
.ph-post-content p { margin-bottom: 1.2em; }
.ph-post-content h2 { font-size: 1.4rem; color: var(--navy); margin: 1.5em 0 .6em; }
.ph-post-content img { width: 100%; border-radius: var(--radius); margin: 1.2em 0; }

/* Sidebar */
.ph-post-sidebar { position: sticky; top: 90px; display: flex; flex-direction: column; gap: 24px; }
.sidebar-cta-card { background: var(--navy); border-radius: var(--radius-lg); padding: 28px; }
.sidebar-cta-card h3 { font-family: 'DM Serif Display', Georgia, serif; font-size: 1.2rem; color: var(--white); margin-bottom: 10px; }
.sidebar-cta-card p { color: rgba(255,255,255,.7); font-size: .83rem; }
.sidebar-widget { background: var(--cream); border-radius: var(--radius-lg); padding: 24px; }
.sidebar-widget h4 { font-size: .82rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--gold); margin-bottom: 16px; }
.sidebar-cat-list { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.sidebar-cat-list li a { color: var(--navy); font-size: .84rem; font-weight: 500; text-decoration: none; display: flex; align-items: center; gap: 6px; transition: color .2s; }
.sidebar-cat-list li a::before { content: '→'; color: var(--gold); }
.sidebar-cat-list li a:hover { color: var(--gold); }

/* ─── Responsive inner ───────────────────────────────────── */
@media (max-width: 860px) {
  .ph-post-layout { grid-template-columns: 1fr; }
  .ph-post-sidebar { position: static; }
}
