/* Incident Bundle layout. Shared option-card styles live in bundle-options.css. */
.page-incident-bundle .tm-hero {
  background: linear-gradient(135deg, #f0f7ff 0%, #fff7eb 74%, #ffffff 100%);
  overflow: hidden;
}

.page-incident-bundle .tm-hero-copy {
  max-width: 560px;
}

.page-incident-bundle .ib-skip-link:focus {
  position: fixed;
  z-index: 200;
  top: 12px;
  left: 12px;
  width: auto;
  height: auto;
  padding: 12px 16px;
  clip: auto;
  clip-path: none;
  overflow: visible;
  background: #ffffff;
  border-radius: 8px;
}

.page-incident-bundle .tm-hero-media-card {
  width: 100%;
}

.page-incident-bundle .ib-hero-media {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.06);
}

.page-incident-bundle .tm-subnav-inner {
  width: max-content;
  max-width: calc(100% - 32px);
  justify-content: center;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-padding-inline: 16px;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.page-incident-bundle .tm-subnav-inner::-webkit-scrollbar {
  display: none;
}

.page-incident-bundle :is(.cb-module-grid, .cb-option-grid, .cb-platform-grid, .cb-persona-grid) {
  display: grid;
  gap: var(--spacing-4);
}

.page-incident-bundle :is(.cb-module-card, .cb-option-card, .cb-platform-card, .cb-persona-card) {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: var(--radius-lg);
  padding: var(--spacing-5);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.page-incident-bundle .cb-module-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.page-incident-bundle .cb-module-media {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  margin: -4px -4px var(--spacing-4);
  border: 1px solid #eef2f7;
  background: #f8fafc;
  aspect-ratio: 3 / 2;
}

.page-incident-bundle .cb-module-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.page-incident-bundle .cb-module-kicker {
  margin: 0 0 6px;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #156cbd;
}

.page-incident-bundle :is(.cb-module-title, .cb-option-title, .cb-platform-title, .cb-persona-title) {
  margin: 0 0 8px;
  color: var(--color-text-main);
  font-size: 1.04rem;
  line-height: 1.3;
}

.page-incident-bundle :is(.cb-module-body, .cb-option-body, .cb-platform-body, .cb-persona-body) {
  margin: 0;
  font-size: 0.93rem;
  color: var(--color-text-body);
}

.page-incident-bundle .cb-module-list {
  display: grid;
  gap: 8px;
  margin: 16px 0 18px;
  padding: 0;
  list-style: none;
}

.page-incident-bundle .cb-module-list li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.88rem;
  color: var(--color-text-body);
}

.page-incident-bundle .cb-module-check {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: #16a34a;
  margin-top: 2px;
}

.page-incident-bundle .cb-module-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  color: #156cbd;
  font-size: 0.9rem;
  font-weight: 600;
}

.page-incident-bundle .cb-module-link :is(span[data-lucide], svg) {
  width: 16px;
  height: 16px;
}

.page-incident-bundle :is(.section-cb-modules, .section-tm-process, .section-tm-team, .section-tm-faq) {
  background: var(--color-bg-alt);
}

.page-incident-bundle :is(.section-cb-options, .section-cb-platform, .section-cb-security, .section-cta) {
  background: #ffffff;
}

.page-incident-bundle :is(.tm-process-card, .cb-persona-card, .tm-faq-list) {
  border-color: transparent;
}

.page-incident-bundle .cb-platform-card {
  border-color: #bcddfd;
}

.page-incident-bundle .cb-option-card {
  position: relative;
  overflow: hidden;
}

.page-incident-bundle :is(.cb-option-icon, .cb-platform-icon, .cb-persona-icon) {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: var(--spacing-3);
  background: rgba(31, 140, 249, 0.1);
  color: var(--color-link);
}

.page-incident-bundle :is(.cb-option-icon, .cb-platform-icon, .cb-persona-icon) :is(span[data-lucide], svg) {
  width: 22px;
  height: 22px;
}

.page-incident-bundle :is(.tm-process-icon-wrapper, .cb-persona-icon) {
  background: rgba(250, 204, 21, 0.16);
  color: var(--color-accent-dark);
}

.page-incident-bundle .tm-process-icon {
  color: var(--color-accent-dark);
}

.page-incident-bundle .cb-security-layout {
  display: grid;
  gap: var(--spacing-5);
  align-items: start;
}

.page-incident-bundle .cb-security-panel {
  border-radius: var(--radius-lg);
  border: 1px solid #bfdbfe;
  background: linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);
  padding: var(--spacing-5);
}

.page-incident-bundle .cb-security-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-incident-bundle .cb-security-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 0.93rem;
}

.page-incident-bundle .cb-security-list :is(span[data-lucide], svg) {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: #16a34a;
  margin-top: 2px;
}

.page-incident-bundle a:focus-visible,
.page-incident-bundle button:focus-visible {
  outline: 2px solid var(--color-link);
  outline-offset: 4px;
}

@media (min-width: 768px) {
  .page-incident-bundle :is(.cb-module-grid, .cb-option-grid, .cb-platform-grid, .cb-persona-grid) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .page-incident-bundle .cb-security-layout {
    grid-template-columns: 0.95fr 1.05fr;
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .page-incident-bundle .tm-hero-inner {
    flex-direction: column;
    align-items: stretch;
  }

  .page-incident-bundle .tm-hero-media-card {
    max-width: 520px;
    align-self: center;
  }
}

@media (max-width: 767.98px) {
  .page-incident-bundle .tm-subnav-inner {
    width: 100%;
    max-width: 100%;
    justify-content: flex-start;
  }
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .page-incident-bundle :is(.cb-module-card, .cb-option-card, .cb-platform-card, .cb-persona-card):hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.07);
    border-color: #dbeafe;
  }

  .page-incident-bundle .cb-persona-card:hover {
    border-color: transparent;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:has(.page-incident-bundle) {
    scroll-behavior: auto !important;
  }

  .page-incident-bundle *,
  .page-incident-bundle *::before,
  .page-incident-bundle *::after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
