/**
 * International Journal for Research in Cancer Science (IJRCS - ijrcsjournal.com)
 * Bespoke Luxury Oncology & Cellular Science Editorial Theme Stylesheet
 * Publisher: Green Publication Services Pvt. Ltd.
 *
 * OFFICIAL IJRCS COLOR PALETTE:
 * - Primary: #7938D8 (Royal Purple)
 * - Primary Hover: #6426BC (Deep Purple)
 * - Accent: #9B55E8 (Bright Violet)
 * - Lavender: #F3E8FF (Soft Lilac Canvas)
 * - Coral: #E05232 (Energetic Warm Coral Ribbon)
 * - Plum: #241735 (Midnight Plum Dark Background)
 * - White: #FFFFFF
 * - Text: #241735
 * - Muted: #64748B
 * - Border: #E5D9F2
 */

/* =========================================================
   1. DESIGN TOKENS & CSS VARIABLES
   ========================================================= */
:root {
  /* Brand Palette */
  --ijrcs-primary: #7938D8;
  --ijrcs-primary-hover: #6426BC;
  --ijrcs-primary-soft: rgba(121, 56, 216, 0.12);
  --ijrcs-primary-glow: rgba(121, 56, 216, 0.35);

  --ijrcs-accent: #9B55E8;
  --ijrcs-accent-hover: #8839E2;
  --ijrcs-accent-soft: rgba(155, 85, 232, 0.15);
  --ijrcs-accent-glow: rgba(155, 85, 232, 0.35);

  --ijrcs-lavender: #F3E8FF;
  --ijrcs-lavender-light: #FAF5FF;
  --ijrcs-lavender-surface: #FBF8FF;
  --ijrcs-lavender-border: #E5D9F2;

  --ijrcs-coral: #E05232;
  --ijrcs-coral-hover: #C94224;
  --ijrcs-coral-soft: rgba(224, 82, 50, 0.12);
  --ijrcs-coral-glow: rgba(224, 82, 50, 0.35);

  --ijrcs-plum: #241735;
  --ijrcs-plum-dark: #190E27;
  --ijrcs-plum-card: #2E1F44;
  --ijrcs-plum-soft: rgba(36, 23, 53, 0.08);

  --ijrcs-white: #FFFFFF;
  --ijrcs-text: #241735;
  --ijrcs-text-muted: #534566;
  --ijrcs-muted: #64748B;
  --ijrcs-border: #E5D9F2;
  --ijrcs-border-subtle: rgba(229, 217, 242, 0.65);

  /* Typography Fonts */
  --ijrcs-font-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --ijrcs-font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --ijrcs-font-ui: 'Plus Jakarta Sans', -apple-system, sans-serif;
  --ijrcs-font-tech: 'Space Grotesk', monospace;

  /* Radii & Shadows */
  --ijrcs-radius-pill: 9999px;
  --ijrcs-radius-card: 20px;
  --ijrcs-radius-hero: 28px;
  --ijrcs-radius-btn: 12px;
  --ijrcs-radius-sm: 8px;

  --ijrcs-shadow-sm: 0 2px 8px rgba(36, 23, 53, 0.06);
  --ijrcs-shadow-md: 0 8px 24px rgba(36, 23, 53, 0.1);
  --ijrcs-shadow-lg: 0 18px 45px rgba(36, 23, 53, 0.16);
  --ijrcs-shadow-book: 0 16px 36px rgba(25, 14, 39, 0.35), 0 4px 10px rgba(25, 14, 39, 0.2);

  /* Transitions */
  --ijrcs-trans-fast: 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  --ijrcs-trans-smooth: 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

/* =========================================================
   2. GLOBAL RESETS & FOUNDATION
   ========================================================= */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden !important;
}

body.ijrcs_theme,
body {
  font-family: var(--ijrcs-font-body) !important;
  color: var(--ijrcs-text) !important;
  background-color: var(--ijrcs-lavender-light) !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.65 !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  overflow-x: hidden !important;
  width: 100% !important;
  max-width: 100vw !important;
}

a {
  color: var(--ijrcs-primary);
  text-decoration: none;
  transition: color var(--ijrcs-trans-fast);
}

a:hover,
a:focus {
  color: var(--ijrcs-coral);
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--ijrcs-text) !important;
  font-weight: 700;
  margin-top: 0;
  line-height: 1.25;
}

/* Responsive Container centered at max-width: 1200px */
.ijrcs_container {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 clamp(16px, 3vw, 32px) !important;
  box-sizing: border-box !important;
}

/* =========================================================
   3. ERADICATE ALL VERTICAL DIVIDER LINES ON BOTH SIDES
   (Removes OJS default 1px absolute borders from body.less)
   ========================================================= */
.pkp_structure_main:before,
.pkp_structure_main:after,
.pkp_structure_main::before,
.pkp_structure_main::after,
.pkp_structure_content:before,
.pkp_structure_content:after,
.pkp_structure_content::before,
.pkp_structure_content::after,
.pkp_structure_page:before,
.pkp_structure_page:after,
.pkp_structure_page::before,
.pkp_structure_page::after,
.pkp_structure_sidebar:before,
.pkp_structure_sidebar:after,
.pkp_structure_sidebar::before,
.pkp_structure_sidebar::after,
.has_sidebar .pkp_structure_main:before,
.has_sidebar .pkp_structure_main:after,
.has_sidebar .pkp_structure_main::before,
.has_sidebar .pkp_structure_main::after,
.page_index_journal:before,
.page_index_journal:after,
.page_index_journal::before,
.page_index_journal::after,
div[class*="pkp_structure"]:before,
div[class*="pkp_structure"]:after,
div[class*="pkp_structure"]::before,
div[class*="pkp_structure"]::after,
main[class*="pkp_structure"]:before,
main[class*="pkp_structure"]:after,
main[class*="pkp_structure"]::before,
main[class*="pkp_structure"]::after {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: none !important;
  background-color: transparent !important;
  border: none !important;
  border-left: none !important;
  border-right: none !important;
  position: static !important;
}

.pkp_structure_page,
.pkp_structure_content,
.pkp_structure_main,
.has_sidebar .pkp_structure_main,
.pkp_structure_sidebar,
.pkp_structure_sidebar.left,
.pkp_structure_sidebar.right {
  border-left: none !important;
  border-right: none !important;
  border: none !important;
}

/* =========================================================
   RESPONSIVE MAIN HOST & STRUCTURE OVERRIDE
   (Eliminates OJS default fixed 860px width at min-width: 1200px)
   ========================================================= */
/* Remove the 1200px restriction from the main wrapper */
main#mainHost,
.pkp_structure_main,
#mainHost,
.pkp_structure_content .pkp_structure_main,
.has_site_logo .pkp_structure_main,
body.pkp_page_index main#mainHost,
body.pkp_page_index .pkp_structure_main {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Ensure structure wrappers expand responsively */
.pkp_structure_page,
.pkp_structure_content,
.has_site_logo .pkp_structure_content,
body.pkp_page_index .pkp_structure_content {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
}

/* Child Sections under main#mainHost */
section#homepageIssue,
.ijrcs_section_issue,
.ijrcs_hero_section,
.ijrcs_section_why,
.ijrcs_section_scope,
.ijrcs_section_journey,
.ijrcs_section_indexing,
.ijrcs_section_articles,
main#mainHost>section,
.pkp_structure_main>section {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Inner pages layout: Centered with max-width: 1360px & responsive sidebar */
body:not(.pkp_page_index) .pkp_structure_content {
  width: 100% !important;
  max-width: 1360px !important;
  margin: 0 auto !important;
  padding: 24px clamp(16px, 2.5vw, 32px) 48px !important;
  display: flex !important;
  gap: 28px !important;
  box-sizing: border-box !important;
  background: transparent !important;
}

body:not(.pkp_page_index) main#mainHost,
body:not(.pkp_page_index) .pkp_structure_main {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  background: #FFFFFF !important;
  border: 1px solid var(--ijrcs-border) !important;
  border-radius: 16px !important;
  padding: 24px 28px !important;
  box-shadow: var(--ijrcs-shadow-sm) !important;
  margin: 0 !important;
}

body:not(.pkp_page_index) .pkp_structure_sidebar {
  width: 290px !important;
  flex: 0 0 290px !important;
  max-width: 290px !important;
  flex-shrink: 0 !important;
  border: none !important;
}

/* =========================================================
   ARTICLE VIEW PAGE (EXPANDED WIDE LAYOUT & DETAILS REFACTOR)
   Solves narrow article column and cramped reading experience
   ========================================================= */
body.pkp_page_article .pkp_structure_content,
body.pkp_op_view .pkp_structure_content,
body.has_sidebar.pkp_page_article .pkp_structure_content,
.pkp_page_article .pkp_structure_content {
  width: 100% !important;
  max-width: 1540px !important;
  margin: 0 auto !important;
  padding: 28px clamp(16px, 2.5vw, 36px) 60px !important;
  display: flex !important;
  gap: 32px !important;
  box-sizing: border-box !important;
}

body.pkp_page_article main#mainHost,
body.pkp_page_article .pkp_structure_main,
.page_article {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: clamp(28px, 3.2vw, 44px) clamp(28px, 3.5vw, 48px) !important;
  box-sizing: border-box !important;
}

body.pkp_page_article .pkp_structure_sidebar {
  width: 280px !important;
  flex: 0 0 280px !important;
  max-width: 280px !important;
  flex-shrink: 0 !important;
}

/* Article Details Object */
.obj_article_details {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.obj_article_details>.page_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: clamp(26px, 3vw, 36px) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  color: var(--ijrcs-plum) !important;
  margin: 0 0 12px 0 !important;
  letter-spacing: -0.015em !important;
}

.obj_article_details>.subtitle {
  font-family: var(--ijrcs-font-body) !important;
  font-size: clamp(16px, 1.4vw, 19px) !important;
  line-height: 1.55 !important;
  color: var(--ijrcs-muted) !important;
  margin: 0 0 20px 0 !important;
  font-weight: 500 !important;
}

/* Modern Flexbox Row: Overrides OJS legacy float and fixed width calculations */
.obj_article_details .row {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: clamp(28px, 3vw, 48px) !important;
  margin: 24px 0 0 0 !important;
  padding: 24px 0 0 0 !important;
  border-top: 1px solid var(--ijrcs-border) !important;
  border-bottom: none !important;
  width: 100% !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

.obj_article_details .row::before,
.obj_article_details .row::after {
  display: none !important;
}

/* Main Entry: Expands dynamically to occupy all remaining wide space */
.obj_article_details .main_entry {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  float: none !important;
  border-right: 1px solid var(--ijrcs-border) !important;
  padding-right: clamp(24px, 3vw, 44px) !important;
  box-sizing: border-box !important;
}

/* Entry Details: Metadata & Action Column (Issue cover, PDF button, Citation) */
.obj_article_details .entry_details {
  flex: 0 0 290px !important;
  width: 290px !important;
  max-width: 290px !important;
  float: none !important;
  margin: 0 !important;
  border: none !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Main Entry Items (Authors, DOI, Keywords, Abstract, References) */
.obj_article_details .main_entry .item {
  width: 100% !important;
  max-width: 100% !important;
  padding: 20px 0 !important;
  border-bottom: 1px solid var(--ijrcs-border-subtle) !important;
  box-sizing: border-box !important;
}

.obj_article_details .main_entry .item:last-child {
  border-bottom: none !important;
}

.obj_article_details .main_entry .item.authors {
  padding-top: 0 !important;
}

.obj_article_details .authors li {
  margin-bottom: 12px !important;
}

.obj_article_details .authors .name {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-plum) !important;
}

.obj_article_details .authors .affiliation {
  font-size: 13.5px !important;
  color: var(--ijrcs-muted) !important;
  display: block !important;
  margin-top: 2px !important;
}

.obj_article_details .authors .orcid a {
  color: var(--ijrcs-primary) !important;
  text-decoration: none !important;
  font-size: 13px !important;
}

.obj_article_details .authors .orcid a:hover {
  text-decoration: underline !important;
}

/* DOI & Keywords */
.obj_article_details .item.doi,
.obj_article_details .item.keywords {
  padding: 14px 0 !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
}

.obj_article_details .item.doi .label,
.obj_article_details .item.keywords .label {
  font-weight: 700 !important;
  color: var(--ijrcs-plum) !important;
  margin-right: 6px !important;
}

.obj_article_details .item.doi a {
  color: var(--ijrcs-primary) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  word-break: break-all !important;
}

.obj_article_details .item.doi a:hover {
  color: var(--ijrcs-coral) !important;
  text-decoration: underline !important;
}

/* Abstract & Section Headings */
.obj_article_details .item.abstract .label,
.obj_article_details .item.references .label,
.obj_article_details .main_entry .item .label {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-plum) !important;
  margin-bottom: 12px !important;
  display: block !important;
}

.obj_article_details .item.abstract .value {
  font-size: 15.5px !important;
  line-height: 1.8 !important;
  color: var(--ijrcs-text) !important;
  text-align: justify !important;
}

/* Entry Details Items: Issue Card, Buttons */
.obj_article_details .entry_details .item {
  padding: 16px 0 !important;
  border-bottom: 1px solid var(--ijrcs-border-subtle) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.obj_article_details .entry_details .item:first-child {
  padding-top: 0 !important;
}

.obj_article_details .entry_details .item:last-child {
  border-bottom: none !important;
}

/* Galleys / Download PDF button */
.obj_article_details .galleys_links .obj_galley_link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  background: var(--ijrcs-primary) !important;
  color: #FFFFFF !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  padding: 12px 20px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1px solid transparent !important;
  text-decoration: none !important;
  box-shadow: 0 4px 14px var(--ijrcs-primary-glow) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
}

.obj_article_details .galleys_links .obj_galley_link:hover {
  background: var(--ijrcs-coral) !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 18px var(--ijrcs-coral-glow) !important;
  transform: translateY(-2px) !important;
}

/* Cover Image in Entry Details */
.obj_article_details .entry_details .cover img {
  border-radius: 12px !important;
  box-shadow: var(--ijrcs-shadow-md) !important;
  border: 1px solid var(--ijrcs-border) !important;
  width: 100% !important;
  max-width: 220px !important;
  display: block !important;
  margin: 0 auto 16px auto !important;
}

/* Citation formatting box */
.obj_article_details .citation_formats {
  border: 1px solid var(--ijrcs-border) !important;
  border-radius: 12px !important;
  background: #FAFAFF !important;
  overflow: hidden !important;
}

/* Responsive Stacking for Screens below 1024px */
@media (max-width: 1024px) {
  body.pkp_page_article .pkp_structure_content {
    flex-direction: column !important;
  }

  body.pkp_page_article .pkp_structure_sidebar {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
  }

  .obj_article_details .row {
    flex-direction: column !important;
    gap: 32px !important;
  }

  .obj_article_details .main_entry {
    border-right: none !important;
    padding-right: 0 !important;
    width: 100% !important;
  }

  .obj_article_details .entry_details {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    border-top: 1px solid var(--ijrcs-border) !important;
    padding-top: 24px !important;
  }
}

/* =========================================================
   4. PANORAMIC BREADCRUMBS BANNER
   ========================================================= */
.ijrcs_page_banner {
  position: relative !important;
  background-color: var(--ijrcs-plum) !important;
  background-image: url('/templates/images/breadcrumbs-cancer-bg.jpg') !important;
  background-repeat: no-repeat !important;
  background-position: center right !important;
  background-size: cover !important;
  padding: clamp(34px, 4.5vw, 52px) 0 clamp(38px, 5vw, 56px) 0 !important;
  overflow: hidden !important;
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.1) !important;
  margin-bottom: 0 !important;
}

.ijrcs_page_banner::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg,
      rgba(25, 14, 39, 0.94) 0%,
      rgba(36, 23, 53, 0.82) 42%,
      rgba(36, 23, 53, 0.45) 80%,
      rgba(36, 23, 53, 0.25) 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.ijrcs_banner_inner {
  position: relative !important;
  z-index: 2 !important;
  max-width: 860px !important;
}

/* Hide default redundant bottom breadcrumbs inside main content area */
.pkp_structure_main .cmp_breadcrumbs,
.pkp_structure_content .cmp_breadcrumbs:not(.ijrcs_breadcrumbs),
.page .cmp_breadcrumbs,
nav.cmp_breadcrumbs:not(.ijrcs_breadcrumbs),
.pkp_structure_main>.cmp_breadcrumbs,
.pkp_structure_main nav.cmp_breadcrumbs {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Style top panoramic banner breadcrumbs (rendered after header) */
.ijrcs_breadcrumbs,
.ijrcs_page_banner .cmp_breadcrumbs {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 0 12px 0 !important;
  border: none !important;
  box-shadow: none !important;
}

.cmp_breadcrumbs ol,
.cmp_breadcrumbs ol.breadcrumb,
nav.cmp_breadcrumbs ol {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.78) !important;
}

.cmp_breadcrumbs li,
nav.cmp_breadcrumbs li {
  display: inline-flex !important;
  align-items: center !important;
  color: rgba(255, 255, 255, 0.78) !important;
}

.cmp_breadcrumbs a,
nav.cmp_breadcrumbs a {
  color: rgba(255, 255, 255, 0.95) !important;
  text-decoration: none !important;
  transition: color var(--ijrcs-trans-fast) !important;
  font-weight: 500 !important;
}

.cmp_breadcrumbs a:hover,
nav.cmp_breadcrumbs a:hover {
  color: var(--ijrcs-coral) !important;
  text-decoration: underline !important;
}

.cmp_breadcrumbs .separator,
nav.cmp_breadcrumbs .separator {
  color: rgba(255, 255, 255, 0.45) !important;
  font-size: 12px !important;
  padding: 0 4px !important;
}

.cmp_breadcrumbs .current,
nav.cmp_breadcrumbs .current,
.cmp_breadcrumbs .current h1,
nav.cmp_breadcrumbs .current h1 {
  color: #FFFFFF !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  margin: 0 !important;
  display: inline !important;
}

.ijrcs_banner_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: clamp(26px, 3.2vw, 38px) !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  line-height: 1.22 !important;
  margin: 0 0 10px 0 !important;
  letter-spacing: -0.015em !important;
}

.ijrcs_banner_subtitle {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  color: rgba(255, 255, 255, 0.82) !important;
  margin: 0 !important;
  max-width: 740px !important;
}

.ijrcs_page_banner .cmp_breadcrumbs {
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
  border: none !important;
  margin-bottom: 12px !important;
}

.ijrcs_page_banner .cmp_breadcrumbs::before {
  display: none !important;
}

/* =========================================================
   5. HEADER & NAVIGATION BAR
   ========================================================= */
.ijrcs_header {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  background: #FFFFFF !important;
  border-bottom: 1px solid var(--ijrcs-border) !important;
  z-index: 1000 !important;
  box-shadow: 0 2px 10px rgba(36, 23, 53, 0.04) !important;
}

.ijrcs_header_inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 8px clamp(16px, 2.5vw, 44px) !important;
  margin: 0 !important;
  gap: 18px !important;
  box-sizing: border-box !important;
}

/* Ensure OJS wrapper does not box or constrain navbar */
.pkp_navigation_primary_wrapper,
.ijrcs_header .pkp_navigation_primary_wrapper {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  flex: 1 1 auto !important;
  display: flex !important;
  justify-content: center !important;
}

.ijrcs_brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
}

.ijrcs_brand img,
.ijrcs_header_logo_img {
  height: 80px !important;
  min-height: 50px !important;
  max-height: 85px !important;
  max-width: 380px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
  transition: transform var(--ijrcs-trans-smooth);
}

.ijrcs_brand:hover img,
.ijrcs_brand:hover .ijrcs_header_logo_img {
  transform: scale(1.02);
}

.ijrcs_brand_logo_svg {
  width: 54px !important;
  height: 54px !important;
  flex-shrink: 0 !important;
  transition: transform var(--ijrcs-trans-smooth);
}

.ijrcs_brand:hover .ijrcs_brand_logo_svg {
  transform: rotate(18deg) scale(1.05);
}

.ijrcs_brand_text {
  display: flex !important;
  flex-direction: column !important;
}

.ijrcs_brand_prefix {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--ijrcs-muted) !important;
  letter-spacing: 0.04em !important;
  line-height: 1.15 !important;
}

.ijrcs_brand_main {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 17.5px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-plum) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
}

.ijrcs_nav_desktop {
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ijrcs_nav_desktop>li {
  position: relative !important;
}

.ijrcs_nav_desktop>li>a {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ijrcs-plum) !important;
  padding: 8px 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  position: relative !important;
  transition: color var(--ijrcs-trans-fast) !important;
}

.ijrcs_nav_desktop>li>a:hover,
.ijrcs_nav_desktop>li>a.is_active,
.ijrcs_nav_desktop>li.active>a {
  color: var(--ijrcs-primary) !important;
}

.ijrcs_nav_desktop>li>a.is_active::after,
.ijrcs_nav_desktop>li.active>a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 4px !important;
  right: 4px !important;
  height: 2px !important;
  background-color: var(--ijrcs-primary) !important;
  border-radius: 2px !important;
}

.ijrcs_nav_desktop li ul {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  min-width: 220px !important;
  background: #FFFFFF !important;
  border: 1px solid var(--ijrcs-border) !important;
  border-radius: 12px !important;
  box-shadow: var(--ijrcs-shadow-md) !important;
  padding: 8px 0 !important;
  list-style: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
  transition: all var(--ijrcs-trans-fast) !important;
  z-index: 9999 !important;
}

.ijrcs_nav_desktop li:hover>ul {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

.ijrcs_nav_desktop li ul li a {
  display: block !important;
  padding: 9px 18px !important;
  font-size: 13.5px !important;
  color: var(--ijrcs-plum) !important;
  font-weight: 500 !important;
  transition: all var(--ijrcs-trans-fast) !important;
}

.ijrcs_nav_desktop li ul li a:hover {
  background: var(--ijrcs-lavender) !important;
  color: var(--ijrcs-primary) !important;
  padding-left: 22px !important;
}

.ijrcs_header_actions {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.ijrcs_user_nav {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: var(--ijrcs-plum) !important;
}

.ijrcs_user_link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: var(--ijrcs-plum) !important;
  text-decoration: none !important;
  transition: all var(--ijrcs-trans-fast) !important;
  padding: 6px 11px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  font-size: 13.5px !important;
}

.ijrcs_user_link:hover {
  color: var(--ijrcs-primary) !important;
  background: var(--ijrcs-lavender) !important;
}

.ijrcs_user_divider {
  width: 1px !important;
  height: 14px !important;
  background-color: var(--ijrcs-border) !important;
  display: inline-block !important;
}

.ijrcs_user_register {
  color: var(--ijrcs-coral) !important;
}

.ijrcs_user_register:hover {
  color: var(--ijrcs-coral-hover) !important;
}

.ijrcs_btn_submit {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background-color: var(--ijrcs-primary) !important;
  color: #FFFFFF !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  padding: 9px 20px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
  border: 1px solid transparent !important;
  text-decoration: none !important;
}

.ijrcs_btn_submit:hover {
  background-color: var(--ijrcs-coral) !important;
  color: #FFFFFF !important;
  box-shadow: 0 6px 18px var(--ijrcs-coral-glow) !important;
  transform: translateY(-1px) !important;
}

.ijrcs_btn_icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--ijrcs-lavender);
  color: var(--ijrcs-plum);
  border: 1px solid var(--ijrcs-border);
  transition: all var(--ijrcs-trans-fast);
  cursor: pointer;
}

.ijrcs_btn_icon:hover {
  background: var(--ijrcs-primary);
  color: #FFFFFF;
  border-color: var(--ijrcs-primary);
}

.ijrcs_mobile_toggle {
  display: none;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 6px;
  color: var(--ijrcs-plum);
}

/* Mobile Drawer */
.ijrcs_mobile_drawer_backdrop {
  position: fixed;
  inset: 0;
  background: rgba(36, 23, 53, 0.6);
  backdrop-filter: blur(4px);
  z-index: 9998;
  opacity: 0;
  visibility: hidden;
  transition: all var(--ijrcs-trans-smooth);
}

.ijrcs_mobile_drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 310px;
  max-width: 85vw;
  background: #FFFFFF;
  z-index: 9999;
  transform: translateX(100%);
  transition: transform var(--ijrcs-trans-smooth);
  box-shadow: -8px 0 32px rgba(36, 23, 53, 0.2);
  display: flex;
  flex-direction: column;
}

body.ijrcs_drawer_active .ijrcs_mobile_drawer_backdrop {
  opacity: 1;
  visibility: visible;
}

body.ijrcs_drawer_active .ijrcs_mobile_drawer {
  transform: translateX(0);
}

.ijrcs_drawer_header {
  padding: 20px 24px;
  border-bottom: 1px solid var(--ijrcs-border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ijrcs_drawer_title {
  font-family: var(--ijrcs-font-serif);
  font-size: 18px;
  font-weight: 700;
  color: var(--ijrcs-plum);
}

.ijrcs_drawer_close {
  background: transparent;
  border: none;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  color: var(--ijrcs-plum);
}

.ijrcs_drawer_nav {
  padding: 20px 24px;
  overflow-y: auto;
  flex: 1;
}

.ijrcs_drawer_menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ijrcs_drawer_menu li a {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: var(--ijrcs-plum);
  padding: 8px 0;
  border-bottom: 1px solid var(--ijrcs-border-subtle);
}

.ijrcs_drawer_user_bar {
  display: flex;
  gap: 10px;
  margin-top: 20px;
}

.ijrcs_drawer_user_btn {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 600;
  border-radius: var(--ijrcs-radius-pill);
  background: var(--ijrcs-lavender);
  color: var(--ijrcs-plum);
  border: 1px solid var(--ijrcs-border);
}

.ijrcs_drawer_user_btn_reg {
  background: var(--ijrcs-coral);
  color: #FFFFFF;
  border-color: var(--ijrcs-coral);
}

/* =========================================================
   6. EDITORIAL CANCER SCIENCE HERO SECTION
   ========================================================= */
.ijrcs_hero_section {
  width: 100% !important;
  position: relative !important;
  background-color: #FFFFFF !important;
  background-image: url('/templates/images/cancer-hero.png') !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  padding: clamp(38px, 5vw, 64px) 0 clamp(44px, 5.5vw, 70px) 0 !important;
  min-height: clamp(440px, 48vh, 520px) !important;
  display: flex !important;
  align-items: center !important;
  border-bottom: 1px solid var(--ijrcs-border) !important;
  overflow: hidden !important;
}

/* OVERLAY ONLY BEHIND TEXT AREA ON LEFT; ZERO OVERLAY ON RIGHT SIDE */
.ijrcs_hero_section::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 50% !important;
  max-width: 620px !important;
  background: linear-gradient(90deg,
      rgba(255, 255, 255, 0.98) 0%,
      rgba(255, 255, 255, 0.94) 55%,
      rgba(255, 255, 255, 0) 100%) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.ijrcs_hero_grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr) !important;
  gap: clamp(24px, 4vw, 48px) !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 860px) {
  .ijrcs_hero_grid {
    grid-template-columns: 1fr !important;
  }
}

.ijrcs_hero_left {
  max-width: 640px !important;
  z-index: 5 !important;
}

.ijrcs_hero_kicker {
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-primary) !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--ijrcs-lavender) !important;
  padding: 4px 12px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1px solid var(--ijrcs-border) !important;
}

.ijrcs_hero_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: clamp(42px, 5.2vw, 68px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  color: var(--ijrcs-plum) !important;
  margin: 0 0 16px 0 !important;
  letter-spacing: -0.02em !important;
}

.ijrcs_hero_desc {
  font-family: var(--ijrcs-font-body) !important;
  font-size: clamp(15px, 1.35vw, 17px) !important;
  color: var(--ijrcs-text-muted) !important;
  line-height: 1.7 !important;
  margin: 0 0 24px 0 !important;
  max-width: 580px !important;
}

.ijrcs_hero_buttons {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  margin-bottom: 28px !important;
}

.ijrcs_btn_primary {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background-color: var(--ijrcs-primary) !important;
  color: #FFFFFF !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 11px 24px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
  border: 1px solid transparent !important;
  text-decoration: none !important;
}

.ijrcs_btn_primary:hover {
  background-color: var(--ijrcs-primary-hover) !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px var(--ijrcs-primary-glow) !important;
  transform: translateY(-2px) !important;
}

.ijrcs_btn_outline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background-color: transparent !important;
  color: var(--ijrcs-plum) !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 11px 22px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1.5px solid var(--ijrcs-border) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
  text-decoration: none !important;
}

.ijrcs_btn_outline:hover {
  background-color: var(--ijrcs-lavender) !important;
  color: var(--ijrcs-primary) !important;
  border-color: var(--ijrcs-primary) !important;
}

.ijrcs_btn_coral {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background-color: var(--ijrcs-coral) !important;
  color: #FFFFFF !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 11px 22px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
  border: 1px solid transparent !important;
  text-decoration: none !important;
}

.ijrcs_btn_coral:hover {
  background-color: var(--ijrcs-coral-hover) !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px var(--ijrcs-coral-glow) !important;
  transform: translateY(-2px) !important;
}

.ijrcs_hero_trust_ribbon {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
}

.ijrcs_trust_badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--ijrcs-text-muted) !important;
}

.ijrcs_trust_badge svg {
  color: var(--ijrcs-primary) !important;
  flex-shrink: 0 !important;
}

.ijrcs_hero_right {
  display: flex !important;
  justify-content: flex-end !important;
  position: relative !important;
  min-height: clamp(320px, 42vh, 460px) !important;
  pointer-events: none !important;
  background: transparent !important;
}

/* Removed Hero Badge, Metrics & blocking cards so cancer-hero illustration is 100% visible */
.ijrcs_hero_visual_badge,
.ijrcs_hero_metric_row,
.ijrcs_hero_visual_card,
.ijrcs_hero_logo_card {
  display: none !important;
}

.ijrcs_hero_science_emblem {
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  animation: ijrcsFloat 6s ease-in-out infinite alternate !important;
}

@keyframes ijrcsFloat {
  0% {
    transform: translateY(0px) rotate(0deg);
  }

  100% {
    transform: translateY(-8px) rotate(3deg);
  }
}

.ijrcs_hero_custom_logo {
  max-width: 260px !important;
  max-height: 150px !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
  filter: drop-shadow(0 6px 18px rgba(121, 56, 216, 0.18)) !important;
}

.ijrcs_hero_large_emblem_svg {
  width: 190px !important;
  height: 190px !important;
  display: block !important;
  filter: drop-shadow(0 8px 24px rgba(121, 56, 216, 0.22)) !important;
  transition: transform var(--ijrcs-trans-smooth) !important;
}

.ijrcs_hero_visual_card:hover .ijrcs_hero_large_emblem_svg {
  transform: rotate(8deg) scale(1.04) !important;
}

/* =========================================================
   7. LATEST ISSUE & RESEARCH PILLARS (MIDNIGHT PLUM CARD)
   ========================================================= */
.ijrcs_section_issue {
  padding: clamp(48px, 6vw, 76px) 0 !important;
  background-color: var(--ijrcs-lavender-light) !important;
}

.ijrcs_issue_card {
  background-color: var(--ijrcs-plum) !important;
  border-radius: 28px !important;
  padding: clamp(28px, 4vw, 48px) !important;
  display: grid !important;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) !important;
  gap: clamp(24px, 3.5vw, 44px) !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  color: #FFFFFF !important;
  box-shadow: var(--ijrcs-shadow-lg) !important;
  position: relative !important;
  overflow: hidden !important;
}

@media (max-width: 900px) {
  .ijrcs_issue_card {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
}

.ijrcs_issue_card::before {
  content: '' !important;
  position: absolute !important;
  top: -120px !important;
  right: -120px !important;
  width: 320px !important;
  height: 320px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, var(--ijrcs-accent-glow) 0%, transparent 70%) !important;
  pointer-events: none !important;
}

.ijrcs_issue_book_col {
  display: flex !important;
  justify-content: center !important;
}

.ijrcs_book_stage {
  perspective: 1200px !important;
}

.ijrcs_book_3d {
  position: relative !important;
  transition: transform var(--ijrcs-trans-smooth) !important;
  transform: rotateY(-12deg) rotateX(4deg) !important;
  transform-style: preserve-3d !important;
}

.ijrcs_book_3d:hover {
  transform: rotateY(-4deg) rotateX(2deg) translateY(-8px) !important;
}

.ijrcs_cover_img {
  width: 250px !important;
  height: auto !important;
  border-radius: 8px !important;
  box-shadow: var(--ijrcs-shadow-book) !important;
  display: block !important;
}

.ijrcs_issue_kicker {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--ijrcs-coral) !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
}

.ijrcs_kicker_dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ijrcs-coral);
}

.ijrcs_issue_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: clamp(28px, 3.2vw, 42px) !important;
  color: #FFFFFF !important;
  margin: 0 0 20px 0 !important;
  font-weight: 800 !important;
}

.ijrcs_issue_actions {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 32px !important;
  flex-wrap: wrap !important;
}

.ijrcs_btn_issue_white {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #FFFFFF !important;
  color: var(--ijrcs-plum) !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  padding: 10px 22px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
}

.ijrcs_btn_issue_white:hover {
  background: var(--ijrcs-coral) !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
}

.ijrcs_btn_issue_ghost {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  color: #FFFFFF !important;
  font-family: var(--ijrcs-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  padding: 10px 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
}

.ijrcs_btn_issue_ghost:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: #FFFFFF !important;
}

.ijrcs_pillars_heading {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 19px !important;
  color: var(--ijrcs-lavender) !important;
  margin: 0 0 16px 0 !important;
}

.ijrcs_pillars_grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px 20px !important;
  width: 100% !important;
}

.ijrcs_pillar_item {
  display: flex !important;
  gap: 10px !important;
  align-items: flex-start !important;
  min-width: 0 !important;
}

.ijrcs_pillar_icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(121, 56, 216, 0.25);
  border: 1px solid rgba(155, 85, 232, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--ijrcs-lavender);
  flex-shrink: 0;
}

.ijrcs_pillar_text {
  min-width: 0 !important;
}

.ijrcs_pillar_text h4 {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin: 0 0 3px 0 !important;
  white-space: normal !important;
  word-break: break-word !important;
}

.ijrcs_pillar_text p {
  font-size: 12px !important;
  color: rgba(255, 255, 255, 0.72) !important;
  line-height: 1.45 !important;
  margin: 0 !important;
  white-space: normal !important;
  word-break: break-word !important;
}

/* Photorealistic CSS & SVG 3D Book Cover Fallback */
.ijrcs_cover_book_canvas {
  width: 250px !important;
  height: 350px !important;
  background: linear-gradient(145deg, #321b50 0%, #1e1030 50%, #120820 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 8px !important;
  box-shadow: var(--ijrcs-shadow-book) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 24px 18px !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
}

.ijrcs_cover_book_canvas::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 14px !important;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(0, 0, 0, 0.3) 100%) !important;
}

.ijrcs_cb_badge {
  background: var(--ijrcs-primary) !important;
  color: #FFFFFF !important;
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  padding: 3px 12px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
}

.ijrcs_cb_series {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 10px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--ijrcs-coral) !important;
  margin-top: 12px !important;
  font-weight: 600 !important;
}

.ijrcs_cb_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  line-height: 1.15 !important;
  margin: 6px 0 !important;
}

.ijrcs_cb_issue {
  font-size: 11.5px !important;
  color: var(--ijrcs-lavender) !important;
  font-weight: 500 !important;
}

.ijrcs_cb_publisher {
  font-size: 10px !important;
  color: rgba(255, 255, 255, 0.6) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
  padding-top: 8px !important;
  width: 100% !important;
  letter-spacing: 0.04em !important;
}

.ijrcs_pillar_text h4 {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin: 0 0 3px 0 !important;
}

.ijrcs_pillar_text p {
  font-size: 12.5px !important;
  color: rgba(255, 255, 255, 0.72) !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

/* =========================================================
   8. ABOUT THE JOURNAL & TRIPLE ONCOLOGY FRAMES
   ========================================================= */
.ijrcs_section_about {
  padding: clamp(48px, 6vw, 80px) 0 !important;
  background-color: #FFFFFF !important;
}

.ijrcs_about_grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: clamp(36px, 5vw, 68px) !important;
  align-items: center !important;
}

.ijrcs_section_kicker {
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-primary) !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}

.ijrcs_section_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: clamp(30px, 3.6vw, 46px) !important;
  color: var(--ijrcs-plum) !important;
  line-height: 1.18 !important;
  margin: 0 0 20px 0 !important;
}

.ijrcs_about_lead {
  font-size: 16px !important;
  color: var(--ijrcs-text) !important;
  line-height: 1.7 !important;
  margin-bottom: 16px !important;
}

.ijrcs_about_body {
  font-size: 14.5px !important;
  color: var(--ijrcs-muted) !important;
  line-height: 1.7 !important;
  margin-bottom: 24px !important;
}

.ijrcs_about_actions {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

.ijrcs_about_right {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.ijrcs_art_cluster {
  display: flex !important;
  align-items: flex-end !important;
  gap: 14px !important;
  margin-bottom: 20px !important;
}

.ijrcs_arch_frame {
  position: relative !important;
  overflow: hidden !important;
  box-shadow: var(--ijrcs-shadow-md) !important;
  border: 3px solid #FFFFFF !important;
  transition: transform var(--ijrcs-trans-smooth) !important;
}

.ijrcs_arch_frame:hover {
  transform: translateY(-6px) scale(1.02) !important;
}

.ijrcs_arch_frame img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.ijrcs_arch_frame_1 {
  width: 150px !important;
  height: 250px !important;
  border-radius: 9999px 9999px 16px 16px !important;
}

.ijrcs_arch_frame_2 {
  width: 135px !important;
  height: 220px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
}

.ijrcs_arch_frame_3 {
  width: 130px !important;
  height: 130px !important;
  border-radius: 50% !important;
}

.ijrcs_frame_label {
  position: absolute;
  bottom: 8px;
  left: 6px;
  right: 6px;
  background: rgba(36, 23, 53, 0.85);
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 700;
  text-align: center;
  padding: 3px 6px;
  border-radius: 9999px;
  backdrop-filter: blur(4px);
}

.ijrcs_about_quote_callout {
  background: var(--ijrcs-lavender) !important;
  border: 1px solid var(--ijrcs-border) !important;
  border-radius: 14px !important;
  padding: 16px 22px !important;
  text-align: center !important;
  max-width: 440px !important;
}

.ijrcs_about_quote_callout p {
  font-family: var(--ijrcs-font-serif) !important;
  font-style: italic !important;
  font-size: 14.5px !important;
  color: var(--ijrcs-plum) !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.5 !important;
}

.ijrcs_quote_author {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-primary) !important;
}

/* =========================================================
   9. "WHY PUBLISH WITH US?" VALUE RIBBON
   ========================================================= */
.ijrcs_section_why {
  background-color: var(--ijrcs-lavender) !important;
  border-top: 1px solid var(--ijrcs-border) !important;
  border-bottom: 1px solid var(--ijrcs-border) !important;
  padding: clamp(40px, 5vw, 60px) 0 !important;
}

.ijrcs_why_grid {
  display: grid !important;
  grid-template-columns: 280px 1fr !important;
  gap: clamp(24px, 4vw, 48px) !important;
  align-items: center !important;
}

.ijrcs_why_title_col {
  border-right: 2px solid var(--ijrcs-border) !important;
  padding-right: 20px !important;
}

.ijrcs_why_kicker {
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-coral) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
}

.ijrcs_why_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: clamp(24px, 2.8vw, 34px) !important;
  color: var(--ijrcs-plum) !important;
  margin: 6px 0 0 0 !important;
}

.ijrcs_why_features {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}

.ijrcs_why_item {
  display: flex !important;
  flex-direction: column !important;
}

.ijrcs_why_icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #FFFFFF;
  border: 1px solid var(--ijrcs-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--ijrcs-primary);
  margin-bottom: 12px;
  box-shadow: var(--ijrcs-shadow-sm);
}

.ijrcs_why_item h4 {
  font-family: var(--ijrcs-font-body) !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-plum) !important;
  margin: 0 0 6px 0 !important;
}

.ijrcs_why_item p {
  font-size: 13px !important;
  color: var(--ijrcs-muted) !important;
  line-height: 1.55 !important;
  margin: 0 !important;
}

/* =========================================================
   10. LATEST ARTICLES SHOWCASE
   ========================================================= */
.ijrcs_section_articles {
  padding: clamp(48px, 6vw, 80px) 0 !important;
  background-color: var(--ijrcs-lavender-light) !important;
}

.ijrcs_articles_header_bar {
  background: var(--ijrcs-plum) !important;
  border-radius: 18px !important;
  padding: 18px 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 28px !important;
  color: #FFFFFF !important;
  box-shadow: var(--ijrcs-shadow-sm) !important;
}

.ijrcs_articles_header_left {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

.ijrcs_articles_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 20px !important;
  color: #FFFFFF !important;
  margin: 0 !important;
  font-weight: 700 !important;
}

.ijrcs_articles_badge {
  background: rgba(121, 56, 216, 0.35) !important;
  color: var(--ijrcs-lavender) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1px solid rgba(155, 85, 232, 0.4) !important;
}

.ijrcs_articles_view_all {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #FFFFFF !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  transition: color var(--ijrcs-trans-fast) !important;
}

.ijrcs_articles_view_all:hover {
  color: var(--ijrcs-coral) !important;
}

.ijrcs_articles_list {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

.ijrcs_article_card {
  background: #FFFFFF !important;
  border: 1px solid var(--ijrcs-border) !important;
  border-radius: 16px !important;
  padding: 24px 28px !important;
  box-shadow: var(--ijrcs-shadow-sm) !important;
  transition: all var(--ijrcs-trans-smooth) !important;
}

.ijrcs_article_card:hover {
  border-color: var(--ijrcs-primary) !important;
  box-shadow: var(--ijrcs-shadow-md) !important;
  transform: translateY(-2px) !important;
}

.ijrcs_article_top {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 10px !important;
  flex-wrap: wrap !important;
}

.ijrcs_article_type {
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--ijrcs-primary) !important;
  text-transform: uppercase !important;
  background: var(--ijrcs-lavender) !important;
  padding: 3px 8px !important;
  border-radius: 6px !important;
}

.ijrcs_article_doi {
  font-size: 12px !important;
  color: var(--ijrcs-muted) !important;
  font-family: var(--ijrcs-font-tech) !important;
}

.ijrcs_article_date {
  font-size: 12px !important;
  color: var(--ijrcs-muted) !important;
  margin-left: auto !important;
}

.ijrcs_article_name {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  margin: 0 0 10px 0 !important;
}

.ijrcs_article_name a {
  color: var(--ijrcs-plum) !important;
  transition: color var(--ijrcs-trans-fast) !important;
}

.ijrcs_article_name a:hover {
  color: var(--ijrcs-primary) !important;
}

.ijrcs_article_authors {
  font-size: 13.5px !important;
  color: var(--ijrcs-muted) !important;
  margin: 0 0 16px 0 !important;
}

.ijrcs_article_galleys {
  display: flex !important;
  gap: 10px !important;
}

.ijrcs_btn_pdf {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: var(--ijrcs-lavender) !important;
  color: var(--ijrcs-primary) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  padding: 6px 14px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1px solid var(--ijrcs-border) !important;
  transition: all var(--ijrcs-trans-fast) !important;
}

.ijrcs_btn_pdf:hover {
  background: var(--ijrcs-primary) !important;
  color: #FFFFFF !important;
  border-color: var(--ijrcs-primary) !important;
}

/* =========================================================
   11. GRAND BESPOKE FOOTER
   ========================================================= */
.ijrcs_footer {
  background-color: var(--ijrcs-plum) !important;
  color: #FFFFFF !important;
  padding: clamp(54px, 6vw, 80px) 0 32px 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.ijrcs_footer_grid {
  display: grid !important;
  grid-template-columns: 1.5fr 1fr 1fr 1.2fr !important;
  gap: clamp(28px, 4vw, 56px) !important;
  margin-bottom: 48px !important;
}

.ijrcs_footer_col {
  display: flex !important;
  flex-direction: column !important;
}

.ijrcs_footer_text {
  font-size: 13.5px !important;
  color: rgba(255, 255, 255, 0.72) !important;
  line-height: 1.65 !important;
  margin: 0 0 14px 0 !important;
}

.ijrcs_footer_issn_badge {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(121, 56, 216, 0.25) !important;
  color: var(--ijrcs-lavender) !important;
  font-family: var(--ijrcs-font-tech) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 6px 12px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1px solid rgba(155, 85, 232, 0.35) !important;
  width: fit-content !important;
}

.ijrcs_footer_title {
  font-family: var(--ijrcs-font-serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin: 0 0 16px 0 !important;
  position: relative !important;
  padding-bottom: 8px !important;
}

.ijrcs_footer_title::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 28px !important;
  height: 2px !important;
  background: var(--ijrcs-coral) !important;
  border-radius: 2px !important;
}

.ijrcs_footer_links {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 9px !important;
}

.ijrcs_footer_links li a {
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 13.5px !important;
  transition: all var(--ijrcs-trans-fast) !important;
}

.ijrcs_footer_links li a:hover {
  color: var(--ijrcs-coral) !important;
  padding-left: 4px !important;
}

.ijrcs_cc_badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 12px !important;
  color: rgba(255, 255, 255, 0.75) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  padding: 8px 14px !important;
  border-radius: var(--ijrcs-radius-pill) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.ijrcs_footer_bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding-top: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}

.ijrcs_copyright {
  font-size: 13px !important;
  color: rgba(255, 255, 255, 0.6) !important;
  margin: 0 !important;
}

.ijrcs_powered {
  font-size: 12.5px !important;
  color: rgba(255, 255, 255, 0.5) !important;
  margin: 0 !important;
}

/* =========================================================
   12. RESPONSIVE BREAKPOINTS & MEDIA QUERIES
   ========================================================= */
@media (max-width: 1200px) {
  .ijrcs_why_features {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 1024px) {

  .ijrcs_nav_desktop,
  .ijrcs_user_nav {
    display: none !important;
  }

  .ijrcs_mobile_toggle {
    display: block !important;
  }

  .ijrcs_hero_grid {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .ijrcs_hero_left {
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .ijrcs_hero_buttons {
    justify-content: center !important;
  }

  .ijrcs_hero_trust_ribbon {
    justify-content: center !important;
  }

  .ijrcs_hero_right {
    display: none !important;
  }

  .ijrcs_hero_section::before {
    background: linear-gradient(180deg,
        rgba(250, 245, 255, 0.82) 0%,
        rgba(250, 245, 255, 0.64) 50%,
        rgba(250, 245, 255, 0.42) 100%) !important;
  }

  .ijrcs_issue_card {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .ijrcs_issue_actions {
    justify-content: center !important;
  }

  .ijrcs_about_grid {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .ijrcs_about_actions {
    justify-content: center !important;
  }

  .ijrcs_why_grid {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }

  .ijrcs_why_title_col {
    border-right: none !important;
    border-bottom: 2px solid var(--ijrcs-border) !important;
    padding-bottom: 20px !important;
    padding-right: 0 !important;
  }

  .ijrcs_footer_grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  body:not(.pkp_page_index) .pkp_structure_content {
    flex-direction: column !important;
    padding: 16px 14px 40px 14px !important;
    gap: 20px !important;
  }

  body:not(.pkp_page_index) .pkp_structure_main {
    padding: 20px 18px !important;
    width: 100% !important;
  }

  body:not(.pkp_page_index) .pkp_structure_sidebar {
    width: 100% !important;
  }
}

@media (max-width: 768px) {
  .ijrcs_header_inner {
    padding: 10px 16px !important;
  }

  .ijrcs_brand img,
  .ijrcs_header_logo_img {
    max-height: 54px !important;
    max-width: 240px !important;
  }

  .ijrcs_brand_logo_svg {
    width: 44px !important;
    height: 44px !important;
  }

  .ijrcs_hero_title {
    font-size: clamp(38px, 9vw, 52px) !important;
  }

  .ijrcs_pillars_grid {
    grid-template-columns: 1fr !important;
  }

  .ijrcs_why_features {
    grid-template-columns: 1fr 1fr !important;
  }

  .ijrcs_footer_grid {
    grid-template-columns: 1fr !important;
  }

  .ijrcs_footer_bottom {
    flex-direction: column !important;
    text-align: center !important;
  }
}

@media (max-width: 480px) {
  .ijrcs_container {
    padding: 0 14px !important;
  }

  .ijrcs_btn_submit {
    display: none !important;
  }

  .ijrcs_hero_buttons {
    flex-direction: column !important;
    width: 100% !important;
  }

  .ijrcs_btn_primary,
  .ijrcs_btn_outline {
    width: 100% !important;
    justify-content: center !important;
  }

  .ijrcs_why_features {
    grid-template-columns: 1fr !important;
  }

  .ijrcs_arch_frame_1 {
    width: 105px !important;
    height: 190px !important;
  }

  .ijrcs_arch_frame_2 {
    width: 95px !important;
    height: 165px !important;
  }

  .ijrcs_arch_frame_3 {
    width: 95px !important;
    height: 95px !important;
  }
}