/* Conteúdo do clube a partir da apresentação da cliente · outubro de 2026. */
.charm-page .course-hero { padding-bottom: 90px; }
.charm-page .course-hero-copy > .charm-subtitle {
  font: italic 25px/1.3 var(--serif);
  color: #78516f;
  margin-top: 17px;
}
.charm-page .course-hero-copy > .charm-lead {
  font: 500 30px/1.3 var(--serif);
  color: var(--plum);
  max-width: 460px;
  margin-top: 28px;
}
.charm-lead strong { font-weight: 600; }
.charm-page .course-hero-copy > p:not(.eyebrow):not(.charm-subtitle):not(.charm-lead) { max-width: 475px; }
.charm-page .course-facts { margin-bottom: 15px; }
.charm-page .course-quote .eyebrow { justify-content: center; font-size: 9px; margin: 0 0 24px; }
.charm-page .course-quote h2 { font-size: clamp(48px, 5.5vw, 78px); }
.charm-page .course-quote .charm-quote-copy { font: 400 16px/1.8 var(--sans); letter-spacing: 0; margin-top: 25px; }
.charm-page .editorial-row p { max-width: 470px; }
.charm-reading-section { background: var(--paper); padding-block: 85px; }
.charm-reading-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 90px; align-items: center; }
.charm-reading-copy .eyebrow { margin-bottom: 23px; }
.charm-reading-copy h2 { font-size: clamp(45px, 4.4vw, 64px); }
.charm-reading-copy > p:not(.eyebrow) { max-width: 530px; font-size: 14px; color: #66505d; line-height: 1.95; margin-top: 25px; }
.charm-reading-signature { display: inline-block; font-size: 27px; color: #78516f; transform: rotate(-4deg); margin-top: 27px; }
.charm-reading-test { padding: 35px; border: 1px solid var(--line); background: var(--cream); }
.charm-book-symbol { display: block; width: 75px; margin-bottom: 23px; }
.charm-book-symbol svg { fill: none; stroke: var(--plum); stroke-width: 1.1; }
.charm-reading-test .small-label { font-size: 8px; letter-spacing: .13em; }
.charm-reading-test h3 { font-size: 40px; margin-top: 16px; }
.charm-reading-test > p:not(.small-label) { font-size: 13px; color: #66505d; line-height: 1.9; margin-top: 22px; }
.charm-reading-test .text-link { font-size: 12px; margin-top: 18px; }
.charm-activities-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.charm-activity { border-top: 1px solid var(--line); padding: 30px 0 0; }
.charm-activity-mark { display: block; color: #88627d; font: 38px/1 var(--serif); margin-bottom: 25px; }
.charm-activity h3 { font-size: 38px; }
.charm-activity p { font-size: 14px; color: #66505d; line-height: 1.9; margin-top: 17px; max-width: 340px; }
.charm-editions-section { padding-bottom: 15px; }
.charm-editions-section h2 { font-size: clamp(43px, 4.5vw, 64px); }
.charm-editions-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.charm-edition { border: 1px solid var(--line); padding: 38px 40px; display: flex; flex-direction: column; }
.charm-first-years { background: var(--paper); }
.charm-seekers { background: var(--plum); color: var(--cream); }
.charm-edition .small-label { font-size: 8px; letter-spacing: .14em; }
.charm-edition h3 { font-size: clamp(34px, 3.6vw, 49px); margin: 21px 0; letter-spacing: -.025em; }
.charm-edition p:not(.small-label) { font-size: 14px; line-height: 1.9; color: #66505d; max-width: 450px; }
.charm-seekers p:not(.small-label) { color: #e2d2de; }
.charm-edition .handwritten { font-size: 25px; line-height: 1.3; padding-top: 29px; margin-top: auto; }
.charm-schedule-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: center; }
.charm-first-meeting { padding: 40px; border: 1px solid #b9a0ae; background: #eee2e5; }
.charm-first-meeting .eyebrow { font-size: 9px; }
.charm-meeting-title { font-size: clamp(34px, 3.6vw, 49px); line-height: 1.1; margin-top: 27px; }
.charm-free-label { display: inline-block; background: var(--plum); color: var(--cream); font-size: 12px; font-weight: 500; border-radius: 25px; padding: 8px 18px; margin-top: 24px; }
.charm-first-meeting > p:last-child { font-size: 13px; color: #66505d; line-height: 1.9; margin-top: 24px; }
.charm-schedule-copy > .eyebrow { margin-bottom: 22px; }
.charm-schedule-copy h2 { font-size: clamp(45px, 4.5vw, 64px); }
.charm-schedule-list { margin: 30px 0 0; }
.charm-schedule-list > div { display: grid; grid-template-columns: 150px 1fr; gap: 25px; padding-block: 21px; border-bottom: 1px solid var(--line); align-items: baseline; }
.charm-schedule-list dt { font-size: 12px; color: #705a69; }
.charm-schedule-list dd { margin: 0; font: 500 27px/1.25 var(--serif); }
.charm-faq-section { padding-bottom: 100px; }
.charm-invitation { background: var(--plum); color: var(--cream); text-align: center; padding-block: 85px; }
.charm-invitation .container { max-width: 900px; }
.charm-invitation .eyebrow { justify-content: center; font-size: 9px; color: #e2cddd; }
.charm-invitation h2 { margin-top: 27px; font-size: clamp(56px, 6vw, 83px); }
.charm-invitation-stars { display: block; color: #c5a9bc; font-size: 24px; letter-spacing: .25em; margin-top: 21px; }
.charm-invitation p:not(.eyebrow) { font-size: 16px; margin-top: 22px; }
.charm-invitation .charm-invitation-date { color: #e2cddd; font-size: 12px; }
.charm-invitation .button { margin-top: 28px; }

@media (max-width: 1020px) {
  .charm-reading-grid, .charm-schedule-grid { gap: 40px; }
  .charm-reading-test { padding: 28px; }
  .charm-reading-test h3 { font-size: 35px; }
  .charm-activities-grid { gap: 26px; }
  .charm-edition { padding: 31px; }
  .charm-first-meeting { padding: 30px; }
  .charm-schedule-list > div { grid-template-columns: 105px 1fr; gap: 20px; }
  .charm-schedule-list dd { font-size: 24px; }
}
@media (max-width: 700px) {
  .charm-page .course-hero { padding-bottom: 65px; }
  .charm-page .course-hero h1 { font-size: clamp(65px, 16vw, 82px); }
  .charm-page .course-hero-copy > .charm-subtitle { font-size: 22px; }
  .charm-page .course-hero-copy > .charm-lead { font-size: 27px; margin-top: 24px; }
  .charm-page .course-hero .eyebrow { font-size: 7px; letter-spacing: .12em; }
  .charm-page .course-quote .eyebrow { font-size: 8px; }
  .charm-page .course-quote h2 { font-size: 47px; }
  .charm-page .course-quote .charm-quote-copy { font-size: 13px; max-width: 290px; margin: 23px auto 0; }
  .charm-reading-section { padding-block: 60px; }
  .charm-reading-grid, .charm-schedule-grid { grid-template-columns: 1fr; gap: 38px; }
  .charm-reading-copy .eyebrow { font-size: 8px; }
  .charm-reading-copy h2 { font-size: clamp(39px, 10vw, 49px); }
  .charm-reading-copy > p:not(.eyebrow) { font-size: 13px; margin-top: 22px; }
  .charm-reading-signature { font-size: 25px; }
  .charm-reading-test { padding: 29px 26px; }
  .charm-reading-test h3 { font-size: 38px; }
  .charm-reading-test .text-link { font-size: 12px; gap: 12px; }
  .charm-activities-grid { grid-template-columns: 1fr; gap: 29px; }
  .charm-activity { padding-top: 24px; }
  .charm-activity-mark { font-size: 30px; margin-bottom: 17px; }
  .charm-activity h3 { font-size: 34px; }
  .charm-activity p { font-size: 13px; margin-top: 15px; max-width: none; }
  .charm-editions-section h2 { font-size: clamp(39px, 10vw, 48px); }
  .charm-editions-grid { grid-template-columns: 1fr; gap: 22px; }
  .charm-edition { padding: 30px 27px; }
  .charm-edition h3 { font-size: 39px; }
  .charm-edition p:not(.small-label) { font-size: 13px; }
  .charm-edition .handwritten { font-size: 23px; }
  .charm-first-meeting { padding: 31px; }
  .charm-first-meeting .eyebrow { font-size: 8px; }
  .charm-meeting-title { font-size: 43px; }
  .charm-schedule-copy > .eyebrow { font-size: 8px; }
  .charm-schedule-copy h2 { font-size: 46px; }
  .charm-schedule-list > div { grid-template-columns: 100px 1fr; gap: 17px; padding-block: 20px; }
  .charm-schedule-list dt { font-size: 11px; }
  .charm-schedule-list dd { font-size: 24px; }
  .charm-faq-section { padding-bottom: 65px; }
  .charm-invitation { padding-block: 65px; }
  .charm-invitation .eyebrow { font-size: 7px; letter-spacing: .11em; }
  .charm-invitation h2 { font-size: 57px; }
  .charm-invitation p:not(.eyebrow) { font-size: 14px; }
  .charm-invitation .charm-invitation-date { font-size: 11px; line-height: 1.8; }
  .charm-invitation .button { font-size: 12px; }
}
