:root {
  --book-gold: #d4a447;
  --book-gold-light: #f0ce85;
  --book-black: #090a0d;
  --book-panel: #151518;
}

.book-page { background: var(--book-black); }
.book-page h1, .book-page h2, .book-page h3 { text-wrap: balance; }
.book-page h1 span, .book-page h2 span { color: var(--book-gold); }
.book-header { position: absolute; }
.book-header .brand b { color: #171717; }
.book-header .brand small { color: rgba(20,20,20,.52); }
.book-header .main-menu { color: rgba(20,20,20,.66); }
.book-header .main-menu a:hover { color: #111; }
.book-header .menu-button span { background: #171717; }
.book-nav-cta { background: var(--book-gold) !important; color: #0d0d0f !important; }
.book-eyebrow { margin-bottom: 15px; color: var(--book-gold); font-size: .75rem; font-weight: 700; letter-spacing: .19em; text-transform: uppercase; }
.book-buy { color: #111; background: linear-gradient(105deg, #bd8731, #edc66e); box-shadow: 0 16px 40px rgba(207,158,66,.2); }

.book-hero { min-height: 720px; display: grid; align-items: center; overflow: hidden; position: relative; color: #171717; background: radial-gradient(circle at 76% 38%, rgba(209,158,63,.2), transparent 25%), linear-gradient(115deg, #f7f5f0 0 62%, #eee7da 62% 100%); }
.book-hero::before { content: ""; position: absolute; inset: 0; opacity: .28; background: repeating-linear-gradient(115deg, transparent 0 84px, rgba(20,20,20,.035) 85px 86px); }
.book-glow { width: 520px; height: 520px; position: absolute; right: 4%; top: 14%; border-radius: 50%; background: radial-gradient(circle, rgba(202,150,52,.2), transparent 66%); filter: blur(14px); }
.book-hero-grid { min-height: 720px; padding-top: 100px; display: grid; grid-template-columns: 1.02fr .98fr; gap: 55px; align-items: center; position: relative; z-index: 2; }
.book-hero-copy { padding-block: 65px; }
.book-hero h1 { max-width: 640px; margin-bottom: 25px; color: #151515; font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: clamp(2.55rem, 3.8vw, 3.75rem); line-height: 1.03; letter-spacing: -.04em; text-transform: uppercase; }
.book-lead { max-width: 610px; color: #57534d; font-size: .96rem; line-height: 1.7; }
.book-lead strong { color: #171717; }
.book-actions { margin-top: 32px; display: flex; align-items: center; gap: 25px; flex-wrap: wrap; }
.book-text-link { color: #76551d; font-size: .8rem; font-weight: 600; }
.book-text-link span { margin-left: 7px; color: var(--book-gold); }
.book-note { max-width: 610px; margin: 28px 0 0; color: #77716a; font-size: .7rem; }
.book-hero-art { min-height: 580px; display: grid; place-items: center; position: relative; }
.book-hero-art img { width: 625px; max-width: 118%; position: relative; z-index: 2; filter: drop-shadow(0 34px 30px rgba(47,38,24,.28)); transform: translateX(2%) rotate(-1deg); }
.hero-ring { position: absolute; border: 1px solid rgba(157,109,29,.18); border-radius: 50%; }
.hero-ring-one { width: 460px; height: 460px; }
.hero-ring-two { width: 350px; height: 350px; border-color: rgba(212,164,71,.1); }

.leadership-context { padding: 105px 0; background: #f0ede7; color: #151515; }
.context-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 60px 90px; }
.context-heading h2 { margin: 0; font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: clamp(2rem, 2.9vw, 3rem); line-height: 1.08; text-transform: uppercase; }
.context-copy { padding-top: 32px; }
.context-copy p { color: #4b4843; font-size: .98rem; }
.context-copy a { color: #8d6220; font-size: .78rem; font-weight: 700; text-transform: uppercase; }
.context-stat { padding: 30px 0 0; display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; border-top: 1px solid rgba(20,20,20,.18); }
.context-stat strong { color: #a06e23; font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: 3.15rem; line-height: 1; }
.context-stat span { color: #3f3c37; font-size: .82rem; line-height: 1.55; }

.book-about { padding: 110px 0; background: #0d0e11; }
.book-section-title { max-width: 830px; margin-bottom: 58px; }
.book-section-title h2 { font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: clamp(2rem, 2.8vw, 2.9rem); line-height: 1.08; text-transform: uppercase; }
.book-section-title > p:last-child { max-width: 690px; color: var(--muted); font-size: .92rem; }
.book-pillars { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid rgba(255,255,255,.09); }
.book-pillar { min-height: 280px; padding: 35px 28px; border-left: 1px solid rgba(255,255,255,.09); background: linear-gradient(150deg, rgba(255,255,255,.035), transparent); }
.book-pillar:first-child { border-left: 0; }
.book-pillar h3 { margin-top: 50px; color: #f2e3c4; font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: 1.55rem; text-transform: uppercase; }
.book-pillar p { margin-bottom: 0; color: rgba(255,255,255,.6); font-size: .81rem; }

.book-manifesto { min-height: 680px; display: grid; grid-template-columns: 1.05fr .95fr; background: #15120f; }
.book-manifesto-image { min-height: 680px; overflow: hidden; }
.book-manifesto-image img { height: 100%; object-fit: cover; }
.book-manifesto-copy { max-width: 650px; padding: 90px 75px; align-self: center; }
.book-manifesto-copy blockquote { margin: 16px 0 28px; color: #f3ddb0; font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: clamp(2.05rem, 2.9vw, 3rem); font-weight: 700; line-height: 1.06; text-transform: uppercase; }
.book-manifesto-copy > p:not(.book-eyebrow) { color: rgba(255,255,255,.68); font-size: .91rem; }
.book-manifesto-copy .button { margin-top: 15px; }

.book-author { padding: 110px 0; overflow: hidden; background: linear-gradient(110deg, #0d0e11 0 52%, #17171a 52% 100%); }
.book-author-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 80px; align-items: center; }
.book-author-photo { height: 590px; overflow: hidden; border: 1px solid rgba(212,164,71,.28); box-shadow: 28px 28px 0 rgba(212,164,71,.08); }
.book-author-photo img { height: 100%; object-fit: cover; object-position: 68% center; filter: grayscale(.35) contrast(1.08); }
.book-author-copy h2 { font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: clamp(2rem, 2.75vw, 2.85rem); line-height: 1.08; text-transform: uppercase; }
.book-author-copy > p:not(.book-eyebrow) { color: rgba(255,255,255,.68); font-size: .9rem; }
.author-proof { margin-top: 35px; display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid rgba(255,255,255,.12); }
.author-proof div { padding: 22px 18px; display: grid; border-left: 1px solid rgba(255,255,255,.12); }
.author-proof div:first-child { padding-left: 0; border-left: 0; }
.author-proof strong { color: var(--book-gold); font-size: 1.5rem; }
.author-proof span { color: rgba(255,255,255,.5); font-size: .62rem; text-transform: uppercase; }

.book-press { padding: 110px 0; background: #f0ede7; color: #171717; }
.book-press .book-section-title h2 { color: #171717; }
.book-press .book-section-title > p:last-child { color: #5c5851; }
.press-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.press-card { min-height: 235px; padding: 28px; display: flex; flex-direction: column; border: 1px solid rgba(20,20,20,.13); background: rgba(255,255,255,.42); transition: transform .25s, border-color .25s, background .25s; }
.press-card:hover { transform: translateY(-5px); border-color: rgba(161,111,34,.5); background: #fff; }
.press-card span { color: #9a6921; font-size: .67rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.press-card strong { margin-top: 34px; font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: 1.25rem; line-height: 1.25; text-transform: uppercase; }
.press-card em { margin-top: auto; color: #6b645a; font-size: .7rem; font-style: normal; font-weight: 600; text-transform: uppercase; }

.book-final { padding: 85px 0 0; overflow: hidden; color: #171717; background: radial-gradient(circle at 24% 46%, rgba(209,158,63,.2), transparent 28%), #f7f5f0; border-top: 1px solid rgba(120,88,32,.14); }
.book-final-grid { min-height: 620px; display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
.book-final-art { align-self: end; }
.book-final-art img { width: 600px; max-width: 115%; filter: drop-shadow(0 30px 28px rgba(41,33,21,.24)); transform: translate(-5%, 4%) rotate(-2deg); }
.book-final-copy { max-width: 610px; padding-bottom: 75px; }
.book-final-copy h2 { font-family: "Roboto Condensed", "Poppins", sans-serif; font-size: clamp(2.1rem, 3vw, 3.15rem); line-height: 1.05; text-transform: uppercase; }
.book-final-copy > p:not(.book-eyebrow) { color: #5f5a53; font-size: .94rem; }
.book-final-copy small { margin-top: 15px; display: block; color: #7e776e; font-size: .68rem; }
.book-footer { border-top-color: rgba(212,164,71,.2); }

@media (max-width: 900px) {
  .book-hero-grid, .context-grid, .book-author-grid, .book-final-grid { grid-template-columns: 1fr; }
  .book-hero { min-height: auto; }
  .book-hero-grid { padding-top: 115px; }
  .book-hero-copy { padding-bottom: 0; }
  .book-hero-art { min-height: 520px; }
  .book-hero-art img { width: min(650px, 95%); }
  .book-header .main-menu { color: rgba(255,255,255,.76); }
  .book-header .main-menu a:hover { color: white; }
  .book-header .menu-button[aria-expanded="true"] span { background: white; }
  .context-grid { gap: 42px; }
  .context-copy { padding-top: 0; }
  .book-pillars { grid-template-columns: 1fr 1fr; }
  .book-pillar:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.09); }
  .book-pillar:nth-child(4) { border-top: 1px solid rgba(255,255,255,.09); }
  .book-manifesto { grid-template-columns: 1fr; }
  .book-manifesto-image { min-height: 500px; }
  .book-manifesto-copy { max-width: 720px; padding: 75px max(24px, calc((100vw - 720px) / 2)); }
  .book-author { background: #0d0e11; }
  .book-author-photo { width: min(560px, 82%); height: 540px; }
  .press-grid { grid-template-columns: 1fr 1fr; }
  .book-final-grid { gap: 20px; }
  .book-final-art { width: 72%; }
}

@media (max-width: 620px) {
  .book-hero-grid { min-height: auto; padding-top: 100px; }
  .book-hero-copy { padding-block: 45px 5px; }
  .book-hero h1 { font-size: clamp(2.2rem, 9.5vw, 2.75rem); }
  .book-lead { font-size: .92rem; }
  .book-actions { align-items: flex-start; flex-direction: column; }
  .book-note { font-size: .7rem; }
  .book-hero-art { min-height: 390px; }
  .book-hero-art img { width: 118%; max-width: 118%; transform: translateX(0) rotate(-2deg); }
  .hero-ring-one { width: 310px; height: 310px; }
  .hero-ring-two { width: 230px; height: 230px; }
  .leadership-context, .book-about, .book-author, .book-press { padding: 78px 0; }
  .context-heading h2, .book-section-title h2, .book-author-copy h2 { font-size: clamp(1.85rem, 8vw, 2.4rem); }
  .context-stat { grid-template-columns: 1fr; gap: 12px; }
  .context-stat strong { font-size: 3.25rem; }
  .book-pillars { grid-template-columns: 1fr; }
  .book-pillar, .book-pillar:nth-child(2) { min-height: 230px; border-left: 0; border-top: 1px solid rgba(255,255,255,.09); }
  .book-pillar:first-child { border-top: 0; }
  .book-pillar h3 { margin-top: 28px; }
  .book-manifesto-image { min-height: 340px; }
  .book-manifesto-copy { padding: 65px 24px; }
  .book-manifesto-copy blockquote { font-size: 2rem; }
  .book-author-grid { gap: 55px; }
  .book-author-photo { width: calc(100% - 18px); height: 420px; }
  .author-proof { grid-template-columns: 1fr; }
  .author-proof div, .author-proof div:first-child { padding: 18px 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.1); }
  .author-proof div:first-child { border-top: 0; }
  .press-grid { grid-template-columns: 1fr; }
  .press-card { min-height: 210px; }
  .book-final { padding-top: 65px; }
  .book-final-art { width: 100%; }
  .book-final-art img { max-width: 118%; transform: translate(-7%, 4%) rotate(-3deg); }
  .book-final-copy { padding-bottom: 65px; }
  .book-final-copy h2 { font-size: clamp(2rem, 8.5vw, 2.55rem); }
}
