/* Shared cinematic story-hub design, including Reckless Intentions. */
.ri-story { --ri-gold:var(--house-gold); --ri-ink:var(--house-ink); --ri-text:var(--house-text); --ri-muted:var(--house-muted); max-width:1320px; margin:0 auto; padding-bottom:64px; color:var(--ri-text); }
.ri-story [hidden] { display:none!important; }
.ri-story a { text-decoration:none; }
.ri-story a:focus-visible,.ri-story button:focus-visible,.ri-story video:focus-visible { outline:2px solid var(--ri-gold); outline-offset:5px; }
.ri-breadcrumb { display:flex; align-items:center; gap:14px; padding:4px 0 25px; color:var(--ri-muted); font-size:12px; letter-spacing:.04em; }
.ri-breadcrumb a { color:var(--ri-gold); }
.ri-hero { position:relative; isolation:isolate; overflow:hidden; min-height:610px; background:#101a24; border:1px solid #dfc58e33; border-radius:3px; }
.ri-hero-art { position:absolute; z-index:-2; right:0; top:0; height:100%; width:79%; object-fit:cover; object-position:61% center; }
.ri-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,var(--house-ink) 3%,#08131ff5 26%,#08131fb5 46%,#08131f08 78%),linear-gradient(0deg,#08131fe8,transparent 45%); }
.ri-hero-copy { padding:58px 50px 46px; max-width:670px; }
.ri-story .ri-kicker { margin:0 0 20px; color:var(--ri-gold); font:600 10px/1.5 var(--font-body,Arial,sans-serif); text-transform:uppercase; letter-spacing:.23em; }
.ri-story h1 { margin:0 0 25px; color:var(--ri-text); font:400 clamp(60px,6.1vw,86px)/.96 var(--font-serif); letter-spacing:-.045em; text-transform:none; }
.ri-story h1 em { color:var(--ri-gold); font-weight:400; }
.ri-story .ri-hook { margin:0 0 17px; font:400 21px/1.4 var(--font-serif); color:var(--ri-text); }
.ri-story .ri-synopsis { margin:0; max-width:425px; font-size:14px; line-height:1.8; color:#c1c6cc; }
.ri-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:26px; }
.ri-story .ri-button { display:inline-flex; gap:24px; align-items:center; justify-content:space-between; min-height:48px; border-radius:999px; padding:12px 21px; font-size:12px; font-weight:600; transition:background .18s,color .18s; }
.ri-story .ri-button-primary { background:var(--ri-gold); color:#102034; border:1px solid var(--ri-gold); }
.ri-story .ri-button-primary:hover { background:#f3dba9; }
.ri-story .ri-button-outline { color:var(--ri-text); background:#09142155; border:1px solid #e8c88877; }
.ri-story .ri-button-outline:hover { background:#e8c88822; }
.ri-story .ri-genre { display:flex; gap:11px; color:var(--ri-muted); font-size:11px; margin:22px 0 0; }
.ri-genre span { color:#e8c88888; }
.ri-art-credit { position:absolute; right:28px; bottom:24px; color:#e0d5c3; font:italic 12px var(--font-serif); }
.ri-reading-strip { display:flex; align-items:center; gap:28px; min-height:75px; padding:17px 0; border-bottom:1px solid #e8c88836; font-size:12px; color:var(--ri-muted); }
.ri-status { display:inline-flex; align-items:center; gap:9px; color:var(--ri-text); }
.ri-status i { display:block; width:6px; height:6px; background:var(--ri-gold); border-radius:50%; }
.ri-reading-strip>a { color:var(--ri-gold); margin-left:auto; display:flex; align-items:center; gap:18px; min-height:40px; }
.ri-content { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:54px; padding-top:44px; }
.ri-story .ri-chapters { margin:0; padding:0; border:0; min-width:0; scroll-margin-top:100px; }
.ri-section-heading { display:flex; align-items:end; justify-content:space-between; gap:12px; padding-bottom:23px; }
.ri-section-heading .ri-kicker { margin-bottom:9px; }
.ri-story h2 { margin:0; color:var(--ri-text); font:400 28px/1.15 var(--font-serif); letter-spacing:-.025em; text-transform:none; }
.ri-story h2 em { color:var(--ri-gold); font-weight:400; }
.ri-sort { background:none; border:0; padding:10px 0 10px 12px; color:var(--ri-muted); font:inherit; font-size:11px; white-space:nowrap; cursor:pointer; min-height:44px; }
.ri-sort:hover { color:var(--ri-gold); }
.ri-story .ri-chapter-list { display:block; margin:0; padding:0; }
.ri-story .ri-chapter-list li { border-top:1px solid #b7c5d223; }
.ri-story .ri-chapter-list li:last-child { border-bottom:1px solid #b7c5d223; }
.ri-story .ri-chapter-list a { display:flex; gap:19px; align-items:center; border:0; border-radius:0; background:transparent; padding:19px 0; min-height:112px; transition:background .18s; }
.ri-story .ri-chapter-list a::before { content:none; }
.ri-story .ri-chapter-list a:hover { background:#c9d9ec06; }
.ri-chapter-art { flex:0 0 112px; width:112px; height:76px; object-fit:cover; border-radius:2px; filter:saturate(.8); }
.ri-chapter-copy { display:flex; flex-direction:column; align-items:flex-start; gap:7px; min-width:0; flex:1; }
.ri-chapter-label { color:var(--ri-gold); font-size:9px; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.ri-story .chapter-title { font:400 21px/1.2 var(--font-serif); color:var(--ri-text); }
.ri-story .chapter-meta { color:var(--ri-muted); font-size:10px; white-space:normal; line-height:1.5; }
.ri-story .chapter-meta>span { padding:0 5px; }
.ri-chapter-end { display:flex; align-items:center; gap:23px; }
.ri-access { border:1px solid #e8c88844; border-radius:99px; padding:3px 9px; color:#c5cbd1; font-size:9px; }
.ri-chapter-arrow { color:var(--ri-gold); font-size:21px; padding-right:3px; }
.ri-sidebar { min-width:0; }
.ri-trailer { scroll-margin-top:110px; }
.ri-trailer .ri-kicker { margin-bottom:10px; }
.ri-trailer h2 { font-size:25px; margin-bottom:23px; }
.ri-trailer video { display:block; width:100%; height:auto; aspect-ratio:864/496; object-fit:contain; background:#030a10; border:1px solid #e8c88835; border-radius:3px; }
.ri-story .ri-trailer-caption { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin:12px 0 0; font-size:11px; color:var(--ri-text); }
.ri-trailer-caption span { color:var(--ri-muted); }
.ri-story .ri-trailer-note { margin:12px 0 0; color:var(--ri-muted); font-size:11px; line-height:1.7; }
.ri-story-note { margin-top:35px; padding:27px 24px; border-top:1px solid #e8c88869; background:linear-gradient(145deg,#192a3b99,#101b2700); }
.ri-story-note .ri-kicker { margin-bottom:16px; }
.ri-story-note h2 { font-size:30px; line-height:1.2; }
.ri-story-note>p:not(.ri-kicker) { font-size:12px; line-height:1.85; color:var(--ri-muted); margin:19px 0; }
.ri-story-note>a { display:inline-flex; align-items:center; gap:20px; min-height:44px; color:var(--ri-gold); font-size:11px; }
@media(min-width:1500px) { .ri-story .ri-hero { min-height:650px; }.ri-hero-copy { padding-top:66px; }.ri-story h1 { font-size:94px; } }
@media(max-width:1050px) { .ri-content { grid-template-columns:minmax(0,1fr) 270px; gap:28px; }.ri-hero-copy { padding:44px 30px; }.ri-chapter-art { width:86px; flex-basis:86px; height:66px; }.ri-chapter-end { gap:12px; }.ri-story .chapter-title { font-size:19px; }.ri-story h2 { font-size:25px; }.ri-reading-strip { gap:18px; } }
@media(max-width:760px) { .ri-breadcrumb { padding-bottom:18px; font-size:10px; }.ri-hero { min-height:0; }.ri-hero-art { width:100%; height:340px; object-position:center 30%; }.ri-hero::before { background:linear-gradient(0deg,var(--house-ink) 38%,#08131fcc 62%,#08131f22 100%); }.ri-hero-copy { padding:190px 25px 30px; max-width:none; }.ri-story h1 { font-size:67px; }.ri-story .ri-kicker { font-size:9px; }.ri-story .ri-synopsis { font-size:13px; max-width:450px; }.ri-art-credit { display:none; }.ri-reading-strip { flex-wrap:wrap; gap:11px 22px; font-size:11px; padding:20px 0; }.ri-reading-strip>a { margin-left:0; flex-basis:100%; justify-content:space-between; }.ri-content { grid-template-columns:1fr; padding-top:30px; gap:36px; }.ri-section-heading h2 { font-size:26px; }.ri-sidebar { display:grid; grid-template-columns:1fr 1fr; gap:24px; }.ri-story-note { margin-top:0; }.ri-chapter-art { width:100px; flex-basis:100px; height:70px; }.ri-story .ri-chapter-list a { gap:15px; }.ri-story .chapter-title { font-size:22px; } }
@media(max-width:480px) { .ri-story { padding-bottom:35px; }.ri-hero-copy { padding:165px 19px 26px; }.ri-hero-art { height:290px; }.ri-story h1 { font-size:58px; }.ri-story .ri-hook { font-size:19px; }.ri-actions { flex-direction:column; align-items:stretch; gap:9px; }.ri-story .ri-button { justify-content:space-between; }.ri-story .ri-genre { font-size:10px; }.ri-section-heading { align-items:start; }.ri-section-heading h2 { font-size:24px; max-width:220px; }.ri-sort { font-size:10px; padding-left:4px; }.ri-story .ri-chapter-list a { gap:12px; padding:16px 0; min-height:102px; }.ri-chapter-art { width:72px; height:64px; flex-basis:72px; }.ri-story .chapter-title { font-size:19px; }.ri-chapter-end { gap:6px; flex-direction:column; }.ri-access { padding:2px 6px; font-size:8px; }.ri-chapter-arrow { font-size:18px; }.ri-sidebar { display:block; }.ri-story-note { margin-top:30px; }.ri-trailer h2 { margin-bottom:18px; } }
@media(prefers-reduced-motion:reduce) { .ri-story * { transition:none!important; scroll-behavior:auto!important; } }

/* Accommodate long story names, collections, and missing artwork. */
.story-hub h1 { font-size:clamp(48px,5.6vw,78px); line-height:1.02; text-wrap:balance; overflow-wrap:anywhere; }
.story-hub .ri-hero-copy { max-width:700px; }
.story-hub .ri-hero { background:radial-gradient(ellipse at 88% 20%,#38404a,#101a24 65%); }
.story-hub .ri-hero:has(.ri-hero-art) .ri-hero-copy { min-height:610px; }
.story-hub .ri-hero:not(:has(.ri-hero-art)) { min-height:0; }
.story-hub .ri-hero:not(:has(.ri-hero-art)) .ri-hero-copy { padding-top:58px; padding-bottom:58px; max-width:850px; }
.story-hub .ri-hero:not(:has(.ri-hero-art)) .ri-synopsis { max-width:600px; }
.story-hub .ri-reading-strip { flex-wrap:wrap; }
.story-hub .ri-synopsis { white-space:pre-line; }
.story-hub .ri-empty { color:var(--ri-muted); padding:25px 0; line-height:1.7; }
.hub-art-placeholder { display:flex; align-items:center; justify-content:center; color:#e8c88866; background:linear-gradient(130deg,#23364a,#0c1926); font:24px var(--font-serif); }
.hub-trailer-link { display:block; color:var(--ri-text); margin:0 0 20px; border:1px solid #e8c88833; border-radius:3px; overflow:hidden; }
.hub-trailer-link img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; }
.hub-trailer-title { display:block; padding:15px; font-size:12px; line-height:1.6; }
.hub-trailer-title>span { color:var(--ri-gold); margin-right:6px; }
.hub-reading-note:first-child { margin-top:0; }
.hub-reading-note>a { display:flex; }
.story-hub .chapter-title { overflow-wrap:anywhere; }
@media(min-width:1500px) { .story-hub h1 { font-size:86px; } }
@media(max-width:760px) { .story-hub h1 { font-size:54px; }.story-hub .ri-hero:has(.ri-hero-art) .ri-hero-copy { min-height:0; }.story-hub .ri-hero:not(:has(.ri-hero-art)) .ri-hero-copy { padding:35px 25px; }.ri-breadcrumb { flex-wrap:wrap; row-gap:6px; }.ri-hero::before { background:linear-gradient(0deg,var(--house-ink) calc(100% - 320px),#08131fcc calc(100% - 200px),#08131f22 100%); } }
@media(max-width:480px) { .story-hub h1 { font-size:43px; }.story-hub .ri-hero:not(:has(.ri-hero-art)) .ri-hero-copy { padding:30px 19px; }.story-hub .ri-reading-strip { gap:10px 18px; }.story-hub .ri-genre { flex-wrap:wrap; } }

/* Keep a long story title fully readable when type is enlarged. */
.ri-story h1 { overflow-wrap: anywhere; }
