/* ============================================================
   PRS Review — public redesign layer (staging)
   Gated on body.rd-page so it ONLY affects pages that opt in
   (each redesigned view sets ViewBag.BodyClass="rd-page ...").
   Restyles the shared header/footer + both the new rd-* classes
   and the legacy marketing/form/auth/legal classes, so the
   other public pages modernize with NO markup/Angular rewrites.
   ============================================================ */

:root {
  --rd-blue: #1e438a; --rd-blue-600: #1a3b7a; --rd-blue-700: #142f63; --rd-blue-900: #0e2046;
  --rd-blue-50: #eef3fb; --rd-blue-100: #dde8f7; --rd-blue-200: #c2d5ef;
  --rd-coral: #db5037; --rd-coral-600: #c5482f; --rd-coral-700: #a83c27; --rd-coral-50: #fdeee8;
  --rd-ink: #101a2c; --rd-body: #404b5c; --rd-muted: #6b7686; --rd-line: #e7ebf2;
  --rd-bg: #f5f8fd; --rd-bg2: #eaf1fb; --rd-dark: #0f1f3d;
  --rd-r-md: 14px; --rd-r-lg: 20px; --rd-r-xl: 28px; --rd-r-pill: 999px;
  --rd-sh-xs: 0 1px 2px rgba(16,26,44,.06); --rd-sh-sm: 0 6px 18px rgba(16,26,44,.07);
  --rd-sh-md: 0 16px 40px rgba(16,26,44,.10); --rd-sh-lg: 0 34px 80px rgba(16,26,44,.16);
  --rd-ease: cubic-bezier(.22,.61,.36,1);
}

/* ---------- base ---------- */
body.rd-page { font-size: 17px; line-height: 1.65; color: var(--rd-body); letter-spacing: 0 !important; background: #fff; }
body.rd-page .mnSectionDsh, body.rd-page main.mnSectionDsh, body.rd-page main { margin-top: 0 !important; }
body.rd-page .container, body.rd-page .container-fluid { max-width: 1240px; }
body.rd-page .container.inner { max-width: 1040px; }
body.rd-page .rd-wrap { max-width: 1240px; margin: 0 auto; padding: 0 24px; }
body.rd-page p { margin: 0 0 18px; }
body.rd-page p:last-child { margin: 0; }

/* ---------- typography ---------- */
body.rd-page h2, body.rd-page h3.secTitle {
  font-size: clamp(1.8rem, 3.4vw, 2.55rem) !important; line-height: 1.14 !important; font-weight: 800 !important;
  letter-spacing: -.018em !important; color: var(--rd-ink) !important; margin: 0 0 22px !important; padding: 0 !important;
}
body.rd-page h2 b, body.rd-page h3.secTitle b { display: block; font-weight: 800; color: var(--rd-blue); font-size: .82em; margin-top: 8px; letter-spacing: -.01em; }
body.rd-page h2::after, body.rd-page h3.secTitle::after { display: none !important; }
body.rd-page h3.secTitle.center { text-align: center; }
body.rd-page h3 { font-size: clamp(1.6rem, 2.6vw, 2.1rem); line-height: 1.18; font-weight: 800; color: var(--rd-ink); letter-spacing: -.015em; margin: 0 0 16px; }
body.rd-page h4 { font-size: 1.25rem; line-height: 1.3; font-weight: 700; color: var(--rd-ink); margin: 0 0 10px; }
body.rd-page h5 { font-size: 1.05rem; font-weight: 700; color: var(--rd-ink); margin: 0 0 12px; }
body.rd-page .subTitle { font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.55; color: var(--rd-muted); }
body.rd-page .rd-eyebrow { display: inline-flex; align-items: center; gap: 10px; font-size: 12.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--rd-coral); margin: 0 0 18px; }
body.rd-page .rd-eyebrow::before { content: ""; width: 26px; height: 2px; background: var(--rd-coral); border-radius: 2px; }
body.rd-page .rd-eyebrow.center { justify-content: center; }
body.rd-page .rd-display { font-size: clamp(2.35rem, 5.2vw, 3.85rem); line-height: 1.05; font-weight: 800; letter-spacing: -.022em; color: var(--rd-ink); margin: 0 0 20px; }
body.rd-page .rd-display .ac, body.rd-page .rd-title .ac { color: var(--rd-blue); }
body.rd-page .rd-title { font-size: clamp(1.8rem, 3.4vw, 2.55rem); line-height: 1.14; font-weight: 800; letter-spacing: -.018em; color: var(--rd-ink); margin: 0; }
body.rd-page .rd-title .ac { display: block; }
body.rd-page .rd-lead { font-size: clamp(1.05rem, 1.5vw, 1.22rem); color: var(--rd-muted); line-height: 1.6; }
body.rd-page .rd-head { max-width: 720px; }
body.rd-page .rd-head.center { margin: 0 auto 14px; text-align: center; }
body.rd-page .red { color: var(--rd-coral); }

/* ---------- buttons (legacy + new) ---------- */
body.rd-page .btn, body.rd-page .rd-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  font-size: 15px !important; font-weight: 700 !important; letter-spacing: .02em !important; line-height: 1;
  padding: 14px 26px !important; border-radius: var(--rd-r-pill) !important; border: 2px solid transparent;
  text-transform: none !important; cursor: pointer; transition: transform .2s var(--rd-ease), box-shadow .2s var(--rd-ease), background .2s var(--rd-ease), color .2s var(--rd-ease);
}
body.rd-page .btn svg, body.rd-page .rd-btn svg { width: 18px; height: 18px; }
body.rd-page .primaryBtn, body.rd-page .rd-btn-primary { background: var(--rd-blue) !important; color: #fff !important; border-color: var(--rd-blue) !important; box-shadow: var(--rd-sh-sm); }
body.rd-page .primaryBtn:hover, body.rd-page .primaryBtn:focus, body.rd-page .rd-btn-primary:hover { background: var(--rd-blue-700) !important; color: #fff !important; transform: translateY(-2px); box-shadow: var(--rd-sh-md); }
body.rd-page .secondaryBtn, body.rd-page .rd-btn-accent { background: var(--rd-coral) !important; color: #fff !important; border-color: var(--rd-coral) !important; box-shadow: 0 8px 22px rgba(219,80,55,.28); }
body.rd-page .secondaryBtn:hover, body.rd-page .secondaryBtn:focus, body.rd-page .rd-btn-accent:hover { background: var(--rd-coral-600) !important; color: #fff !important; transform: translateY(-2px); }
body.rd-page .rd-btn-ghost { background: transparent; color: var(--rd-blue); border-color: var(--rd-blue-200); }
body.rd-page .rd-btn-ghost:hover { background: var(--rd-blue-50); border-color: var(--rd-blue); color: var(--rd-blue); transform: translateY(-2px); }
body.rd-page .rd-btn-light { background: #fff; color: var(--rd-blue); }
body.rd-page .rd-btn-light:hover { color: var(--rd-blue); transform: translateY(-2px); box-shadow: var(--rd-sh-md); }
body.rd-page .rd-btn-lg { padding: 17px 32px !important; font-size: 16px !important; }

/* ---------- forms ---------- */
body.rd-page .form-group { margin: 0 0 18px; position: relative; }
body.rd-page .form-control {
  height: 52px; border: 1.5px solid var(--rd-line); background: #fff; padding: 0 16px;
  color: var(--rd-ink) !important; font-size: 16px; font-weight: 500;
  border-radius: var(--rd-r-md) !important; transition: border-color .2s, box-shadow .2s;
}
body.rd-page textarea.form-control { height: auto; min-height: 120px; padding: 14px 16px; }
body.rd-page .form-control:focus { background: #fff; border-color: var(--rd-blue); box-shadow: 0 0 0 4px rgba(30,67,138,.12); }
body.rd-page select.form-control { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%236b7686' stroke-width='2'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; }
body.rd-page .form-group label { font-size: 14px; font-weight: 600; color: var(--rd-ink); margin: 0 0 7px; display: inline-block; }
body.rd-page .form-group .viewIcon, body.rd-page .form-group .arrowIcon { top: 50%; bottom: auto; transform: translateY(-50%); width: 38px; height: 38px; }
body.rd-page ::placeholder { color: #9aa3b2 !important; font-weight: 400 !important; }
body.rd-page .frmError .form-control, body.rd-page .form-control.ng-invalid.ng-touched { border-color: var(--rd-coral); }
body.rd-page .errorMSG { color: var(--rd-coral); font-size: 13.5px; }
body.rd-page .note p { color: var(--rd-muted); font-size: 14.5px; }

/* ---------- header (shared, restyled) ---------- */
body.rd-page header { padding: 14px 0 !important; background: rgba(245,248,253,0); box-shadow: none; transition: background .25s, box-shadow .25s, border-color .25s; border-bottom: 1px solid transparent; }
body.rd-page header.sticky { background: rgba(255,255,255,.88) !important; backdrop-filter: saturate(180%) blur(14px); border-bottom-color: var(--rd-line); box-shadow: var(--rd-sh-xs) !important; }
body.rd-page header .container-fluid { max-width: 1240px; padding-left: 24px !important; padding-right: 24px !important; }
body.rd-page header .navbar-brand, body.rd-page header h1, body.rd-page header h1 a, body.rd-page header h1 img { width: auto !important; height: 46px !important; }
body.rd-page header .navbar-brand img.logoBlue { display: block; }
body.rd-page header .navbar-brand img.logoWhite { display: none; }
body.rd-page .menuWrp .links { gap: 2px; align-items: center; }
body.rd-page .menuWrp .links a, body.rd-page .menuWrp .links a.loginBtn {
  color: var(--rd-ink); background: transparent; border: 2px solid transparent; padding: 10px 14px;
  font-size: 15px; font-weight: 600; letter-spacing: 0; border-radius: var(--rd-r-pill); text-transform: none; margin: 0 2px;
}
body.rd-page .menuWrp .links a:hover, body.rd-page .menuWrp .links a.loginBtn:hover { color: var(--rd-blue); background: transparent; }
body.rd-page .menuWrp .links a.loginBtn[href="/login"] { color: var(--rd-blue); border-color: var(--rd-blue-200); padding: 10px 22px; margin-left: 8px; }
body.rd-page .menuWrp .links a.loginBtn[href="/login"]:hover { background: var(--rd-blue-50); border-color: var(--rd-blue); }
body.rd-page .menuWrp .links a.loginBtn[href="/getstarted"] { color: #fff; background: var(--rd-blue); border-color: var(--rd-blue); padding: 10px 22px; box-shadow: var(--rd-sh-sm); }
body.rd-page .menuWrp .links a.loginBtn[href="/getstarted"]:hover { background: var(--rd-blue-700); color: #fff; transform: translateY(-1px); }
body.rd-page .navbar-toggler { background: var(--rd-blue); }
body.rd-page header .offcanvas { background: var(--rd-blue); }

/* ---------- footer (shared, restyled) ---------- */
body.rd-page footer { background: var(--rd-dark) !important; margin: 96px 0 0 !important; padding: 64px 0 30px !important; }
body.rd-page footer .container-fluid { max-width: 1240px; padding-left: 24px !important; padding-right: 24px !important; }
body.rd-page footer h5 { color: #fff !important; font-size: 13px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; margin: 0 0 16px; }
body.rd-page footer a { color: #aebbd2 !important; font-size: 14.5px; }
body.rd-page footer a:hover { color: #fff !important; }
body.rd-page footer ul li { margin: 10px 0; }
body.rd-page footer .blueDot { display: none; }
body.rd-page footer .patternImg { opacity: .06; width: 420px; }

/* ---------- sections + containers ---------- */
body.rd-page .rd-section { padding: 72px 0; }
body.rd-page .rd-section.alt, body.rd-page .AboutUsWrp, body.rd-page .PRS_PricingWrp { background: var(--rd-bg) !important; }
body.rd-page .AboutUsWrp, body.rd-page .KeyFeaturesWrp, body.rd-page .PRS_QBankWrp, body.rd-page .PRS_PricingWrp { padding: 72px 0 !important; }
@media (min-width: 992px) { body.rd-page .rd-section, body.rd-page .AboutUsWrp, body.rd-page .KeyFeaturesWrp, body.rd-page .PRS_QBankWrp, body.rd-page .PRS_PricingWrp { padding: 100px 0 !important; } }
/* inner pages (no hero): first section must clear the fixed header.
   :first-of-type (not :first-child) because qbank/oralboard render <link>/<script>
   before the first <section>, so the section is not the first child. */
body.rd-page:not(.rd-home) main > section:first-of-type { padding-top: 104px !important; }
@media (max-width: 991px) { body.rd-page:not(.rd-home) main > section:first-of-type { padding-top: 92px !important; } }

/* ---------- hero (new + legacy) ---------- */
body.rd-page .rd-hero { position: relative; overflow: hidden; background: linear-gradient(180deg, var(--rd-blue-50) 0%, #fff 64%); padding: 122px 0 70px; }
body.rd-page .rd-hero::before { content: ""; position: absolute; top: -200px; right: -180px; width: 600px; height: 600px; background: radial-gradient(circle at center, rgba(30,67,138,.10), transparent 68%); pointer-events: none; }
body.rd-page .rd-hero-grid { display: grid; grid-template-columns: 1fr; gap: 44px; align-items: center; position: relative; }
body.rd-page .rd-hero .rd-lead { max-width: 560px; margin: 0 0 30px; }
body.rd-page .rd-hero-cta { display: flex; flex-wrap: wrap; gap: 14px; margin: 0 0 32px; }
body.rd-page .rd-trust { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
body.rd-page .rd-trust .stars { color: #f5a623; letter-spacing: 2px; font-size: 18px; }
body.rd-page .rd-trust span.t { font-size: 14.5px; color: var(--rd-muted); }
body.rd-page .rd-trust span.t b { color: var(--rd-ink); font-weight: 700; }
body.rd-page .rd-hero-visual { position: relative; }
body.rd-page .rd-frame { position: relative; border-radius: var(--rd-r-xl); background: #fff; padding: 14px; box-shadow: var(--rd-sh-lg); border: 1px solid var(--rd-line); }
body.rd-page .rd-frame img { width: 100%; border-radius: var(--rd-r-lg); display: block; }
body.rd-page .rd-chip { position: absolute; background: #fff; border-radius: var(--rd-r-md); box-shadow: var(--rd-sh-md); border: 1px solid var(--rd-line); padding: 13px 17px; display: flex; align-items: center; gap: 12px; }
body.rd-page .rd-chip .ic { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; flex: none; }
body.rd-page .rd-chip .ic.blue { background: var(--rd-blue-50); color: var(--rd-blue); }
body.rd-page .rd-chip .ic.coral { background: var(--rd-coral-50); color: var(--rd-coral); }
body.rd-page .rd-chip .big { font-size: 19px; font-weight: 800; color: var(--rd-ink); line-height: 1.1; }
body.rd-page .rd-chip .sm { font-size: 12.5px; color: var(--rd-muted); }
body.rd-page .rd-chip.one { left: -10px; bottom: 34px; }
body.rd-page .rd-chip.two { right: -10px; top: 28px; }
@media (min-width: 992px) { body.rd-page .rd-hero { padding: 150px 0 96px; } body.rd-page .rd-hero-grid { grid-template-columns: 1.05fr .95fr; gap: 56px; } }
/* legacy hero (.welcomeBanner) on oralboard */
body.rd-page .welcomeBanner { height: auto !important; min-height: 0 !important; max-height: none !important; display: block !important; padding: 130px 0 70px !important; background: linear-gradient(180deg, var(--rd-blue-50) 0%, #fff 70%); }
body.rd-page .welcomeBanner .centerWrp { display: block !important; }
body.rd-page .welcomeBanner .text { padding: 0 !important; }
body.rd-page .welcomeBanner .text h2 { margin-bottom: 18px; }
body.rd-page .welcomeBanner .text p { font-size: clamp(1.05rem,1.5vw,1.22rem) !important; line-height: 1.6 !important; color: var(--rd-muted) !important; }
body.rd-page .welcomeBanner .img img { border-radius: var(--rd-r-xl); box-shadow: var(--rd-sh-lg); }
body.rd-page .welcomeBanner.ourPortal { background: var(--rd-bg) !important; }

/* ---------- trust logos ---------- */
body.rd-page .LogoWrp { padding: 56px 0 !important; background: #fff !important; }
body.rd-page .LogoWrp .secTitle { font-size: 13px !important; font-weight: 700 !important; letter-spacing: .12em; text-transform: uppercase; color: var(--rd-muted) !important; text-align: center; margin: 0 0 26px !important; }
body.rd-page .slick-initialized .slick-slide { box-shadow: var(--rd-sh-xs); border: 1px solid var(--rd-line); border-radius: var(--rd-r-md); margin: 12px; padding: 18px; background: #fff; }

/* ---------- about ---------- */
body.rd-page .rd-about-grid { display: grid; grid-template-columns: 1fr; gap: 40px; align-items: start; }
@media (min-width: 992px) { body.rd-page .rd-about-grid { grid-template-columns: .8fr 1.2fr; gap: 64px; } }
body.rd-page .rd-about p, body.rd-page .AboutUsWrp p { font-size: 1.05rem; line-height: 1.75; color: var(--rd-body); margin: 0 0 18px; }
body.rd-page .rd-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
body.rd-page .rd-stat { background: #fff; border: 1px solid var(--rd-line); border-radius: var(--rd-r-lg); padding: 22px; box-shadow: var(--rd-sh-xs); }
body.rd-page .rd-stat .n { font-size: clamp(1.8rem, 3vw, 2.4rem); font-weight: 800; color: var(--rd-blue); letter-spacing: -.02em; line-height: 1; }
body.rd-page .rd-stat .t { font-size: 14px; color: var(--rd-muted); margin-top: 8px; }
body.rd-page .AboutUsWrp .imgText { padding: 0 !important; }
body.rd-page .AboutUsWrp img.PRS_Pattern { display: none !important; }
body.rd-page .AboutUsWrp .col-xl-9.offset-xl-3 { margin-left: 0 !important; max-width: 100% !important; flex: 0 0 100% !important; }

/* ---------- products ---------- */
body.rd-page .rd-cards2 { display: grid; grid-template-columns: 1fr; gap: 26px; margin-top: 40px; }
@media (min-width: 768px) { body.rd-page .rd-cards2 { grid-template-columns: repeat(2, 1fr); } }
body.rd-page .rd-pcard { background: #fff; border: 1px solid var(--rd-line); border-radius: var(--rd-r-xl); overflow: hidden; box-shadow: var(--rd-sh-sm); transition: transform .25s var(--rd-ease), box-shadow .25s var(--rd-ease); display: flex; flex-direction: column; }
body.rd-page .rd-pcard:hover { transform: translateY(-6px); box-shadow: var(--rd-sh-lg); }
body.rd-page .rd-pcard .media { padding: 22px 22px 0; }
body.rd-page .rd-pcard .media img { width: 100%; border-radius: var(--rd-r-md); box-shadow: var(--rd-sh-sm); }
body.rd-page .rd-pcard .pc { padding: 24px 26px 28px; }
body.rd-page .rd-tag { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--rd-blue); background: var(--rd-blue-50); padding: 6px 12px; border-radius: var(--rd-r-pill); margin: 0 0 14px; }
body.rd-page .rd-tag.coral { color: var(--rd-coral); background: var(--rd-coral-50); }
body.rd-page .rd-pcard h3 { font-size: 1.5rem; font-weight: 800; color: var(--rd-ink); letter-spacing: -.015em; margin: 0 0 10px; }
body.rd-page .rd-pcard p { color: var(--rd-muted); margin: 0 0 20px; }
body.rd-page .rd-arrow { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; color: var(--rd-blue); }
body.rd-page .rd-arrow:hover { gap: 12px; color: var(--rd-coral); }

/* ---------- qbank feature cards (legacy .PRS_Features) ---------- */
body.rd-page .PRS_QBankWrp .text { margin: 0 0 12px; }
body.rd-page .PRS_QBankWrp .PRS_Features { padding: 22px 90px 24px 22px !important; margin: 14px 0 !important; background: #fff !important; border: 1px solid var(--rd-line); border-radius: var(--rd-r-lg) !important; box-shadow: var(--rd-sh-xs); transition: transform .2s var(--rd-ease), box-shadow .2s var(--rd-ease); }
body.rd-page .PRS_QBankWrp .PRS_Features:hover { transform: translateY(-4px); box-shadow: var(--rd-sh-md); }
body.rd-page .PRS_QBankWrp .PRS_Features p { font-size: 1.05rem !important; font-weight: 700 !important; color: var(--rd-ink); }
body.rd-page .PRS_QBankWrp .PRS_Features img.FeaturesImg { width: 56px !important; height: 56px !important; right: 22px !important; bottom: 22px !important; opacity: .9; }

/* ---------- features / video ---------- */
body.rd-page .rd-features .videoBox, body.rd-page .KeyFeaturesWrp .videoBox { max-width: 960px; margin: 36px auto 0 !important; border-radius: var(--rd-r-xl) !important; box-shadow: var(--rd-sh-lg) !important; border: 1px solid var(--rd-line); }
body.rd-page .rd-flist { display: grid; grid-template-columns: 1fr; gap: 18px; max-width: 960px; margin: 38px auto 0; }
@media (min-width: 768px) { body.rd-page .rd-flist { grid-template-columns: repeat(3, 1fr); } }
body.rd-page .rd-feat { display: flex; gap: 14px; align-items: flex-start; }
body.rd-page .rd-feat .fic { width: 44px; height: 44px; flex: none; border-radius: 12px; background: var(--rd-blue-50); color: var(--rd-blue); display: grid; place-items: center; }
body.rd-page .rd-feat h4 { font-size: 1.05rem; font-weight: 700; color: var(--rd-ink); margin: 0 0 4px; }
body.rd-page .rd-feat p { font-size: 14.5px; color: var(--rd-muted); margin: 0; }

/* ---------- social ---------- */
body.rd-page .PRS_SocialMedia::before { display: none; }
body.rd-page .PRS_SocialMedia .centerBox { border-radius: var(--rd-r-xl) !important; box-shadow: var(--rd-sh-md) !important; border: 1px solid var(--rd-line); padding: 44px !important; }
body.rd-page .PRS_SocialMedia .secTitle { color: var(--rd-ink) !important; }
body.rd-page .socialMedia a { width: 50px !important; height: 50px !important; min-width: 50px; max-width: 50px; border-radius: 50%; background: var(--rd-blue-50); display: grid !important; place-items: center; transition: transform .2s var(--rd-ease), background .2s; margin: 0 12px 0 0 !important; }
body.rd-page .socialMedia a:hover { background: var(--rd-blue); transform: translateY(-3px); }
body.rd-page .socialMedia a img { width: 22px !important; height: 22px !important; min-width: 22px; max-width: 22px; }
body.rd-page .socialMedia a:hover img { filter: brightness(0) invert(1); }

/* ---------- pricing ---------- */
body.rd-page .PRS_PricingWrp .secTitle { text-align: center; }
body.rd-page .PRS_PricingWrp ul.nav-tabs { display: inline-flex !important; gap: 6px; padding: 6px; background: var(--rd-bg2); border-radius: var(--rd-r-pill); margin: 24px auto 44px; width: auto !important; justify-content: center; left: 0; right: 0; border: none; }
body.rd-page .rd-tabs-wrap { text-align: center; }
body.rd-page .PRS_PricingWrp ul.nav-tabs li { width: auto !important; margin: 0 !important; }
body.rd-page .PRS_PricingWrp ul.nav-tabs li::before { display: none; }
body.rd-page .PRS_PricingWrp ul.nav-tabs li button.nav-link { border: none !important; background: transparent; color: var(--rd-muted); font-weight: 700; font-size: 14.5px; padding: 11px 24px !important; border-radius: var(--rd-r-pill) !important; }
body.rd-page .PRS_PricingWrp ul.nav-tabs li button.nav-link.active { background: #fff !important; color: var(--rd-blue) !important; box-shadow: var(--rd-sh-xs); }
body.rd-page .PRS_PricingWrp .tab-content { border: none !important; background: transparent !important; padding: 0 !important; margin: 0 !important; }
body.rd-page .PRS_PricingWrp [class*="col-"] { margin-bottom: 24px; }
body.rd-page .plansDetails { max-width: 100% !important; margin: 0 !important; align-items: stretch; text-align: left; padding: 0 !important; background: #fff !important; border: 1px solid var(--rd-line); border-radius: var(--rd-r-xl) !important; box-shadow: var(--rd-sh-xs) !important; overflow: hidden; transition: transform .25s var(--rd-ease), box-shadow .25s var(--rd-ease); }
body.rd-page .plansDetails:hover { transform: translateY(-6px); box-shadow: var(--rd-sh-lg) !important; border-color: var(--rd-blue-100); background: #fff !important; }
body.rd-page .plansDetails .PlanPrice { margin: 0 !important; }
body.rd-page .plansDetails img.planDays { height: 116px !important; border-radius: 0 !important; }
body.rd-page .plansDetails .PlanPrice h4 { position: absolute; left: 0; top: auto !important; bottom: 0 !important; padding: 12px 22px !important; margin: 0; font-size: 24px !important; color: #fff !important; }
body.rd-page .PRS_PricingWrp .col-12:nth-child(odd) .PlanPrice h4, body.rd-page .PRS_PricingWrp .col-12:nth-child(even) .PlanPrice h4 { top: auto; bottom: 0; }
body.rd-page .plansDetails .text { padding: 24px 26px 28px; display: flex; flex-direction: column; align-items: flex-start; }
body.rd-page .plansDetails h3 { font-size: 2.3rem !important; font-weight: 800 !important; color: var(--rd-ink) !important; letter-spacing: -.02em; margin: 0 0 4px !important; }
body.rd-page .plansDetails h3 strike { font-size: 1rem; color: var(--rd-muted); opacity: .6; }
body.rd-page .plansDetails p { color: var(--rd-muted) !important; }
body.rd-page .plansDetails .buyPlan { margin: 18px 0 0 !important; width: 100%; text-align: center; background: var(--rd-blue) !important; border-radius: var(--rd-r-pill) !important; padding: 13px 22px !important; letter-spacing: .02em; font-size: 14px; }
body.rd-page .plansDetails:hover .buyPlan { background: var(--rd-blue-700) !important; }
body.rd-page .plansDetails p.Note { color: var(--rd-coral) !important; font-weight: 700; margin-top: 10px !important; }
body.rd-page .TrialPlan { border-radius: var(--rd-r-lg) !important; border: 2px solid var(--rd-blue); border-left: 8px solid var(--rd-blue); box-shadow: var(--rd-sh-xs); }

/* ---------- CTA bands ---------- */
body.rd-page .rd-cta-stack { display: grid; gap: 22px; }
body.rd-page .rd-cta { border-radius: var(--rd-r-xl); padding: 52px 32px; text-align: center; color: #fff; background: linear-gradient(135deg, var(--rd-blue) 0%, var(--rd-blue-700) 100%); }
body.rd-page .rd-cta.coral { background: linear-gradient(135deg, var(--rd-coral) 0%, var(--rd-coral-700) 100%); }
body.rd-page .rd-cta h3 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); font-weight: 800; margin: 0 0 14px; color: #fff; }
body.rd-page .rd-cta p { max-width: 680px; margin: 0 auto 26px; color: rgba(255,255,255,.88); font-size: 1.05rem; }
@media (min-width: 768px) { body.rd-page .rd-cta { padding: 60px 48px; } }
/* legacy .InstitutionalPricing (qbank/oralboard) -> contained gradient band */
body.rd-page .InstitutionalPricing { background: transparent !important; padding: 14px 0 !important; margin: 0 !important; }
body.rd-page .InstitutionalPricing .container.inner { background: linear-gradient(135deg, var(--rd-blue) 0%, var(--rd-blue-700) 100%); border-radius: var(--rd-r-xl); padding: 54px 40px !important; }
body.rd-page .InstitutionalPricing[style*="bba09b"] .container.inner { background: linear-gradient(135deg, var(--rd-coral) 0%, var(--rd-coral-700) 100%); }
body.rd-page .InstitutionalPricing .text { max-width: 820px; margin: 0 auto; }
body.rd-page .InstitutionalPricing h3.secTitle, body.rd-page .InstitutionalPricing h3.secTitle b, body.rd-page .InstitutionalPricing p { color: #fff !important; }
body.rd-page .InstitutionalPricing h3.secTitle { margin: 0 0 14px !important; }
body.rd-page .InstitutionalPricing h3.secTitle::after { display: none !important; }
body.rd-page .InstitutionalPricing p { max-width: 720px; margin: 0 auto 26px !important; color: rgba(255,255,255,.9) !important; font-size: 1.05rem; }
body.rd-page .InstitutionalPricing .btn.secondaryBtn { background: #fff !important; color: var(--rd-blue) !important; border-color: #fff !important; }
body.rd-page .InstitutionalPricing .btn.secondaryBtn:hover { background: #fff !important; color: var(--rd-blue-700) !important; transform: translateY(-2px); }
body.rd-page #dvMerchandise .container.inner { background: var(--rd-bg) !important; border: 1px solid var(--rd-line); }
body.rd-page #dvMerchandise h3.secTitle, body.rd-page #dvMerchandise h3.secTitle b { color: var(--rd-ink) !important; }
body.rd-page #dvMerchandise p { color: var(--rd-muted) !important; }
body.rd-page #dvMerchandise .btn.secondaryBtn { background: var(--rd-coral) !important; color: #fff !important; border-color: var(--rd-coral) !important; }
@media (min-width: 768px) { body.rd-page .InstitutionalPricing .container.inner { padding: 64px 56px !important; } }

/* ---------- auth (signup split) ---------- */
body.rd-page.signUp_Page header .navbar-brand img.logoWhite { display: none !important; }
body.rd-page.signUp_Page header .navbar-brand img.logoBlue { display: block !important; }
body.rd-page .signupWrp { height: auto !important; min-height: 100vh; padding: 110px 0 60px !important; display: block !important; background: linear-gradient(180deg, var(--rd-blue-50), #fff 70%); }
body.rd-page .signupWrp .img { width: 42% !important; }
body.rd-page .signupWrp .img img { border-radius: 0 var(--rd-r-xl) var(--rd-r-xl) 0; }
body.rd-page .signupWrp img.footerPattern_PRS { display: none !important; }
body.rd-page .signupWrp .centerWrp { display: block !important; }
body.rd-page .formWrp { background: #fff !important; padding: 40px !important; border-radius: var(--rd-r-xl); box-shadow: var(--rd-sh-lg); border: 1px solid var(--rd-line); max-width: 480px; margin-left: auto; }
body.rd-page .nav-tabs { border: none !important; margin: 0 0 28px !important; gap: 8px; }
body.rd-page .nav-tabs .nav-item { margin: 0 !important; }
body.rd-page .nav-tabs .nav-item::before { display: none !important; }
body.rd-page .nav-tabs .nav-item .nav-link, body.rd-page .nav-tabs .nav-item .nav-link .red { font-size: 1.5rem !important; font-weight: 800 !important; color: #b9c2d1 !important; line-height: 1.2 !important; padding: 0 !important; }
body.rd-page .nav-tabs .nav-item .nav-link.active { color: var(--rd-ink) !important; }
body.rd-page .nav-tabs .nav-item .nav-link.active .red { color: var(--rd-coral) !important; }
body.rd-page .tab-content form { max-width: 100%; }
body.rd-page .linkGroup, body.rd-page .btnsGroup { gap: 16px; }
body.rd-page .linkGroup a.link, body.rd-page .tab-content form .link { color: var(--rd-blue); font-weight: 600; }

/* ---------- legal prose ---------- */
body.rd-page .PriviacyPolicyPageWrp { background: #fff !important; padding: 110px 0 60px !important; }
body.rd-page .PriviacyPolicy { max-width: 860px; margin: 0 auto; }
body.rd-page .PriviacyPolicy h1 { font-size: clamp(2rem,3.4vw,2.6rem) !important; font-weight: 800 !important; color: var(--rd-ink) !important; letter-spacing: -.02em; margin: 0 0 24px !important; }
body.rd-page .PriviacyPolicy h2 { font-size: 1.5rem !important; font-weight: 800 !important; color: var(--rd-ink) !important; margin: 36px 0 12px !important; }
body.rd-page .PriviacyPolicy h3, body.rd-page .PriviacyPolicy h4, body.rd-page .PriviacyPolicy h5 { font-size: 1.15rem !important; font-weight: 700 !important; color: var(--rd-ink) !important; margin: 24px 0 10px !important; line-height: 1.35 !important; }
body.rd-page .PriviacyPolicy p, body.rd-page .PriviacyPolicy li { font-size: 1.02rem; line-height: 1.75; color: var(--rd-body); margin: 0 0 14px; }
body.rd-page .PriviacyPolicy a { color: var(--rd-blue); text-decoration: underline; }

/* ---------- merch ---------- */
body.rd-page #dvMerchandise .slick-slide { padding: 8px; }
body.rd-page #dvMerchandise .slick-slide img { border: 1px solid var(--rd-line) !important; border-radius: var(--rd-r-md); }

/* ---------- responsive ---------- */
@media (max-width: 991px) {
  body.rd-page .rd-stats { grid-template-columns: repeat(2, 1fr); }
  body.rd-page .signupWrp .img { display: none !important; }
  body.rd-page .formWrp { margin: 0 auto !important; }
  body.rd-page .signupWrp .centerWrp .col-lg-6.offset-lg-6 { margin-left: 0 !important; }
}
@media (max-width: 767px) {
  body.rd-page .rd-section, body.rd-page .AboutUsWrp, body.rd-page .KeyFeaturesWrp, body.rd-page .PRS_QBankWrp, body.rd-page .PRS_PricingWrp { padding: 56px 0 !important; }
  body.rd-page .rd-hero { padding: 104px 0 56px; }
  body.rd-page .formWrp { padding: 26px 20px !important; }
  body.rd-page .rd-cta, body.rd-page .InstitutionalPricing { padding: 40px 22px !important; }
  body.rd-page .PRS_QBankWrp .PRS_Features { padding: 18px 80px 20px 18px !important; }
}
@media (max-width: 575px) {
  body.rd-page .rd-stats { grid-template-columns: 1fr 1fr; gap: 12px; }
  body.rd-page .menuWrp .links { display: none; }
}

/* ---------- fix round 2: auth header logo + select arrow ---------- */
/* legacy double-arrow image on selects -> hide, keep the clean chevron */
body.rd-page .form-group .arrowIcon { display: none !important; }
/* auth (signup split): logo sits over the blue panel -> white logo */
body.rd-page.signUp_Page header .navbar-brand img.logoWhite { display: block !important; }
body.rd-page.signUp_Page header .navbar-brand img.logoBlue { display: none !important; }
body.rd-page.signUp_Page header.sticky .navbar-brand img.logoWhite { display: none !important; }
body.rd-page.signUp_Page header.sticky .navbar-brand img.logoBlue { display: block !important; }
/* auth on mobile: blue panel is hidden -> switch logo back to blue on light bg */
@media (max-width: 991px) {
  body.rd-page.signUp_Page header .navbar-brand img.logoWhite { display: none !important; }
  body.rd-page.signUp_Page header .navbar-brand img.logoBlue { display: block !important; }
}
/* contact 'Choose image' upload button -> on-brand neutral */
body.rd-page .btn.btn-success { background: var(--rd-blue-50) !important; color: var(--rd-blue) !important; border-color: var(--rd-blue-200) !important; box-shadow: none; }
body.rd-page .btn.btn-success:hover { background: var(--rd-blue-100) !important; color: var(--rd-blue) !important; }
