.shadow-post {padding: clamp(72px, 9vw, 145px) 0 0;}
.shadow-post__article {width: min(100%, 1380px); margin: 0 auto;}
.shadow-post__mast {width: min(100%, 980px); margin: 0 auto clamp(48px, 7vw, 96px); text-align: center;}
.shadow-post__eyebrow {margin: 0; color: #9ba89d; font: 600 9px/1.5 var(--shadow-sans); letter-spacing: .22em; text-transform: uppercase;}
.shadow-post__mast h1 {margin: 22px 0 28px; overflow-wrap: anywhere; color: var(--shadow-paper); font: 400 clamp(3.4rem, 8vw, 8.5rem)/.88 var(--shadow-serif); letter-spacing: -.055em; text-wrap: balance;}
.shadow-post__deck {max-width: 780px; margin: 0 auto; color: #c5c2b9; font: italic clamp(1.2rem, 2.2vw, 1.7rem)/1.55 var(--shadow-serif);}
.shadow-post__meta {display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 24px; margin-top: 30px; color: var(--shadow-muted); font: 600 8px/1.5 var(--shadow-sans); letter-spacing: .16em; text-transform: uppercase;}
.shadow-post__access {color: var(--shadow-revelation);}
.shadow-post__feature {width: min(100%, 920px); margin: 0 auto clamp(58px, 8vw, 110px);}
.shadow-post__feature img {display: block; width: 100%; max-height: 62vh; object-fit: cover; border: 1px solid var(--shadow-rule); filter: saturate(.78) brightness(.86);}
.shadow-post__feature figcaption {margin-top: 12px; color: var(--shadow-muted); font: italic 13px/1.5 var(--shadow-serif);}

.shadow-post__content {width: min(100%, 760px); margin: 0 auto; color: #c7c4bb; font: clamp(1.1rem, 1.5vw, 1.25rem)/1.82 var(--shadow-serif);}
.shadow-post__content > p:first-child {font-size: 1.12em; color: #d7d2c7;}
.shadow-post__content h2,
.shadow-post__content h3,
.shadow-post__content h4 {color: var(--shadow-paper); font-family: var(--shadow-serif); font-weight: 400; letter-spacing: -.025em;}
.shadow-post__content h2 {margin: 2.1em 0 .7em; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1;}
.shadow-post__content h3 {margin: 2em 0 .65em; font-size: clamp(1.6rem, 3vw, 2.25rem); line-height: 1.08;}
.shadow-post__content a {color: #e8d462; text-decoration-thickness: 1px; text-underline-offset: .18em;}
.shadow-post__content blockquote {margin: 2.2em -8vw; padding: .2em 0 .2em clamp(24px, 5vw, 70px); border-left: 1px solid var(--shadow-revelation); color: #e2ded3; font: italic clamp(1.45rem, 3vw, 2.4rem)/1.45 var(--shadow-serif);}
.shadow-post__content img {height: auto;}
.shadow-post__content .kg-image-card,
.shadow-post__content .kg-gallery-card,
.shadow-post__content .kg-audio-card,
.shadow-post__content .kg-video-card,
.shadow-post__content .kg-file-card {margin: clamp(36px, 6vw, 72px) 0;}
.shadow-post__content .kg-width-wide {width: min(1200px, calc(100vw - 40px)); margin-left: 50%; transform: translateX(-50%);}
.shadow-post__content .kg-width-full {width: 100vw; margin-left: 50%; transform: translateX(-50%);}
.shadow-post__content hr {margin: 4em 0; border: 0; border-top: 1px solid var(--shadow-rule);}

.shadow-post__myradio {width: min(100%, 980px); margin: clamp(70px, 10vw, 140px) auto 0; padding: clamp(34px, 6vw, 72px); border: 1px solid var(--shadow-rule); background: linear-gradient(135deg, rgba(26, 34, 56, .82), rgba(59, 36, 67, .45));}
.shadow-post__myradio > p {margin: 0; color: #9ba89d; font: 600 9px/1.4 var(--shadow-sans); letter-spacing: .22em;}
.shadow-post__myradio h2 {margin: 14px 0 30px; font: 400 clamp(2rem, 4vw, 3.8rem)/1 var(--shadow-serif);}
.shadow-post__myradio a {color: var(--shadow-revelation); font: 600 9px/1.4 var(--shadow-sans); letter-spacing: .18em; text-decoration: none; text-transform: uppercase;}

/* SHADOW audio stories frame the player; the release theme inside MYRADIO owns its appearance. */
.shadow-audio-post {padding-top: clamp(52px, 6vw, 92px);}
.shadow-audio-post .shadow-post__mast {width: min(100%, 760px); margin-bottom: clamp(26px, 3.5vw, 42px);}
.shadow-audio-post .shadow-post__deck {max-width: 650px; margin-top: 14px; font-size: clamp(1rem, 1.35vw, 1.2rem); line-height: 1.5;}
.shadow-audio-post .shadow-post__meta {margin-top: 18px;}
.shadow-audio-post__signal {width: min(100%, 980px); min-height: clamp(290px, 34vw, 360px); margin: 0 auto clamp(48px, 6vw, 76px);}
.nd-signal-card {position: relative; min-height: clamp(290px, 34vw, 360px); overflow: hidden; border: 1px solid var(--shadow-rule); background: linear-gradient(145deg, rgba(18, 20, 32, .98), rgba(29, 24, 42, .94)); box-shadow: 0 22px 70px rgba(0, 0, 0, .3);}
.nd-signal-card::before {position: absolute; inset: 0; z-index: 0; background: radial-gradient(circle at 8% 0%, rgba(117, 90, 214, .13), transparent 42%), radial-gradient(circle at 100% 100%, rgba(225, 184, 13, .07), transparent 36%); content: ""; pointer-events: none;}
.nd-signal-card__frame {position: relative; z-index: 1; display: block; width: 100%; height: clamp(290px, 34vw, 360px); border: 0; background: transparent; color-scheme: dark; transition: height 180ms ease;}
.nd-signal-card__fallback {position: relative; z-index: 2; display: block; width: fit-content; margin: -44px 28px 25px auto; color: #c8c3d1; font: 600 8px/1.4 var(--shadow-sans); letter-spacing: .17em; text-decoration: none; text-transform: uppercase;}
.nd-signal-card__fallback:hover,.nd-signal-card__fallback:focus-visible {color: var(--shadow-paper); outline: none;}
.shadow-audio-post__signal.is-signal-ready,.nd-signal-card.is-ready {min-height: 0;}
.nd-signal-card.is-ready .nd-signal-card__fallback {display: none;}
.nd-signal-card--failed .nd-signal-card__frame {opacity: .3;}
.nd-signal-card--error {display: grid; place-items: center; padding: 32px; color: var(--shadow-muted); font: 600 9px/1.6 var(--shadow-sans); letter-spacing: .16em; text-align: center; text-transform: uppercase;}
.nd-share-dialog-backdrop {position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 20px; background: rgba(5, 5, 10, .82); backdrop-filter: blur(8px);}
.nd-share-dialog {width: min(100%, 440px); padding: clamp(26px, 5vw, 42px); border: 1px solid var(--shadow-rule); background: linear-gradient(145deg, #151725, #1d1826); box-shadow: 0 30px 90px rgba(0, 0, 0, .55); color: var(--shadow-paper);}
.nd-share-dialog__kicker {margin: 0 0 10px; color: var(--shadow-sage); font: 600 9px/1.4 var(--shadow-sans); letter-spacing: .22em; text-transform: uppercase;}
.nd-share-dialog h2 {margin: 0; color: var(--shadow-paper); font: 400 clamp(2rem, 7vw, 3rem)/1 var(--shadow-serif); letter-spacing: -.04em;}
.nd-share-dialog__summary {margin: 16px 0 0; color: var(--shadow-copy); font: 1rem/1.55 var(--shadow-serif);}
.nd-share-dialog__links {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 24px;}
.nd-share-dialog__links a,.nd-share-dialog__links button,.nd-share-dialog__done {display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 12px; border: 1px solid var(--shadow-rule); border-radius: 0; color: var(--shadow-paper); background: rgba(255, 255, 255, .035); font: 700 9px/1.2 var(--shadow-sans); letter-spacing: .14em; text-align: center; text-decoration: none; text-transform: uppercase; cursor: pointer;}
.nd-share-dialog__links a:hover,.nd-share-dialog__links a:focus-visible,.nd-share-dialog__links button:hover,.nd-share-dialog__links button:focus-visible,.nd-share-dialog__done:hover,.nd-share-dialog__done:focus-visible {border-color: var(--shadow-revelation); background: rgba(255, 255, 255, .08); outline: none;}
.nd-share-dialog__done {width: 100%; margin-top: 8px; color: var(--shadow-muted); background: transparent;}
.shadow-audio-post__content .nd-signal-card {display: none;}
.shadow-audio-post__locked {width: min(100%, 760px); margin: 0 auto;}

.shadow-post__comments {width: min(100%, 900px); margin: clamp(70px, 10vw, 140px) auto 0; padding: clamp(30px, 5vw, 54px); padding-bottom: clamp(22px, 3vw, 30px); border: 1px solid var(--shadow-rule); background: radial-gradient(circle at 92% 0%, rgba(119, 92, 208, .11), transparent 16rem), linear-gradient(145deg, rgba(20, 22, 34, .96), rgba(18, 19, 28, .92)); box-shadow: 0 28px 80px rgba(0, 0, 0, .22); color-scheme: dark;}
.shadow-comments-intro {max-width: 42rem; margin: 0 0 clamp(28px, 4vw, 44px); padding-bottom: clamp(24px, 3vw, 34px); border-bottom: 1px solid var(--shadow-rule);}
.shadow-comments-intro>p:first-child {margin: 0; color: var(--shadow-sage); font: 600 9px/1.4 var(--shadow-sans); letter-spacing: .22em; text-transform: uppercase;}
.shadow-comments-intro h2 {margin: 10px 0; color: var(--shadow-paper); font: 400 clamp(2rem, 4vw, 3.5rem)/.98 var(--shadow-serif); letter-spacing: -.04em;}
.shadow-comments-intro>p:last-child {margin: 0; color: var(--shadow-copy); font: 16px/1.65 var(--shadow-serif);}
.shadow-comments-thread {min-height: 10rem; overflow: hidden; color: var(--shadow-paper); color-scheme: dark;}
.shadow-comments-thread iframe {display: block; width: 100% !important; border: 0; background: transparent; color-scheme: dark;}
.shadow-post__related {margin-top: clamp(90px, 12vw, 180px); padding: clamp(70px, 9vw, 120px) 0; border-top: 1px solid var(--shadow-rule);}
.shadow-post .shadow-membership-panel {margin-top: clamp(70px, 10vw, 140px);}

.shadow-gate {width:min(100%,760px);margin:clamp(54px,8vw,100px) auto 0;padding:clamp(28px,5vw,48px);border-left:1px solid var(--shadow-sage);background:linear-gradient(110deg,rgba(59,36,67,.34),rgba(26,34,56,.26) 65%,transparent);}
.shadow-gate__eyebrow {margin:0;color:var(--shadow-revelation);font:600 9px/1.5 var(--shadow-sans);letter-spacing:.22em;text-transform:uppercase;}
.shadow-gate h2 {max-width:15ch;margin:13px 0 18px;color:var(--shadow-paper);font:400 clamp(2rem,4.2vw,3.5rem)/1 var(--shadow-serif);letter-spacing:-.035em;text-wrap:balance;}
.shadow-gate__copy {max-width:39rem;margin:0;color:var(--shadow-copy);font:1rem/1.68 var(--shadow-serif);}
.shadow-gate__actions {display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:26px;}
.shadow-gate__actions>a:not(.shadow-button),.shadow-gate__more {color:#c4c8c0;font:600 9px/1.5 var(--shadow-sans);letter-spacing:.16em;text-decoration:none;text-transform:uppercase;}
.shadow-gate__actions>a:not(.shadow-button):hover,.shadow-gate__actions>a:not(.shadow-button):focus-visible,.shadow-gate__more:hover,.shadow-gate__more:focus-visible {color:var(--shadow-paper);outline:none;}
.shadow-gate__more {display:block;width:fit-content;margin-top:30px;color:var(--shadow-sage);}
.shadow-gate__note {margin:12px 0 0;color:var(--shadow-muted);font:600 8px/1.5 var(--shadow-sans);letter-spacing:.14em;text-transform:uppercase;}

.shadow-welcome {min-height: 70vh;}
.shadow-welcome .shadow-post__article {padding-bottom: clamp(80px, 10vw, 150px);}
.shadow-welcome .shadow-post__mast {margin-bottom: clamp(42px, 6vw, 76px);}
.shadow-welcome__doors {display: grid; width: min(100%, 760px); margin: clamp(48px, 7vw, 86px) auto 0; border-top: 1px solid var(--shadow-rule);}
.shadow-welcome__doors a {display: flex; justify-content: space-between; padding: 20px 0; border-bottom: 1px solid var(--shadow-rule); color: var(--shadow-paper); font: 600 9px/1.5 var(--shadow-sans); letter-spacing: .18em; text-decoration: none; text-transform: uppercase;}
.shadow-welcome__doors a:hover,.shadow-welcome__doors a:focus-visible {color: var(--shadow-revelation); outline: none;}
.shadow-welcome__locked {width: min(100%, 760px); margin: 0 auto; padding: clamp(34px, 6vw, 70px); border: 1px solid var(--shadow-rule); background: linear-gradient(135deg, rgba(59,36,67,.48), rgba(26,34,56,.7));}
.shadow-welcome__locked > p:first-child {margin: 0; color: var(--shadow-sage); font: 600 9px/1.5 var(--shadow-sans); letter-spacing: .2em; text-transform: uppercase;}
.shadow-welcome__locked h2 {margin: 20px 0; color: var(--shadow-paper); font: 400 clamp(2.2rem, 5vw, 4.5rem)/.98 var(--shadow-serif);}
.shadow-welcome__locked > p:not(:first-child) {max-width: 38rem; color: #c7c4bb; font: 1.05rem/1.7 var(--shadow-serif);}
.shadow-welcome__locked a {display: block; width: fit-content; margin-top: 20px; color: var(--shadow-revelation); font: 600 9px/1.5 var(--shadow-sans); letter-spacing: .18em; text-decoration: none; text-transform: uppercase;}

body[data-world="shadow"] .gh-post-upgrade-cta {max-width: 760px !important; margin: 52px auto !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--shadow-paper) !important; font-family: var(--shadow-serif) !important;}
body[data-world="shadow"] .gh-post-upgrade-cta-content {padding: clamp(34px, 6vw, 64px) !important; border: 1px solid var(--shadow-rule) !important; border-radius: 0 !important; background: linear-gradient(145deg, rgba(59, 36, 67, .68), rgba(26, 34, 56, .9)) !important; color: var(--shadow-paper) !important;}
body[data-world="shadow"] .gh-post-upgrade-cta h2 {color: var(--shadow-paper) !important; font-family: var(--shadow-serif) !important; font-weight: 400 !important;}
body[data-world="shadow"] .gh-post-upgrade-cta a {border-radius: 0 !important; color: var(--shadow-revelation) !important;}
body[data-world="shadow"] .gh-post-upgrade-cta a.gh-btn {border: 1px solid var(--shadow-revelation) !important; background: var(--shadow-revelation) !important; color: var(--shadow-ink) !important; font-family: var(--shadow-sans) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .15em !important; text-transform: uppercase !important;}
body[data-world="shadow"] .gh-post-upgrade-cta a.gh-btn:hover {border-color: #f0d55b !important; background: #f0d55b !important; color: var(--shadow-ink) !important; opacity: 1 !important;}

@media (max-width: 780px) {
    .shadow-post {padding-top: 68px;}
    .shadow-post__mast {text-align: left;}
    .shadow-post__meta {justify-content: flex-start;}
    .shadow-post__content blockquote {margin-inline: 0;}
    .shadow-post__content .kg-width-wide {width: calc(100vw - 30px);}
    .shadow-post__comments {padding: 26px 20px;}
    .shadow-gate {padding:28px 22px;}
    .shadow-gate__actions {align-items:flex-start;flex-direction:column;}
    .shadow-audio-post__signal,.nd-signal-card,.nd-signal-card__frame {min-height: 320px;}
    .nd-signal-card__frame {height: 320px;}
    .nd-signal-card__fallback {margin-right: 20px;}
}
