/* TextType (React Bits) — CSS companion for vanilla port */
.text-type {
  display: inline-block;
  white-space: pre-wrap;
}

.text-type__cursor {
  margin-left: 0.2rem;
  display: inline-block;
  opacity: 1;
  vertical-align: baseline;
}

.text-type__cursor--hidden {
  display: none;
}

@keyframes textTypeBlink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}

/* Jubilee hero: each typed line is its own full-width block slot */
.pnt-jubilee-hero .text-type,
.pnt-jubilee-hero [data-text-type] {
  display: block !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 100%;
  text-align: center !important;
  white-space: pre-wrap;
  box-sizing: border-box;
}

.pnt-jubilee-hero .text-type__content {
  display: inline;
}

.pnt-jubilee-hero__welcome,
.pnt-jubilee-hero__welcome .text-type__content,
.pnt-jubilee-hero__eyebrow,
.pnt-jubilee-hero__eyebrow .text-type__content,
.pnt-jubilee-hero__lead,
.pnt-jubilee-hero__lead .text-type__content {
  color: #fff !important;
}

.pnt-jubilee-hero__title {
  color: #fdb714;
  filter: drop-shadow(0 8px 36px rgba(0, 0, 0, 0.4));
  font-size: clamp(4.4rem, 13vw, 8.5rem) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.02em;
  min-height: 0.95em;
}

.pnt-jubilee-hero__title .text-type__content.shiny-text {
  --shiny-color: #fdb714;
  --shiny-shine: #fff6c8;
  --shiny-speed: 2.6s;
}

.pnt-jubilee-hero__title .text-type__cursor {
  color: #fdb714;
  -webkit-text-fill-color: #fdb714;
}

.pnt-jubilee-hero__welcome .text-type__cursor,
.pnt-jubilee-hero__eyebrow .text-type__cursor,
.pnt-jubilee-hero__lead .text-type__cursor,
.pnt-jubilee-hero__scroll .text-type__cursor {
  color: #fff;
}

.pnt-jubilee-hero__welcome {
  min-height: 3.4em !important;
}

.pnt-jubilee-hero__eyebrow {
  min-height: 1.7em !important;
}

.pnt-jubilee-hero__lead {
  min-height: 5.2em !important;
}

.pnt-jubilee-hero__scroll,
.pnt-jubilee-hero__scroll[data-text-type],
.pnt-jubilee-hero a.pnt-jubilee-hero__scroll.text-type {
  display: inline-flex !important;
  width: auto !important;
  max-width: calc(100% - 2rem);
  white-space: nowrap;
  color: #fff !important;
  opacity: 1;
  pointer-events: auto;
}

.pnt-jubilee-hero__scroll .text-type__content {
  color: #fff !important;
}

.pnt-jubilee-hero__scroll.is-typing .text-type__cursor {
  display: inline-block;
}

@media (max-width: 767px) {
  .pnt-jubilee-hero__title {
    font-size: clamp(3.85rem, 15.5vw, 5.6rem) !important;
    margin-bottom: 1.15rem;
  }

  .pnt-jubilee-hero__welcome {
    font-size: clamp(1.05rem, 3.9vw, 1.18rem);
    min-height: 4.8em !important;
    margin-bottom: 1rem;
  }

  .pnt-jubilee-hero__eyebrow {
    font-size: clamp(1.08rem, 3.8vw, 1.2rem);
    letter-spacing: 0.1em;
    margin-bottom: 0.85rem;
    min-height: 2.4em !important;
  }

  .pnt-jubilee-hero__lead {
    font-size: clamp(1.15rem, 4.2vw, 1.3rem);
    line-height: 1.55;
    max-width: 100%;
    padding: 0 0.15rem;
    min-height: 7.5em !important;
  }

  .pnt-jubilee-hero__scroll {
    font-size: 0.95rem;
    bottom: 1.25rem;
  }
}
