/* Conversion-focused homepage layer. Loaded after the shared design system. */
.hero-static {
  min-height: clamp(680px, 84svh, 850px);
  align-items: center;
  padding-top: clamp(126px, 10vw, 168px);
  padding-bottom: clamp(64px, 7vw, 96px);
}

.hero-static .hero-slide {
  align-items: center;
}

.hero-static .hero-slide:not(:first-child),
.hero-static .hero-carousel-ui,
.hero-static .hero-carousel-dots {
  display: none;
}

.hero-static .hero-slide-content {
  width: min(890px, 100%);
  padding-bottom: 0;
}

.hero-static h1 {
  max-width: 890px;
  font-size: clamp(3.2rem, 5.15vw, 5.9rem);
  line-height: 0.98;
  letter-spacing: -0.052em;
}

.hero-static .hero-lead {
  max-width: 760px;
  font-size: clamp(1.04rem, 1.35vw, 1.22rem);
}

.hero-static .hero-slide-media img,
.hero-static .hero-slide.active .hero-slide-media img {
  object-position: 66% center;
  transform: scale(1.015);
}

.hero-static .hero-assurance {
  max-width: 900px;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.hero-static .hero-assurance span {
  min-height: 42px;
  padding: 10px 13px;
}

.home-page .section-heading > p:not(.eyebrow),
.home-page .editorial-section-head > p {
  max-width: 720px;
}

.home-page .home-service-grid article {
  position: relative;
}

.home-page .home-service-grid article::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 72px;
  height: 3px;
  background: linear-gradient(90deg, var(--brand-700), var(--accent));
  border-radius: 0 999px 999px 0;
}

.form-privacy-note {
  margin-top: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text-body);
  font-size: 0.82rem;
  line-height: 1.45;
}

.form-privacy-note i {
  width: 16px;
  height: 16px;
  color: var(--accent);
  flex: 0 0 auto;
}

.home-contact-section .contact-form > .button-primary {
  width: max-content;
  min-width: 220px;
}

@media (max-width: 760px) {
  .hero-static {
    min-height: 680px;
    padding-top: calc(108px + env(safe-area-inset-top));
    padding-bottom: 58px;
  }

  .hero-static h1 {
    font-size: clamp(2.45rem, 11.8vw, 3.4rem);
    line-height: 1;
  }

  .hero-static .hero-assurance {
    display: grid;
  }

  .home-contact-section .contact-form > .button-primary {
    width: 100%;
  }
}

/* Premium editorial homepage */
.home-page {
  background: #ffffff;
}

.home-page .hero-static {
  min-height: min(900px, 92svh);
  background: #06111f;
}

.home-page .hero-slide-media::after {
  background: linear-gradient(90deg, rgba(4, 13, 25, 0.99) 0%, rgba(4, 13, 25, 0.94) 38%, rgba(4, 13, 25, 0.48) 68%, rgba(4, 13, 25, 0.12) 100%);
}

.home-page .hero-carousel::before {
  opacity: 0.48;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px);
  background-size: 96px 96px;
}

.home-page .hero-static h1 {
  max-width: 940px;
  font-size: clamp(3.55rem, 6vw, 6.8rem);
  font-weight: 620;
  letter-spacing: -0.064em;
}

.home-page .hero-static .hero-lead {
  max-width: 720px;
  color: #c8d3df;
}

.home-page .hero-static .hero-actions {
  margin-top: 36px;
}

.home-page .hero-static .button-primary,
.home-page .hero-static .button-ghost {
  min-height: 54px;
  border-radius: 2px;
}

.home-page .hero-static .button-primary {
  background: #ffffff;
  border-color: #ffffff;
  color: #071426;
}

.home-page .hero-static .button-primary:hover {
  background: #dce7f5;
  border-color: #dce7f5;
}

.home-page .hero-static .hero-assurance {
  margin-top: 34px;
}

.home-page .hero-static .hero-assurance span {
  padding: 9px 0;
  margin-right: 22px;
  color: #c2ceda;
  background: transparent;
  border: 0;
  border-radius: 0;
  backdrop-filter: none;
}

.home-page .trust-strip {
  width: min(var(--content-max), calc(100% - 44px));
  margin: 0 auto;
  padding: 34px 0;
  background: #ffffff;
  border: 0;
  border-bottom: 1px solid rgba(18, 38, 66, 0.14);
  border-radius: 0;
  box-shadow: none;
  backdrop-filter: none;
}

.home-page .trust-logos span {
  padding: 7px 0;
  margin-right: 20px;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #425268;
  font-weight: 650;
}

.home-page .trust-metrics {
  gap: 0;
}

.home-page .trust-metrics article {
  min-height: 96px;
  padding: 10px 24px;
  background: transparent;
  border: 0;
  border-left: 1px solid rgba(18, 38, 66, 0.14);
  border-radius: 0;
}

.home-page .section {
  background: #ffffff;
}

.home-page .section-light {
  background: #f5f6f7;
}

.home-page .section-heading h2,
.home-page .editorial-section-head h2,
.home-page .transformation-heading h2 {
  max-width: 900px;
  font-size: clamp(2.65rem, 4.8vw, 5rem);
  font-weight: 620;
  letter-spacing: -0.055em;
  line-height: 1.01;
}

.home-page .section-heading > p:not(.eyebrow),
.home-page .editorial-section-head > p,
.home-page .transformation-heading > p {
  color: #5c6878;
  font-size: 1rem;
}

.home-page .home-service-grid {
  grid-template-columns: 1fr;
  gap: 0;
}

.home-page .home-services-section {
  border-top: 1px solid rgba(18, 38, 66, 0.12);
}

.home-page .home-service-grid article {
  min-height: 0;
  padding: 28px 0;
  display: grid;
  grid-template-columns: 58px minmax(190px, 0.65fr) minmax(260px, 1fr) auto;
  gap: 26px;
  align-items: center;
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.16);
  border-radius: 0;
  box-shadow: none;
}

.home-page .home-service-grid article:last-child {
  border-bottom: 1px solid rgba(18, 38, 66, 0.16);
}

.home-page .home-service-grid article::before,
.home-page .home-service-grid article::after {
  display: none;
}

.home-page .home-service-grid article:hover {
  transform: none;
  border-color: rgba(18, 38, 66, 0.4);
  box-shadow: none;
}

.home-page .home-service-grid i {
  width: 38px;
  height: 38px;
  padding: 8px;
  color: #155eef;
  background: transparent;
  border: 1px solid rgba(21, 94, 239, 0.28);
  border-radius: 2px;
}

.home-page .home-service-grid h3,
.home-page .home-service-grid p,
.home-page .home-service-grid a {
  margin: 0;
  padding: 0;
}

.home-page .home-service-grid h3 {
  font-size: 1.18rem;
}

.home-page .home-service-grid a {
  color: #155eef;
  font-size: 0.82rem;
  font-weight: 750;
}

.home-page .transformation-section {
  background: #f5f6f7;
  background-image: none;
}

.home-page .transformation-frictions {
  gap: 28px;
}

.home-page .transformation-frictions article {
  min-height: 250px;
  padding: 26px 0 0;
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.22);
  border-radius: 0;
  box-shadow: none;
}

.home-page .transformation-frictions article::before {
  display: none;
}

.home-page .transformation-frictions article:hover {
  transform: translateY(-2px);
  box-shadow: none;
}

.home-page .transformation-frictions i {
  color: #155eef;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.home-page .transformation-outcome {
  margin-top: 68px;
  padding: clamp(48px, 6vw, 78px);
  background: #071426;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.home-page .transformation-benefits span,
.home-page .automation-benefit-matrix span,
.home-page .cta-proof-grid span {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0;
}

.home-page .automation-command-section {
  background: #ffffff;
}

.home-page .automation-command-visual {
  border-radius: 3px;
  box-shadow: none;
}

.home-page .automation-summary-panel {
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.home-page .automation-benefit-matrix {
  gap: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.home-page .automation-benefit-matrix span {
  color: #334155;
  border-top-color: rgba(18, 38, 66, 0.16);
}

.home-page .crm-industry-section {
  background: #f5f6f7;
  background-image: none;
}

.home-page .crm-capability-strip span {
  padding: 8px 0;
  margin-right: 18px;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.home-page .crm-adaptation-panel {
  border-radius: 0;
  border-left: 0;
  border-right: 0;
  box-shadow: none;
}

.home-page .crm-showcase-grid {
  grid-template-columns: 1fr;
  gap: 72px;
  margin-top: 72px;
}

.home-page .crm-showcase-card-large,
.home-page .crm-showcase-card-large.reverse {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.2);
  border-radius: 0;
  box-shadow: none;
}

.home-page .crm-showcase-card-large.reverse .crm-showcase-media {
  order: 2;
}

.home-page .crm-showcase-card-large .crm-showcase-media {
  min-height: 520px;
  aspect-ratio: auto;
}

.home-page .crm-showcase-card-large .crm-showcase-content {
  padding: 50px 0 40px 54px;
}

.home-page .crm-showcase-card-large.reverse .crm-showcase-content {
  padding-left: 0;
  padding-right: 54px;
}

.home-page .crm-showcase-card-large .business-impact {
  border-radius: 0;
}

.home-page .methodology-section {
  background: #071426;
}

.home-page .method-timeline {
  gap: 0 28px;
}

.home-page .method-timeline article {
  grid-template-columns: 42px minmax(0, 1fr);
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0;
}

.home-page .method-timeline article > span {
  min-height: 0;
  color: #6fa0ff;
  background: transparent;
  border-radius: 0;
}

.home-page .method-timeline article > div {
  padding: 28px 0 32px;
}

.home-page .method-timeline li {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 4px 0;
  margin-right: 14px;
}

.home-page .tech-ecosystem-section {
  background: #ffffff;
}

.home-page .tech-ecosystem-grid {
  gap: 0;
}

.home-page .tech-ecosystem-grid article {
  padding: 26px 0;
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.16);
  border-radius: 0;
  box-shadow: none;
}

.home-page .tech-governance-card {
  background: #f4f6f8;
  border: 0;
  border-left: 2px solid #155eef;
  border-radius: 0;
  box-shadow: none;
}

.home-page .home-case-card {
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.18);
  border-radius: 0;
  box-shadow: none;
}

.home-page .home-case-card > div {
  padding-left: 0;
  padding-right: 0;
}

.home-page .faq-list details {
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.18);
  border-radius: 0;
  box-shadow: none;
}

.home-page .faq-list details:last-child {
  border-bottom: 1px solid rgba(18, 38, 66, 0.18);
}

.home-page .faq-list details[open] {
  border-color: rgba(18, 38, 66, 0.36);
  box-shadow: none;
}

.home-page .contact-form {
  background: #ffffff;
  border: 1px solid rgba(18, 38, 66, 0.16);
  border-radius: 0;
  box-shadow: none;
}

.home-page .contact-card {
  padding: 26px 0;
  background: transparent;
  border: 0;
  border-top: 1px solid rgba(18, 38, 66, 0.18);
  border-radius: 0;
  box-shadow: none;
}

.home-page .contact-card::after {
  display: none;
}

.home-page .contact-card i {
  color: #155eef;
  background: transparent;
  box-shadow: none;
}

.home-page .contact-card-dark {
  color: #ffffff;
  padding: 28px;
  background: #071426;
}

.home-page .cta-home {
  min-height: 620px;
}

@media (max-width: 1100px) {
  .home-page .home-service-grid article {
    grid-template-columns: 48px minmax(180px, 0.7fr) 1fr;
  }

  .home-page .home-service-grid a {
    grid-column: 2 / -1;
  }

  .home-page .crm-showcase-card-large,
  .home-page .crm-showcase-card-large.reverse {
    grid-template-columns: 1fr;
  }

  .home-page .crm-showcase-card-large.reverse .crm-showcase-media {
    order: 0;
  }

  .home-page .crm-showcase-card-large .crm-showcase-content,
  .home-page .crm-showcase-card-large.reverse .crm-showcase-content {
    padding: 36px 0 0;
  }
}

@media (max-width: 760px) {
  .home-page .hero-static {
    min-height: 740px;
  }

  .home-page .hero-static h1 {
    font-size: clamp(2.65rem, 12vw, 3.8rem);
  }

  .home-page .hero-slide-media::after {
    background: linear-gradient(90deg, rgba(4, 13, 25, 0.98), rgba(4, 13, 25, 0.82));
  }

  .home-page .trust-strip {
    width: calc(100% - 40px);
    margin: 0 auto;
  }

  .home-page .trust-metrics article {
    padding: 16px 0;
    border-left: 0;
    border-top: 1px solid rgba(18, 38, 66, 0.14);
  }

  .home-page .section-heading h2,
  .home-page .editorial-section-head h2,
  .home-page .transformation-heading h2 {
    font-size: clamp(2.2rem, 10vw, 3.1rem);
  }

  .home-page .home-service-grid article {
    grid-template-columns: 42px 1fr;
    gap: 16px;
  }

  .home-page .home-service-grid p,
  .home-page .home-service-grid a {
    grid-column: 2;
  }

  .home-page .transformation-frictions {
    gap: 0;
  }

  .home-page .transformation-outcome {
    margin-top: 42px;
    padding: 34px 24px;
  }

  .home-page .crm-showcase-grid {
    gap: 48px;
    margin-top: 48px;
  }

  .home-page .crm-showcase-card-large .crm-showcase-media {
    min-height: 330px;
  }

  .home-page .method-timeline {
    grid-template-columns: 1fr;
  }
}

/* Premium manual carousel */
.home-page .hero-premium {
  min-height: min(900px, 92svh);
  align-items: end;
  padding-top: clamp(126px, 10vw, 168px);
  padding-bottom: clamp(42px, 5vw, 68px);
  background: #06111f;
}

.home-page .hero-premium .hero-slide {
  align-items: end;
  transition: opacity 760ms cubic-bezier(0.22, 0.61, 0.36, 1), visibility 760ms ease;
}

.home-page .hero-premium .hero-slide-content {
  width: min(900px, calc(100% - 100px));
  padding-bottom: clamp(104px, 10vw, 136px);
}

.home-page .hero-premium h1,
.home-page .hero-premium .hero-carousel-title {
  max-width: 920px;
  font-size: clamp(3.35rem, 5.7vw, 6.35rem);
  font-weight: 620;
  line-height: 0.99;
  letter-spacing: -0.061em;
  text-shadow: none;
}

.home-page .hero-premium .hero-lead {
  max-width: 720px;
  color: #c8d3df;
  font-size: clamp(1.03rem, 1.25vw, 1.18rem);
}

.home-page .hero-premium .hero-slide-media::after {
  background: linear-gradient(90deg, rgba(4, 13, 25, 0.99) 0%, rgba(4, 13, 25, 0.94) 40%, rgba(4, 13, 25, 0.5) 70%, rgba(4, 13, 25, 0.14) 100%);
}

.home-page .hero-premium .hero-slide-media img {
  object-position: 66% center;
  transform: scale(1.01);
  transition: transform 1800ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-page .hero-premium .hero-slide.active .hero-slide-media img {
  transform: scale(1.025);
}

.home-page .hero-premium .hero-actions {
  margin-top: 34px;
}

.home-page .hero-premium .button-primary,
.home-page .hero-premium .button-ghost {
  min-height: 54px;
  border-radius: 2px;
}

.home-page .hero-premium .button-primary {
  color: #071426;
  background: #ffffff;
  border-color: #ffffff;
}

.home-page .hero-premium .button-primary:hover {
  color: #071426;
  background: #dce7f5;
  border-color: #dce7f5;
}

.home-page .hero-premium .hero-assurance {
  max-width: 900px;
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}

.home-page .hero-premium .hero-assurance span {
  min-height: 0;
  padding: 8px 0;
  margin-right: 24px;
  color: #bdc9d5;
  background: transparent;
  border: 0;
  border-radius: 0;
  backdrop-filter: none;
}

.home-page .hero-premium .hero-carousel-ui {
  left: max(22px, calc((100% - var(--content-max)) / 2));
  right: max(22px, calc((100% - var(--content-max)) / 2));
  bottom: clamp(28px, 3vw, 42px);
  grid-template-columns: auto minmax(100px, 1fr) auto;
  gap: 22px;
}

.home-page .hero-premium .hero-slide-count {
  min-width: 82px;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
}

.home-page .hero-premium .hero-slide-count .current-slide {
  font-size: 1rem;
}

.home-page .hero-premium .hero-progress {
  height: 1px;
  background: rgba(255, 255, 255, 0.22);
}

.home-page .hero-premium .hero-progress span {
  opacity: 0.72;
  background: #ffffff;
  transform: scaleX(1);
}

.home-page .hero-premium .hero-nav-button {
  width: 44px;
  height: 44px;
  color: #ffffff;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 2px;
  backdrop-filter: none;
}

.home-page .hero-premium .hero-nav-button:hover {
  color: #071426;
  background: #ffffff;
  border-color: #ffffff;
}

.home-page .hero-premium .hero-carousel-dots {
  display: none;
}

@media (max-width: 760px) {
  .home-page .hero-premium {
    min-height: 760px;
    padding: calc(104px + env(safe-area-inset-top)) 20px 30px;
  }

  .home-page .hero-premium .hero-slide-content {
    width: 100%;
    padding-bottom: 108px;
  }

  .home-page .hero-premium h1,
  .home-page .hero-premium .hero-carousel-title {
    font-size: clamp(2.45rem, 11.2vw, 3.55rem);
    line-height: 1;
  }

  .home-page .hero-premium .hero-slide-media::after {
    background: linear-gradient(90deg, rgba(4, 13, 25, 0.97), rgba(4, 13, 25, 0.78));
  }

  .home-page .hero-premium .hero-slide-media img {
    object-position: 68% center;
  }

  .home-page .hero-premium .hero-assurance {
    display: none;
  }

  .home-page .hero-premium .hero-actions {
    margin-top: 26px;
  }

  .home-page .hero-premium .hero-carousel-ui {
    left: 20px;
    right: 20px;
    bottom: 24px;
    grid-template-columns: auto 1fr auto;
  }

  .home-page .hero-premium .hero-carousel-controls {
    gap: 7px;
  }

  .home-page .hero-premium .hero-nav-button {
    width: 42px;
    height: 42px;
  }
}

/* Isolated audience band — intentionally independent from legacy trust styles */
.home-page .audience-band {
  position: relative;
  z-index: 4;
  width: min(var(--content-max), calc(100% - 44px));
  margin: 0 auto;
  padding: 36px 0;
  display: grid;
  grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr);
  gap: clamp(40px, 6vw, 82px);
  align-items: center;
  background: #ffffff;
  border-bottom: 1px solid rgba(18, 38, 66, 0.15);
}

.home-page .audience-intro {
  min-width: 0;
}

.home-page .audience-list {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 22px;
}

.home-page .audience-list span {
  position: relative;
  flex: 0 0 auto;
  padding-left: 12px;
  color: #46566a;
  font-size: 0.84rem;
  font-weight: 650;
  line-height: 1.4;
  white-space: nowrap;
}

.home-page .audience-list span::before {
  content: '';
  position: absolute;
  top: 0.58em;
  left: 0;
  width: 4px;
  height: 4px;
  background: #155eef;
}

.home-page .audience-capabilities {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-page .audience-capabilities article {
  min-width: 0;
  min-height: 94px;
  padding: 8px 24px;
  border-left: 1px solid rgba(18, 38, 66, 0.15);
}

.home-page .audience-capabilities strong,
.home-page .audience-capabilities span {
  display: block;
}

.home-page .audience-capabilities strong {
  color: #0a1628;
  font-size: 0.94rem;
  line-height: 1.3;
}

.home-page .audience-capabilities span {
  margin-top: 8px;
  color: #687587;
  font-size: 0.8rem;
  line-height: 1.5;
}

@media (max-width: 1000px) {
  .home-page .audience-band {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .home-page .audience-capabilities article:first-child {
    border-left: 0;
    padding-left: 0;
  }
}

@media (max-width: 640px) {
  .home-page .audience-band {
    width: calc(100% - 40px);
    padding: 28px 0;
  }

  .home-page .audience-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 16px;
  }

  .home-page .audience-list span {
    min-width: 0;
    white-space: normal;
  }

  .home-page .audience-capabilities {
    grid-template-columns: 1fr;
    border-top: 1px solid rgba(18, 38, 66, 0.15);
  }

  .home-page .audience-capabilities article,
  .home-page .audience-capabilities article:first-child {
    min-height: 0;
    padding: 18px 0;
    border-left: 0;
    border-bottom: 1px solid rgba(18, 38, 66, 0.12);
  }
}
