/* Conversion features (cro.js) — built on the site's tokens. */
.dhc-back { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 16px;
  background: rgba(0, 18, 38, .62); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  opacity: 0; transition: opacity .25s ease; }
.dhc-back.is-in { opacity: 1; }
.dhc-modal { position: relative; width: min(720px, 100%); max-height: calc(100vh - 32px); overflow: auto; border-radius: 24px;
  background: #fff; color: var(--ink, #0b1b33); box-shadow: 0 40px 90px rgba(0, 0, 0, .4);
  transform: translateY(14px) scale(.98); transition: transform .3s cubic-bezier(.2, .8, .2, 1); }
.dhc-back.is-in .dhc-modal { transform: none; }
.dhc-x { position: absolute; top: 12px; right: 12px; z-index: 2; width: 38px; height: 38px; border-radius: 50%; border: 0; cursor: pointer;
  display: grid; place-items: center; background: rgba(255, 255, 255, .92); color: var(--navy-800); box-shadow: 0 4px 14px rgba(0, 0, 0, .15); }
.dhc-pill { display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; border-radius: 999px; font-size: .74rem; font-weight: 700;
  letter-spacing: .05em; text-transform: uppercase; background: rgba(255, 206, 0, .14); color: #8a6d00; border: 1px solid rgba(255, 206, 0, .45); }
.dhc-pill i { width: 7px; height: 7px; border-radius: 50%; background: var(--gold-500); animation: launchPulse 2s infinite; }

/* masterclass popup */
.dhc-back--mc .dhc-modal { width: min(760px, 100%); overflow: hidden; }
.dhc-mc { display: grid; grid-template-columns: .9fr 1.1fr; }
.dhc-mc__media { position: relative; background: var(--navy-900); min-height: 320px; }
.dhc-mc__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.dhc-mc__media span { position: absolute; left: 14px; bottom: 14px; padding: 7px 12px; border-radius: 10px; background: #fff; color: var(--navy-800); font-weight: 700; font-size: .8rem; }
.dhc-mc__copy { padding: 34px 30px 26px; }
.dhc-mc__copy h3 { font-size: 1.45rem; line-height: 1.2; margin: 14px 0 10px; }
.dhc-mc__copy p { color: var(--muted, #5b6474); margin-bottom: 20px; }
.dhc-later { display: block; margin: 12px auto 0; background: none; border: 0; color: var(--muted, #5b6474); font-size: .9rem; cursor: pointer; text-decoration: underline; }
@media (max-width: 640px) {
  .dhc-mc { grid-template-columns: 1fr; }
  .dhc-mc__media { min-height: 190px; }
  .dhc-mc__copy { padding: 24px 22px 20px; }
}

/* exit intent */
.dhc-back--exit .dhc-modal { width: min(480px, 100%); }
.dhc-exit { padding: 32px 28px 24px; }
.dhc-exit h3 { font-size: 1.5rem; margin: 12px 0 6px; }
.dhc-exit > p { color: var(--muted, #5b6474); margin-bottom: 18px; }
.dhc-form .field { margin-bottom: 12px; }
.dhc-done { padding: 18px; border-radius: 14px; background: var(--blue-50, #eef4ff); }

/* countdown in the top bar */
.dhc-count { font-size: .82rem; font-weight: 600; white-space: nowrap; padding: 3px 10px; border-radius: 999px; background: rgba(255, 206, 0, .16); }
.dhc-count b { color: var(--gold-500); }
@media (max-width: 720px) { .dhc-count__hide-sm { display: none; } }

/* course-finder quiz */
.dhc-quiz { position: relative; overflow: hidden; border-radius: 26px; padding: clamp(26px, 4.5vw, 50px); color: #fff;
  background: radial-gradient(900px 420px at 85% -10%, rgba(37, 124, 255, .32), transparent 60%), linear-gradient(160deg, var(--navy-800), var(--navy-900) 70%); }
.dhc-quiz h2 { color: #fff; margin: 14px 0 6px; font-size: clamp(1.4rem, 2.8vw, 2rem); }
.dhc-quiz p { color: rgba(255, 255, 255, .78); }
.dhc-quiz .dhc-pill { background: rgba(255, 206, 0, .12); color: var(--gold-500); border-color: rgba(255, 206, 0, .35); }
.dhc-quiz__opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin-top: 24px; }
.dhc-opt { text-align: left; padding: 16px 18px; border-radius: 14px; cursor: pointer; font: inherit; font-weight: 600; color: #fff;
  background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .16); transition: background .2s, border-color .2s, transform .2s; }
.dhc-opt:hover, .dhc-opt:focus-visible { background: rgba(255, 206, 0, .12); border-color: rgba(255, 206, 0, .6); transform: translateY(-2px); outline: none; }
.dhc-quiz__bar { height: 4px; border-radius: 4px; background: rgba(255, 255, 255, .12); margin-top: 26px; overflow: hidden; }
.dhc-quiz__bar i { display: block; height: 100%; background: var(--gold-500); transition: width .35s ease; }
.dhc-quiz__result { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(20px, 4vw, 44px); align-items: start; }
.dhc-quiz__result .card__link { color: var(--gold-500); }
.dhc-restart { margin-top: 10px; background: none; border: 0; color: rgba(255, 255, 255, .7); text-decoration: underline; cursor: pointer; font: inherit; }
.dhc-quiz__form { background: #fff; color: var(--ink, #0b1b33); border-radius: 18px; padding: 22px; }
.dhc-quiz__form h3 { margin-bottom: 12px; }
.dhc-quiz__form .dhc-done p, .dhc-quiz__form .form-note { color: var(--muted, #5b6474); }
@media (max-width: 760px) { .dhc-quiz__result { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
  .dhc-back, .dhc-modal, .dhc-opt, .dhc-quiz__bar i { transition: none; }
  .dhc-pill i { animation: none; }
}
