/* Prestige Mechanical — single-post article layouts (4 views).
   Extracted from the Post 01–04 mockups; article-only rules.
   Shared rules are unprefixed; each view's layout rules are scoped to
   body.pm-layout-N so the four .article grids can coexist.
   Site chrome + globals dropped (already in prestige.css).
   --display renamed to --title (Astra/Elementor set --display:flex). */

/* ======================= shared ======================= */
.tagline { display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;background:var(--accent);color:var(--bg);padding:6px 11px;border-radius:2px }
.post-title { font-family:var(--title);text-transform:uppercase;letter-spacing:.005em;line-height:.9;margin:0 }
.post-title em { font-style:normal;color:var(--accent) }
.standfirst { color:var(--ink-2);font-size:clamp(17px,1.5vw,21px);line-height:1.5;text-wrap:pretty }
.byline { display:flex;align-items:center;gap:clamp(18px,3vw,40px);flex-wrap:wrap;padding-block:20px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule) }
.byline .who { display:flex;flex-direction:column;gap:3px }
.byline .who b { font-weight:500;font-size:15px }
.byline .who small,.byline .field small { font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3) }
.byline .field { display:flex;flex-direction:column;gap:3px }
.byline .field b { font-weight:500;font-size:14px }
.byline .share { margin-left:auto;display:flex;align-items:center;gap:8px }
.byline .share .lbl { font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-right:4px }
.byline .share a { width:34px;height:34px;border:1px solid var(--rule-strong);border-radius:50%;display:grid;place-items:center;color:var(--ink-2);transition:border-color .2s,color .2s,background .2s }
.byline .share a:hover { border-color:var(--accent);color:var(--bg);background:var(--accent) }
.byline .share svg { width:15px;height:15px }
.prose { font-size:17.5px;line-height:1.68;color:var(--ink-2);text-wrap:pretty }
.prose h2 { font-family:var(--title);text-transform:uppercase;color:var(--ink);font-size:clamp(34px,3.6vw,52px);line-height:.95;letter-spacing:.01em;margin:clamp(48px,5vw,72px) 0 18px;scroll-margin-top:110px }
.prose h2 .sig { color:var(--accent);margin-right:14px }
.prose h3 { font-family:var(--sans);font-weight:600;color:var(--ink);font-size:19px;margin:34px 0 10px;letter-spacing:-.01em }
.prose p { margin:0 0 20px }
.prose p:last-child { margin-bottom:0 }
.prose strong { color:var(--ink);font-weight:600 }
.prose > .lead-p { font-size:20px;color:var(--ink);line-height:1.55 }
.prose a.inline { color:var(--accent);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px }
.pull { margin:clamp(40px,5vw,64px) 0;padding-left:clamp(20px,3vw,34px);border-left:4px solid var(--accent) }
.pull p { font-family:var(--title);text-transform:uppercase;color:var(--ink);font-size:clamp(28px,3.4vw,46px);line-height:1.02;letter-spacing:.01em;margin:0 }
.pull cite { display:block;margin-top:16px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-style:normal }
.sig-meta { display:flex;gap:10px;align-items:baseline;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px }
.sig-meta .n { color:var(--accent) }
.toc-title { font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3) }
.toc a { display:block;color:var(--ink-2);transition:color .2s,border-color .2s,background .2s }
.toc a.on { color:var(--ink) }
.btn.onDark { background:var(--accent);color:var(--bg) }
.btn.onDark.ghost { background:transparent;color:var(--bg);border:1px solid oklch(0.5 0.05 245) }
.related { border-top:1px solid var(--rule);padding-block:clamp(56px,7vw,96px) }
.rel-head { display:flex;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:clamp(28px,4vw,44px) }
.rel-head h2 { font-family:var(--title);text-transform:uppercase;font-size:clamp(38px,4.6vw,72px);line-height:.9;letter-spacing:.005em;margin:0 }
.rel-head h2 em { font-style:normal;color:var(--accent) }
.rel-head .all { margin-left:auto;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase }
.rel-head .all:after { content:" →";color:var(--accent) }
.ph.dark:after { background:var(--ink-deep);color:var(--bg);border-color:oklch(0.4 0.06 250) }
figure.fig { margin:clamp(36px,4vw,56px) 0 }
figure.fig .ph { aspect-ratio:16/9 }
figure.fig figcaption { font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-top:12px;padding-left:2px }
@media (max-width:900px) {
  .byline .share { margin-left:0;width:100% }
}

/* ================== view 1 (post01) ================== */
body.pm-layout-1 .hero-full { position:relative;min-height:min(74vh,720px);display:flex;align-items:flex-end;overflow:hidden;background:var(--ink-deep) }
body.pm-layout-1 .hero-full .img { position:absolute;inset:0 }
body.pm-layout-1 .hero-full .img .ph { width:100%;height:100%;border:0 }
body.pm-layout-1 .hero-full .scrim { position:absolute;inset:0;background:linear-gradient(to top,oklch(0.18 0.07 250 / .93) 0%,oklch(0.18 0.07 250 / .72) 42%,oklch(0.18 0.07 250 / .3) 100%) }
body.pm-layout-1 .hero-full .inner { position:relative;padding-block:clamp(44px,6vw,88px);color:var(--bg);width:100% }
body.pm-layout-1 .hero-full .crumb,body.pm-layout-1 .hero-full .crumb a { color:oklch(0.82 0.03 240) }
body.pm-layout-1 .hero-full .tagline { margin-bottom:22px }
body.pm-layout-1 .hero-full .post-title { color:var(--bg);font-size:clamp(48px,7.4vw,124px);max-width:22ch }
body.pm-layout-1 .hero-full .post-title em { color:oklch(0.72 0.13 245) }
body.pm-layout-1 .hero-full .standfirst { color:oklch(0.88 0.03 240);max-width:60ch;margin:26px 0 0 }
body.pm-layout-1 .article { display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:clamp(32px,5vw,80px);padding-block:clamp(36px,4vw,56px) clamp(56px,7vw,96px);align-items:start }
body.pm-layout-1 .article .col { max-width:70ch }
body.pm-layout-1 .rail { position:sticky;top:104px;display:grid;gap:14px;border-left:1px solid var(--rule);padding-left:20px }
body.pm-layout-1 .rail .toc { display:grid;gap:2px;margin-top:4px }
body.pm-layout-1 .rail .toc a { font-size:14px;padding:8px 0 8px 14px;border-left:2px solid transparent;margin-left:-21px;display:flex;gap:10px }
body.pm-layout-1 .rail .toc a .n { font-family:var(--mono);font-size:10.5px;color:var(--ink-3);min-width:18px;padding-top:3px }
body.pm-layout-1 .rail .toc a.on { border-left-color:var(--accent);font-weight:500 }
body.pm-layout-1 .rail .toc a.on .n { color:var(--accent) }
body.pm-layout-1 .rail .ask { border:1px solid var(--rule);padding:16px;display:grid;gap:10px;margin-top:8px }
body.pm-layout-1 .rail .ask b { font-family:var(--title);text-transform:uppercase;font-size:26px;line-height:1;letter-spacing:.01em }
body.pm-layout-1 .rail .ask p { margin:0;font-size:13.5px;color:var(--ink-2) }
body.pm-layout-1 .rail .ask a { font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase }
body.pm-layout-1 .rail .ask a:after { content:" →";color:var(--accent) }
body.pm-layout-1 .rel-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:16px }
body.pm-layout-1 .rel-card { border:1px solid var(--rule);background:var(--bg);display:flex;flex-direction:column;transition:border-color .2s,transform .2s }
body.pm-layout-1 .rel-card:hover { border-color:var(--accent);transform:translateY(-3px) }
body.pm-layout-1 .rel-card .ph { aspect-ratio:16/10;border:0;border-bottom:1px solid var(--rule) }
body.pm-layout-1 .rel-card .b { padding:20px 20px 22px;display:flex;flex-direction:column;gap:12px;flex:1 }
body.pm-layout-1 .rel-card .cat { font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent) }
body.pm-layout-1 .rel-card h3 { font-family:var(--sans);font-weight:600;font-size:18px;line-height:1.3;margin:0;letter-spacing:-.01em;color:var(--ink);flex:1 }
body.pm-layout-1 .rel-card .d { font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3) }
@media (max-width:1040px) {
  body.pm-layout-1 .article { grid-template-columns:1fr }
  body.pm-layout-1 .rail { position:static;border-left:0;padding-left:0;border-top:1px solid var(--rule);padding-top:20px;order:-1 }
  body.pm-layout-1 .rail .toc a { margin-left:0;border-left:0;border-bottom:1px solid var(--rule);padding-left:0 }
  body.pm-layout-1 .rail .toc a.on { border-left:0;color:var(--accent) }
  body.pm-layout-1 .rel-grid { grid-template-columns:1fr 1fr }
}
@media (max-width:680px) {
  body.pm-layout-1 .rel-grid { grid-template-columns:1fr }
}

/* ================== view 2 (post02) ================== */
body.pm-layout-2 .hero-split { border-bottom:1px solid var(--rule);background:var(--bg-2) }
body.pm-layout-2 .hero-split .g { display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,64px);align-items:center;padding-block:clamp(40px,5vw,76px) }
body.pm-layout-2 .hero-split .tagline { margin-bottom:20px }
body.pm-layout-2 .hero-split .post-title { font-size:clamp(44px,5.6vw,92px);max-width:20ch }
body.pm-layout-2 .hero-split .standfirst { margin:24px 0 0;max-width:48ch }
body.pm-layout-2 .hero-split .shot .ph { aspect-ratio:4/3 }
body.pm-layout-2 .hero-split .crumb { margin-bottom:18px }
body.pm-layout-2 .article { display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(32px,5vw,72px);padding-block:clamp(32px,4vw,52px) clamp(56px,7vw,96px);align-items:start }
body.pm-layout-2 .article .col { max-width:78ch }
body.pm-layout-2 .toc-card { position:sticky;top:104px;border:1px solid var(--rule-strong);background:var(--bg);padding:24px 22px 26px;display:grid;gap:16px }
body.pm-layout-2 .toc-card .hd { display:flex;align-items:baseline;justify-content:space-between;gap:12px }
body.pm-layout-2 .toc-card .hd b { font-family:var(--title);text-transform:uppercase;font-size:30px;line-height:1;letter-spacing:.01em }
body.pm-layout-2 .toc-card .toc { display:grid;gap:0;border-top:1px solid var(--rule) }
body.pm-layout-2 .toc-card .toc a { display:grid;grid-template-columns:30px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:14.5px;align-items:baseline }
body.pm-layout-2 .toc-card .toc a .n { font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-3) }
body.pm-layout-2 .toc-card .toc a.on { color:var(--ink);font-weight:500 }
body.pm-layout-2 .toc-card .toc a.on .n { color:var(--accent) }
body.pm-layout-2 .toc-card .toc a:hover { background:var(--bg-2) }
body.pm-layout-2 .toc-card .foot { font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3) }
body.pm-layout-2 .prose .pull { margin-inline:clamp(0px,-4vw,0px) }
body.pm-layout-2 .prose .aside-note { float:right;width:250px;margin:8px -110px 24px 32px;border-top:2px solid var(--accent);padding-top:14px;font-size:14px;line-height:1.5;color:var(--ink-2) }
body.pm-layout-2 .prose .aside-note b { display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:8px }
body.pm-layout-2 .rel-rows { border-top:1px solid var(--rule) }
body.pm-layout-2 .rel-row { display:grid;grid-template-columns:56px 120px 1fr auto;gap:clamp(16px,3vw,36px);align-items:center;padding:22px 0;border-bottom:1px solid var(--rule);transition:background .2s }
body.pm-layout-2 .rel-row:hover { background:var(--bg-2) }
body.pm-layout-2 .rel-row .n { font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:.1em }
body.pm-layout-2 .rel-row .ph { aspect-ratio:4/3 }
body.pm-layout-2 .rel-row h3 { font-family:var(--title);text-transform:uppercase;font-size:clamp(24px,2.6vw,36px);line-height:1.02;letter-spacing:.01em;margin:0;color:var(--ink) }
body.pm-layout-2 .rel-row .m { font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);text-align:right;display:grid;gap:5px }
body.pm-layout-2 .rel-row .m .cat { color:var(--accent) }
@media (max-width:1100px) {
  body.pm-layout-2 .prose .aside-note { float:none;width:auto;margin:24px 0 }
}
@media (max-width:1040px) {
  body.pm-layout-2 .article { grid-template-columns:1fr }
  body.pm-layout-2 .toc-card { position:static;order:-1 }
}
@media (max-width:880px) {
  body.pm-layout-2 .hero-split .g { grid-template-columns:1fr }
  body.pm-layout-2 .rel-row { grid-template-columns:44px 1fr;gap:14px }
  body.pm-layout-2 .rel-row .ph { display:none }
  body.pm-layout-2 .rel-row .m { grid-column:1/-1;text-align:left;padding-left:58px;display:flex;gap:14px }
}

/* ================== view 3 (post03) ================== */
body.pm-layout-3 .head3 { padding-block:clamp(40px,5vw,76px) 0 }
body.pm-layout-3 .head3 .top { display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;margin-bottom:26px }
body.pm-layout-3 .head3 .post-title { font-size:clamp(46px,6.4vw,110px);max-width:26ch }
body.pm-layout-3 .head3 .standfirst { margin:26px 0 0;max-width:64ch }
body.pm-layout-3 .head3 .byline { margin-top:clamp(28px,4vw,44px) }
body.pm-layout-3 .shot3 { margin-top:clamp(28px,4vw,48px) }
body.pm-layout-3 .shot3 .ph { aspect-ratio:21/9;border-radius:3px }
body.pm-layout-3 .shot3 figcaption { font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-top:12px }
body.pm-layout-3 .article { display:grid;grid-template-columns:minmax(0,1fr) 236px;gap:clamp(32px,5vw,72px);padding-block:clamp(40px,5vw,64px) clamp(56px,7vw,96px);align-items:start }
body.pm-layout-3 .article .col { max-width:74ch }
body.pm-layout-3 .prose .two-col { column-count:2;column-gap:36px;margin-bottom:24px }
body.pm-layout-3 .prose .two-col p { margin-bottom:16px }
body.pm-layout-3 .line-toc { position:sticky;top:104px;display:grid;gap:16px }
body.pm-layout-3 .line-toc .track { position:relative;display:grid;gap:0;padding-left:22px }
body.pm-layout-3 .line-toc .track:before { content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:var(--rule) }
body.pm-layout-3 .line-toc .track:after { content:"";position:absolute;left:0;top:6px;height:var(--p,0%);width:2px;background:var(--accent);transition:height .15s linear;max-height:calc(100% - 12px) }
body.pm-layout-3 .line-toc .track a { position:relative;font-size:13.5px;padding:9px 0;color:var(--ink-3) }
body.pm-layout-3 .line-toc .track a:before { content:"";position:absolute;left:-26px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--rule-strong);border:2px solid var(--bg) }
body.pm-layout-3 .line-toc .track a.on { color:var(--ink);font-weight:500 }
body.pm-layout-3 .line-toc .track a.on:before { background:var(--accent);box-shadow:0 0 0 3px oklch(0.55 0.14 245 / .2) }
body.pm-layout-3 .line-toc .pct { font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);border-top:1px solid var(--rule);padding-top:12px }
body.pm-layout-3 .rel-scroll { display:flex;gap:16px;overflow-x:auto;padding-bottom:14px;scroll-snap-type:x mandatory }
body.pm-layout-3 .rel-scroll::-webkit-scrollbar { height:6px }
body.pm-layout-3 .rel-scroll::-webkit-scrollbar-thumb { background:var(--rule-strong);border-radius:99px }
body.pm-layout-3 .rel-slide { flex:0 0 clamp(260px,30vw,360px);scroll-snap-align:start;border:1px solid var(--rule);background:var(--bg);display:flex;flex-direction:column;transition:border-color .2s }
body.pm-layout-3 .rel-slide:hover { border-color:var(--accent) }
body.pm-layout-3 .rel-slide .ph { aspect-ratio:3/2;border:0;border-bottom:1px solid var(--rule) }
body.pm-layout-3 .rel-slide .b { padding:18px 18px 20px;display:grid;gap:10px }
body.pm-layout-3 .rel-slide .cat { font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent) }
body.pm-layout-3 .rel-slide h3 { font-family:var(--sans);font-weight:600;font-size:17px;line-height:1.32;margin:0;color:var(--ink) }
body.pm-layout-3 .rel-slide .d { font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3) }
body.pm-layout-3 .scroll-hint { font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-top:14px }
@media (max-width:1040px) {
  body.pm-layout-3 .article { grid-template-columns:1fr }
  body.pm-layout-3 .line-toc { position:static;order:-1;border-top:1px solid var(--rule);padding-top:20px }
}
@media (max-width:720px) {
  body.pm-layout-3 .prose .two-col { column-count:1 }
}

/* ================== view 4 (post04) ================== */
body.pm-layout-4 .head4 { border-bottom:1px solid var(--rule);background:var(--bg-2) }
body.pm-layout-4 .head4 .inner { max-width:80ch;margin:0 auto;padding-block:clamp(48px,7vw,104px);text-align:center }
body.pm-layout-4 .head4 .tagline { margin-bottom:24px }
body.pm-layout-4 .head4 .post-title { font-size:clamp(48px,7vw,116px);margin-inline:auto }
body.pm-layout-4 .head4 .standfirst { margin:28px auto 0;max-width:56ch }
body.pm-layout-4 .head4 .byline { justify-content:center;margin-top:clamp(30px,4vw,46px);border-bottom:0;padding-bottom:0 }
body.pm-layout-4 .head4 .byline .share { margin-left:0 }
body.pm-layout-4 .shot4 { background:var(--bg-2);padding-bottom:clamp(36px,5vw,64px) }
body.pm-layout-4 .shot4 .ph { aspect-ratio:2/1 }
body.pm-layout-4 .article { padding-block:clamp(44px,6vw,80px) clamp(56px,7vw,96px) }
body.pm-layout-4 .article .col { max-width:68ch;margin:0 auto }
body.pm-layout-4 .prose h2 { text-align:left }
body.pm-layout-4 .toc-pill { position:fixed;right:clamp(14px,2vw,28px);bottom:clamp(74px,9vh,96px);z-index:50;width:min(320px,calc(100vw - 28px)) }
body.pm-layout-4 .toc-pill .btnp { margin-left:auto;display:flex;align-items:center;gap:10px;background:var(--ink-deep);color:var(--bg);border:0;border-radius:999px;padding:12px 18px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 26px oklch(0.22 0.08 250 / .28) }
body.pm-layout-4 .toc-pill .btnp .bars { display:grid;gap:3px }
body.pm-layout-4 .toc-pill .btnp .bars i { display:block;height:1.5px;background:var(--accent);border-radius:2px }
body.pm-layout-4 .toc-pill .btnp .bars i:nth-child(1) { width:14px }
body.pm-layout-4 .toc-pill .btnp .bars i:nth-child(2) { width:10px }
body.pm-layout-4 .toc-pill .btnp .bars i:nth-child(3) { width:12px }
body.pm-layout-4 .toc-pill .panel { display:none;background:var(--bg);border:1px solid var(--rule-strong);border-radius:3px;padding:18px 18px 20px;margin-bottom:10px;box-shadow:0 14px 40px oklch(0.22 0.08 250 / .18) }
body.pm-layout-4 .toc-pill.open .panel { display:block }
body.pm-layout-4 .toc-pill .panel .toc { display:grid;gap:0;margin-top:12px;border-top:1px solid var(--rule) }
body.pm-layout-4 .toc-pill .panel .toc a { display:grid;grid-template-columns:26px 1fr;gap:8px;padding:11px 0;border-bottom:1px solid var(--rule);font-size:14px;align-items:baseline }
body.pm-layout-4 .toc-pill .panel .toc a .n { font-family:var(--mono);font-size:10px;color:var(--ink-3) }
body.pm-layout-4 .toc-pill .panel .toc a.on { color:var(--ink);font-weight:500 }
body.pm-layout-4 .toc-pill .panel .toc a.on .n { color:var(--accent) }
body.pm-layout-4 .rel-index { border-top:1px solid var(--rule) }
body.pm-layout-4 .rel-item { display:grid;grid-template-columns:auto 1fr auto;gap:clamp(18px,4vw,44px);align-items:center;padding:clamp(20px,3vw,30px) 0;border-bottom:1px solid var(--rule);transition:padding-left .2s,background .2s }
body.pm-layout-4 .rel-item:hover { background:var(--bg-2);padding-left:14px }
body.pm-layout-4 .rel-item .n { font-family:var(--title);font-size:clamp(34px,4vw,60px);line-height:.85;color:var(--rule-strong);letter-spacing:.01em }
body.pm-layout-4 .rel-item:hover .n { color:var(--accent) }
body.pm-layout-4 .rel-item .t { display:grid;gap:7px }
body.pm-layout-4 .rel-item .t h3 { font-family:var(--title);text-transform:uppercase;font-size:clamp(24px,2.8vw,40px);line-height:1;letter-spacing:.01em;margin:0;color:var(--ink) }
body.pm-layout-4 .rel-item .t .cat { font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent) }
body.pm-layout-4 .rel-item .go { font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap }
body.pm-layout-4 .rel-item .go:after { content:" →";color:var(--accent) }
@media (max-width:640px) {
  body.pm-layout-4 .rel-item { grid-template-columns:auto 1fr }
  body.pm-layout-4 .rel-item .go { display:none }
  body.pm-layout-4 .toc-pill { width:calc(100vw - 28px) }
}

/* ================== host-theme fixes ==================
   Astra leaves us inside #content > .ast-container (max-width + padding),
   which boxes the full-bleed hero and squeezes the article grid.
   The astra_get_content_layout filter handles it; this is the belt-and-braces. */
body.prestige-post #content > .ast-container,
body.prestige-post #primary,
body.prestige-post .site-content > .ast-container {
  max-width: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
  display: block;
}
body.prestige-post #content { padding: 0; }
body.prestige-post .ast-no-sidebar #primary { padding: 0; margin: 0; }

/* Override home prestige.css .btn leak (width:100%, space-between, color !important) */
body.prestige-post .hero-full .btn,
body.prestige-post .hero-split .btn,
body.prestige-post .rail .btn { width: auto; justify-content: center; }

/* mockup carried these as inline styles */
body.pm-layout-1 .hero-full .crumb { margin-bottom: 20px; }

/* ── Astra hijacks .byline ────────────────────────────────────────────────
   Astra ships `.byline{display:none}` plus `.single .byline{display:inline}`.
   That second rule is (0,2,0) so it beats a bare `.byline{display:flex}`
   whatever the load order — the byline collapsed to inline text.
   `body.prestige-post .byline` is (0,2,1) and wins cleanly, no !important. */
body.prestige-post .byline {
  display: flex;
  align-items: center;
  gap: clamp(18px, 3vw, 40px);
  flex-wrap: wrap;
  padding-block: 20px;
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
body.prestige-post .byline .who,
body.prestige-post .byline .field { display: flex; flex-direction: column; gap: 3px; }
body.prestige-post .byline .share { margin-left: auto; display: flex; align-items: center; gap: 8px; }
body.prestige-post .byline .share a { width: 34px; height: 34px; display: grid; place-items: center; }

/* view 4 centres it and drops the bottom rule */
body.pm-layout-4 .head4 .byline { justify-content: center; border-bottom: 0; padding-bottom: 0; }
body.pm-layout-4 .head4 .byline .share { margin-left: 0; }

@media (max-width: 900px) {
  body.prestige-post .byline .share { margin-left: 0; width: 100%; }
}
