.classes2-page {
  --c2-maroon: #741625;
  --c2-maroon-dark: #4f0f19;
  --c2-gold: #c88320;
  --c2-gold-light: #f4d47e;
  --c2-cream: #fffaf0;
  --c2-paper: #fffdf8;
  --c2-sand: #f6ead6;
  --c2-ink: #3e2922;
  --c2-muted: #70584f;
  background: var(--c2-cream);
  color: var(--c2-ink);
}

.classes2-page main { overflow: hidden; }
.classes2-page h1,
.classes2-page h2,
.classes2-page h3,
.classes2-page blockquote { font-family: "Lora", Georgia, serif; }

.classes2-kicker {
  margin: 0 0 15px;
  color: #a75f18;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .19em;
  line-height: 1.45;
  text-transform: uppercase;
}

.classes2-hero {
  display: grid;
  grid-template-columns: minmax(420px, .9fr) minmax(560px, 1.12fr);
  min-height: 620px;
  background: var(--c2-maroon-dark);
}

.classes2-hero-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(60px, 7vw, 108px) clamp(34px, 5.8vw, 92px);
  color: #fff9ec;
}

.classes2-hero .classes2-kicker { color: var(--c2-gold-light); }
.classes2-hero h1 {
  max-width: 630px;
  margin: 0;
  color: #fff7e7;
  font-size: clamp(50px, 5.3vw, 80px);
  letter-spacing: -.05em;
  line-height: .98;
}
.classes2-hero h1 span { display: block; margin-top: 8px; color: var(--c2-gold-light); }
.classes2-lede {
  max-width: 600px;
  margin: 25px 0 0;
  color: rgba(255, 249, 236, .88);
  font-size: clamp(16px, 1.3vw, 20px);
  line-height: 1.72;
}

.classes2-button {
  display: inline-flex;
  width: fit-content;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border-radius: 10px;
  background: #e66f0b;
  color: #fff;
  padding: 0 25px;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 12px 25px rgba(89, 23, 12, .16);
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.classes2-button:hover { transform: translateY(-2px); background: #ce5c00; box-shadow: 0 16px 30px rgba(89, 23, 12, .22); }
.classes2-button:focus-visible,
.classes2-details:focus-visible { outline: 3px solid var(--c2-gold-light); outline-offset: 4px; }
.classes2-button-gold { margin-top: 31px; background: var(--c2-gold-light); color: var(--c2-maroon-dark); }
.classes2-button-gold:hover { background: #f6c95c; }

.classes2-benefits {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  max-width: 620px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}
.classes2-benefits li {
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgba(255, 249, 236, .83);
  font-size: 12px;
  line-height: 1.45;
}
.classes2-benefits .material-symbols-rounded { color: var(--c2-gold-light); font-size: 27px; }

.classes2-hero-art { position: relative; min-width: 0; margin: 0; overflow: hidden; }
.classes2-hero-art::after { position: absolute; inset: 0; background: rgba(79, 15, 25, .08); content: ""; pointer-events: none; }
.classes2-hero-art img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.classes2-hero-art figcaption {
  position: absolute;
  right: 34px;
  bottom: 30px;
  z-index: 1;
  color: #fff7e7;
  font: italic 600 17px/1.42 "Lora", Georgia, serif;
  text-align: right;
  text-shadow: 0 2px 14px rgba(28, 8, 4, .72);
}

.classes2-facts {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  max-width: 1440px;
  margin: 0 auto;
  border-bottom: 1px solid #ead5b5;
  background: var(--c2-paper);
}
.classes2-facts > div {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 13px;
  padding: 26px clamp(14px, 2vw, 28px);
  border-right: 1px solid #ead5b5;
}
.classes2-facts > div:last-child { border-right: 0; }
.classes2-facts .material-symbols-rounded { flex: 0 0 auto; color: #b66816; font-size: 34px; }
.classes2-facts p { display: grid; gap: 4px; margin: 0; }
.classes2-facts strong { color: var(--c2-maroon); font: 700 15px/1.25 "Lora", Georgia, serif; }
.classes2-facts small { color: var(--c2-muted); font-size: 11px; line-height: 1.35; }

.classes2-paths {
  max-width: 1380px;
  margin: 0 auto;
  padding: clamp(80px, 8vw, 124px) 28px 82px;
}
.classes2-heading { max-width: 760px; margin: 0 auto 54px; text-align: center; }
.classes2-heading h2,
.classes2-proof h2,
.classes2-closing h2 {
  margin: 0;
  color: var(--c2-maroon);
  font-size: clamp(38px, 4vw, 60px);
  letter-spacing: -.045em;
  line-height: 1.06;
}
.classes2-heading > p:last-child { margin: 16px 0 0; color: var(--c2-muted); font-size: 17px; line-height: 1.7; }

.classes2-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
.classes2-course {
  display: grid;
  grid-template-columns: minmax(180px, .72fr) minmax(300px, 1.28fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid #ead5b5;
  border-radius: 18px;
  background: var(--c2-paper);
}
.classes2-course-art { position: relative; min-width: 0; min-height: 580px; margin: 0; overflow: hidden; background: #ecd2a5; }
.classes2-course-art::after { position: absolute; inset: 0; background: rgba(70, 28, 8, .08); content: ""; pointer-events: none; }
.classes2-course-art img { width: 100%; height: 100%; object-fit: cover; }
.classes2-course-art-hanuman img { object-position: 43% center; }
.classes2-course-art-gita img { object-position: 50% center; transform: scale(1.08); transform-origin: center; }
.classes2-course-art figcaption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 25px;
  z-index: 1;
  color: #fff8e5;
  font: italic 600 17px/1.5 "Lora", Georgia, serif;
  text-shadow: 0 2px 12px rgba(35, 10, 2, .82);
}
.classes2-course-copy { display: flex; min-width: 0; flex-direction: column; padding: 32px clamp(24px, 3vw, 40px); }
.classes2-course-eyebrow {
  margin: 0 0 10px;
  color: #a65d17;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .17em;
  line-height: 1.5;
  text-transform: uppercase;
}
.classes2-course h3 { margin: 0; color: var(--c2-maroon); font-size: clamp(31px, 2.8vw, 43px); letter-spacing: -.035em; line-height: 1.05; }
.classes2-course-intro { margin: 12px 0 17px; color: #523c34; font-size: 16px; line-height: 1.55; }
.classes2-status {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 17px;
  border-radius: 8px;
  background: #f7f0e5;
  color: #4d3831;
  padding: 10px 12px;
  font-size: 12px;
  line-height: 1.35;
}
.classes2-status .material-symbols-rounded { color: #b93625; font-size: 20px; }
.classes2-features { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
.classes2-features li { display: flex; align-items: flex-start; gap: 10px; color: #57423a; font-size: 13px; line-height: 1.45; }
.classes2-features .material-symbols-rounded { flex: 0 0 auto; color: #ba721b; font-size: 20px; }
.classes2-price { display: flex; align-items: baseline; gap: 10px; margin-top: auto; border-top: 1px solid #ecdeca; padding-top: 21px; }
.classes2-price s { color: #7c655c; font-size: 13px; }
.classes2-price strong { color: var(--c2-maroon); font: 700 34px/1 "Lora", Georgia, serif; }
.classes2-price small { color: #745c51; font-size: 13px; }
.classes2-course .classes2-button { width: 100%; margin-top: 20px; }
.classes2-details { align-self: center; margin-top: 14px; color: #4f3931; font-size: 12px; font-weight: 700; text-underline-offset: 4px; }

.classes2-journey {
  border-top: 1px solid #e6cda7;
  background: #fffdf8;
  padding: 76px 28px 86px;
}
.classes2-journey .classes2-heading { margin-bottom: 42px; }
.classes2-journey ol {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: 1120px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.classes2-journey li {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 19px;
  align-items: start;
  padding: 0 34px;
}
.classes2-journey li + li { border-left: 1px solid #e3c99f; }
.classes2-journey li > .material-symbols-rounded {
  display: grid;
  width: 62px;
  height: 62px;
  place-items: center;
  border-radius: 50%;
  background: #f8efe2;
  color: var(--c2-maroon);
  font-size: 29px;
}
.classes2-journey strong { display: block; color: var(--c2-maroon); font: 700 17px/1.35 "Lora", Georgia, serif; }
.classes2-journey li p { margin: 8px 0 0; color: var(--c2-muted); font-size: 14px; line-height: 1.65; }

.classes2-proof {
  display: grid;
  grid-template-columns: minmax(280px, .7fr) minmax(500px, 1.3fr);
  max-width: 1180px;
  margin: 88px auto;
  overflow: hidden;
  border: 1px solid #e4cda9;
  border-radius: 26px;
  background: var(--c2-sand);
}
.classes2-proof figure { height: 540px; margin: 0; overflow: hidden; }
.classes2-proof figure img { width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.classes2-proof > div { padding: clamp(46px, 6vw, 82px); }
.classes2-proof h2 { font-size: clamp(36px, 3.8vw, 54px); }
.classes2-proof > div > p:not(.classes2-kicker) { margin: 20px 0 0; color: #5e473e; font-size: 16px; line-height: 1.75; }
.classes2-proof blockquote { margin: 30px 0 0; border-left: 2px solid var(--c2-gold); color: var(--c2-maroon); padding: 4px 0 4px 22px; font-size: 19px; font-style: italic; line-height: 1.6; }
.classes2-proof cite { display: block; margin-top: 13px; color: #775d52; font: 700 11px/1.45 "Inter", sans-serif; font-style: normal; letter-spacing: .06em; text-transform: uppercase; }

.classes2-closing {
  max-width: 1180px;
  margin: 0 auto 88px;
  border-radius: 26px;
  background: var(--c2-maroon-dark);
  color: #fff8e9;
  padding: clamp(54px, 7vw, 86px) 28px;
  text-align: center;
}
.classes2-closing .classes2-kicker { color: var(--c2-gold-light); }
.classes2-closing h2 { max-width: 760px; margin-inline: auto; color: #fff8e9; }
.classes2-closing > p:not(.classes2-kicker) { max-width: 650px; margin: 18px auto 0; color: rgba(255, 248, 233, .82); font-size: 16px; line-height: 1.7; }
.classes2-closing .classes2-button { margin-inline: auto; }

.classes2-footer { border-top: 1px solid #ead5b5; background: #fffdf8; padding: 26px 24px; color: #70584f; text-align: center; }
.classes2-footer p { margin: 0; font-size: 13px; line-height: 1.8; }
.classes2-footer a { color: var(--c2-maroon); font-weight: 700; text-decoration: none; }

@media (max-width: 1120px) {
  .classes2-hero { grid-template-columns: minmax(380px, .9fr) 1.1fr; }
  .classes2-grid { gap: 22px; }
  .classes2-course { grid-template-columns: 1fr; }
  .classes2-course-art { min-height: 0; aspect-ratio: 4 / 5; }
  .classes2-course-art-hanuman img { object-position: 43% center; }
  .classes2-course-art-gita img { object-position: 50% center; }
}

@media (max-width: 900px) {
  .classes2-hero { grid-template-columns: 1fr; }
  .classes2-hero-art { order: -1; height: clamp(340px, 62vw, 520px); }
  .classes2-hero-copy { align-items: center; text-align: center; }
  .classes2-benefits { width: 100%; }
  .classes2-facts { grid-template-columns: repeat(2, 1fr); }
  .classes2-facts > div:nth-child(2n) { border-right: 0; }
  .classes2-facts > div:last-child { grid-column: 1 / -1; border-top: 1px solid #ead5b5; }
  .classes2-grid { grid-template-columns: 1fr; max-width: 720px; margin-inline: auto; }
  .classes2-course { grid-template-columns: minmax(230px, .72fr) minmax(360px, 1.28fr); }
  .classes2-course-art { min-height: 590px; aspect-ratio: auto; }
  .classes2-journey ol { grid-template-columns: 1fr; max-width: 680px; gap: 0; }
  .classes2-journey li { padding: 28px 0; }
  .classes2-journey li + li { border-top: 1px solid #e3c99f; border-left: 0; }
  .classes2-proof { margin-inline: 24px; }
}

@media (max-width: 680px) {
  .classes2-hero-art { height: 310px; }
  .classes2-hero-art figcaption { right: 18px; bottom: 16px; font-size: 13px; }
  .classes2-hero-copy { padding: 50px 22px 55px; }
  .classes2-hero h1 { font-size: clamp(43px, 13vw, 59px); }
  .classes2-lede { font-size: 16px; }
  .classes2-button { width: 100%; padding-inline: 18px; text-align: center; }
  .classes2-benefits { grid-template-columns: 1fr; max-width: 300px; gap: 12px; }
  .classes2-facts { grid-template-columns: 1fr; }
  .classes2-facts > div,
  .classes2-facts > div:nth-child(2n),
  .classes2-facts > div:last-child { grid-column: auto; border-top: 0; border-right: 0; border-bottom: 1px solid #ead5b5; padding: 18px 24px; }
  .classes2-paths { padding: 72px 18px 62px; }
  .classes2-heading { margin-bottom: 38px; }
  .classes2-course { grid-template-columns: 1fr; }
  .classes2-course-art { min-height: 0; aspect-ratio: 4 / 5; }
  .classes2-course-copy { padding: 28px 22px 30px; }
  .classes2-course h3 { font-size: 34px; }
  .classes2-journey { padding: 68px 22px 72px; }
  .classes2-journey li { grid-template-columns: auto 1fr; gap: 15px; }
  .classes2-journey li > .material-symbols-rounded { width: 52px; height: 52px; font-size: 25px; }
  .classes2-proof { grid-template-columns: 1fr; margin: 64px 18px; border-radius: 20px; }
  .classes2-proof figure { height: 440px; }
  .classes2-proof > div { padding: 40px 24px; }
  .classes2-proof blockquote { font-size: 17px; }
  .classes2-closing { margin: 0 18px 64px; border-radius: 20px; padding-inline: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .classes2-button { transition: none; }
}
