/* Visitor theme: black (default) or white. Toggle sets html[data-theme]. */

.aws-theme-toggle {
  height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--aws-border-light);
  background: transparent;
  color: rgba(255, 255, 255, 0.85);
  font: 600 13px/1 var(--aws-font);
  cursor: pointer;
}
.aws-theme-toggle:hover { color: #fff; border-color: rgba(255, 255, 255, 0.35); }

html[data-theme="light"] {
  --aws-bg: #f5f5f7;
  --aws-surface: #ffffff;
  --aws-surface-2: #f3f4f6;
  --aws-border: rgba(0, 0, 0, 0.08);
  --aws-border-light: rgba(0, 0, 0, 0.14);
  --aws-text: #3f3f46;
  --aws-text-bright: #18181b;
  --aws-white: #18181b;
  --aws-title-grad: linear-gradient(100deg, #1e3a8a 0%, #0369a1 34%, #0f766e 68%, #c2410c 100%);
  color-scheme: light;
}

html[data-theme="light"] body.aws-site {
  background: #f5f5f7;
  color: #3f3f46;
}

html[data-theme="light"] .aws-theme-toggle {
  color: #18181b;
  border-color: rgba(0, 0, 0, 0.16);
  background: #fff;
}
html[data-theme="light"] .aws-theme-toggle:hover { color: #000; }

html[data-theme="light"] .aws-header.is-scrolled {
  background: rgba(245, 245, 247, 0.9);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.06);
}

html[data-theme="light"] .aws-nav a,
html[data-theme="light"] .aws-header__phone,
html[data-theme="light"] .aws-header__phone a {
  color: #3f3f46;
}
html[data-theme="light"] .aws-nav a:hover,
html[data-theme="light"] .aws-nav a.is-active {
  color: #18181b;
  background: rgba(0, 0, 0, 0.05);
}

html[data-theme="light"] .aws-hero-dark__title,
html[data-theme="light"] .aws-page-hero h1,
html[data-theme="light"] .aws-prod-hero h1,
html[data-theme="light"] .aws-section-title,
html[data-theme="light"] .aws-insight-hero h1,
html[data-theme="light"] .aws-ai-spotlight__title {
  background-image: var(--aws-title-grad);
  background-size: 100% 100%;
  background-position: 0 50%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #1d4ed8;
}
html[data-theme="light"] .aws-hero-dark__title em {
  font-style: italic;
  background-image: none;
  -webkit-text-fill-color: inherit;
  color: inherit;
}
html[data-theme="light"] .aws-hero-dark__desc,
html[data-theme="light"] .aws-hero-dark__meta li,
html[data-theme="light"] .aws-hero-dark__eyebrow,
html[data-theme="light"] .aws-page-hero__lead {
  color: #424245;
  -webkit-text-fill-color: #424245;
  background: none;
}

html[data-theme="light"] .aws-footer {
  background: #fff;
  color: #3f3f46;
}
html[data-theme="light"] .aws-footer a { color: #18181b; }

/* Product and home sections — text and surfaces stay paired */
html[data-theme="light"] body.aws-site .aws-header,
html[data-theme="light"] body.aws-prod-page .aws-header,
html[data-theme="light"] body.aws-prod-page .aws-header:not(.is-scrolled),
html[data-theme="light"] .aws-home .aws-header:not(.is-scrolled),
html[data-theme="light"] .aws-header.is-scrolled {
  background: rgba(255, 255, 255, 0.94);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
}
html[data-theme="light"] body.aws-prod-page .aws-nav a,
html[data-theme="light"] .aws-home .aws-header:not(.is-scrolled) .aws-nav a,
html[data-theme="light"] .aws-home .aws-header:not(.is-scrolled) .aws-header__phone span,
html[data-theme="light"] .aws-header .aws-nav a,
html[data-theme="light"] .aws-header__phone,
html[data-theme="light"] .aws-header__phone span,
html[data-theme="light"] .aws-header__phone a {
  color: #1d1d1f;
}
html[data-theme="light"] .aws-prod-hero,
html[data-theme="light"] .aws-prod-section,
html[data-theme="light"] .aws-prod-trust {
  background: #f5f5f7;
  color: #3f3f46;
}
html[data-theme="light"] .aws-prod-hero::before { opacity: 0.45; }
html[data-theme="light"] .aws-prod-section--alt {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.06);
  color: #3f3f46;
}
html[data-theme="light"] .aws-prod-breadcrumb,
html[data-theme="light"] .aws-prod-breadcrumb a {
  color: #6e6e73;
}
html[data-theme="light"] .aws-prod-hero__badge {
  color: #1d1d1f;
  background: #fff;
  border-color: rgba(0, 0, 0, 0.1);
}
html[data-theme="light"] .aws-prod-section h2,
html[data-theme="light"] .aws-prod-block__copy h3,
html[data-theme="light"] .aws-prod-trust h3 {
  color: #1d1d1f;
  background: none;
  -webkit-text-fill-color: #1d1d1f;
}
html[data-theme="light"] .aws-prod-hero__lead,
html[data-theme="light"] .aws-prod-section__lead,
html[data-theme="light"] .aws-prod-block__copy p,
html[data-theme="light"] .aws-prod-list li {
  color: #424245;
}
html[data-theme="light"] .aws-prod-hero__usp {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .aws-prod-hero__usp strong { color: #1d1d1f; }
html[data-theme="light"] .aws-prod-hero__usp p { color: #424245; }
html[data-theme="light"] .aws-btn--ghost {
  background: #fff;
  color: #1d1d1f !important;
  border-color: rgba(0, 0, 0, 0.12);
}
html[data-theme="light"] .aws-prod-card {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.08);
  color: #424245;
}
html[data-theme="light"] .aws-prod-card strong { color: #1d1d1f; }
html[data-theme="light"] .aws-prod-card p { color: #424245; }
html[data-theme="light"] .aws-prod-pill {
  color: #1d1d1f;
  background: #f5f5f7;
  border-color: rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .aws-prod-faq details {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .aws-prod-faq summary {
  color: #1d1d1f;
}
html[data-theme="light"] .aws-prod-faq summary::after { color: #0071e3; }
html[data-theme="light"] .aws-prod-faq details p { color: #424245; }
html[data-theme="light"] .aws-section--dark,
html[data-theme="light"] .aws-offer,
html[data-theme="light"] .aws-contact-home {
  background: #ffffff;
  color: #3f3f46;
}
html[data-theme="light"] .aws-section-title--light,
html[data-theme="light"] .aws-section-lead--light {
  color: #1d1d1f;
}
html[data-theme="light"] .aws-section-lead--light {
  -webkit-text-fill-color: #424245;
  background: none;
}
html[data-theme="light"] .aws-footer h4,
html[data-theme="light"] .aws-footer__brand p,
html[data-theme="light"] .aws-footer ul a,
html[data-theme="light"] .aws-footer__bottom,
html[data-theme="light"] .aws-footer__bottom a {
  color: #3f3f46;
}
html[data-theme="light"] .aws-footer h4 { color: #1d1d1f; }
html[data-theme="light"] .aws-footer__social a {
  color: #1d1d1f;
  border-color: rgba(0, 0, 0, 0.12);
  background: #f5f5f7;
}
html[data-theme="light"] .aws-nav__menu {
  background: #fff;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .aws-nav__menu a { color: #1d1d1f; }

html[data-theme="light"] .aws-hero-dark { background: #f5f5f7; }
html[data-theme="light"] .aws-hero-dark__bg,
html[data-theme="light"] .aws-hero-dark__orbs,
html[data-theme="light"] .aws-hero-dark__grid-floor,
html[data-theme="light"] .aws-hero-dark__overlay { opacity: 0.08; }

html[data-theme="light"] .aws-offer-panel,
html[data-theme="light"] .aws-service-tile,
html[data-theme="light"] .aws-product-strip__item,
html[data-theme="light"] .aws-page-card {
  background: #fff;
  border-color: rgba(0, 0, 0, 0.08);
  color: #1d1d1f;
}
html[data-theme="light"] .aws-offer-panel__head h3,
html[data-theme="light"] .aws-product-strip__item strong,
html[data-theme="light"] .aws-page-card strong,
html[data-theme="light"] .aws-page-split__copy h2 {
  color: #1d1d1f;
  -webkit-text-fill-color: #1d1d1f;
}
html[data-theme="light"] .aws-offer-panel__head p,
html[data-theme="light"] .aws-service-tile,
html[data-theme="light"] .aws-service-tile span,
html[data-theme="light"] .aws-product-strip__item small,
html[data-theme="light"] .aws-page-card p,
html[data-theme="light"] .aws-page-split__copy p,
html[data-theme="light"] .aws-page-list li,
html[data-theme="light"] .aws-page-breadcrumb,
html[data-theme="light"] .aws-page-breadcrumb a {
  color: #424245;
}
html[data-theme="light"] .aws-product-strip__badge--live {
  background: rgba(5, 150, 105, 0.12);
  color: #047857;
}
html[data-theme="light"] .aws-offer-panel__link,
html[data-theme="light"] .aws-page-card a.aws-page-card__link { color: #0369a1; }
html[data-theme="light"] .aws-offer-panel__head { border-bottom-color: rgba(0, 0, 0, 0.08); }

html[data-theme="light"] .aws-drawer__panel {
  background: #fff;
  color: #18181b;
}
html[data-theme="light"] .aws-drawer__nav a { color: #18181b; }

/* Colored buttons keep white type. --aws-white is remapped for body copy. */
html[data-theme="light"] .aws-btn--primary,
html[data-theme="light"] .aws-btn--primary:hover,
html[data-theme="light"] .aws-btn--dark,
html[data-theme="light"] .aws-btn--dark:hover,
html[data-theme="light"] .aws-btn--demo,
html[data-theme="light"] .aws-header__demo,
html[data-theme="light"] .aws-portfolio-tab.is-active {
  color: #fff !important;
}

html[data-theme="light"] .aws-hero-dark__meta strong,
html[data-theme="light"] .aws-product-slider__caption,
html[data-theme="light"] .aws-partners-marquee__item span,
html[data-theme="light"] .aws-ai-spotlight__lead,
html[data-theme="light"] .aws-ai-product-card__head h3,
html[data-theme="light"] .aws-news-strip__body strong,
html[data-theme="light"] .aws-news-strip__body small,
html[data-theme="light"] .aws-contact-home__card a,
html[data-theme="light"] .aws-contact-home__card span,
html[data-theme="light"] .aws-contact-home__card strong {
  color: #1d1d1f;
}
html[data-theme="light"] .aws-product-slider__btn {
  color: #1d1d1f;
  background: #fff;
  border-color: rgba(0, 0, 0, 0.12);
}
html[data-theme="light"] .aws-hero-dark__explore {
  color: #1d1d1f;
  background: #fff;
  border-color: rgba(0, 0, 0, 0.1);
}
html[data-theme="light"] .aws-hero-dark__explore:hover { color: #1d1d1f; }

html[data-theme="light"] .aws-utility-card,
html[data-theme="light"] .aws-spotlight-card,
html[data-theme="light"] .aws-testimonial,
html[data-theme="light"] .aws-news-strip__item,
html[data-theme="light"] .aws-contact-home__card,
html[data-theme="light"] .aws-ai-product-card,
html[data-theme="light"] .aws-mv-card,
html[data-theme="light"] .aws-page-cta__inner,
html[data-theme="light"] .aws-contact-office,
html[data-theme="light"] .aws-contact-quick__item,
html[data-theme="light"] .aws-contact-form-wrap,
html[data-theme="light"] .aws-client-card,
html[data-theme="light"] .aws-portfolio-item,
html[data-theme="light"] .aws-insight-faq,
html[data-theme="light"] .aws-pipe3d__step {
  background: #fff;
  border-color: rgba(0, 0, 0, 0.08);
  color: #1d1d1f;
}
html[data-theme="light"] .aws-spotlight-cards {
  background: #f5f5f7;
}
html[data-theme="light"] .aws-utility-card h4,
html[data-theme="light"] .aws-spotlight-card h3,
html[data-theme="light"] .aws-testimonial__author strong,
html[data-theme="light"] .aws-mv-card h2,
html[data-theme="light"] .aws-page-cta__inner h2,
html[data-theme="light"] .aws-contact-office h3,
html[data-theme="light"] .aws-contact-form-wrap h2,
html[data-theme="light"] .aws-client-card strong,
html[data-theme="light"] .aws-portfolio-item__body strong,
html[data-theme="light"] .aws-aeo h2,
html[data-theme="light"] .aws-insight-prose h2,
html[data-theme="light"] .aws-insight-prose h3,
html[data-theme="light"] .aws-insight-faq h3,
html[data-theme="light"] .aws-pipe3d__step strong,
html[data-theme="light"] .aws-osm-flow li strong,
html[data-theme="light"] .aws-insight-table th {
  color: #1d1d1f;
  -webkit-text-fill-color: #1d1d1f;
  background-image: none;
}
html[data-theme="light"] .aws-utility-card p,
html[data-theme="light"] .aws-spotlight-card p,
html[data-theme="light"] .aws-ai-product-card p,
html[data-theme="light"] .aws-testimonial blockquote,
html[data-theme="light"] .aws-testimonial__author span,
html[data-theme="light"] .aws-mv-card p,
html[data-theme="light"] .aws-mv-card ul li,
html[data-theme="light"] .aws-page-cta__inner p,
html[data-theme="light"] .aws-contact-office p,
html[data-theme="light"] .aws-contact-office a,
html[data-theme="light"] .aws-contact-quick__item strong,
html[data-theme="light"] .aws-contact-form-wrap > p,
html[data-theme="light"] body.aws-inner-page .aws-demo-field label,
html[data-theme="light"] .aws-client-card small,
html[data-theme="light"] .aws-clients-also li,
html[data-theme="light"] .aws-aeo__answer,
html[data-theme="light"] .aws-aeo__detail,
html[data-theme="light"] .aws-insight-prose,
html[data-theme="light"] .aws-insight-prose figcaption,
html[data-theme="light"] .aws-insight-page .aws-page-breadcrumb,
html[data-theme="light"] .aws-insight-page .aws-page-breadcrumb a,
html[data-theme="light"] .aws-pipe3d__step span,
html[data-theme="light"] .aws-insight-table th,
html[data-theme="light"] .aws-insight-table td,
html[data-theme="light"] .aws-osm-flow li,
html[data-theme="light"] .aws-osm-flow li span,
html[data-theme="light"] .aws-portfolio-tab,
html[data-theme="light"] .aws-contact-map__cap {
  color: #424245;
}
html[data-theme="light"] .aws-insight-prose a,
html[data-theme="light"] .aws-page-card a.aws-page-card__link,
html[data-theme="light"] .aws-spotlight-card a,
html[data-theme="light"] .aws-section-lead a,
html[data-theme="light"] .aws-product-slider__caption a {
  color: #0369a1;
}
html[data-theme="light"] .aws-spotlight-card__label { color: #1d4ed8; }
html[data-theme="light"] .aws-spotlight-card--book .aws-spotlight-card__label,
html[data-theme="light"] .aws-spotlight-card--book a { color: #b45309; }
html[data-theme="light"] .aws-insight-table th,
html[data-theme="light"] .aws-insight-table td {
  border-color: rgba(0, 0, 0, 0.08);
}
html[data-theme="light"] .aws-insight-table th { background: #f5f5f7; }
html[data-theme="light"] .aws-insight-rail__card {
  background: #fff;
  border-color: rgba(0, 0, 0, 0.08);
  color: #424245;
}
html[data-theme="light"] .aws-insight-rail__note { color: #6e6e73; }
html[data-theme="light"] body.aws-prod-page .aws-prod-hero h1 .aws-prod-hero__title-line {
  background: none;
  background-image: none;
  -webkit-text-fill-color: #3f3f46;
  color: #3f3f46;
  animation: none;
}
html[data-theme="light"] body.aws-prod-page .aws-prod-related a,
html[data-theme="light"] body.aws-prod-page .aws-prod-hero__usp a,
html[data-theme="light"] body.aws-prod-page .aws-osm-prose a {
  color: #0f766e;
}
html[data-theme="light"] .aws-product-strip__badge--soon {
  background: rgba(109, 40, 217, 0.12);
  color: #6d28d9;
}
html[data-theme="light"] .aws-product-strip__badge--new {
  background: rgba(180, 83, 9, 0.12);
  color: #b45309;
}

/* Body copy on light surfaces. Beats later page CSS that still sets near-white type. */
html[data-theme="light"] body.aws-prod-page .aws-prod-hero :is(p, li, small),
html[data-theme="light"] body.aws-prod-page .aws-prod-section :is(h2, h3, h4, p, li, small, strong),
html[data-theme="light"] body.aws-prod-page .aws-osm-prose :is(h2, h3, p, li),
html[data-theme="light"] body.aws-prod-page .aws-aeo :is(h2, p, li),
html[data-theme="light"] body.aws-prod-page .aws-aeo__answer,
html[data-theme="light"] body.aws-prod-page .aws-aeo__detail,
html[data-theme="light"] body.aws-inner-page main :is(h2, h3, h4, p, li, small) {
  color: #3f3f46;
  -webkit-text-fill-color: #3f3f46;
}
html[data-theme="light"] body.aws-prod-page .aws-prod-section :is(h2, h3),
html[data-theme="light"] body.aws-prod-page .aws-osm-prose :is(h2, h3),
html[data-theme="light"] body.aws-inner-page main :is(h2, h3) {
  color: #1d1d1f;
  -webkit-text-fill-color: #1d1d1f;
}
html[data-theme="light"] body.aws-prod-page .aws-prod-hero h1,
html[data-theme="light"] body.aws-inner-page .aws-page-hero h1,
html[data-theme="light"] body.aws-inner-page .aws-section-title {
  background-image: var(--aws-title-grad);
  background-size: 100% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #1d4ed8;
}
html[data-theme="light"] body.aws-prod-page .aws-prod-hero__usp strong,
html[data-theme="light"] body.aws-prod-page .aws-prod-card strong,
html[data-theme="light"] body.aws-prod-page .aws-osm-prose a,
html[data-theme="light"] body.aws-prod-page .aws-prod-related a {
  -webkit-text-fill-color: currentColor;
}
html[data-theme="light"] .aws-d2c-journey__step {
  color: #1d1d1f;
  background: #fff;
  border-color: rgba(0, 0, 0, 0.1);
}
