.book-context-links { margin: 1.5rem 0; padding: 1.15rem 1.25rem; border: 1px solid rgba(24,24,24,.18); border-radius: 14px; background: rgba(255,255,255,.46); }
.book-context-links h3 { margin: 0 0 .6rem; font-size: 1.12rem; line-height: 1.4; }
.book-context-links p { margin: 0 0 .8rem; font-size: .96rem; }
.book-context-links ul { padding: 0; margin: 0; list-style: none; display: grid; gap: .55rem; }
.book-context-links a, .book-fit-options a { color: inherit; text-decoration: underline; text-underline-offset: .2em; font-weight: 700; }
.book-fit-intro { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(1.5rem,4vw,3.5rem); align-items: center; }
.book-fit-intro figure { margin: 0; }
.book-fit-intro img { display: block; width: 100%; height: auto; border-radius: 18px; }
.book-fit-intro h2 { max-width: 28ch; font-size: clamp(1.55rem,2.5vw,2.05rem); line-height: 1.25; }
.book-fit-intro p { max-width: 65ch; line-height: 1.7; }
.book-fit-intro .button { white-space: normal; text-align: center; }
.book-fit-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-top: 2rem; }
.book-fit-options-title { margin: 2rem 0 0; font-size: 1.25rem; line-height: 1.4; }
.book-fit-options article { padding: 1.3rem; border: 1px solid rgba(24,24,24,.16); border-radius: 14px; background: #fff; display: flex; flex-direction: column; }
.book-fit-options h3 { margin: 0 0 .7rem; font-size: 1.1rem; line-height: 1.45; }
.book-fit-options p { margin: 0 0 1rem; line-height: 1.65; }
.book-fit-options a { margin-top: auto; }
.book-fit-scope { max-width: 90ch; margin: 1.25rem 0 0; font-size: .95rem; line-height: 1.65; }
.home-hero { min-height: 0; padding-block: 48px 56px; }
.home-hero .hero-grid { grid-template-columns: minmax(0,1.25fr) minmax(0,.75fr); gap: clamp(28px,5vw,70px); }
.home-hero .hero-copy h1 { max-width: 20ch; line-height: 1.14; margin-block: 20px; }
.home-hero .hero-copy .lead { font-size: 1.16rem; line-height: 1.7; max-width: 58ch; }
.home-hero .hero-visual { max-width: 430px; justify-self: end; }
.home-hero .hero-visual img { max-height: 500px; }
@media (max-width: 760px) {
    .home-hero { padding-block: 30px 40px; }
    .home-hero .hero-grid { grid-template-columns: 1fr; }
    .home-hero .hero-visual { max-width: 330px; justify-self: center; }
    .book-fit-intro, .book-fit-options { grid-template-columns: 1fr; }
    .book-fit-intro figure { max-width: 390px; margin: 0 auto; }
    .book-fit-options article { padding: 1.1rem; }
}
