/* Refinamentos da página inicial · 28 de outubro de 2026. */
.literary-home {
  position: relative;
  isolation: isolate;
}
.literary-backdrop {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
  color: #6e4765;
}
.backdrop-page {
  position: absolute;
  width: 295px;
  height: 245px;
  border: 1px solid currentColor;
  outline: 1px solid currentColor;
  outline-offset: -7px;
  opacity: .075;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
.backdrop-page-one {
  top: 245px;
  left: max(-120px, calc(50% - 850px));
  background-image: url('../images/literary-page.svg');
  transform: rotate(-13deg);
}
.backdrop-page-two {
  top: 54%;
  right: max(-100px, calc(50% - 850px));
  background-image: url('../images/literary-lines.svg');
  transform: rotate(12deg);
}
.backdrop-book {
  position: absolute;
  width: 130px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: .10;
}
.backdrop-book-one { top: 25%; right: 25px; transform: rotate(17deg); }
.backdrop-book-two { top: 70%; left: 14px; transform: rotate(-19deg); }

.chapter-heading {
  display: block;
  text-align: center;
  margin-bottom: 6px;
}
.chapter-heading > .eyebrow { justify-content: center; font-size: 10px; padding-bottom: 0; margin: 0 auto 20px; }
.chapter-heading h2 { margin: 0 auto; }
.chapter-branches {
  display: block;
  width: calc(100% + 24px);
  max-width: none;
  height: 190px;
  margin-top: 14px;
  margin-left: -12px;
  overflow: visible;
  color: #97758b;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.25px;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}
.chapter-branches path { vector-effect: non-scaling-stroke; }
.path-column { min-width: 0; display: flex; flex-direction: column; }
.path-label {
  text-align: center;
  font: italic 500 clamp(26px, 2.6vw, 38px)/1.25 var(--serif);
  letter-spacing: -.025em;
  margin: 0 0 26px;
}
.path-column > .path-card { flex: 1; }
.mobile-path-arrow { display: none; }
.reading-card .offer-links { margin-top: auto; padding-top: 22px; }
.speaking-card .path-content strong { font-weight: 600; letter-spacing: .035em; }
.reading-invitation .door-arch .handwritten {
  left: 50%;
  right: auto;
  width: max-content;
  max-width: none;
  text-align: center;
  transform: translateX(-50%) rotate(-7deg);
}

@media (max-width: 900px) and (min-width: 701px) {
  .chapter-branches { height: 160px; }
  .path-label { font-size: 27px; }
}
@media (max-width: 700px) {
  .backdrop-page { width: 225px; height: 187px; opacity: .055; }
  .backdrop-page-one { top: 230px; left: -120px; }
  .backdrop-page-two { top: 67%; right: -110px; }
  .backdrop-book { width: 90px; opacity: .075; }
  .backdrop-book-one { top: 29%; right: -10px; }
  .backdrop-book-two { top: 80%; left: -15px; }
  .chapter-heading { margin-bottom: 6px; }
  .chapter-heading > .eyebrow { font-size: 9px; margin-bottom: 18px; }
  .chapter-heading h2 { font-size: clamp(43px, 11vw, 60px); }
  .chapter-branches { display: none; }
  .mobile-path-arrow {
    display: block;
    width: 74px;
    height: 100px;
    margin: 12px auto 13px;
    fill: none;
    stroke: #97758b;
    stroke-width: 1.25;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .path-grid { gap: 24px; }
  .path-label { font-size: clamp(27px, 7.6vw, 34px); margin-bottom: 23px; }
  .reading-card .offer-links { margin-top: 24px; padding-top: 16px; }
}
