/* ---------- book (Calendly) page ---------- */
.book{
  padding:80px 0 120px;
}
.book__grid{
  display:grid;
  grid-template-columns:1fr minmax(380px,500px);
  gap:64px;
  align-items:start;
}
@media (max-width:980px){
  .book__grid{grid-template-columns:1fr; gap:48px;}
}

.book__copy .eyebrow{margin:0 0 22px;}
.book__title{
  margin:0 0 22px;
  font-size:clamp(30px,4vw,46px);
  line-height:1.15;
  font-weight:700;
  letter-spacing:-0.02em;
  color:var(--ink);
  text-wrap:balance;
}
.book__title em{
  font-style:normal;
  font-family:var(--font-gradient);
  background:linear-gradient(90deg, var(--ink), var(--gradient-end));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.book__lead{
  margin:0 0 16px;
  font-size:16.5px;
  line-height:1.7;
  color:var(--ink-dim);
}
.book__text{
  margin:0 0 28px;
  font-size:15px;
  line-height:1.7;
  color:var(--ink-dim);
}
.book__text strong{color:var(--ink); font-weight:600;}
.book__text em{
  font-style:normal;
  white-space:nowrap;
  font-family:var(--font-gradient);
  background:linear-gradient(90deg, var(--ink), var(--gradient-end));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.book__list{
  list-style:none;
  margin:0 0 28px;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.book__list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:14.5px;
  line-height:1.5;
  color:var(--ink-dim);
}
.book__check{
  flex:none;
  margin-top:3px;
  color:var(--accent);
}
.book__note{
  margin:0;
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:0.02em;
  color:var(--ink-faint);
}

.book__stage{
  position:relative;
  width:100%;
  max-width:500px;
  background:#140405;
  border:1px solid #E8CACB;
  border-radius:var(--radius-lg);
  padding:12px;
  box-shadow:0 60px 80px -50px rgba(0,0,0,0.7);
}
[data-theme="light"] .book__stage{
  background:#F3F8FF;
}
.book__stage .calendly-inline-widget{
  border-radius:calc(var(--radius-lg) - 8px);
  overflow:hidden;
}

@media (max-width:640px){
  .book{padding:48px 0 80px;}
  .book__stage{padding:8px;}
  .book__stage .calendly-inline-widget{min-width:0 !important;}
}
