.threat-lens-card-grid {
  background-color: #0000 !important;
}
.threat-lens-card-grid .eyebrow-1 {
  font-family: var(--bs-font-monospace), monospace !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}
.threat-lens-card-grid .threat-lens-scroll-hint {
  align-items: center !important;
  color: #fff !important;
  display: flex !important;
  font-family: var(--bs-font-monospace), monospace !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  margin-top: 0.75rem;
  opacity: 0.8 !important;
  text-transform: uppercase !important;
}
.threat-lens-card-grid .threat-carousel-btn {
  align-items: center;
  background: #ffffff0d !important;
  border: 1px solid #ef444433 !important;
  border-radius: 50%;
  color: #fff !important;
  cursor: pointer;
  display: flex;
  height: 44px;
  justify-content: center;
  transition: all 0.3s ease;
  width: 44px;
}
.threat-lens-card-grid .threat-carousel-btn:hover {
  background: #ef44441a !important;
  border-color: #ef444499 !important;
  transform: scale(1.05);
}
.threat-lens-card-grid .threat-carousel-dots .threat-carousel-dot {
  background: #fff3 !important;
  border: none !important;
  border-radius: 50%;
  cursor: pointer;
  height: 8px;
  padding: 0 !important;
  transition: all 0.3s ease;
  width: 8px;
}
.threat-lens-card-grid .threat-carousel-dots .threat-carousel-dot.is-active {
  background: #ef4444 !important;
  box-shadow: 0 0 10px #ef444480;
  transform: scale(1.2);
}
.threat-lens-card-grid .threat-carousel-dots .threat-carousel-dot:hover:not(.is-active) {
  background: #fff6 !important;
}
.threat-lens-scroll-container {
  margin-top: 1rem;
  padding-bottom: 3rem !important;
  padding-top: 2rem !important;
  scroll-padding-left: 1.5rem;
}
@media (min-width: 992px) {
  .threat-lens-scroll-container {
    scroll-padding-left: 8rem;
  }
}
.threat-lens-scroll-container::-webkit-scrollbar {
  height: 6px;
}
.threat-lens-scroll-container::-webkit-scrollbar-track {
  background: #ffffff05;
}
.threat-lens-scroll-container::-webkit-scrollbar-thumb {
  background: #ef444426;
  border-radius: 3px;
}
.threat-lens-scroll-container::-webkit-scrollbar-thumb:hover {
  background: #ef44444d;
}
.threat-lens-scroll-container:after {
  content: '';
  display: block;
  flex: 0 0 5rem;
}
@media (max-width: 991.98px) {
  .threat-lens-scroll-container:after {
    flex: 0 0 1.5rem;
  }
}
.threat-card {
  backdrop-filter: none;
  background-color: #0a0a0a66 !important;
  background-image: radial-gradient(circle at top right, #ef444408 0, #0000 60%) !important;
  border: 1px solid #ef444426 !important;
  box-shadow: none !important;
  min-height: 410px;
  position: relative;
  scroll-snap-align: start;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  width: 380px;
}
.threat-card:hover {
  backdrop-filter: blur(8px);
  background: #080808f5 !important;
  border: 2px solid #ef4444 !important;
  box-shadow:
    0 40px 80px #000000e6,
    0 0 25px #ef444433 !important;
  transform: translateY(-15px) !important;
  z-index: 10;
}
.threat-card.is-active {
  backdrop-filter: blur(4px);
  background-color: #0a0a0a99 !important;
}
.threat-card .eyebrow-1 {
  font-family: var(--bs-font-monospace), monospace !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
}
.threat-card__detail-label {
  color: #ef4444b3 !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
}
.threat-card__lesson-container {
  background: #10b9810d !important;
  border: 1px solid #10b9811a !important;
  transition: background 0.3s ease;
}
.threat-card__lesson-title {
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}
.threat-card__lesson-text {
  color: #10b981 !important;
  font-size: 1.25rem !important;
  line-height: 1.6 !important;
}
.threat-card:hover .threat-card__lesson-container {
  background: #10b98114 !important;
}
.threat-card__footer-label {
  font-size: 0.95rem !important;
  opacity: 0.6 !important;
}
.threat-citation-link {
  color: #ef4444 !important;
  font-size: 1.05rem !important;
  font-weight: 600 !important;
  transition: all 0.2s ease;
}
.threat-citation-link:hover {
  color: #fca5a5 !important;
  -webkit-text-decoration: underline !important;
  text-decoration: underline !important;
}
.threat-lens-card-grid.emerald-theme .eyebrow-1 {
  color: #10b981 !important;
}
.threat-lens-card-grid.emerald-theme .threat-carousel-btn {
  border-color: #10b9814d !important;
}
.threat-lens-card-grid.emerald-theme .threat-carousel-btn:hover {
  background: #10b98126 !important;
  border-color: #10b981 !important;
}
.threat-lens-card-grid.emerald-theme .threat-carousel-dots .threat-carousel-dot.is-active {
  background: #10b981 !important;
  box-shadow: 0 0 10px #10b98180;
}
.threat-lens-card-grid.emerald-theme .threat-lens-scroll-container::-webkit-scrollbar-thumb {
  background: #10b98140;
}
.threat-lens-card-grid.emerald-theme .threat-lens-scroll-container::-webkit-scrollbar-thumb:hover {
  background: #10b98173;
}
.threat-lens-card-grid.emerald-theme .threat-card {
  background-image: radial-gradient(circle at top right, #10b9810d 0, #0000 60%) !important;
  border-color: #10b98133 !important;
}
.threat-lens-card-grid.emerald-theme .threat-card:hover {
  border-color: #10b981 !important;
  box-shadow:
    0 40px 80px #000000e6,
    0 0 25px #10b98140 !important;
}
.threat-lens-card-grid.emerald-theme .threat-card .threat-card__index {
  color: #10b981 !important;
}
.threat-lens-card-grid.emerald-theme .threat-card .threat-card__detail-label {
  color: #10b981b3 !important;
}
.threat-lens-card-grid.emerald-theme .threat-card .pattern-badge {
  background: #10b9811f !important;
  border-color: #10b9814d !important;
  color: #10b981 !important;
}
.threat-lens-card-grid.emerald-theme .threat-card .text-danger,
.threat-lens-card-grid.emerald-theme .threat-citation-link {
  color: #10b981 !important;
}
.threat-lens-card-grid.emerald-theme .threat-citation-link:hover {
  color: #6ee7b7 !important;
}
.fact-signal-grid {
  scroll-margin-top: 120px !important;
  transition: background-color 0.4s ease;
}
.fact-signal-grid__card {
  background: #0000;
  border: none;
  box-shadow: none;
  padding: 0;
  position: relative;
  z-index: 1;
}
.fact-signal-grid .fsg-header__eyebrow {
  color: #10b981 !important;
  display: block;
  font-family: var(--bs-font-monospace) !important;
  font-size: 1.05rem !important;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 1rem;
  text-transform: uppercase;
}
.fact-signal-grid .fsg-header__intro {
  color: #cbd5e1 !important;
  font-size: 1.55rem !important;
  line-height: 1.6 !important;
}
.fact-signal-grid.fsg-bg--dark {
  background-color: #080808 !important;
}
.fact-signal-grid.fsg-bg--light {
  background-color: #f8fafc !important;
}
.fact-signal-grid.fsg-bg--light .fsg-header__eyebrow {
  color: #059669 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-header__headline {
  color: #0f172a !important;
}
.fact-signal-grid.fsg-bg--light .fsg-header__intro {
  color: #475569 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card {
  background: #0f172a05 !important;
  border: 1px solid #0f172a0f !important;
  box-shadow: 0 10px 30px #0f172a0a;
}
.fact-signal-grid.fsg-bg--light .fsg-card__metric {
  color: #0f172a !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__metric-prefix {
  color: #475569 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__context {
  color: #334155 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__title {
  color: #0f172a !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__why-it-matters-title {
  color: #059669 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__why-it-matters-text {
  color: #1e293b !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__citation,
.fact-signal-grid.fsg-bg--light .fsg-card__summary {
  color: #475569 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__citation a {
  color: #059669 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card__separator {
  border-top: 1px solid #0f172a14 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card.fsg-card--standard:hover {
  border-color: #0f172a29 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-card.fsg-card--highlight:hover {
  border-color: #10b98159 !important;
  box-shadow:
    0 15px 35px #10b9811a,
    0 10px 30px #0000000d;
}
.fact-signal-grid.fsg-bg--light .fsg-card.fsg-card--warning:hover {
  border-color: #f59e0b59 !important;
  box-shadow:
    0 15px 35px #f59e0b1a,
    0 10px 30px #0000000d;
}
.fact-signal-grid.fsg-bg--light .fsg-card.fsg-card--danger:hover {
  border-color: #ef444459 !important;
  box-shadow:
    0 15px 35px #ef44441a,
    0 10px 30px #0000000d;
}
.fact-signal-grid.fsg-bg--light .fsg-card.fsg-card--future:hover {
  border-color: #8b5cf659 !important;
  box-shadow:
    0 15px 35px #8b5cf61a,
    0 10px 30px #0000000d;
}
.fact-signal-grid.fsg-bg--light .fsg-footnotes {
  border-color: #00000014 !important;
}
.fact-signal-grid.fsg-bg--light .fsg-carousel__btn {
  background: #0f172a0d;
  border: 1px solid #0f172a1a;
  color: #0f172a;
}
.fact-signal-grid.fsg-bg--light .fsg-carousel__btn:hover {
  background: #0596691a;
  border-color: #05966966;
  color: #059669;
}
.fact-signal-grid.fsg-bg--light .fsg-carousel__dot {
  background: #0f172a33;
}
.fact-signal-grid.fsg-bg--light .fsg-carousel__dot:hover {
  background: #0f172a80;
}
.fact-signal-grid.fsg-bg--light .fsg-carousel__dot.is-active {
  background: #059669;
}
.fact-signal-grid.fsg-bg--gradient {
  background: radial-gradient(circle at 50% 50%, #0655451f 0, #080808 100%) !important;
}
.fact-signal-grid.fsg-bg--transparent {
  background-color: #0000 !important;
}
.fact-signal-grid .fsg-card {
  backdrop-filter: blur(12px);
  background: #06554526 !important;
  border: 1px solid #10b98138 !important;
  box-shadow: 0 10px 30px #0003;
  min-height: 100%;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.fact-signal-grid .fsg-card:hover {
  background: #06554538 !important;
  border-color: #10b98173 !important;
  box-shadow:
    0 15px 35px #06554526,
    0 10px 30px #00000040;
  transform: translateY(-4px);
}
.fact-signal-grid .fsg-card__metric-row sup {
  color: #10b981;
  font-family: var(--bs-font-monospace);
  font-size: 1rem;
  margin-left: 0.2rem;
  top: -1.5em;
}
.fact-signal-grid .fsg-card__metric-prefix {
  color: #cbd5e1 !important;
  font-size: 1.75rem !important;
  font-weight: 500;
}
.fact-signal-grid .fsg-card__label {
  font-size: 0.95rem !important;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.fact-signal-grid .fsg-card__context {
  color: #cbd5e1 !important;
  font-size: 1.55rem !important;
  line-height: 1.5 !important;
}
.fact-signal-grid .fsg-card__comparison {
  color: #10b981 !important;
  font-size: 1.55rem !important;
  font-weight: 600;
}
.fact-signal-grid .fsg-card__title {
  color: #fff;
  font-size: 1.55rem !important;
  font-weight: 600;
}
.fact-signal-grid .fsg-card__separator {
  border-top: 1px solid #ffffff0f !important;
  margin-bottom: 1rem !important;
  margin-top: 1.5rem !important;
}
.fact-signal-grid .fsg-card__citation {
  color: #cbd5e1 !important;
  font-family: var(--bs-font-monospace) !important;
  font-size: 0.8rem !important;
  line-height: 1.2 !important;
  opacity: 1 !important;
}
.fact-signal-grid .fsg-card__citation a {
  color: #10b981 !important;
  transition: color 0.2s ease;
}
.fact-signal-grid .fsg-card__citation a:hover {
  color: #34d399 !important;
}
.fact-signal-grid .fsg-card__summary {
  color: #cbd5e1 !important;
  font-size: 1.15rem !important;
  line-height: 1.5 !important;
}
.fact-signal-grid .fsg-card__why-it-matters {
  margin-top: 1.5rem;
}
.fact-signal-grid .fsg-card__why-it-matters-title {
  color: #10b981 !important;
  display: block;
  font-family: var(--bs-font-monospace);
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}
.fact-signal-grid .fsg-card__why-it-matters-text {
  color: #f8fafc !important;
  font-size: 1.15rem !important;
  line-height: 1.6 !important;
}
.fact-signal-grid .fsg-card.fsg-card--standard:hover {
  border-color: #10b98173 !important;
}
.fact-signal-grid .fsg-card.fsg-card--highlight {
  background: #0655452e !important;
  border: 1px solid #10b98140 !important;
  border-left: 3px solid #10b981 !important;
}
.fact-signal-grid .fsg-card.fsg-card--highlight:hover {
  background: #06554540 !important;
  border-color: #10b98180 #10b98180 #10b98180 #10b981 !important;
  box-shadow:
    0 15px 35px #10b9811a,
    0 10px 30px #00000040;
}
.fact-signal-grid .fsg-card.fsg-card--warning {
  background: #f59e0b14 !important;
  border: 1px solid #f59e0b33 !important;
  border-left: 3px solid #f59e0b !important;
}
.fact-signal-grid .fsg-card.fsg-card--warning .fsg-card__comparison,
.fact-signal-grid .fsg-card.fsg-card--warning .fsg-card__metric-suffix {
  color: #f59e0b !important;
}
.fact-signal-grid .fsg-card.fsg-card--warning:hover {
  background: #f59e0b24 !important;
  border-color: #f59e0b73 #f59e0b73 #f59e0b73 #f59e0b !important;
  box-shadow:
    0 15px 35px #f59e0b1a,
    0 10px 30px #00000040;
}
.fact-signal-grid .fsg-card.fsg-card--danger {
  background: #ef444414 !important;
  border: 1px solid #ef444433 !important;
  border-left: 3px solid #ef4444 !important;
}
.fact-signal-grid .fsg-card.fsg-card--danger .fsg-card__comparison,
.fact-signal-grid .fsg-card.fsg-card--danger .fsg-card__metric-suffix {
  color: #ef4444 !important;
}
.fact-signal-grid .fsg-card.fsg-card--danger:hover {
  background: #ef444424 !important;
  border-color: #ef444473 #ef444473 #ef444473 #ef4444 !important;
  box-shadow:
    0 15px 35px #ef44441a,
    0 10px 30px #00000040;
}
.fact-signal-grid .fsg-card.fsg-card--future {
  background: #8b5cf614 !important;
  border: 1px solid #8b5cf633 !important;
  border-left: 3px solid #8b5cf6 !important;
}
.fact-signal-grid .fsg-card.fsg-card--future .fsg-card__comparison,
.fact-signal-grid .fsg-card.fsg-card--future .fsg-card__metric-suffix {
  color: #8b5cf6 !important;
}
.fact-signal-grid .fsg-card.fsg-card--future:hover {
  background: #8b5cf624 !important;
  border-color: #8b5cf673 #8b5cf673 #8b5cf673 #8b5cf6 !important;
  box-shadow:
    0 15px 35px #8b5cf61a,
    0 10px 30px #00000040;
}
.fact-signal-grid .fsg-carousel-container {
  margin-top: 3rem;
  padding: 0 4rem;
  position: relative;
  width: 100%;
}
@media (max-width: 991px) {
  .fact-signal-grid .fsg-carousel-container {
    padding: 0 3rem;
  }
}
@media (max-width: 768px) {
  .fact-signal-grid .fsg-carousel-container {
    padding: 0 1rem;
  }
}
.fact-signal-grid .fsg-carousel {
  overflow: visible;
  perspective: 1200px;
  position: relative;
  width: 100%;
}
.fact-signal-grid .fsg-carousel__track {
  min-height: 480px;
  position: relative;
  transform-style: preserve-3d;
  transition: height 0.4s ease;
  width: 100%;
}
.fact-signal-grid .fsg-carousel__slide {
  left: 50%;
  margin-left: -220px;
  max-width: 440px;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transform: translateZ(-300px) rotateY(0deg) scale(0.7);
  transform-origin: center center;
  transition:
    transform 0.8s cubic-bezier(0.25, 1, 0.5, 1),
    opacity 0.8s ease,
    z-index 0.8s ease;
  width: 100%;
  z-index: 1;
}
@media (max-width: 480px) {
  .fact-signal-grid .fsg-carousel__slide {
    margin-left: -160px;
    max-width: 320px;
  }
}
.fact-signal-grid .fsg-carousel__slide.is-active {
  opacity: 1;
  pointer-events: auto;
  transform: translateZ(0) rotateY(0deg) scale(1);
  z-index: 10;
}
.fact-signal-grid .fsg-carousel__slide.is-prev {
  cursor: pointer;
  opacity: 0.5;
  pointer-events: auto;
  transform: translate3d(-80%, 0, -150px) rotateY(25deg) scale(0.85);
  z-index: 5;
}
.fact-signal-grid .fsg-carousel__slide.is-prev:hover {
  opacity: 0.8;
}
@media (max-width: 991px) {
  .fact-signal-grid .fsg-carousel__slide.is-prev {
    transform: translate3d(-65%, 0, -120px) rotateY(25deg) scale(0.8);
  }
}
@media (max-width: 768px) {
  .fact-signal-grid .fsg-carousel__slide.is-prev {
    opacity: 0.3;
    transform: translate3d(-35%, 0, -100px) rotateY(20deg) scale(0.75);
  }
}
.fact-signal-grid .fsg-carousel__slide.is-next {
  cursor: pointer;
  opacity: 0.5;
  pointer-events: auto;
  transform: translate3d(80%, 0, -150px) rotateY(-25deg) scale(0.85);
  z-index: 5;
}
.fact-signal-grid .fsg-carousel__slide.is-next:hover {
  opacity: 0.8;
}
@media (max-width: 991px) {
  .fact-signal-grid .fsg-carousel__slide.is-next {
    transform: translate3d(65%, 0, -120px) rotateY(-25deg) scale(0.8);
  }
}
@media (max-width: 768px) {
  .fact-signal-grid .fsg-carousel__slide.is-next {
    opacity: 0.3;
    transform: translate3d(35%, 0, -100px) rotateY(-20deg) scale(0.75);
  }
}
.fact-signal-grid .fsg-carousel__slide.is-far-prev {
  opacity: 0;
  pointer-events: none;
  transform: translate3d(-160%, 0, -300px) rotateY(35deg) scale(0.7);
  z-index: 2;
}
.fact-signal-grid .fsg-carousel__slide.is-far-next {
  opacity: 0;
  pointer-events: none;
  transform: translate3d(160%, 0, -300px) rotateY(-35deg) scale(0.7);
  z-index: 2;
}
.fact-signal-grid .fsg-carousel__btn {
  align-items: center;
  backdrop-filter: blur(8px);
  background: #ffffff0d;
  border: 1px solid #ffffff1a;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: flex;
  height: 48px;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 48px;
  z-index: 20;
}
.fact-signal-grid .fsg-carousel__btn:hover {
  background: #10b98126;
  border-color: #10b98166;
  color: #10b981;
}
.fact-signal-grid .fsg-carousel__btn--prev {
  left: 0;
}
.fact-signal-grid .fsg-carousel__btn--next {
  right: 0;
}
@media (max-width: 768px) {
  .fact-signal-grid .fsg-carousel__btn {
    height: 38px;
    width: 38px;
  }
  .fact-signal-grid .fsg-carousel__btn--prev {
    left: -0.5rem;
  }
  .fact-signal-grid .fsg-carousel__btn--next {
    right: -0.5rem;
  }
}
.fact-signal-grid .fsg-carousel__dots {
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  margin-top: 3rem;
  position: relative;
  z-index: 20;
}
.fact-signal-grid .fsg-carousel__dot {
  background: #fff3;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  height: 10px;
  padding: 0;
  transition: all 0.3s ease;
  width: 10px;
}
.fact-signal-grid .fsg-carousel__dot:hover {
  background: #ffffff80;
}
.fact-signal-grid .fsg-carousel__dot.is-active {
  background: #10b981;
  border-radius: 5px;
  width: 24px;
}
