/* Course detail: a calm editorial hierarchy around the two existing plans. */
.detail-hero {
  overflow: hidden;
  padding: clamp(28px, 4vw, 48px) 0 clamp(58px, 7vw, 90px);
  background:
    radial-gradient(circle at 7% 18%, rgba(226, 186, 170, .20), transparent 33%),
    radial-gradient(circle at 91% 64%, rgba(225, 200, 171, .19), transparent 37%),
    linear-gradient(110deg, #fffaf6, #fdf8f5 52%, #fffdf9);
}

.detail-plans-layout {
  gap: 0;
}

.detail-plans-layout .detail-copy {
  max-width: 900px;
  padding: 13px 0 32px;
}

.detail-plans-layout .detail-copy .pill {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 1px solid #e9d4c8;
  background: rgba(255, 255, 255, .72);
  color: #925c4c;
  padding: 8px 17px;
  letter-spacing: 0;
  box-shadow: 0 4px 16px rgba(109, 67, 50, .06);
}

.detail-plans-layout .detail-copy .pill::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ba8a72;
}

.detail-plans-layout .detail-copy h1 {
  position: relative;
  width: fit-content;
  max-width: 100%;
  margin: 14px auto 13px;
  padding: 0 0 22px;
  color: #51332e;
  font-family: "Noto Kufi Arabic", Tajawal, sans-serif;
  font-size: clamp(2rem, 3.45vw, 3.15rem);
  font-weight: 700;
  line-height: 1.42;
  letter-spacing: 0;
  text-wrap: balance;
}

.detail-plans-layout .detail-copy h1::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 84px;
  height: 3px;
  border-radius: 99px;
  background: linear-gradient(90deg, transparent, #bb8873 22%, #bb8873 78%, transparent);
  transform: translateX(-50%);
}

.detail-plans-layout .detail-copy h2 {
  max-width: 790px;
  margin: 0 auto;
  color: #6b5149;
  font-family: Almarai, Tajawal, sans-serif;
  font-size: clamp(1rem, 1.55vw, 1.24rem);
  font-weight: 400;
  line-height: 1.95;
  letter-spacing: 0;
  text-wrap: pretty;
}

.detail-plans-layout .detail-facts {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 19px;
}

.detail-plans-layout .detail-facts span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 35px;
  padding: 5px 13px;
  border: 1px solid #edddd4;
  border-radius: 999px;
  background: rgba(255, 255, 255, .76);
  color: #795d53;
  font-size: .79rem;
  font-weight: 700;
}

.detail-plans-layout .detail-facts svg { color: #a46f63; }

.detail-plans-layout .detail-units-link {
  display: inline-flex;
  justify-content: center;
  margin-top: 16px;
  padding: 7px 4px;
  color: #845246;
  border-bottom: 1px solid #c99d8c;
  text-decoration: none;
  transition: gap .25s ease, color .25s ease;
}

.detail-plans-layout .detail-units-link:hover {
  gap: 16px;
  color: #62372e;
  text-decoration: none;
}

.detail-plan-section {
  padding-top: 28px;
  border-top: 1px solid rgba(158, 102, 81, .22);
}

.detail-plan-heading {
  max-width: 760px;
  margin-bottom: 29px;
}

.detail-plan-heading .eyebrow,
.plan-heading .eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 0 0 7px;
  color: #a06855;
  font-family: Almarai, sans-serif;
  font-size: .81rem;
  font-weight: 800;
  letter-spacing: 0;
}

.detail-plan-heading .eyebrow::before,
.detail-plan-heading .eyebrow::after,
.plan-heading .eyebrow::before,
.plan-heading .eyebrow::after {
  content: "";
  width: 25px;
  height: 1px;
  background: #c9a898;
}

.detail-plan-heading h2,
.plan-heading h1 {
  color: #683c34;
  font-family: "Noto Kufi Arabic", Tajawal, sans-serif;
  font-size: clamp(1.75rem, 3vw, 2.65rem);
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: 0;
  text-wrap: balance;
}

.detail-plan-heading h2 { margin: 0 0 1px; }
.detail-plan-heading p { color: #78645c; font-size: .94rem; line-height: 1.8; }

.detail-plan-tile {
  border-color: #e7cfc3;
  box-shadow: 0 16px 42px rgba(76, 46, 33, .10);
}

.detail-plan-tile.featured { border-color: #b88779; }
.detail-plan-ar { font-size: .85rem; letter-spacing: 0; }
.detail-plan-content h3 { color: #704238; }

.course-units .curriculum > .eyebrow,
.course-description .container > .eyebrow {
  margin-bottom: 5px;
  color: #a16d5a;
  font-size: .84rem;
}

.course-units .curriculum > h2,
.course-description .container > h2 {
  position: relative;
  width: fit-content;
  margin: 0 0 19px;
  padding-bottom: 14px;
  color: #633b34;
  font-family: "Noto Kufi Arabic", Tajawal, sans-serif;
  font-size: clamp(1.75rem, 2.6vw, 2.4rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
}

.course-units .curriculum > h2::after,
.course-description .container > h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 64px;
  height: 2px;
  border-radius: 99px;
  background: #b88671;
}

.course-units .curriculum > p,
.course-description .container > p {
  max-width: 820px;
  color: #6e5d55;
  font-size: .96rem;
  line-height: 1.95;
}

.course-units .module-list > div:not(.empty-panel) {
  border-radius: 16px;
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 6px 20px rgba(76, 46, 33, .04);
}

.plan-checkout .plan-heading {
  margin-top: 25px;
  margin-bottom: 29px;
}

@media (max-width: 620px) {
  .detail-hero { padding-top: 25px; padding-bottom: 58px; }
  .detail-plans-layout .detail-copy { padding: 5px 0 27px; }
  .detail-plans-layout .detail-copy h1 {
    margin-top: 12px;
    padding-bottom: 17px;
    font-size: clamp(1.8rem, 7vw, 2.25rem);
    line-height: 1.55;
  }
  .detail-plans-layout .detail-copy h2 { font-size: .98rem; line-height: 1.85; }
  .detail-plans-layout .detail-facts { gap: 7px; margin-top: 14px; }
  .detail-plans-layout .detail-facts span { padding: 4px 11px; font-size: .73rem; }
  .detail-plan-section { padding-top: 24px; }
  .detail-plan-heading { margin-bottom: 24px; }
  .detail-plan-heading h2,
  .plan-heading h1 { font-size: clamp(1.64rem, 6.3vw, 2.15rem); }
  .detail-plan-heading p { max-width: 340px; margin-inline: auto; font-size: .86rem; }
  .course-units .curriculum > h2,
  .course-description .container > h2 { font-size: 1.75rem; }
}

@media (prefers-reduced-motion: reduce) {
  .detail-plans-layout .detail-units-link { transition: none; }
}
