/* Advanze launch polish layer
   Purpose: preserve the existing navigation/footer/carousel while elevating page surfaces, sections, cards and content rhythm. */
:root {
  --adv-ink: #0f172a;
  --adv-muted: #475569;
  --adv-line-soft: rgba(15, 23, 42, 0.08);
  --adv-blue-900: #071a33;
  --adv-blue-800: #0a2748;
  --adv-cyan: #00b0f0;
  --adv-teal: #40e0d0;
  --adv-green: #10b981;
  --adv-purple: #9333ea;
  --adv-orange: #f97316;
  --adv-gold: #fbbf24;
  --adv-red: #dc2626;
  --adv-surface: #f7fbff;
  --adv-surface-blue: #eef7ff;
  --adv-surface-cyan: #eefdfd;
  --adv-surface-green: #f0fdf6;
  --adv-surface-purple: #f7f2ff;
  --adv-surface-warm: #fff7ed;
  --adv-card-shadow: 0 18px 50px rgba(2, 30, 58, 0.10);
}

html { scroll-behavior: smooth; }
body { background: var(--adv-surface); color: var(--adv-ink); }

/* Preserve carousel and header. Improve the rest of the visual rhythm. */
main { background: var(--adv-surface); }
main > .adv-section,
main > section.adv-section {
  position: relative;
  overflow: hidden;
  padding-top: clamp(64px, 7vw, 108px);
  padding-bottom: clamp(64px, 7vw, 108px);
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border-top: 1px solid rgba(2, 40, 74, 0.06);
}
main > .adv-section:nth-of-type(2n) { background: linear-gradient(180deg, #eff8ff 0%, #ffffff 100%); }
main > .adv-section:nth-of-type(3n) { background: linear-gradient(180deg, #f0fdfa 0%, #f8fbff 100%); }
main > .adv-section:nth-of-type(4n) { background: linear-gradient(180deg, #f8f3ff 0%, #ffffff 100%); }
main > .adv-section:nth-of-type(5n) { background: linear-gradient(180deg, #fff7ed 0%, #ffffff 100%); }

main > .adv-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 10% 10%, rgba(0,176,240,0.12), transparent 34%),
    radial-gradient(circle at 90% 20%, rgba(64,224,208,0.10), transparent 28%);
  opacity: 0.7;
}
main > .adv-section > .adv-container { position: relative; z-index: 1; }

/* Premium page hero for all non-carousel pages. */
.adv-hero:not(.custom-hero-slide) {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 26%, rgba(64,224,208,.22), transparent 24%),
    radial-gradient(circle at 20% 5%, rgba(2,116,194,.36), transparent 30%),
    linear-gradient(135deg, #071a33 0%, #0c2c53 52%, #082033 100%) !important;
  color: white !important;
  padding: clamp(84px, 8vw, 124px) 20px !important;
}
.adv-hero:not(.custom-hero-slide)::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
  opacity: .38;
}
.adv-hero:not(.custom-hero-slide)::after {
  content: "";
  position: absolute;
  right: 6%;
  top: 50%;
  width: min(42vw, 520px);
  height: min(42vw, 520px);
  transform: translateY(-50%);
  border-radius: 50%;
  border: 1px solid rgba(64,224,208,.28);
  box-shadow: inset 0 0 50px rgba(0,176,240,.16), 0 0 80px rgba(64,224,208,.12);
  background:
    radial-gradient(circle, rgba(64,224,208,.12), transparent 64%),
    conic-gradient(from 180deg, transparent, rgba(0,176,240,.22), transparent, rgba(147,51,234,.22), transparent);
  opacity: .7;
}
.adv-hero:not(.custom-hero-slide) .adv-container { position: relative; z-index: 1; }
.adv-hero h1,
.adv-hero h2,
.adv-hero p { color: inherit; }
.adv-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--adv-teal) !important;
}

/* Generic polished components used by rewritten pages. */
.launch-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 24%, rgba(64,224,208,.22), transparent 24%),
    radial-gradient(circle at 18% 0%, rgba(2,116,194,.40), transparent 34%),
    linear-gradient(135deg, #071a33 0%, #0c2c53 56%, #082033 100%);
  color: white;
  padding: clamp(86px, 8vw, 126px) 0;
}
.launch-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 80px 80px;
  opacity: .26;
}
.launch-hero .adv-container { position: relative; z-index: 1; }
.launch-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.launch-hero h1 {
  margin: 14px 0 18px;
  font-size: clamp(2.6rem, 6vw, 5.3rem);
  line-height: .96;
  letter-spacing: -0.055em;
  color: #fff;
}
.launch-hero p {
  font-size: clamp(1.05rem, 1.4vw, 1.26rem);
  line-height: 1.65;
  color: rgba(255,255,255,.86);
  max-width: 760px;
}
.launch-hero-metrics,
.launch-metric-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 28px;
}
.launch-metric {
  padding: 18px;
  border: 1px solid rgba(64,224,208,.24);
  border-radius: 18px;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(12px);
}
.launch-metric strong { display: block; color: var(--adv-teal); font-size: 1.55rem; line-height: 1.1; }
.launch-metric span { display: block; color: rgba(255,255,255,.78); font-size: .9rem; margin-top: 5px; }
.launch-visual-card {
  padding: 22px;
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.05));
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 28px 80px rgba(0,0,0,.24);
}
.launch-visual-card img { width: 100%; height: auto; display: block; border-radius: 20px; box-shadow: 0 18px 50px rgba(0,0,0,.25); }

.launch-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .86fr);
  gap: clamp(32px, 5vw, 72px);
  align-items: center;
}
.launch-eyebrow {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 7px 12px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #006fae;
  background: rgba(0,176,240,.12);
  border: 1px solid rgba(0,176,240,.18);
}
.launch-section-title { max-width: 860px; margin: 0 auto 36px; text-align: center; }
.launch-section-title h2 { margin: 14px 0 12px; font-size: clamp(2rem, 3.6vw, 3.6rem); letter-spacing: -0.04em; }
.launch-section-title p { color: var(--adv-muted); font-size: 1.1rem; line-height: 1.65; }
.launch-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.launch-card-grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.launch-card-grid.four { grid-template-columns: repeat(4, minmax(0,1fr)); }
.launch-card,
.adv-card,
.adv-feature-card {
  border-radius: 24px !important;
  border: 1px solid rgba(2, 40, 74, 0.08) !important;
  background: rgba(255,255,255,.84) !important;
  box-shadow: var(--adv-card-shadow) !important;
  backdrop-filter: blur(8px);
}
.launch-card { padding: 28px; }
.launch-card .icon {
  width: 52px; height: 52px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, #0274C2, #00B0F0 55%, #40E0D0);
  box-shadow: 0 12px 30px rgba(0,176,240,.26);
  font-size: 1.35rem;
  margin-bottom: 18px;
}
.launch-card h3 { font-size: 1.25rem; margin: 0 0 10px; letter-spacing: -0.02em; }
.launch-card p { color: var(--adv-muted); line-height: 1.65; margin: 0; }
.launch-card a { display: inline-flex; margin-top: 18px; font-weight: 800; color: #0274C2; }
.launch-list { display: grid; gap: 14px; margin: 26px 0; }
.launch-list-item { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 12px; align-items: start; }
.launch-list-item i { color: #00a3e0; font-size: 1.25rem; }
.launch-list-item strong { display: block; color: var(--adv-ink); }
.launch-list-item span { display: block; color: var(--adv-muted); line-height: 1.55; }
.launch-soft-panel {
  border-radius: 30px;
  border: 1px solid rgba(2, 40, 74, 0.08);
  background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(239,248,255,.78));
  box-shadow: var(--adv-card-shadow);
  padding: clamp(24px, 4vw, 44px);
}
.launch-dark-panel {
  border-radius: 30px;
  background:
    radial-gradient(circle at 75% 30%, rgba(64,224,208,.14), transparent 35%),
    linear-gradient(135deg, #081a32, #0b2748);
  color: white;
  padding: clamp(28px, 4vw, 48px);
  box-shadow: 0 24px 70px rgba(5, 20, 40, .22);
}
.launch-dark-panel h2,
.launch-dark-panel h3 { color: white; }
.launch-dark-panel p { color: rgba(255,255,255,.78); }
.launch-tag-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.launch-tag { padding: 8px 12px; border-radius: 999px; background: rgba(0,176,240,.12); color: #006fae; font-weight: 800; font-size: .84rem; }
.launch-dark-panel .launch-tag { background: rgba(64,224,208,.12); color: #7df7ee; border: 1px solid rgba(64,224,208,.2); }
.launch-image-frame { border-radius: 28px; overflow: hidden; border: 1px solid rgba(2, 40, 74, .08); box-shadow: var(--adv-card-shadow); background: #fff; }
.launch-image-frame img { width: 100%; display: block; }
.launch-human-hook {
  background: linear-gradient(180deg, #f7fbff 0%, #ffffff 100%);
  border-bottom: 1px solid rgba(2, 40, 74, .08);
  padding: clamp(32px, 5vw, 58px) 0;
}
.launch-human-hook-grid {
  align-items: center;
  display: grid;
  gap: clamp(24px, 4vw, 52px);
  grid-template-columns: minmax(0, 1fr) minmax(340px, .9fr);
}
.launch-human-hook h2 {
  color: #0a1628;
  font-size: clamp(1.85rem, 3vw, 3.1rem);
  letter-spacing: -0.04em;
  line-height: 1.04;
  margin: 12px 0 14px;
}
.launch-human-hook p {
  color: #3b5068;
  font-size: 1.02rem;
  line-height: 1.68;
  margin: 0 0 14px;
}
.launch-human-hook .launch-human-hook-lede {
  color: #102033;
  font-size: clamp(1.05rem, 1.45vw, 1.18rem);
  font-weight: 750;
}
.launch-human-hook-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}
.launch-human-hook-visual {
  background: #fffaf5;
  border: 1px solid rgba(124, 45, 18, .08);
  border-radius: 26px;
  box-shadow: 0 22px 58px rgba(90, 52, 22, .12);
  justify-self: center;
  margin: 0;
  max-width: 560px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.launch-human-hook-visual img {
  aspect-ratio: 16 / 9;
  display: block;
  filter: saturate(1.04) brightness(1.035) sepia(.035);
  object-fit: cover;
  width: 100%;
}
.launch-human-hook-visual figcaption {
  background: linear-gradient(180deg, #fffaf5 0%, #fff3e8 100%);
  color: #665348;
  display: grid;
  gap: 6px;
  padding: 16px 18px;
}
.launch-human-hook-visual strong {
  color: #7c2d12;
}
.launch-execution-image-stack {
  display: grid;
  gap: 16px;
}
.launch-execution-image-stack .launch-image-frame img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.launch-execution-people-row {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.launch-execution-top-image,
.launch-execution-bottom-image {
  background: #fffaf5;
  border: 1px solid rgba(124, 45, 18, .08);
  border-radius: 20px;
  box-shadow: 0 16px 42px rgba(90, 52, 22, .10);
  margin: 0;
  overflow: hidden;
}
.launch-execution-top-image img,
.launch-execution-bottom-image img {
  aspect-ratio: 16 / 7;
  display: block;
  filter: saturate(1.04) brightness(1.035) sepia(.035);
  object-fit: cover;
  width: 100%;
}
.launch-execution-top-image figcaption,
.launch-execution-bottom-image figcaption {
  background: linear-gradient(180deg, #fffaf5 0%, #fff3e8 100%);
  color: #665348;
  display: grid;
  gap: 4px;
  font-size: .84rem;
  line-height: 1.42;
  padding: 11px 14px;
}
.launch-execution-top-image strong,
.launch-execution-bottom-image strong {
  color: #7c2d12;
}
.launch-cta-band {
  position: relative; overflow: hidden; text-align: center; color: white;
  background:
    radial-gradient(circle at 18% 15%, rgba(64,224,208,.26), transparent 28%),
    radial-gradient(circle at 80% 50%, rgba(147,51,234,.20), transparent 30%),
    linear-gradient(135deg, #071a33, #0b355f);
  padding: clamp(64px, 7vw, 104px) 20px;
}
.launch-cta-band h2 { color: white; font-size: clamp(2rem, 4vw, 4rem); letter-spacing: -0.045em; margin-bottom: 14px; }
.launch-cta-band p { color: rgba(255,255,255,.82); max-width: 740px; margin: 0 auto 28px; font-size: 1.15rem; line-height: 1.6; }
.launch-cta-band .adv-btn-outline { border-color: rgba(255,255,255,.7); color: #fff; }

/* Improve inherited generated content pages without touching their markup. */
main .adv-container > h2:first-child + p,
main .lead { color: var(--adv-muted); }
main ul li { margin-bottom: .45rem; }
main h1, main h2, main h3 { letter-spacing: -0.03em; }
main h2 { font-size: clamp(1.85rem, 3vw, 3rem); }
main h3 { font-size: clamp(1.25rem, 1.8vw, 1.65rem); }
main p { line-height: 1.7; }
main .adv-hero .adv-actions,
main .adv-section .adv-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }

/* Hide obvious generated/content-processing scaffolding where pages still include it. */
section.adv-section:has(h2:first-child:is(:only-child)) { display: none; }

@media (max-width: 980px) {
  .launch-hero-grid, .launch-split, .launch-human-hook-grid { grid-template-columns: 1fr; }
  .launch-card-grid, .launch-card-grid.two, .launch-card-grid.four { grid-template-columns: 1fr; }
  .launch-hero-metrics, .launch-metric-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .launch-execution-people-row {
    grid-template-columns: 1fr;
  }
  .launch-human-hook-actions .adv-btn {
    justify-content: center;
    width: 100%;
  }
}
