/* Book a 15-minute call: the Decision page. Quiet, clean, built around the calendar. */

.book-section {
  background: #F8F6F0;
  padding: 150px 24px 72px;
  position: relative;
  overflow: hidden;
}
.book-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(60% 50% at 8% 12%, rgba(255,107,43,0.10), transparent 70%),
    radial-gradient(50% 45% at 96% 88%, rgba(124,58,237,0.08), transparent 70%);
}
.book-inner {
  position: relative;
  max-width: 1140px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

/* Copy column */
.book-label {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #FF6B2B;
  margin: 0 0 14px;
}
.book-copy h1 {
  font-size: clamp(2.2rem, 4.6vw, 3.4rem);
  font-weight: 800;
  line-height: 1.08;
  color: #1B2A4A;
  margin: 0 0 18px;
  letter-spacing: -0.01em;
}
.book-copy h1 span { color: #FF6B2B; }
.book-lead {
  font-size: 1.15rem;
  line-height: 1.6;
  color: #2D3E5F;
  margin: 0 0 34px;
  max-width: 34ch;
}
.book-points {
  list-style: none;
  padding: 0;
  margin: 0 0 30px;
  display: grid;
  gap: 20px;
}
.book-points li {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  align-items: start;
  font-size: 1rem;
  line-height: 1.6;
  color: #3A4A6A;
}
.book-points strong { color: #1B2A4A; font-weight: 700; }
.book-icon {
  width: 44px; height: 44px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 8px 20px rgba(27,42,74,0.10);
}
.book-icon svg { width: 22px; height: 22px; }
.book-icon.o { background: linear-gradient(135deg, #FF8A55, #FF6B2B); }
.book-icon.p { background: linear-gradient(135deg, #A47CF0, #7C3AED); }
.book-icon.t { background: linear-gradient(135deg, #2FC6B0, #0FA38C); }

.book-eric {
  font-size: 1rem;
  color: #3A4A6A;
  margin: 0;
  padding-top: 26px;
  border-top: 1px solid rgba(27,42,74,0.08);
}
.book-eric a {
  color: #7C3AED;
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  padding: 6px 0;
}
.book-eric a:hover { text-decoration: underline; }

/* A short video under the notes: poster with a play button, the player only when clicked */
.book-video { margin-top: 28px; }
.book-video-cap { font-size: 0.78rem; font-weight: 800; letter-spacing: 0.16em; text-transform: uppercase; color: #FF6B2B; margin: 0 0 12px; }
.video-facade {
  position: relative; display: block; width: 100%; aspect-ratio: 16 / 9;
  border: 0; padding: 0; cursor: pointer; border-radius: 18px; overflow: hidden; background: #1B2A4A;
  box-shadow: 0 24px 60px rgba(27,42,74,0.14), 0 4px 14px rgba(27,42,74,0.06);
}
.video-facade img { width: 100%; height: 100%; object-fit: cover; display: block; opacity: 0.92; transition: transform 0.5s ease, opacity 0.3s; }
.video-facade:hover img { transform: scale(1.03); opacity: 1; }
.play-ring {
  position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%;
  background: linear-gradient(135deg, #FF8A55, #FF6B2B 60%, #E0521A);
  box-shadow: 0 14px 34px rgba(255,107,43,0.4), 0 0 0 10px rgba(255,255,255,0.18);
  display: flex; align-items: center; justify-content: center; transition: transform 0.25s;
}
.play-ring svg { width: 26px; height: 26px; margin-left: 3px; }
.video-facade:hover .play-ring { transform: scale(1.06); }
.play-label { position: absolute; left: 50%; bottom: 16px; transform: translateX(-50%); color: #fff; font-weight: 800; font-size: 0.9rem; text-shadow: 0 2px 12px rgba(0,0,0,0.4); }
.video-player { width: 100%; aspect-ratio: 16 / 9; display: block; border: 0; border-radius: 18px; box-shadow: 0 24px 60px rgba(27,42,74,0.14); }

/* Calendar card */
.book-widget {
  background: #fff;
  border-radius: 24px;
  box-shadow: 0 30px 80px rgba(27,42,74,0.12), 0 4px 16px rgba(27,42,74,0.05);
  padding: 12px 6px 14px;
  overflow: hidden;
}
.calendly-inline-widget {
  min-width: 300px;
  height: 820px;
  border-radius: 18px;
  overflow: hidden;
}
.book-fallback {
  text-align: center;
  font-size: 0.85rem;
  color: #6B778C;
  margin: 8px 0 0;
}
.book-fallback a { color: #FF6B2B; font-weight: 600; }

/* Reassurance row */
.book-promise {
  background: #fff;
  padding: 72px 24px 96px;
}
.promise-inner {
  max-width: 1140px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
.promise-card {
  background: #fff;
  border-radius: 24px;
  padding: 32px 30px 30px;
  box-shadow: 0 30px 80px rgba(27,42,74,0.12), 0 4px 16px rgba(27,42,74,0.05);
}
.promise-num {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #FF6B2B;
  margin-bottom: 14px;
}
.promise-card h3 {
  font-size: 1.35rem;
  font-weight: 800;
  color: #1B2A4A;
  margin: 0 0 10px;
}
.promise-card p {
  font-size: 0.98rem;
  line-height: 1.65;
  color: #3A4A6A;
  margin: 0;
}

/* Wide screens: copy left, calendar right */
@media (min-width: 900px) {
  .book-section { padding: 170px 40px 96px; }
  .book-inner {
    grid-template-columns: minmax(340px, 420px) 1fr;
    gap: 64px;
    align-items: start;
  }
  .book-copy { position: sticky; top: 120px; }
  .book-widget { padding: 16px 10px 16px; }
  .calendly-inline-widget { height: 880px; }
  .promise-inner { grid-template-columns: repeat(3, 1fr); gap: 28px; }
  .book-promise { padding: 96px 40px 120px; }
}

/* Phones: keep the calendar tall enough to use without pinching */
@media (max-width: 599px) {
  .book-section { padding: 130px 18px 56px; }
  .book-widget { padding: 8px 2px 12px; border-radius: 20px; }
  .calendly-inline-widget { height: 1000px; }
}
