.post-single{
    --ps-paper:var(--paper,#fff);
    --ps-paper-2:var(--paper-2,#f7f6f8);
    --ps-ink:var(--ink,#0b0b0d);
    --ps-ink-2:var(--ink-2,#3d3d45);
    --ps-muted:var(--muted,#777781);
    --ps-line:var(--line,#dedde2);
    --ps-border:var(--border,#0b0b0d);
    --ps-purple:var(--purple,#945DAD);
    --ps-purple-deep:#592796;
    --ps-indigo:#160F26;
    --ps-teal:#77D3CC;
    --ps-disp:"DM Sans",system-ui,-apple-system,sans-serif;
    --ps-body:"Work Sans",system-ui,-apple-system,sans-serif;
    --ps-max:1240px;
    --ps-gut:clamp(18px,4vw,40px);
    --ps-sticky-top:66px; /* site header height + breathing room */
    display:block;
    font-family:var(--ps-body);
    color:var(--ps-ink);
    background:var(--ps-paper);
    line-height:1.55;
  }
  .post-single *{box-sizing:border-box;border-radius:0}
  .post-single [hidden]{display:none!important}
  .post-single .ps-shell{max-width:var(--ps-max);margin:0 auto;padding:0 var(--ps-gut)}
  .post-single img{display:block;max-width:100%;height:auto}
  .post-single svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .post-single :focus-visible{outline:2.5px solid var(--ps-purple);outline-offset:3px}
  .post-single a{color:inherit;text-decoration:none}
  .post-single button{font:inherit;background:none;border:0;color:inherit;cursor:pointer}

  .post-single .ps-block-h{font-family:var(--ps-disp);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 14px;padding-bottom:11px;border-bottom:1.5px solid var(--ps-border)}

  /* ── HERO ── */
  .post-single .ps-hero{padding:clamp(24px,3.4vw,44px) 0 0}
  .post-single .ps-hero-grid{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);gap:clamp(26px,4vw,60px);align-items:center}
  .post-single .ps-hero-media{margin:0;overflow:hidden;background:var(--ps-paper-2);aspect-ratio:4/3}
  .post-single .ps-hero-media img{width:100%;height:100%;object-fit:cover}
  .post-single .ps-hero-copy{min-width:0}
  .post-single .ps-eyebrow{display:inline-block;font-family:var(--ps-disp);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ps-ink);padding-bottom:10px;border-bottom:2px solid var(--ps-ink)}
  .post-single .ps-title{margin:18px 0 0;font-family:var(--ps-disp);font-weight:400;font-size:clamp(25px,3.1vw,38px);line-height:1.14;letter-spacing:0;text-transform:uppercase;color:var(--ps-ink);text-wrap:balance}

  /* byline */
  .post-single .ps-byline{margin:22px 0 0;padding:2px 0 2px 14px;border-left:2px solid var(--ps-purple);font-family:var(--ps-disp);line-height:1.4}
  .post-single .ps-byline-who{display:block;font-size:15px}
  .post-single .ps-byline-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ps-muted)}
  .post-single .ps-byline-name{font-weight:700;color:var(--ps-ink);transition:color .15s}
  .post-single .ps-byline-name:hover{color:var(--ps-purple)}
  .post-single .ps-byline-date{display:block;margin-top:4px;font-family:var(--ps-body);font-size:12.5px;color:var(--ps-muted)}

  /* ── LAYOUT: share · article · rail ── */
  .post-single .ps-layout{
    display:grid;
    grid-template-columns:56px minmax(0,1fr) clamp(280px,26vw,320px);
    gap:clamp(24px,3vw,44px) clamp(26px,3.4vw,52px);
    align-items:stretch; /* columns must be full-height or sticky has no travel */
    padding:clamp(30px,4vw,52px) 0 clamp(44px,5.5vw,72px);
  }
  .post-single .ps-body-wrap{min-width:0;max-width:70ch}

  /* ── SHARE (vertical, sticky, left) ── */
  .post-single .ps-share{min-width:0}
  .post-single .ps-share-sticky{position:sticky;top:var(--ps-sticky-top);display:flex;flex-direction:column;align-items:center;gap:12px}
  .post-single .ps-share-label{font-family:var(--ps-disp);font-size:9.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ps-muted)}
  .post-single .ps-share-row{display:flex;flex-direction:column;gap:8px}
  .post-single .ps-share-btn{width:44px;height:44px;display:grid;place-items:center;border:1.5px solid var(--ps-line);background:var(--ps-paper);color:var(--ps-ink);transition:background .15s,color .15s,border-color .15s}
  .post-single .ps-share-btn:hover{background:var(--ps-ink);color:#fff;border-color:var(--ps-ink)}
  .post-single .ps-share-btn svg{width:17px;height:17px}
  .post-single .ps-feedback{font-size:11px;font-weight:600;text-align:center;color:var(--ps-purple);opacity:0;transition:opacity .2s}
  .post-single .ps-feedback.is-on{opacity:1}

  /* ── BODY TYPE ── */
  .post-single .ps-body{font-family:var(--ps-body);font-size:clamp(17px,1.2vw,18.5px);line-height:1.72;color:var(--ps-ink-2)}
  .post-single .ps-body>p{margin:0 0 1.35em}
  .post-single .ps-body>p:first-of-type::first-letter{font-family:var(--ps-disp);font-weight:800;font-size:3.5em;line-height:.78;float:left;padding:6px 12px 0 0;color:var(--ps-purple-deep)}
  .post-single .ps-body a{color:var(--ps-ink);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px;text-decoration-color:var(--ps-purple);transition:color .15s}
  .post-single .ps-body a:hover{color:var(--ps-purple)}
  .post-single .ps-body strong{color:var(--ps-ink);font-weight:700}
  .post-single .ps-body em{font-style:italic}
  .post-single .ps-h2{font-family:var(--ps-disp);font-weight:800;font-size:clamp(22px,2.4vw,30px);line-height:1.14;letter-spacing:-.02em;color:var(--ps-ink);margin:1.9em 0 .6em}
  .post-single .ps-h3{font-family:var(--ps-disp);font-weight:700;font-size:clamp(18px,1.6vw,21px);letter-spacing:-.01em;color:var(--ps-ink);margin:1.7em 0 .5em}
  .post-single .ps-body ul,.post-single .ps-body ol{margin:0 0 1.35em;padding-left:1.3em}
  .post-single .ps-body li{margin:0 0 .5em}
  .post-single .ps-body li::marker{color:var(--ps-purple)}

  .post-single .ps-pull{margin:1.9em 0;padding:4px 0 4px 26px;border-left:3px solid var(--ps-purple)}
  .post-single .ps-pull p{margin:0;font-family:var(--ps-disp);font-weight:500;font-size:clamp(21px,2.5vw,29px);line-height:1.28;letter-spacing:-.02em;color:var(--ps-ink)}
  .post-single .ps-pull cite{display:block;margin-top:14px;font-family:var(--ps-disp);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-style:normal;color:var(--ps-muted)}

  .post-single .ps-body blockquote{margin:1.7em 0;padding:20px 22px;background:var(--ps-paper-2);border:1.5px solid var(--ps-line);font-size:1.02em;line-height:1.6;color:var(--ps-ink-2)}

  .post-single .ps-figure{margin:1.9em 0}
  .post-single .ps-figure-media{border:1.5px solid var(--ps-border);overflow:hidden;background:var(--ps-paper-2)}
  .post-single .ps-figure-media img{width:100%}
  .post-single .ps-figure figcaption{margin:12px 0 0;font-family:var(--ps-disp);font-size:12px;line-height:1.45;color:var(--ps-muted)}

  .post-single .ps-embed{margin:1.6em 0;border:1.5px solid var(--ps-border)}
  .post-single .ps-embed iframe{width:100%;aspect-ratio:16/9;display:block;border:0}

  .post-single .ps-key{margin:1.9em 0;background:var(--ps-indigo);color:#fff;padding:24px 26px}
  .post-single .ps-key h3{margin:0 0 14px;font-family:var(--ps-disp);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ps-teal)}
  .post-single .ps-key ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
  .post-single .ps-key li{position:relative;margin:0;padding-left:22px;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.88)}
  .post-single .ps-key li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;background:var(--ps-teal)}

  /* tags */
  .post-single .ps-tags{display:flex;flex-wrap:wrap;gap:9px;margin:clamp(32px,4vw,46px) 0 0;padding-top:26px;border-top:1.5px solid var(--ps-border)}
  .post-single .ps-tags-label{font-family:var(--ps-disp);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ps-muted);align-self:center;margin-right:4px}
  .post-single .ps-tag{font-family:var(--ps-disp);font-size:12px;font-weight:600;color:var(--ps-ink);border:1.5px solid var(--ps-line);padding:8px 13px;transition:background .15s,color .15s,border-color .15s}
  .post-single .ps-tag:hover{background:var(--ps-ink);color:#fff;border-color:var(--ps-ink)}

  /* ── RAIL (sticky) ── */
  .post-single .ps-rail{min-width:0}
  .post-single .ps-rail-sticky{position:sticky;top:var(--ps-sticky-top);display:flex;flex-direction:column;gap:32px}

  .post-single .ps-ad{display:flex;flex-direction:column;gap:8px}
  .post-single .ps-ad-label{font-family:var(--ps-disp);font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ps-muted);text-align:center}
  .post-single .ps-ad-slot{border:1.5px solid var(--ps-line);background:var(--ps-paper-2);min-height:250px;display:grid;place-items:center}
  .post-single .ps-ad-slot:empty::after{content:"300 \00D7 250";font-family:var(--ps-disp);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--ps-muted)}

  .post-single .ps-news{background:var(--ps-indigo);color:#fff;padding:22px}
  .post-single .ps-news .ps-block-h{color:#fff;border-bottom-color:rgba(255,255,255,.22)}
  .post-single .ps-news-copy{margin:0 0 14px;font-size:13px;line-height:1.55;color:rgba(255,255,255,.75)}
  .post-single .ps-news-form{display:flex;flex-direction:column;gap:9px}
  .post-single .ps-news-form input{border:1.5px solid rgba(255,255,255,.25);background:transparent;color:#fff;font-family:var(--ps-body);font-size:14px;padding:12px;outline:0}
  .post-single .ps-news-form input::placeholder{color:rgba(255,255,255,.5)}
  .post-single .ps-news-form input:focus{border-color:var(--ps-teal)}
  .post-single .ps-news-form button{font-family:var(--ps-disp);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:13px;background:var(--ps-teal);color:var(--ps-indigo);border:1.5px solid var(--ps-teal);transition:opacity .15s}
  .post-single .ps-news-form button:hover{opacity:.85}
  .post-single .ps-news-note{display:block;margin-top:12px;font-size:13px;font-weight:600;color:var(--ps-teal)}

  /* ── KEEP READING ── */
  .post-single .ps-related{background:var(--ps-paper-2);border-top:1.5px solid var(--ps-line);border-bottom:1.5px solid var(--ps-line);padding:clamp(42px,5.6vw,68px) 0}
  .post-single .ps-related-head{border-top:2px solid var(--ps-ink);border-bottom:1px solid var(--ps-ink);padding:14px 0;margin-bottom:26px}
  .post-single .ps-related-head h2{margin:0;font-family:var(--ps-disp);font-weight:800;font-size:clamp(24px,3.2vw,36px);letter-spacing:-.02em;text-transform:uppercase;line-height:1}
  .post-single .ps-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.5vw,32px)}
  .post-single .ps-card{display:block;background:var(--ps-paper);border:1.5px solid var(--ps-border);transition:transform .16s,box-shadow .16s}
  .post-single .ps-card:hover{transform:translateY(-3px);box-shadow:6px 6px 0 var(--ps-card-shadow,var(--ps-purple))}
  .post-single .ps-card-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--ps-paper-2);border-bottom:1.5px solid var(--ps-border)}
  .post-single .ps-card-media img{width:100%;height:100%;object-fit:cover}
  .post-single .ps-card-body{display:block;padding:18px}
  .post-single .ps-card-cat{display:block;font-family:var(--ps-disp);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ps-purple)}
  .post-single .ps-card-title{display:block;margin-top:10px;font-family:var(--ps-disp);font-weight:700;font-size:17px;line-height:1.22;letter-spacing:-.01em;color:var(--ps-ink)}
  .post-single .ps-card:hover .ps-card-title{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
  .post-single .ps-card-meta{display:block;margin-top:12px;font-size:12px;color:var(--ps-muted)}

  /* ── RESPONSIVE ── */
  @media (max-width:1100px){
    .post-single .ps-layout{grid-template-columns:52px minmax(0,1fr) 290px;gap:24px 30px}
    .post-single .ps-share-btn{width:40px;height:40px}
  }
  @media (max-width:900px){
    /* hero: image first, then title */
    .post-single .ps-hero-grid{grid-template-columns:1fr;gap:22px}
    .post-single .ps-hero-media{aspect-ratio:16/10}
    /* single column: article → share (horizontal) → rail */
    .post-single .ps-layout{grid-template-columns:1fr;gap:0}
    .post-single .ps-body-wrap{max-width:none;order:1}
    .post-single .ps-share{order:2;margin-top:30px;padding-top:22px;border-top:1.5px solid var(--ps-line)}
    .post-single .ps-share-sticky{position:static;flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;flex-wrap:wrap}
    .post-single .ps-share-row{flex-direction:row}
    .post-single .ps-rail{order:3;margin-top:44px}
    .post-single .ps-rail-sticky{position:static}
    .post-single .ps-related-grid{grid-template-columns:1fr 1fr}
  }
  @media (max-width:600px){
    .post-single .ps-related-grid{grid-template-columns:1fr}
  }
  @media (prefers-reduced-motion:reduce){
    .post-single *{transition:none!important;animation:none!important}
  }


/* WordPress/Classic Editor normalization — keeps ordinary post markup inside
   the supplied design without leaking into Header, Footer, Home or Lyrics. */
.post-single .ps-body h2:not(.ps-h2){font-family:var(--ps-disp);font-weight:800;font-size:clamp(22px,2.4vw,30px);line-height:1.14;letter-spacing:-.02em;color:var(--ps-ink);margin:1.9em 0 .6em}
.post-single .ps-body h3:not(.ps-h3){font-family:var(--ps-disp);font-weight:700;font-size:clamp(18px,1.6vw,21px);letter-spacing:-.01em;color:var(--ps-ink);margin:1.7em 0 .5em}
.post-single .ps-body h4,.post-single .ps-body h5,.post-single .ps-body h6{font-family:var(--ps-disp);color:var(--ps-ink);line-height:1.2;margin:1.55em 0 .55em}
.post-single .ps-body figure{margin:1.9em 0}
.post-single .ps-body figure img,.post-single .ps-body>img{width:100%;height:auto;border:1.5px solid var(--ps-border)}
.post-single .ps-body figcaption{margin:12px 0 0;font-family:var(--ps-disp);font-size:12px;line-height:1.45;color:var(--ps-muted)}
.post-single .ps-body iframe{width:100%;aspect-ratio:16/9;display:block;border:1.5px solid var(--ps-border)}
.post-single .ps-body .wp-caption{max-width:100%}
.post-single .ps-body .wp-caption-text{margin:10px 0 0;font-family:var(--ps-disp);font-size:12px;line-height:1.45;color:var(--ps-muted)}
.post-single .ps-body .aligncenter{margin-left:auto;margin-right:auto}
.post-single .ps-body .alignleft{float:left;margin:6px 24px 16px 0}
.post-single .ps-body .alignright{float:right;margin:6px 0 16px 24px}
.post-single .ps-body::after{content:"";display:block;clear:both}

/* Central Purp Kulture ad manager sits inside the template's exact rail slot. */
.post-single .ps-ad-slot>.pk-managed-ad{width:100%;max-width:100%;margin:0;padding:0}
.post-single .ps-ad-slot .pk-managed-ad__label{display:none!important}
.post-single .ps-ad-slot .pk-managed-ad__content{width:100%}
.post-single .ps-ad-slot .pk-managed-ad__image,.post-single .ps-ad-slot .pk-managed-ad__image img{display:block;width:100%;height:auto;max-width:100%}

/* Optional widget visibility controls keep the remaining columns correct. */
.post-single.ps-no-share .ps-layout{grid-template-columns:minmax(0,1fr) clamp(280px,26vw,320px)}
.post-single.ps-no-rail .ps-layout{grid-template-columns:56px minmax(0,1fr)}
.post-single.ps-no-share.ps-no-rail .ps-layout{grid-template-columns:minmax(0,1fr)}
@media(max-width:1100px){
  .post-single.ps-no-share .ps-layout{grid-template-columns:minmax(0,1fr) 290px}
  .post-single.ps-no-rail .ps-layout{grid-template-columns:52px minmax(0,1fr)}
  .post-single.ps-no-share.ps-no-rail .ps-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:900px){
  .post-single.ps-no-share .ps-layout,.post-single.ps-no-rail .ps-layout,.post-single.ps-no-share.ps-no-rail .ps-layout{grid-template-columns:1fr}
}

/* v2.22 category links + dark-mode variable surfaces. */
.post-single a.ps-eyebrow.category-link{color:var(--ps-ink)!important;text-decoration:none!important}
.post-single a.ps-eyebrow.category-link:hover,.post-single a.ps-eyebrow.category-link:focus-visible{color:inherit!important;text-decoration:underline!important;text-underline-offset:3px!important}
.post-single a.ps-card-cat.category-link{width:max-content;max-width:100%;text-decoration:none}
.post-single a.ps-card-cat.category-link:hover,.post-single a.ps-card-cat.category-link:focus-visible{color:inherit!important;text-decoration:underline!important;text-underline-offset:3px!important}
html[data-pk-theme="dark"] .post-single .ps-card,
html[data-pk-theme="dark"] .post-single .ps-share-btn,
html[data-pk-theme="dark"] .post-single .ps-tag{background:var(--ps-paper)!important;color:var(--ps-ink)!important;border-color:var(--ps-line)!important}
html[data-pk-theme="dark"] .post-single .ps-card:hover{box-shadow:6px 6px 0 var(--ps-purple)!important}


/* v2.23 — persistent single-post rail ad placeholder when no managed ad is selected. */
.post-single .ps-ad-placeholder{
  width:100%;
  min-height:250px;
  display:grid;
  place-items:center;
  background:var(--ps-paper-2);
  color:var(--ps-muted);
  font-family:var(--ps-disp);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
}
.post-single .ps-ad-slot:has(.ps-ad-placeholder)::after{content:none!important}
html[data-pk-theme="dark"] .post-single .ps-ad-slot,
html[data-pk-theme="dark"] .post-single .ps-ad-placeholder{
  background:var(--ps-paper-2)!important;
  border-color:var(--ps-line)!important;
  color:var(--ps-muted)!important;
}
