.stk-ae92e86 .stk-block-heading__text sup {
  font-size: 50% !important;  /* shrink just the TM */
  vertical-align: super;      /* lift it above baseline */
  margin-left: 2px;           /* add spacing after the period */
}

/* Target Blocksy star icons */
.ct-icon-star,
.ct-icon-star::before,
.ct-icon-star svg {
  color: #FFD700 !important;   /* gold yellow */
  fill: #FFD700 !important;
  stroke: #FFD700 !important;
}

/* Any star icon inside your job listings section */
.job-listings .ct-icon-star svg {
  fill: #FFD700 !important;
  stroke: #FFD700 !important;
}

/* Force star icons to yellow */
.stk--inner-svg svg,
.stk--inner-svg {
  fill: #FFD700 !important;   /* gold */
  stroke: #FFD700 !important; /* outline */
  color: #FFD700 !important;  /* fallback */
}

.stk--inner-svg * {
  fill: #FFD700 !important;
  stroke: #FFD700 !important;
}


/* Mobile heading fixes */
@media screen and (max-width: 767px) {
  h1 {
    font-size: 32px !important;   /* smaller for mobile */
    line-height: 1.2em !important;
    word-break: normal;
  }
  
  .stk-block-heading__text {
    font-size: 32px !important;
    line-height: 1.2em !important;
  }
}

/* Hero heading: From Inquiry to Degree */
.stk-ae92e86 .stk-block-heading__text {
  /* scale responsively and stop the overlap */
  font-size: clamp(28px, 7vw, 64px) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em;
  white-space: normal;
  display: inline-block;
}

/* Make the ™ behave */
.stk-ae92e86 sup {
  font-size: 0.5em;
  line-height: 0;
  position: relative;
  top: -0.2em;
}

/* Tighter on very small phones */
@media (max-width: 390px) {
  .stk-ae92e86 .stk-block-heading__text { font-size: 26px !important; }
}

/* Mobile fix for hero heading */
@media (max-width: 767px) {
  h1, h2 {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
}


/* Mobile fix for hero heading */
@media (max-width: 767px) {
  h1, h2 {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
}

/* Force mobile sizing for hero heading */
@media (max-width: 1024px) {
  .hero-title {
    font-size: 40px !important;
    line-height: 1.2 !important;
  }
}

@media (max-width: 767px) {
  .hero-title {
    font-size: 28px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
  .hero-title sup {
    font-size: 0.5em !important;
    line-height: 0 !important;
    position: relative !important;
    top: -0.2em !important;
  }
}

/* HERO — force sane typography and kill old overrides */
.hero-wrap .wp-block-heading,
.hero-wrap .stk-block-heading__text {
  line-height: 1.2 !important;
  white-space: normal !important;
  word-break: normal !important;
  letter-spacing: -0.02em;
  display: block;
}

/* Tablet */
@media (max-width: 1024px) {
  .hero-wrap .wp-block-heading,
  .hero-wrap .stk-block-heading__text { font-size: 40px !important; }
}

/* Phone */
@media (max-width: 767px) {
  .hero-wrap .wp-block-heading,
  .hero-wrap .stk-block-heading__text { font-size: 28px !important; }
  .hero-wrap .wp-block-heading sup,
  .hero-wrap .stk-block-heading__text sup {
    font-size: 0.5em !important;
    line-height: 0 !important;
    position: relative !important;
    top: -0.2em !important;
  }
}

/* Force mobile/tablet size for THIS heading only */
@media (max-width: 1024px) {
  .stk-block-heading__text {
    font-size: 40px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    word-break: normal !important;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
  }
}
@media (max-width: 767px) {
  .stk-block-heading__text {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
  .stk-block-heading__text sup {
    font-size: 0.5em !important;
    line-height: 0 !important;
    position: relative !important;
    top: -0.2em !important;
  }
}


/* ==== HERO: hard override everything ==== */
.hero-wrap .wp-block-heading,
.hero-wrap .stk-block-heading__text {
  /* normalize */
  line-height: 1.2 !important;
  white-space: normal !important;
  word-break: normal !important;
  letter-spacing: -0.01em !important;
  font-weight: 700 !important;

  /* kill doubling effects */
  text-shadow: none !important;
  -webkit-text-stroke: 0 !important;
  filter: none !important;
  transform: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;

  /* stacking */
  display: block !important;
  position: relative !important;
  z-index: 1 !important;
}

/* if any pseudo-elements are creating a “ghost” title, remove them */
.hero-wrap .wp-block-heading::before,
.hero-wrap .wp-block-heading::after,
.hero-wrap .stk-block-heading__text::before,
.hero-wrap .stk-block-heading__text::after {
  content: none !important;
  display: none !important;
}

/* tablet */
@media (max-width: 1024px) {
  .hero-wrap .wp-block-heading,
  .hero-wrap .stk-block-heading__text {
    font-size: 40px !important;
  }
}

/* phone */
@media (max-width: 767px) {
  .hero-wrap .wp-block-heading,
  .hero-wrap .stk-block-heading__text {
    font-size: 28px !important;
  }
  /* tidy up the ™ */
  .hero-wrap .wp-block-heading sup,
  .hero-wrap .stk-block-heading__text sup {
    font-size: 0.5em !important;
    line-height: 0 !important;
    position: relative !important;
    top: -0.2em !important;
  }
}

/* force the jobs grid to stack properly on small screens */
@media (max-width: 1024px) {
  .roles-grid { display: flex; flex-wrap: wrap; gap: 24px; }
  .roles-grid > * { flex: 0 0 100% !important; max-width: 100% !important; }
}
@media (max-width: 767px) {
  .roles-grid > * { margin-bottom: 16px; }
}


.ct-panel-title, 
.offcanvas-header .panel-title, 
.mobile-menu__title {
  display: none !important;
}