/* CaddyJet final premium system — quiet, precise, and built around the real product. */
:root {
  --cj-navy: #071827;
  --cj-navy-soft: #0d2638;
  --cj-blue: #245b7a;
  --cj-gold: #b5985b;
  --cj-gold-light: #dfd0aa;
  --cj-paper: #f5f4ef;
  --cj-white: #ffffff;
  --cj-ink: #10202c;
  --cj-muted: #68737a;
  --cj-line: #d9d7d0;
  --cj-radius: 18px;
  --cj-shadow: 0 24px 70px rgba(7, 24, 39, .11);
}

html { background: var(--cj-white); }
body {
  background: var(--cj-white);
  color: var(--cj-ink);
  font-family: "DM Sans", sans-serif;
  line-height: 1.55;
  letter-spacing: -.008em;
}
body, body * { text-rendering: optimizeLegibility; }
section[id] { scroll-margin-top: 78px; }

.site-header {
  position: absolute;
  height: 78px;
  padding: 0 clamp(22px, 5vw, 76px);
  gap: 30px;
  background: rgba(7, 24, 39, .96);
  border-bottom: 1px solid rgba(255, 255, 255, .12);
}
.cap-brand { gap: 12px; }
.cap-brand > img {
  width: 45px;
  height: 45px;
  padding: 2px;
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 10px;
}
.brand-copy b {
  font-family: "Manrope", sans-serif;
  font-size: .93rem;
  font-weight: 800;
  letter-spacing: .12em;
}
.brand-copy small { color: var(--cj-gold-light); font-size: .53rem; letter-spacing: .21em; }
.site-header nav { gap: clamp(16px, 2vw, 30px); color: rgba(255,255,255,.7); font-size: .75rem; letter-spacing: .045em; }
.site-header nav a { position: relative; }
.site-header nav a:after { content: ""; position: absolute; left: 0; right: 100%; bottom: -9px; height: 1px; background: var(--cj-gold); transition: right .2s ease; }
.site-header nav a:hover:after { right: 0; }
.header-action {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 0 18px;
  background: var(--cj-white);
  color: var(--cj-navy);
  border: 1px solid var(--cj-white);
  border-radius: 999px;
  font-size: .78rem;
  letter-spacing: .01em;
}

.product-hero {
  min-height: 0;
  padding: 78px 0 0;
  background: var(--cj-navy);
  color: var(--cj-white);
}
.product-hero:before { display: none; }
.product-hero-backdrop,
.product-hero-backdrop:after { background: transparent !important; background-image: none !important; opacity: 1; }
.product-hero-grid {
  width: min(1480px, 100%);
  min-height: 720px;
  margin: 0 auto;
  padding: clamp(74px, 8vw, 130px) clamp(24px, 7vw, 108px) clamp(60px, 7vw, 105px);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .72fr);
  gap: clamp(55px, 9vw, 145px);
  align-items: center;
}
.product-kicker { margin-bottom: 27px; color: var(--cj-gold-light); font-size: .66rem; letter-spacing: .17em; }
.product-kicker span { background: var(--cj-gold); }
.product-hero-copy h1 {
  max-width: 830px;
  margin: 0;
  font-family: "Manrope", sans-serif;
  font-size: clamp(4.3rem, 7.7vw, 7.7rem);
  font-weight: 700;
  line-height: .91;
  letter-spacing: -.074em;
}
.product-hero-copy h1 em { color: var(--cj-white); font-style: normal; font-weight: 500; }
.product-intro { max-width: 690px; margin: 31px 0 0; color: rgba(255,255,255,.67); font-size: clamp(1.02rem, 1.35vw, 1.18rem); line-height: 1.7; }
.product-status {
  width: fit-content;
  margin-top: 28px;
  padding: 11px 15px;
  gap: 11px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 10px;
}
.product-status i { background: #8bac6c; box-shadow: none; }
.product-status b { color: var(--cj-white); font-size: .75rem; letter-spacing: .025em; }
.product-status small { color: rgba(255,255,255,.48); }
.product-hero-actions { margin-top: 30px; gap: 10px; }
.button, .product-hero-actions .button { min-height: 50px; padding: 0 22px; border-radius: 999px; font-size: .87rem; }
.button:hover { transform: translateY(-1px); }
.product-button-primary, .button-primary { background: var(--cj-white); color: var(--cj-navy); border: 1px solid var(--cj-white); }
.product-button-primary:hover, .button-primary:hover { background: var(--cj-paper); }
.product-button-ghost, .button-ghost { background: transparent; color: var(--cj-white); border: 1px solid rgba(255,255,255,.28); }
.product-proof { margin-top: 45px; padding-top: 22px; border-color: rgba(255,255,255,.14); }
.product-proof span { color: rgba(255,255,255,.55); font-size: .7rem; letter-spacing: .045em; }
.product-proof b { color: var(--cj-gold-light); }

.product-hero-visual {
  min-height: 575px;
  margin: 0;
  padding: 98px 42px 26px;
  background: var(--cj-white);
  border: 0;
  border-radius: 24px;
  box-shadow: 0 35px 90px rgba(0,0,0,.25);
}
.product-mark { top: 26px; left: 27px; color: var(--cj-navy); }
.product-mark img { border: 1px solid var(--cj-line); border-radius: 8px; }
.product-mark span { font-size: .75rem; letter-spacing: .13em; }
.product-mark small { color: var(--cj-muted); }
.product-device { width: min(335px, 90%); filter: drop-shadow(0 24px 28px rgba(7,24,39,.22)); }
.product-hero-visual figcaption { border-color: var(--cj-line); color: var(--cj-ink); }
.product-hero-visual figcaption span { color: var(--cj-blue); }
.product-hero-visual figcaption b { color: var(--cj-muted); }
.book-gateway {
  width: min(1280px, calc(100% - 48px));
  margin: 0 auto;
  padding: 24px 0;
  background: transparent;
  border-top: 1px solid rgba(255,255,255,.14);
  border-bottom: 0;
}
.book-gateway > img { box-shadow: none; }
.book-gateway small { color: var(--cj-gold-light); }
.book-gateway b, .book-gateway strong { color: rgba(255,255,255,.78); }

.eyebrow { color: var(--cj-blue); font-size: .68rem; letter-spacing: .16em; }
.eyebrow span { background: var(--cj-gold); }
.eyebrow.dark { color: var(--cj-blue); }
.eyebrow.light { color: var(--cj-gold-light); }
.platform-section,
.caddyjet-section,
.future-section,
.conversion-section {
  background: var(--cj-white);
  background-image: none !important;
  padding: clamp(86px, 9vw, 138px) clamp(24px, 8vw, 122px);
}
.platform-section { border-bottom: 1px solid var(--cj-line); }
.section-kicker { border-color: var(--cj-line); }
.section-kicker > p:last-child { color: var(--cj-muted); font-size: .92rem; }
.platform-head { padding: 60px 0; grid-template-columns: 1.3fr .7fr; }
.platform-head h2,
.how-copy h2,
.caddyjet-copy h2,
.prototype-copy h2,
.future-section h2,
.conversion-section h2,
.closing h2,
.book-copy h2,
.rank-proof-heading h2,
.news-callout h2,
.identity-faq h2,
.founder-copy h2 {
  font-family: "Manrope", sans-serif;
  font-weight: 650;
  letter-spacing: -.055em;
}
.platform-head h2 { color: var(--cj-navy); }
.platform-head > p { color: var(--cj-muted); line-height: 1.75; }

.course-photo-row { gap: 16px; margin-bottom: 66px; }
.course-photo-row figure,
.lifestyle-strip figure,
.future-photo { border: 0; border-radius: var(--cj-radius); box-shadow: none; }
.course-photo-row img,
.lifestyle-strip img,
.future-photo img { filter: saturate(.9) contrast(1.02); }
.course-photo-row figcaption,
.lifestyle-strip figcaption,
.future-photo figcaption { background: rgba(7,24,39,.88); border: 0; border-radius: 999px; backdrop-filter: none; }
.system-map { grid-template-columns: 1fr 120px 1fr; background: transparent; border: 0; }
.system-card {
  min-height: 350px;
  padding: 38px;
  background: var(--cj-paper);
  border: 1px solid var(--cj-line);
  border-radius: var(--cj-radius);
}
.system-card img, .core-thumb, .sleeve-card img { border-radius: 12px; }
.system-card h3 { color: var(--cj-navy); }
.system-card p { color: var(--cj-muted); }
.system-link b { color: var(--cj-blue); }

.how-section {
  min-height: 760px;
  padding: clamp(86px, 9vw, 130px) clamp(24px, 8vw, 122px);
  background: var(--cj-navy);
  background-image: none !important;
}
.section-brand-chip { background: transparent; border-color: rgba(255,255,255,.18); border-radius: 12px; }
.section-brand-chip img { border-radius: 8px; }
.how-copy > p:not(.eyebrow) { color: rgba(255,255,255,.6); line-height: 1.75; }
.demo-video-card { border: 1px solid rgba(255,255,255,.14); border-radius: var(--cj-radius); box-shadow: 0 30px 75px rgba(0,0,0,.28); }
.demo-video-card figcaption { background: var(--cj-navy-soft); background-image: none !important; }
.demo-video-card figcaption span { color: var(--cj-gold-light); }

.caddyjet-logo-wrap { border-color: var(--cj-line); }
.caddyjet-logo-wrap img { border: 1px solid var(--cj-line); border-radius: 12px; }
.caddyjet-logo-wrap span { color: var(--cj-muted); }
.caddyjet-copy { padding: 62px 0; }
.caddyjet-copy h2 { color: var(--cj-navy); }
.caddyjet-copy > p:last-child { color: var(--cj-muted); line-height: 1.75; }
.use-grid { gap: 14px; background: transparent; border: 0; }
.use-grid article {
  min-height: 235px;
  padding: 34px;
  background: var(--cj-paper);
  border: 1px solid var(--cj-line);
  border-radius: var(--cj-radius);
}
.use-grid article > span { color: var(--cj-gold); }
.use-grid h3 { margin-top: 52px; color: var(--cj-navy); }
.use-grid p { color: var(--cj-muted); }
.lifestyle-strip { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; margin-top: 18px; }
.lifestyle-strip figure { height: 390px; }
.lifestyle-strip figcaption { inset: auto 14px 14px; border-radius: 10px; }
.lifestyle-strip figcaption span { color: var(--cj-gold-light); }

.prototype-section {
  margin: 0;
  padding: clamp(82px, 8vw, 120px) clamp(24px, 9vw, 140px);
  gap: clamp(55px, 8vw, 125px);
  background: var(--cj-paper);
  background-image: none !important;
  color: var(--cj-ink);
  border: 0;
  border-radius: 0;
}
.prototype-photo-card { background: var(--cj-white); border: 1px solid var(--cj-line); border-radius: var(--cj-radius); box-shadow: var(--cj-shadow); transform: none; }
.prototype-photo-card img { background: var(--cj-white); object-fit: contain; }
.photo-expand { background: var(--cj-navy); color: var(--cj-white); }
.prototype-section .section-brand-chip { color: var(--cj-navy); border-color: var(--cj-line); }
.prototype-section .section-brand-chip small { color: var(--cj-muted); }
.prototype-section .eyebrow.light { color: var(--cj-blue); }
.prototype-copy h2 { color: var(--cj-navy); }
.prototype-copy > p:not(.eyebrow) { color: var(--cj-muted); line-height: 1.75; }
.prototype-facts { border-color: var(--cj-line); }
.prototype-facts div { border-color: var(--cj-line); }
.prototype-facts span { color: var(--cj-blue); }
.prototype-facts b { color: var(--cj-ink); }

.future-section { background: var(--cj-white); }
.future-section h2 { color: var(--cj-navy); }
.future-section > div:nth-child(2) > p { color: var(--cj-muted); line-height: 1.75; }
.future-track { gap: 12px !important; background: transparent; border: 0; }
.future-track article {
  min-height: 155px;
  padding: 26px;
  background: var(--cj-paper);
  border: 1px solid var(--cj-line);
  border-radius: 14px;
}
.future-track article.active { background: var(--cj-navy); border-color: var(--cj-navy); }
.future-track span { color: var(--cj-gold); }
.future-track .active span { color: var(--cj-gold-light); }
.future-photo:after { background: rgba(7,24,39,.22); background-image: none !important; }

.founder-section {
  margin: 0;
  padding: clamp(90px, 9vw, 138px) clamp(24px, 8vw, 122px);
  background: var(--cj-navy);
  background-image: none !important;
  border-radius: 0;
  gap: clamp(55px, 8vw, 120px);
}
.founder-gallery { min-height: 630px; }
.founder-gallery figure { border: 1px solid rgba(255,255,255,.14); border-radius: var(--cj-radius); box-shadow: none; transform: none; }
.founder-headshot { width: 88%; aspect-ratio: 1016/490; background: #142d3e !important; }
.founder-headshot img { object-fit: contain; }
.founder-caddying { width: 58%; right: 0; bottom: 28px; }
.founder-gallery figcaption { background: var(--cj-navy-soft); border-radius: 0; }
.founder-headshot figcaption { left: 14px; bottom: 14px; border-radius: 999px; }
.founder-copy h2 { color: var(--cj-white); }
.founder-play-line {
  width: fit-content;
  margin: 26px 0 24px !important;
  padding: 9px 13px;
  color: var(--cj-gold-light) !important;
  border: 1px solid rgba(223,208,170,.32);
  border-radius: 999px;
  font-size: .73rem !important;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.founder-copy > p:not(.eyebrow):not(.founder-signoff):not(.founder-play-line) { color: rgba(255,255,255,.66); line-height: 1.72; }
.founder-copy .founder-lede { margin-top: 0; color: rgba(255,255,255,.83) !important; }
.founder-copy blockquote { border-color: var(--cj-gold); color: var(--cj-white); font-weight: 500; }
.founder-signoff { color: var(--cj-gold-light); }
.founder-professional-link { border-radius: 999px; }
.founder-professional-link span { color: var(--cj-gold-light); }

.rank-proof-section {
  padding: clamp(85px, 8vw, 125px) clamp(24px, 8vw, 122px);
  background: var(--cj-paper);
  background-image: none !important;
  color: var(--cj-ink);
}
.rank-proof-heading h2 { color: var(--cj-navy); }
.rank-proof-heading h2 em { color: var(--cj-blue); }
.rank-proof-intro { color: var(--cj-muted); }
.rankings-now { background: var(--cj-white); border-color: var(--cj-line); border-radius: var(--cj-radius); box-shadow: none; }
.rankings-now > p, .rankings-now > a { border-color: var(--cj-line); }

.book-section {
  margin: 0;
  padding: clamp(90px, 9vw, 135px) clamp(24px, 8vw, 122px);
  background: var(--cj-navy-soft);
  background-image: none !important;
  border-radius: 0;
}
.book-copy h2 { color: var(--cj-white); }
.book-copy > p:not(.eyebrow) { color: rgba(255,255,255,.66); line-height: 1.72; }
.book-editions { gap: 16px; }
.book-edition,
.book-edition.spanish-edition,
.book-edition.portuguese-edition,
.book-edition.kriolu-edition {
  background: var(--cj-white);
  background-image: none !important;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: var(--cj-radius);
}
.book-edition-copy h3 { color: var(--cj-navy); }
.book-edition-copy p { color: var(--cj-muted); }
.book-cover:before { background: #e5e1d7; background-image: none !important; }
.book-edition .button-primary { background: var(--cj-navy); color: var(--cj-white); border-color: var(--cj-navy); }
.book-edition .button-ghost { color: var(--cj-navy); border-color: var(--cj-line); }
.book-edition .edition-text-link { color: var(--cj-blue); }

.news-callout,
.identity-faq {
  margin: 0;
  padding: clamp(78px, 8vw, 115px) clamp(24px, 8vw, 122px);
  background: var(--cj-white);
  border: 0;
  border-bottom: 1px solid var(--cj-line);
  border-radius: 0;
  box-shadow: none;
}
.news-callout h2, .identity-faq h2 { color: var(--cj-navy); }
.news-callout p, .identity-faq p { color: var(--cj-muted); }
.button-dark { background: var(--cj-navy); color: var(--cj-white); }
.identity-faq-grid { gap: 14px; }
.identity-faq-grid article { background: var(--cj-paper); border: 1px solid var(--cj-line); border-radius: var(--cj-radius); }

.conversion-section { background: var(--cj-paper); }
.conversion-section h2 { color: var(--cj-navy); }
.conversion-grid { gap: 12px; background: transparent; border: 0; }
.conversion-grid a { background: var(--cj-white); border: 1px solid var(--cj-line); border-radius: var(--cj-radius); }
.conversion-grid a:hover { background: var(--cj-navy); color: var(--cj-white); }
.conversion-grid a > span { color: var(--cj-gold); }
.conversion-grid a small { color: var(--cj-muted); }
.conversion-grid a:hover small { color: rgba(255,255,255,.6); }

.closing {
  margin: 0;
  padding: clamp(76px, 8vw, 115px) clamp(24px, 8vw, 122px);
  min-height: 430px;
  background: var(--cj-navy);
  background-image: none !important;
  border: 0;
  border-radius: 0;
}
.closing h2 { color: var(--cj-white); }
.closing-brand img, .footer-brand img { border-radius: 9px; }
footer { padding: 32px clamp(24px, 5vw, 76px); background: #05121d; border-color: rgba(255,255,255,.12); }
.footer-email { border-radius: 999px; }

.caddy-guide {
  width: min(390px, calc(100vw - 28px));
  min-height: 196px;
  padding: 22px 44px 20px 146px;
  background: var(--cj-navy-soft);
  background-image: none !important;
  border: 1px solid rgba(255,255,255,.17);
  border-radius: 16px;
  box-shadow: var(--cj-shadow);
}
.caddy-guide-character { width: 170px; bottom: -43px; }
.caddy-guide-copy p { color: var(--cj-gold-light); }
.caddy-guide-copy h2 { font-family: "Manrope", sans-serif; font-size: 1.25rem; }
.caddy-guide-copy > a { border-radius: 999px; }

dialog { border-radius: var(--cj-radius); border-color: var(--cj-line); }
.dialog-copy h2 { font-family: "Manrope", sans-serif; color: var(--cj-navy); }

@media (max-width: 1100px) {
  .site-header nav { display: none; }
  .product-hero-grid { grid-template-columns: 1fr .72fr; gap: 45px; }
  .product-hero-copy h1 { font-size: clamp(3.8rem, 7.8vw, 6rem); }
  .founder-section { grid-template-columns: 1fr 1fr; }
  .founder-gallery { min-height: 520px; }
}

@media (max-width: 760px) {
  .site-header { height: calc(68px + env(safe-area-inset-top)); min-height: 68px; padding: env(safe-area-inset-top) 15px 0; }
  .cap-brand > img { width: 39px; height: 39px; }
  .brand-copy b { font-size: .92rem; }
  .brand-copy small { font-size: .45rem; }
  .header-action { min-height: 38px; padding: 0 13px; font-size: .7rem; }
  .product-hero { padding: calc(68px + env(safe-area-inset-top)) 0 0; }
  .product-hero-grid { grid-template-columns: 1fr; gap: 36px; padding: 70px 17px 34px; }
  .product-hero-copy h1 { font-size: clamp(3.3rem, 15.3vw, 4.7rem); line-height: .93; letter-spacing: -.065em; }
  .product-intro { font-size: .98rem; line-height: 1.62; }
  .product-hero-actions { grid-template-columns: 1fr 1fr; }
  .product-proof { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .product-hero-visual { min-height: 0; padding: 76px 18px 22px; border-radius: 18px; }
  .product-mark { top: 18px; left: 18px; }
  .product-device { width: min(280px, 86%); }
  .book-gateway { width: calc(100% - 34px); }
  .platform-section, .how-section, .caddyjet-section, .future-section, .conversion-section,
  .prototype-section, .founder-section, .book-section, .rank-proof-section, .news-callout,
  .identity-faq, .closing { padding-left: 18px; padding-right: 18px; }
  .platform-head { grid-template-columns: 1fr; gap: 22px; }
  .course-photo-row { grid-template-columns: 1fr; }
  .course-photo-row figure { height: 285px; }
  .system-map { grid-template-columns: 1fr; gap: 12px; }
  .system-link { min-height: 38px; }
  .system-link span { max-width: 50px; }
  .how-section { grid-template-columns: 1fr; }
  .demo-video-card video { height: auto; aspect-ratio: 4/5; }
  .caddyjet-copy { grid-template-columns: 1fr; gap: 20px; }
  .caddyjet-copy .eyebrow, .caddyjet-copy h2, .caddyjet-copy > p:last-child { grid-column: 1; }
  .use-grid { grid-template-columns: 1fr; }
  .use-grid article { min-height: 190px; }
  .lifestyle-strip { grid-template-columns: 1fr; }
  .lifestyle-strip figure { height: 330px; }
  .prototype-section, .founder-section { grid-template-columns: 1fr; }
  .prototype-photo-card img { height: auto; aspect-ratio: 3/4; }
  .founder-gallery { min-height: 500px; }
  .founder-headshot { width: 100%; }
  .founder-caddying { width: 66%; }
  .future-track { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .book-editions { grid-template-columns: 1fr; }
  .book-edition, .book-edition.portuguese-edition { grid-column: auto; }
  .news-callout { grid-template-columns: 1fr; gap: 28px; }
  .conversion-grid { grid-template-columns: 1fr; }
  .caddy-guide { right: 12px; width: calc(100vw - 24px); min-height: 180px; padding: 18px 40px 17px 120px; }
  .caddy-guide-character { width: 145px; bottom: -31px; }
}

@media (max-width: 430px) {
  .brand-copy small { display: none; }
  .product-hero-grid { padding-top: 58px; }
  .product-hero-copy h1 { font-size: clamp(3.05rem, 15vw, 3.85rem); }
  .product-hero-actions { grid-template-columns: 1fr; }
  .product-proof span { font-size: .6rem; }
  .product-proof span + span { padding-left: 9px; border-left: 1px solid rgba(255,255,255,.14); }
  .book-gateway { grid-template-columns: 44px minmax(0,1fr); }
  .book-gateway > strong { grid-column: 2; }
  .founder-gallery { min-height: 410px; }
  .caddy-guide { padding-left: 108px; }
  .caddy-guide-character { left: -25px; width: 138px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *:before, *:after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Real-photo editorial spread: personality without visual clutter. */
.course-photo-row { grid-template-columns: 1fr; }
.course-photo-row figure:not(.course-photo-wide) { display: none; }
.course-photo-row .course-photo-wide { height: clamp(340px, 42vw, 560px); border-radius: 24px; }
.course-photo-row .course-photo-wide figcaption { left: 20px; bottom: 20px; padding: 10px 14px; }

.lifestyle-strip {
  grid-template-columns: minmax(0, 1.72fr) minmax(260px, .78fr);
  grid-template-rows: repeat(2, 300px);
  gap: 16px;
  margin-top: 36px;
}
.lifestyle-strip figure { height: auto; border-radius: 22px; overflow: hidden; }
.lifestyle-strip .lifestyle-feature { grid-row: 1 / 3; }
.lifestyle-strip img { width: 100%; height: 100%; object-fit: cover; }
.lifestyle-strip .lifestyle-feature img { object-position: center 53%; }
.lifestyle-strip figure:nth-child(2) img { object-position: center 41%; }
.lifestyle-strip figure:nth-child(3) img { object-position: center 60%; }
.lifestyle-strip figcaption {
  inset: auto 16px 16px;
  padding: 13px 15px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 13px;
  background: rgba(7,24,39,.79);
  backdrop-filter: blur(12px);
}

@media (max-width: 760px) {
  .course-photo-row .course-photo-wide { height: 300px; }
  .lifestyle-strip { grid-template-columns: 1fr; grid-template-rows: none; gap: 14px; }
  .lifestyle-strip figure, .lifestyle-strip .lifestyle-feature { grid-row: auto; height: 330px; }
  .lifestyle-strip .lifestyle-feature { height: 390px; }
}

@media (max-width: 430px) {
  .lifestyle-strip figure { height: 300px; }
  .lifestyle-strip .lifestyle-feature { height: 360px; }
}

/* The book is the hook: a high-impact, evidence-led momentum section. */
.book-momentum-section {
  padding: clamp(86px, 8vw, 132px) clamp(24px, 8vw, 122px);
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 14%, rgba(206, 169, 94, .18), transparent 30%),
    linear-gradient(135deg, #061726 0%, #0b2b43 54%, #071b2c 100%);
  color: var(--cj-white);
  border-top: 1px solid rgba(231, 213, 174, .42);
  border-bottom: 1px solid rgba(231, 213, 174, .42);
}
.momentum-hero {
  width: min(1240px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 360px);
  align-items: center;
  gap: clamp(48px, 8vw, 112px);
}
.momentum-copy .eyebrow { color: var(--cj-gold-light); }
.momentum-copy h2 {
  margin: 20px 0 0;
  color: var(--cj-white);
  font: 700 clamp(3.45rem, 6.5vw, 7rem)/.88 "Cormorant Garamond", serif;
  letter-spacing: -.052em;
}
.momentum-copy h2 em { color: var(--cj-gold-light); font-weight: 600; }
.momentum-copy > p:not(.eyebrow) {
  max-width: 760px;
  margin: 30px 0 0;
  color: rgba(255,255,255,.74);
  font-size: clamp(1rem, 1.3vw, 1.18rem);
  line-height: 1.75;
}
.momentum-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.momentum-press-button { color: var(--cj-white); border: 1px solid rgba(255,255,255,.45); box-shadow: none; }
.momentum-press-button:hover { background: rgba(255,255,255,.08); border-color: var(--cj-white); }
.momentum-cover { margin: 0; position: relative; }
.momentum-cover:before {
  content: "";
  position: absolute;
  inset: 22px -22px -22px 22px;
  border: 1px solid rgba(223, 193, 132, .46);
}
.momentum-cover img {
  position: relative;
  z-index: 1;
  width: 100%;
  display: block;
  border: 1px solid rgba(255,255,255,.28);
  box-shadow: 0 34px 70px rgba(0,0,0,.38);
  transform: rotate(1.4deg);
}
.momentum-cover figcaption {
  position: relative;
  z-index: 2;
  margin: 20px 0 0 24px;
  display: flex;
  flex-direction: column;
}
.momentum-cover figcaption span { color: var(--cj-gold-light); font: 700 .64rem/1 "Manrope", sans-serif; letter-spacing: .15em; }
.momentum-cover figcaption b { margin-top: 8px; color: rgba(255,255,255,.72); font: 600 .84rem/1.45 "Manrope", sans-serif; }

.accolade-grid {
  width: min(1240px, 100%);
  margin: clamp(62px, 7vw, 92px) auto 0;
  display: grid;
  grid-template-columns: 1.12fr 1fr 1fr;
  border: 1px solid rgba(222, 198, 147, .34);
  box-shadow: 0 26px 64px rgba(0,0,0,.2);
}
.accolade-card {
  min-height: 290px;
  padding: clamp(26px, 3vw, 42px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: rgba(255,255,255,.035);
  border-right: 1px solid rgba(222, 198, 147, .24);
}
.accolade-card:last-child { border-right: 0; }
.accolade-card span { color: rgba(255,255,255,.58); font: 700 .68rem/1.35 "Manrope", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.accolade-card strong { margin: 22px 0 12px; color: var(--cj-gold-light); font: 700 clamp(5.5rem, 9vw, 9.25rem)/.66 "Cormorant Garamond", serif; letter-spacing: -.075em; }
.accolade-card h3 { margin: 0; color: var(--cj-white); font: 700 clamp(1.35rem, 2vw, 2rem)/1.08 "Manrope", sans-serif; letter-spacing: -.035em; }
.accolade-featured { background: var(--cj-gold); }
.accolade-featured span, .accolade-featured strong, .accolade-featured h3 { color: #061726; }

.expansion-story { width: min(1240px, 100%); margin: clamp(72px, 8vw, 112px) auto 0; }
.expansion-heading { max-width: 850px; }
.expansion-heading p { margin: 0; color: var(--cj-gold-light); font: 700 .68rem/1 "Manrope", sans-serif; letter-spacing: .16em; }
.expansion-heading h3 { margin: 18px 0 0; color: var(--cj-white); font: 700 clamp(2.6rem, 5vw, 5.4rem)/.92 "Cormorant Garamond", serif; letter-spacing: -.045em; }
.milestone-timeline {
  margin: 44px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(222, 198, 147, .38);
  border-left: 1px solid rgba(222, 198, 147, .38);
}
.milestone-timeline li {
  min-height: 235px;
  padding: 25px;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: auto 1fr;
  gap: 14px 18px;
  background: rgba(255,255,255,.025);
  border-right: 1px solid rgba(222, 198, 147, .38);
  border-bottom: 1px solid rgba(222, 198, 147, .38);
}
.milestone-number { color: var(--cj-gold-light); font: 700 .7rem/1 "Manrope", sans-serif; letter-spacing: .14em; }
.milestone-timeline time { color: rgba(255,255,255,.53); font: 600 .72rem/1 "Manrope", sans-serif; letter-spacing: .06em; text-align: right; }
.milestone-timeline li > div { grid-column: 1 / -1; align-self: end; display: flex; flex-direction: column; }
.milestone-timeline b { color: var(--cj-white); font: 700 clamp(1.15rem, 1.6vw, 1.45rem)/1.16 "Manrope", sans-serif; letter-spacing: -.025em; }
.milestone-timeline small { margin-top: 10px; color: rgba(255,255,255,.61); font-size: .86rem; line-height: 1.55; }
.milestone-timeline a { margin-top: 15px; color: var(--cj-gold-light); font-size: .78rem; font-weight: 700; }
.retail-milestone { background: rgba(205, 170, 98, .12) !important; }
.retail-milestone b { color: var(--cj-gold-light); }
.milestone-note { width: min(1240px, 100%); margin: 26px auto 0; color: rgba(255,255,255,.46); font-size: .75rem; line-height: 1.55; }

/* The actual book-cover character now peeks from alternating screen edges. */
.caddy-guide {
  --guide-top: 54%;
  top: var(--guide-top);
  bottom: auto;
  width: min(430px, calc(100vw - 24px));
  min-height: 190px;
  border: 1px solid rgba(222, 198, 147, .62);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(5,20,33,.985), rgba(13,46,68,.985));
  box-shadow: 0 28px 75px rgba(0,0,0,.4);
  transform-origin: center;
  transition: opacity .28s ease, transform .52s cubic-bezier(.2,.9,.2,1), visibility 0s linear .55s;
}
.caddy-guide.from-left { left: 0; right: auto; padding: 22px 24px 20px 174px; transform: translate3d(-108%,0,0) rotate(-2deg); border-left: 0; border-radius: 0 16px 16px 0; }
.caddy-guide.from-right { right: 0; left: auto; padding: 22px 174px 20px 24px; transform: translate3d(108%,0,0) rotate(2deg); border-right: 0; border-radius: 16px 0 0 16px; }
.caddy-guide.from-left.is-visible, .caddy-guide.from-right.is-visible { transform: translate3d(0,0,0) rotate(0); }
.caddy-guide-character {
  position: absolute;
  bottom: -16px;
  width: 170px;
  height: 226px;
  overflow: hidden;
  border: 3px solid var(--cj-gold-light);
  border-radius: 48% 48% 18px 18px;
  background: #efe2c5;
  box-shadow: 0 16px 36px rgba(0,0,0,.34);
  filter: none;
  pointer-events: none;
}
.from-left .caddy-guide-character { left: -8px; }
.from-right .caddy-guide-character { left: auto; right: -8px; }
.caddy-guide-character img {
  position: absolute;
  width: 460px;
  max-width: none;
  height: auto;
  left: -143px;
  top: -176px;
}
.caddy-guide.is-visible .caddy-guide-character { animation: trb1-pop-bounce .82s cubic-bezier(.2,.9,.2,1), trb1-idle 2.4s ease-in-out .82s infinite; }
.caddy-guide-copy p { color: var(--cj-gold-light); }
.caddy-guide-copy h2 { color: var(--cj-white); font-family: "Cormorant Garamond", serif; font-size: 1.58rem; line-height: 1; }
.caddy-guide-copy > span { color: rgba(255,255,255,.72); }
.caddy-guide-copy > a { background: var(--cj-gold); color: #061726; border-color: var(--cj-gold); }
.caddy-guide-copy > a:hover { background: var(--cj-gold-light); }
@keyframes trb1-pop-bounce {
  0% { transform: translateY(72%) scale(.72) rotate(-8deg); }
  58% { transform: translateY(-8%) scale(1.05) rotate(3deg); }
  76% { transform: translateY(3%) scale(.98) rotate(-2deg); }
  100% { transform: translateY(0) scale(1) rotate(0); }
}
@keyframes trb1-idle { 0%,100% { transform: translateY(0) rotate(-.6deg); } 50% { transform: translateY(-6px) rotate(.8deg); } }

@media (max-width: 940px) {
  .momentum-hero { grid-template-columns: minmax(0, 1fr) minmax(210px, 280px); gap: 44px; }
  .accolade-grid { grid-template-columns: 1fr; }
  .accolade-card { min-height: 215px; border-right: 0; border-bottom: 1px solid rgba(222, 198, 147, .24); }
  .accolade-card:last-child { border-bottom: 0; }
  .milestone-timeline { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .book-momentum-section { padding-inline: 18px; }
  .momentum-hero { grid-template-columns: 1fr; }
  .momentum-copy h2 { font-size: clamp(3.15rem, 14vw, 4.65rem); }
  .momentum-cover { width: min(270px, 80vw); margin: 0 auto; }
  .accolade-card strong { font-size: 6.2rem; }
  .milestone-timeline { grid-template-columns: 1fr; }
  .milestone-timeline li { min-height: 205px; }
  .caddy-guide { --guide-top: auto; top: auto; bottom: max(10px, env(safe-area-inset-bottom)); width: calc(100vw - 18px); min-height: 170px; }
  .caddy-guide.from-left { padding: 18px 18px 17px 132px; }
  .caddy-guide.from-right { padding: 18px 132px 17px 18px; }
  .caddy-guide-character { width: 132px; height: 182px; bottom: -10px; }
  .caddy-guide-character img { width: 365px; left: -115px; top: -140px; }
  .caddy-guide-copy h2 { font-size: 1.28rem; }
  .caddy-guide-copy > span { font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) {
  .caddy-guide.is-visible .caddy-guide-character { animation: none; }
}

/* Clean standalone TRB1 guide: character only, never a crop of the book cover. */
.caddy-guide-character {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.caddy-guide-character img {
  position: static;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(0 16px 20px rgba(0,0,0,.34));
}

/* A quiet gateway to the photo timeline, without another stats block. */
.journey-invitation{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px max(5vw,20px);background:#f6f3eb;color:#102b3b;border-bottom:1px solid #ddd3bf}
.journey-invitation>div{max-width:720px}.journey-invitation-kicker{margin:0;color:#8f653e;font-size:.72rem;font-weight:700;letter-spacing:.16em}.journey-invitation h2{margin:7px 0;font-family:"Cormorant Garamond",serif;font-size:clamp(2rem,4vw,3.25rem);line-height:1}.journey-invitation p:not(.journey-invitation-kicker){margin:0;font-size:.95rem;line-height:1.5}.journey-invitation>a{flex:none;padding:12px 19px;background:#102b3b;color:#fff;text-decoration:none;font-size:.85rem;font-weight:700}
.journey-invitation .journey-book-cta{margin-top:10px!important;color:#5d5245}.journey-invitation .journey-book-cta a{color:#7d2f2b;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.journey-invitation{display:block;padding:26px 20px}.journey-invitation>a{display:inline-block;margin-top:19px}}
