section {
  max-width: 100%;
}

/* Page-level gradient for MCP page */
.pageContainer {
  background: 
    /* Main gradient flow */
    linear-gradient(
      180deg,
      rgba(0, 74, 153, 0.02) 0%,
      rgba(0, 74, 153, 0.04) 10%,
      rgba(0, 74, 153, 0.06) 20%,
      rgba(0, 74, 153, 0.08) 35%,
      rgba(0, 74, 153, 0.1) 50%,
      rgba(0, 74, 153, 0.08) 65%,
      rgba(0, 74, 153, 0.06) 80%,
      rgba(0, 74, 153, 0.04) 90%,
      rgba(0, 74, 153, 0.02) 100%
    ),
    /* Accent gradients */
    radial-gradient(ellipse at 30% 10%, rgba(0, 74, 153, 0.1) 0%, transparent 40%),
    radial-gradient(ellipse at 70% 30%, rgba(0, 122, 204, 0.08) 0%, transparent 40%),
    radial-gradient(ellipse at 20% 60%, rgba(0, 51, 102, 0.06) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 80%, rgba(0, 94, 184, 0.08) 0%, transparent 40%),
    radial-gradient(ellipse at 50% 95%, rgba(0, 74, 153, 0.05) 0%, transparent 60%),
    /* Base color */ #ffffff;
  min-height: 100vh;
  position: relative;
  overflow-x: hidden;
}

[data-theme='dark'] .pageContainer {
  background: 
    /* Main gradient flow for dark theme */
    linear-gradient(
      180deg,
      rgba(16, 25, 28, 0) 0%,
      rgba(0, 74, 153, 0.08) 10%,
      rgba(0, 74, 153, 0.12) 20%,
      rgba(0, 74, 153, 0.15) 35%,
      rgba(0, 74, 153, 0.18) 50%,
      rgba(0, 74, 153, 0.15) 65%,
      rgba(0, 74, 153, 0.12) 80%,
      rgba(0, 74, 153, 0.08) 90%,
      rgba(16, 25, 28, 0) 100%
    ),
    /* Accent gradients for dark theme */
    radial-gradient(ellipse at 30% 10%, rgba(0, 122, 204, 0.15) 0%, transparent 40%),
    radial-gradient(ellipse at 70% 30%, rgba(0, 94, 184, 0.12) 0%, transparent 40%),
    radial-gradient(ellipse at 20% 60%, rgba(0, 51, 102, 0.1) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 80%, rgba(0, 74, 153, 0.12) 0%, transparent 40%),
    radial-gradient(ellipse at 50% 95%, rgba(0, 122, 204, 0.08) 0%, transparent 60%),
    /* Base dark color */ #10191c;
}

/* Base styles */
.mainContent {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2rem 1rem;
  /* Removed background-color - using page-level gradient instead */
  background: transparent;
  gap: 4rem;
  overflow: visible !important;
}

/* Button styles */
.buttons {
  display: flex;
  justify-content: center;
  gap: 1rem;
}

.buttonPrimary {
  /* Override dark mode because we've hardcoded colors on this page */
  background-color: #004a99 !important;
  border-color: #004a99 !important;
  color: #fff !important;
}

.buttonPrimary:hover {
  background-color: var(--ifm-color-primary-dark);
  border-color: var(--ifm-color-primary-dark);
}

.buttonSecondary {
  /* Override dark mode because we've hardcoded colors on this page */
  background-color: #ebedf0 !important;
  border-color: #ebedf0 !important;
  color: #1c1e21 !important;
}

/* Hero section */
.heroSection {
  text-align: center;
  padding: 2rem 0;
}

.heroBanner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 4rem 2rem;
  /* Removed background gradient - using page-level gradient instead */
  background: transparent;
  text-align: center;
  color: #004a99;
}

.heroTitle {
  font-size: 3.5rem;
  margin-bottom: 1rem;
  font-weight: 700;
  color: inherit;
}

.heroSubtitle {
  font-size: 1.5rem;
  margin-bottom: 2rem;
  color: inherit;
  opacity: 0.9;
}

.heroImage {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);
}

.heroSection h2 {
  color: #1c1e21;
  font-size: 2.5rem;
  margin-top: 8rem;
  margin-bottom: 1rem;
}

.heroSection p {
  font-size: 1.25rem;
  color: #666;
}

/* Logo section */
.logoSection {
  padding-top: 4rem;
  width: 100%;
  color: #707070;
}

/* Benefits section */
.benefitsSection {
  padding: 4rem 4rem;
  background-color: #f9f9f9;
  border-radius: 12px;
}

.sectionTitle {
  font-size: 2.5rem;
  text-align: center;
  margin-bottom: 3rem;
  color: #333;
}

.benefitsList {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.benefitItem {
  display: flex;
  align-items: center;
  padding: 2rem;
  border: 1px solid #e0e0e0;
  border-radius: 12px;
  background-color: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}

.benefitItem:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.benefitIcon {
  margin-right: 1.5rem;
  align-self: flex-start;
  margin-top: 7px;
  color: var(--ifm-color-primary);
}

.benefitContent {
  flex: 1;
}

.benefitItem h3 {
  font-size: 1.75rem;
  color: #333;
  margin-bottom: 0.5rem;
}

.benefitItem p {
  font-size: 1.125rem;
  color: #666;
}

/* Action oriented section */
/* Preserve this selector pair: production CSS restructuring changes the live padding otherwise. */
.actionOrientedSection,
.dashboardSection {
  padding: 4rem 4rem;
  text-align: center;
  border-radius: 12px;
  min-width: min(100%, 1440px);
}

.actionOrientedSection h2 {
  font-size: 2.5rem;
  color: #333;
  margin-bottom: 2rem;
}

.actionOrientedSection p {
  font-size: 1.125rem;
  color: #666;
  margin-bottom: 2rem;
}

/* Security assessment steps */

.screenshotPlaceholder {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1rem auto;
  width: 100%;
}

.screenshotPlaceholder img {
  max-width: 100%;
  object-fit: contain;
  display: block;
}

.actionOrientedSection img {
  border-radius: 12px;
}

/* Call to action section */
.callToActionSection {
  text-align: center;
  padding-bottom: 8rem;
  /* Removed background-color - using page-level gradient instead */
  background: transparent;
}

.callToActionSection h2 {
  font-size: 2.5rem;
  color: #333;
  margin-bottom: 2rem;
}

.callToActionSection .buttons {
  display: flex;
  justify-content: center;
  gap: 1rem;
}

/* Dark mode styles */
[data-theme='dark'] {
  .heroBanner {
    /* Removed background gradient - using page-level gradient instead */
    background: transparent;
    color: var(--ifm-color-primary-lighter);
  }

  .buttonSecondary {
    background-color: transparent !important;
    border: 2px solid var(--ifm-color-white) !important;
    color: var(--ifm-color-white) !important;
  }

  .buttonSecondary:hover {
    background-color: var(--ifm-color-white) !important;
    color: var(--ifm-color-primary-darker) !important;
  }

  .heroImage {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  }

  .logoSection {
    /* Removed background gradient - using page-level gradient instead */
    background: rgba(255, 255, 255, 0.03);
    border-radius: 12px;
    margin: 2rem auto;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
    color: var(--ifm-color-emphasis-900);
  }

  .mainContent {
    /* Removed background-color - using page-level gradient instead */
    background: transparent;
  }

  .benefitItem {
    background-color: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  }

  .benefitItem:hover {
    background-color: rgba(255, 255, 255, 0.05);
    border-color: var(--ifm-color-primary);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
  }

  .benefitItem h3,
  .sectionTitle,
  .actionOrientedSection h2 {
    color: var(--ifm-color-primary-lighter);
  }

  .benefitItem p,
  .actionOrientedSection p {
    color: var(--ifm-color-emphasis-900);
  }

  .benefitIcon {
    color: var(--ifm-color-primary-lighter);
  }

  .actionOrientedSection img {
    border: 1px solid var(--ifm-color-emphasis-300);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
  }

  .callToActionSection {
    /* Removed background gradient - using page-level gradient instead */
    background: transparent;
    backdrop-filter: blur(10px);
  }

  .callToActionSection h2 {
    color: var(--ifm-color-primary-lightest);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  }

  .callToActionSection .buttonSecondary {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(5px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  }

  .callToActionSection .buttonSecondary:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: var(--ifm-color-primary-lighter) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
    transform: translateY(-2px);
  }

  .benefitsSection {
    background-color: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  }

  .sectionTitle {
    color: var(--ifm-color-primary-lightest);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  }

  .benefitItem {
    background-color: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(10px);
  }

  .benefitItem:hover {
    background-color: rgba(255, 255, 255, 0.05);
    border-color: var(--ifm-color-primary-lighter);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
    transform: translateY(-5px);
  }

  .benefitItem h3 {
    color: var(--ifm-color-primary-lightest);
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  }

  .benefitItem p {
    color: var(--ifm-color-emphasis-800);
  }

  .benefitIcon {
    color: var(--ifm-color-primary-lightest);
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
  }

  .screenshotPlaceholder {
    border: 1px solid rgba(255, 255, 255, 0.05);
  }

  .screenshotPlaceholder img {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  }
}

/* Mobile styles */
@media (max-width: 768px) {
  .mainContent {
    padding: 0;
  }

  .heroBanner {
    padding: 2rem 0;
  }

  .heroSubtitle {
    font-size: 1.25rem;
  }

  .actionOrientedSection {
    padding: 0;
  }

  .callToActionSection {
    padding: 2rem 0 8rem 0;
  }

  .benefitsSection {
    padding: 0;
  }

  .benefitItem {
    padding: 1rem;
  }
}

/* Carousel-specific overflow - only apply to carousel containers */
.actionOrientedSection {
  padding: 4rem 0;
}

/* Make sure the swiper container shows overflow content */
:global(.swiper-container) {
  overflow: visible !important;
}

:global(.swiper-slide-active) {
  opacity: 1;
  transform: scale(1);
  z-index: 2;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
}

/* Styles specifically for swiper navigation and pagination */
:global(.swiper-button-next),
:global(.swiper-button-prev) {
  color: var(--ifm-color-primary);
  background: rgba(255, 255, 255, 0.8);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Legacy v11 font icon styles - kept for backwards compatibility */
:global(.swiper-button-next:after),
:global(.swiper-button-prev:after) {
  font-size: 18px;
  font-weight: bold;
}

/* Swiper v12+ SVG icon sizing - constrain to ~45% of button */
:global(.swiper-button-next) svg,
:global(.swiper-button-prev) svg {
  width: 45%;
  height: 45%;
}

:global(.swiper-pagination-bullet-active) {
  background-color: var(--ifm-color-primary);
}

[data-theme='dark'] :global(.swiper-button-next),
[data-theme='dark'] :global(.swiper-button-prev) {
  background: rgba(30, 30, 30, 0.8);
  color: var(--ifm-color-primary-lighter);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}
