/* ════════════════════════════════════════════════════════════════════════
   PRN — Press Release Network  |  original theme "Broadsheet / Signal"
   Crimson & Carbon. No navy/blue. Light + dark.
   ════════════════════════════════════════════════════════════════════════ */

/* ── 1. RESET ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
img,svg,video{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
a{text-decoration:none;color:inherit}

/* ── 2. TOKENS — Crimson & Carbon ── */
.theme-prn{
  --bg:#FFFFFF; --bg2:#F6F5F3; --bg3:#EDEBE7;
  --ink:#141414; --ink2:#444444; --mid:#6B6B6B; --faint:#9A9A9A;
  --line:#E6E4E0; --line2:#D8D5CE;
  --crimson:#C20E2E; --crimson-d:#9E0B25; --crimson-l:#E5274A;
  --gold:#B68A2E;
  --carbon:#0A0A0A; --carbon2:#161616; --on-carbon:#F4F2EE; --on-carbon-mid:#A3A09B;
  --display:'Libre Caslon Display',Georgia,'Times New Roman',serif;
  --serif:'Source Serif 4',Georgia,serif;
  --sans:'Libre Franklin',system-ui,-apple-system,sans-serif;
  --cond:'Oswald','Libre Franklin',sans-serif;
  --shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.06);
  --shadow-lift:0 6px 14px rgba(0,0,0,.08),0 20px 50px rgba(0,0,0,.12);
}
.theme-prn-dark{
  --bg:#0A0A0A; --bg2:#121212; --bg3:#1A1A1A;
  --ink:#F4F2EE; --ink2:#D4D2CD; --mid:#9A9A9A; --faint:#5C5C5C;
  --line:#242424; --line2:#2E2E2E;
  --crimson:#E5274A; --crimson-d:#C20E2E; --crimson-l:#FF3B57;
  --gold:#C8A24E;
  --carbon:#000000; --carbon2:#0E0E0E; --on-carbon:#F4F2EE; --on-carbon-mid:#A3A09B;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 10px 30px rgba(0,0,0,.5);
  --shadow-lift:0 10px 30px rgba(0,0,0,.6);
}

/* ── 3. BASE ── */
body{
  background:var(--bg); color:var(--ink);
  font-family:var(--sans); font-size:16px; line-height:1.5;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.prn-wrap{max-width:1280px;margin:0 auto;padding:0 28px}
@media(max-width:640px){.prn-wrap{padding:0 16px}}
.prn-main{min-height:50vh;padding-bottom:48px}
::selection{background:var(--crimson);color:#fff}

/* ── 4. TOP STRIP (carbon, ultra-thin) ── */
.prn-strip{background:var(--carbon);color:var(--on-carbon-mid);font-family:var(--sans);font-size:12px}
.prn-strip-in{max-width:1280px;margin:0 auto;padding:7px 28px;display:flex;align-items:center;gap:18px}
.prn-strip .live{display:inline-flex;align-items:center;gap:7px;color:#fff;font-family:var(--cond);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.prn-strip .dot{width:8px;height:8px;border-radius:50%;background:var(--crimson-l);box-shadow:0 0 0 0 rgba(229,39,74,.6);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(229,39,74,.6)}70%{box-shadow:0 0 0 8px rgba(229,39,74,0)}100%{box-shadow:0 0 0 0 rgba(229,39,74,0)}}
.prn-strip .date{color:var(--on-carbon-mid)}
.prn-strip .spacer{flex:1}
.prn-strip .quick{display:flex;gap:14px}
.prn-strip .quick a{color:var(--on-carbon-mid);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-family:var(--cond)}
.prn-strip .quick a:hover{color:#fff}
@media(max-width:760px){.prn-strip .quick{display:none}}

/* ── 5. MASTHEAD (left-aligned, oversized) ── */
.prn-mast{background:var(--bg);border-bottom:1px solid var(--line)}
.prn-mast-in{max-width:1280px;margin:0 auto;padding:22px 28px 18px;display:flex;align-items:flex-end;gap:20px}
.prn-brand{display:flex;align-items:center;gap:14px}
.prn-brand .mark{width:54px;height:54px;flex:0 0 auto}
.prn-brand .word{display:flex;flex-direction:column;line-height:.9}
.prn-brand .word .pr{font-family:var(--display);font-size:46px;font-weight:700;letter-spacing:.02em;color:var(--ink)}
.prn-brand .word .pr b{color:var(--crimson);font-weight:700}
.prn-brand .word .sub{font-family:var(--cond);font-size:11px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-top:6px}
.prn-mast .underbar{height:4px;background:var(--crimson);width:120px;margin-top:8px}
.prn-mast-right{margin-left:auto;display:flex;align-items:center;gap:14px}
.prn-icon-btn{width:40px;height:40px;border:1px solid var(--line2);border-radius:2px;display:flex;align-items:center;justify-content:center;color:var(--ink);transition:.15s}
.prn-icon-btn:hover{border-color:var(--crimson);color:var(--crimson)}
@media(max-width:760px){
  .prn-brand .word .pr{font-size:34px}
  .prn-brand .mark{width:42px;height:42px}
  .prn-mast-in{padding:16px}
}

/* ── 6. NAV (sticky, carbon) ── */
.prn-nav{position:sticky;top:0;z-index:900;background:var(--carbon);border-top:3px solid var(--crimson)}
.prn-nav-in{max-width:1280px;margin:0 auto;padding:0 28px;display:flex;align-items:center}
.prn-nav a,.prn-nav .menu-item a{display:block;color:var(--on-carbon);font-family:var(--cond);font-weight:600;font-size:14px;letter-spacing:.05em;text-transform:uppercase;padding:14px 15px;transition:.15s;border-bottom:3px solid transparent;white-space:nowrap}
.prn-nav a:hover{color:#fff;background:rgba(255,255,255,.06)}
.prn-nav .current-menu-item>a,.prn-nav .current-category>a,.prn-nav .current-menu-parent>a{color:#fff;border-bottom-color:var(--crimson-l)}
.prn-nav ul{display:flex;flex-wrap:nowrap;align-items:center}
.prn-nav-scroll{overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;flex:1}
.prn-nav-scroll::-webkit-scrollbar{display:none}
.prn-burger{display:none}
.prn-mobnav{display:none}
@media(max-width:900px){
  .prn-nav-scroll{display:none}
  .prn-burger{display:flex;align-items:center;gap:8px;color:var(--on-carbon);font-family:var(--cond);text-transform:uppercase;letter-spacing:.06em;font-size:13px;padding:13px 0}
  .prn-mobnav{display:none;background:var(--carbon2)}
  .prn-mobnav.open{display:block}
  .prn-mobnav a{display:block;color:var(--on-carbon);font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06)}
  .prn-mobnav a:hover{background:var(--crimson);color:#fff}
}

/* ── 7. BREAKING TICKER ── */
.prn-breaking{background:var(--crimson);color:#fff;overflow:hidden;display:flex;align-items:stretch}
.prn-breaking .tag{background:var(--carbon);color:#fff;font-family:var(--cond);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:12px;padding:9px 16px;display:flex;align-items:center;gap:8px;white-space:nowrap;flex:0 0 auto}
.prn-breaking .tag .dot{width:7px;height:7px;border-radius:50%;background:var(--crimson-l);animation:pulse 1.6s infinite}
.prn-breaking .track-wrap{overflow:hidden;flex:1;display:flex;align-items:center}
.prn-breaking .track{display:flex;gap:42px;white-space:nowrap;padding-left:24px;animation:marq 38s linear infinite}
.prn-breaking .track a{color:#fff;font-family:var(--sans);font-weight:500;font-size:13.5px}
.prn-breaking .track a:hover{text-decoration:underline}
.prn-breaking:hover .track{animation-play-state:paused}
@keyframes marq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ── 8. SECTION BAND ── */
.prn-band{margin:40px 0}
.prn-band-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;border-bottom:2px solid var(--ink);padding-bottom:8px}
.prn-band-head .bar{width:6px;height:26px;background:var(--crimson);flex:0 0 auto}
.prn-band-head h2{font-family:var(--cond);font-weight:700;font-size:24px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}
.prn-band-head .all{margin-left:auto;font-family:var(--cond);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--crimson)}
.prn-band-head .all:hover{color:var(--crimson-d)}

/* ── 9. CINEMATIC LEAD HERO ── */
.prn-lead{position:relative;margin:28px 0 8px;border-radius:4px;overflow:hidden;min-height:480px;display:flex;align-items:flex-end;background:var(--bg3)}
.prn-lead img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.prn-lead .veil{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,8,8,.92) 0%,rgba(8,8,8,.55) 42%,rgba(8,8,8,.05) 78%)}
.prn-lead .inner{position:relative;padding:40px;max-width:860px;color:#fff}
.prn-lead .kicker{display:inline-block;background:var(--crimson);color:#fff;font-family:var(--cond);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;padding:5px 12px;margin-bottom:16px}
.prn-lead h1,.prn-lead .h{font-family:var(--display);font-weight:700;font-size:48px;line-height:1.05;color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.4)}
.prn-lead .dek{font-family:var(--sans);font-size:17px;line-height:1.5;color:rgba(255,255,255,.86);margin-top:14px;max-width:660px}
.prn-lead .meta{margin-top:16px;font-family:var(--cond);text-transform:uppercase;letter-spacing:.06em;font-size:12px;color:rgba(255,255,255,.75);display:flex;gap:14px;align-items:center}
.prn-lead .meta .by{color:#fff}
@media(max-width:760px){.prn-lead{min-height:380px}.prn-lead h1,.prn-lead .h{font-size:30px}.prn-lead .inner{padding:22px}}

/* ── 10. TOP GRID ── */
.prn-top{display:grid;grid-template-columns:1fr 340px;gap:28px;margin-top:28px}
@media(max-width:980px){.prn-top{grid-template-columns:1fr}}

/* ── 11. MOSAIC ── */
.prn-mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.prn-mosaic .prn-tile.is-feature{grid-column:span 2;grid-row:span 2}
@media(max-width:980px){.prn-mosaic{grid-template-columns:repeat(2,1fr)}.prn-mosaic .prn-tile.is-feature{grid-column:span 2}}
@media(max-width:560px){.prn-mosaic{grid-template-columns:1fr}.prn-mosaic .prn-tile.is-feature{grid-column:span 1}}

/* ── 12. STORY CARD ── */
.prn-story{display:flex;flex-direction:column;background:var(--bg);transition:.18s}
.prn-story .thumb{position:relative;overflow:hidden;border-radius:3px;aspect-ratio:16/10;background:var(--bg3)}
.prn-story .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.prn-story:hover .thumb img{transform:scale(1.045)}
.prn-story .kicker{font-family:var(--cond);font-weight:700;letter-spacing:.07em;text-transform:uppercase;font-size:11px;color:var(--crimson);margin:12px 0 6px}
.prn-story h3{font-family:var(--display);font-weight:700;font-size:19px;line-height:1.18;color:var(--ink)}
.prn-story:hover h3{color:var(--crimson)}
.prn-story .dek{font-family:var(--sans);font-size:14px;color:var(--mid);line-height:1.45;margin-top:7px}
.prn-story .meta{font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;font-size:11px;color:var(--faint);margin-top:9px;display:flex;gap:10px}
.prn-tile.is-feature .prn-story h3{font-size:30px;line-height:1.08}
.prn-tile.is-feature .prn-story .thumb{aspect-ratio:16/9}
.prn-tile.is-feature .prn-story .dek{font-size:16px}

/* overlay card */
.prn-story.overlay{position:relative;border-radius:3px;overflow:hidden;min-height:260px;justify-content:flex-end}
.prn-story.overlay .thumb{position:absolute;inset:0;aspect-ratio:auto;border-radius:0}
.prn-story.overlay .veil{position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,8,8,.9),rgba(8,8,8,.1) 70%)}
.prn-story.overlay .ov{position:relative;padding:18px;color:#fff}
.prn-story.overlay h3{color:#fff}
.prn-story.overlay:hover h3{color:#fff;text-decoration:underline}
.prn-story.overlay .kicker{color:#fff;background:var(--crimson);display:inline-block;padding:3px 9px}
.prn-story.overlay .meta{color:rgba(255,255,255,.8)}

/* ── 13. TRENDING ── */
.prn-rail h2.rail-h{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:15px;color:var(--ink);border-bottom:3px solid var(--crimson);padding-bottom:8px;margin-bottom:6px}
.prn-trend{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line)}
.prn-trend .n{font-family:var(--display);font-weight:700;font-size:30px;line-height:1;color:var(--gold);flex:0 0 auto;width:34px;text-align:center}
.prn-trend h4{font-family:var(--display);font-weight:700;font-size:16px;line-height:1.2;color:var(--ink)}
.prn-trend:hover h4{color:var(--crimson)}
.prn-trend .meta{font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px;color:var(--faint);margin-top:5px}

/* ── 14. WIRE ── */
.prn-wire-item{padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:12px}
.prn-wire-item time{font-family:var(--cond);font-weight:600;color:var(--crimson);font-size:11px;letter-spacing:.04em;flex:0 0 auto;width:64px;padding-top:2px}
.prn-wire-item a{font-family:var(--sans);font-weight:500;font-size:14.5px;line-height:1.35;color:var(--ink)}
.prn-wire-item a:hover{color:var(--crimson)}

/* ── 15. OPINION ── */
.prn-op{background:var(--bg2);border-left:4px solid var(--crimson);border-radius:0 4px 4px 0;padding:22px 24px;margin:40px 0}
.prn-op-head{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
.prn-op-head .lbl{font-family:var(--cond);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:14px;color:var(--crimson)}
.prn-op-head .all{margin-left:auto;font-family:var(--cond);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mid)}
.prn-op-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media(max-width:900px){.prn-op-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.prn-op-grid{grid-template-columns:1fr}}
.prn-op-card{display:flex;gap:12px;align-items:flex-start}
.prn-op-card img{width:46px;height:46px;border-radius:50%;flex:0 0 auto;object-fit:cover}
.prn-op-card h4{font-family:var(--display);font-style:italic;font-weight:700;font-size:16px;line-height:1.2;color:var(--ink)}
.prn-op-card:hover h4{color:var(--crimson)}
.prn-op-card .au{font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px;color:var(--gold);margin-top:5px}

/* ── 16. PRESS RELEASES ── */
.prn-pr{border:1px dashed var(--line2);border-radius:4px;padding:18px 22px;margin:40px 0;background:var(--bg2)}
.prn-pr-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px;border-bottom:1px solid var(--line);padding-bottom:8px}
.prn-pr-head .lbl{font-family:var(--cond);font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:13px;color:var(--mid)}
.prn-pr-head .sub{font-family:var(--cond);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px;color:var(--faint)}
.prn-pr-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 28px}
@media(max-width:640px){.prn-pr-grid{grid-template-columns:1fr}}
.prn-pr-grid a{display:block;padding:8px 0;border-bottom:1px solid var(--line);font-family:var(--sans);font-weight:500;font-size:14px;color:var(--ink2)}
.prn-pr-grid a:hover{color:var(--crimson)}

/* ── 17. ARTICLE ── */
.prn-article-hero{position:relative;min-height:440px;display:flex;align-items:flex-end;background:var(--carbon)}
.prn-article-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}
.prn-article-hero .veil{position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,6,6,.95),rgba(6,6,6,.35) 60%,rgba(6,6,6,.1))}
.prn-article-hero .inner{position:relative;max-width:900px;margin:0 auto;width:100%;padding:46px 28px;color:#fff}
.prn-article-hero .kicker{display:inline-block;background:var(--crimson);color:#fff;font-family:var(--cond);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;padding:5px 12px;margin-bottom:14px}
.prn-article-hero h1{font-family:var(--display);font-weight:700;font-size:42px;line-height:1.08;color:#fff}
.prn-article-hero .byline{margin-top:16px;font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;color:rgba(255,255,255,.82);display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.prn-article-hero .byline .by{color:#fff;font-weight:600}
@media(max-width:760px){.prn-article-hero h1{font-size:28px}.prn-article-hero{min-height:320px}}

.prn-article-head{padding:34px 0 8px}
.prn-article-head .kicker{display:inline-block;background:var(--crimson);color:#fff;font-family:var(--cond);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;padding:5px 12px;margin-bottom:14px}
.prn-article-head h1{font-family:var(--display);font-weight:700;font-size:40px;line-height:1.1;color:var(--ink)}
.prn-article-head .byline{margin-top:14px;font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;color:var(--mid);display:flex;flex-wrap:wrap;gap:8px 14px}

.prn-read{max-width:720px;margin:0 auto;padding:0 28px}
.prn-article-body{font-family:var(--serif);font-size:19px;line-height:1.78;color:var(--ink);padding:30px 0}
.prn-article-body p{margin-bottom:22px}
.prn-article-body>p:first-of-type::first-letter{float:left;font-family:var(--display);font-weight:700;font-size:68px;line-height:.78;padding:6px 12px 0 0;color:var(--crimson)}
.prn-article-body em:first-child{color:var(--mid)}
.prn-article-body h2{font-family:var(--display);font-weight:700;font-size:27px;line-height:1.2;margin:34px 0 14px;color:var(--ink);padding-left:14px;border-left:4px solid var(--crimson)}
.prn-article-body h3{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:18px;margin:28px 0 12px;color:var(--ink)}
.prn-article-body a{color:var(--crimson);text-decoration:underline;text-underline-offset:2px}
.prn-article-body img{border-radius:3px;margin:24px 0}
.prn-article-body blockquote{border-left:4px solid var(--gold);background:var(--bg2);padding:16px 20px;margin:24px 0;font-style:italic;font-size:20px;color:var(--ink2)}
.prn-article-body ul,.prn-article-body ol{margin:0 0 22px 22px}
.prn-article-body li{margin-bottom:8px;list-style:disc}
.prn-sep{opacity:.5}

.prn-tags{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}
.prn-tags a{font-family:var(--cond);text-transform:uppercase;letter-spacing:.04em;font-size:11px;color:var(--ink2);border:1px solid var(--line2);border-radius:2px;padding:5px 10px}
.prn-tags a:hover{border-color:var(--crimson);color:var(--crimson)}

.prn-share{display:flex;gap:10px;align-items:center;margin:8px 0 26px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.prn-share .lbl{font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--mid);margin-right:4px}
.prn-share a{width:38px;height:38px;border:1px solid var(--line2);border-radius:2px;display:flex;align-items:center;justify-content:center;color:var(--ink);transition:.15s}
.prn-share a:hover{background:var(--crimson);border-color:var(--crimson);color:#fff}

.prn-aucard{display:flex;gap:16px;align-items:flex-start;background:var(--bg2);border-radius:4px;padding:20px;margin:26px 0;border-top:3px solid var(--crimson)}
.prn-aucard img{width:64px;height:64px;border-radius:50%;flex:0 0 auto}
.prn-aucard .name{font-family:var(--display);font-weight:700;font-size:19px;color:var(--ink)}
.prn-aucard .role{font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em;font-size:11px;color:var(--gold);margin:3px 0 8px}
.prn-aucard .bio{font-family:var(--sans);font-size:14px;color:var(--mid);line-height:1.5}

.prn-related{margin:36px 0}
.prn-progress{position:fixed;top:0;left:0;height:3px;background:var(--crimson);width:0;z-index:1000}

.breadcrumbs{font-family:var(--cond)!important;text-transform:uppercase;letter-spacing:.04em;font-size:11px!important;color:var(--mid)!important;margin:18px 0 0!important}
.breadcrumbs a{color:var(--mid)!important}
.breadcrumbs a:hover{color:var(--crimson)!important}

/* ── 18. ARCHIVE ── */
.prn-archead{padding:30px 0 6px;border-bottom:2px solid var(--ink);margin-bottom:8px}
.prn-archead .bar{display:inline-block;width:48px;height:6px;background:var(--crimson);margin-bottom:12px}
.prn-archead h1{font-family:var(--display);font-weight:700;font-size:40px;line-height:1.05;color:var(--ink)}
.prn-archead p{font-family:var(--sans);font-size:15px;color:var(--mid);margin-top:8px;max-width:680px}
.prn-arc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:24px}
@media(max-width:900px){.prn-arc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.prn-arc-grid{grid-template-columns:1fr}}

/* ── 19. PAGINATION ── */
.prn-pagination{display:flex;justify-content:center;margin:40px 0}
.prn-loadmore{font-family:var(--cond);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:13px;color:#fff;background:var(--crimson);padding:14px 30px;border-radius:2px;cursor:pointer;transition:.15s}
.prn-loadmore:hover{background:var(--crimson-d)}

/* ── 20. PAGES ── */
.prn-page{max-width:760px;margin:0 auto;padding:30px 28px}
.prn-page h1{font-family:var(--display);font-weight:700;font-size:38px;color:var(--ink);margin-bottom:18px}
.prn-page-body{font-family:var(--serif);font-size:18px;line-height:1.75;color:var(--ink2)}
.prn-page-body h2{font-family:var(--display);font-weight:700;font-size:24px;margin:28px 0 12px;color:var(--ink)}
.prn-page-body p{margin-bottom:18px}
.prn-page-body a{color:var(--crimson);text-decoration:underline}
.prn-page-body ul{margin:0 0 18px 22px}.prn-page-body li{list-style:disc;margin-bottom:8px}

/* ── 21. SEARCH OVERLAY ── */
.prn-search{display:none;position:fixed;inset:0;background:rgba(8,8,8,.92);z-index:1100;align-items:flex-start;justify-content:center;padding-top:14vh}
.prn-search.open{display:flex}
.prn-search form{width:min(680px,90vw);display:flex;gap:10px}
.prn-search input{flex:1;background:transparent;border:0;border-bottom:3px solid var(--crimson);color:#fff;font-family:var(--display);font-size:32px;padding:10px 4px;outline:none}
.prn-search input::placeholder{color:rgba(255,255,255,.4)}
.prn-search button.go{font-family:var(--cond);text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--crimson);padding:0 22px;border-radius:2px}
.prn-search .close{position:absolute;top:24px;right:30px;color:#fff;font-size:30px}

/* ── 22. FOOTER ── */
.prn-foot{background:var(--carbon);color:var(--on-carbon-mid);border-top:3px solid var(--crimson);margin-top:50px}
.prn-foot-in{max-width:1280px;margin:0 auto;padding:40px 28px 28px}
.prn-foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.08)}
@media(max-width:760px){.prn-foot-top{grid-template-columns:1fr 1fr}}
.prn-foot .fbrand .pr{font-family:var(--display);font-weight:700;font-size:34px;color:#fff}
.prn-foot .fbrand .pr b{color:var(--crimson-l)}
.prn-foot .fbrand .sub{font-family:var(--cond);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--gold);margin-top:6px}
.prn-foot .fbrand p{font-family:var(--sans);font-size:13px;color:var(--on-carbon-mid);margin-top:14px;max-width:320px;line-height:1.5}
.prn-foot .fcol h4{font-family:var(--cond);text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#fff;margin-bottom:12px}
.prn-foot .fcol a{display:block;font-family:var(--sans);font-size:13.5px;color:var(--on-carbon-mid);padding:5px 0}
.prn-foot .fcol a:hover{color:#fff}
.prn-foot-copy{padding-top:20px;font-family:var(--sans);font-size:12px;color:var(--faint);display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}

/* ── 23. UTIL ── */
.prn-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
@media(max-width:900px){.prn-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.prn-grid-3{grid-template-columns:1fr}}
.prn-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
@media(max-width:760px){.prn-grid-2{grid-template-columns:1fr}}
