.launch-library .journey-heading {
 max-width: 46rem;
 margin: clamp(2.25rem, 5vw, 4.5rem) auto;
}
.launch-shelf {
 padding: clamp(1.1rem, 4vw, 3rem);
 border: 1px solid #e1c58c;
 border-radius: 1.7rem;
 background: linear-gradient(140deg, #fff9ee, #f2e7f9);
 color: #302043;
 box-shadow: 0 18px 50px #070e2a44;
}
.launch-shelf h2 { margin: 0 0 1.45rem; text-align: center; }
.launch-shelf-row {
 display: grid;
 grid-auto-flow: column;
 grid-auto-columns: min(76vw, 17.75rem);
 align-items: stretch;
 gap: 1.15rem;
 overflow-x: auto;
 overscroll-behavior-inline: contain;
 scroll-snap-type: x proximity;
 scrollbar-color: #a286ae #f3e8f6;
 margin: 0;
 padding: .3rem .3rem 1rem;
 list-style: none;
}
.launch-shelf-row li { scroll-snap-align: start; }
.launch-book {
 display: flex;
 flex-direction: column;
 height: 100%;
 border: 1px solid #d6c1dd;
 border-radius: 1rem;
 overflow: hidden;
 color: inherit;
 background: #fffcf8;
 text-decoration: none;
 box-shadow: 0 4px 10px #26173514;
}
.launch-book:hover { border-color: #774b90; }
.launch-cover { position: relative; display: block; aspect-ratio: 5 / 4; overflow: hidden; background: #eadcf0; }
.launch-cover img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.launch-cover .availability { top: .75rem; left: .75rem; }
.launch-book-copy { display: grid; grid-template-rows: auto auto 1fr auto; gap: .55rem; flex: 1; padding: 1.1rem; }
.launch-book-copy small { color: #654079; font-weight: 700; }
.launch-book-copy strong { font: 700 1.25rem/1.3 Georgia, serif; }
.launch-description { font-size: .9rem; line-height: 1.5; color: #50415a; }
.launch-read { display: flex; gap: .5rem; align-items: center; font-weight: 700; color: #653581; }
.launch-read svg { width: 1rem; height: 1rem; }
.launch-library .premium-reading { margin-top: clamp(2rem, 5vw, 3.5rem); }
.plan-action.plan-coming-soon { background: #eee2f3; color: #5b3471; box-shadow: none; cursor: default; }
.launch-shelf-heading { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-bottom: 1.25rem; }
.launch-shelf-heading h2 { flex: 1 1 16rem; margin: 0; text-align: left; }
.launch-shelf-controls:not([hidden]) { display: flex; gap: .5rem; }
.launch-shelf-controls button {
 display: grid;
 place-items: center;
 min-width: 44px;
 min-height: 44px;
 border: 1px solid #ba9ac9;
 border-radius: 50%;
 background: #fffaf5;
 color: #5b3471;
}
.launch-shelf-controls button:disabled { opacity: .42; cursor: default; }
.launch-shelf-controls svg { width: 1.25rem; height: 1.25rem; }
