/* Homepage final polish overrides. Loaded last so older experiment blocks cannot re-box sections. */
.home-canvas main{
  --home-section-gap:224px !important;
}

.home-canvas .home-hero-v3{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
  background:transparent !important;
  position:relative !important;
  isolation:isolate !important;
  z-index:2 !important;
}

.home-canvas #how-it-works,
.home-canvas #services,
.home-canvas .home-services-story,
.home-canvas #contact{
  position:relative !important;
  z-index:1 !important;
}

.home-canvas #how-it-works{
  -webkit-mask-image:none !important;
  mask-image:none !important;
}

.home-canvas .home-hero-v3 .hero-copy,
.home-canvas .home-hero-v3 .phone-hero-stack,
.home-canvas .home-hero-v3 .robot-hero-stack{
  position:relative !important;
  z-index:3 !important;
}

.home-canvas .home-hero-v3::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 0 calc(var(--home-section-gap) * -1) 0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background:linear-gradient(180deg,#000 0%,#000 74%,rgba(0,0,0,.72) 84%,rgba(0,0,0,.30) 93%,rgba(0,0,0,0) 100%) !important;
}

.home-canvas .home-hero-v3::after{
  display:none !important;
  content:none !important;
  background:none !important;
}

.home-canvas .home-hero-v3 .hero-spline-background,
.home-canvas .home-hero-v3 .hero-background-spline{
  display:block !important;
  position:absolute !important;
  z-index:2 !important;
  background:transparent !important;
}

.home-canvas .home-hero-v3 .hero-surface-light,
.home-canvas .home-hero-v3 .hero-phone-contact-light,
.home-canvas .home-hero-v3 .qaimo-tablet-scene,
.home-canvas .home-hero-v3 .qaimo-phone-art,
.home-canvas .home-hero-v3 .phone-hero-stack::before,
.home-canvas .home-hero-v3 .phone-hero-stack::after{
  display:none !important;
  content:none !important;
  background:none !important;
  box-shadow:none !important;
}

.home-canvas .home-hero-v3 .phone-hero-stack{
  background:transparent !important;
  box-shadow:none !important;
}

.home-canvas #how-it-works.demo-lab-section.demo-lab-v3,
.home-canvas .home-services-story.services-story-hero,
.home-canvas #contact.home-closing-v3{
  border:0 !important;
  border-top:0 !important;
  border-right:0 !important;
  border-bottom:0 !important;
  border-left:0 !important;
  box-shadow:none !important;
}

.home-canvas .home-services-story .story-inline-points .pain-card,
.home-canvas .home-services-story .story-inline-points .solution-card,
.home-canvas .home-services-story .story-inline-points .simple-card{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.home-canvas .home-services-story .story-inline-points .pain-card::before,
.home-canvas .home-services-story .story-inline-points .pain-card::after,
.home-canvas .home-services-story .story-inline-points .solution-card::before,
.home-canvas .home-services-story .story-inline-points .solution-card::after,
.home-canvas .home-services-story .story-inline-points .simple-card::before,
.home-canvas .home-services-story .story-inline-points .simple-card::after{
  display:none !important;
}

.home-canvas .home-services-story .story-inline-points h2,
.home-canvas .home-services-story .story-inline-points p,
.home-canvas .home-services-story .story-inline-points .solution-card h2,
.home-canvas .home-services-story .story-inline-points .solution-card p{
  color:#f8fbff !important;
  text-shadow:0 2px 16px rgba(0,0,0,.72) !important;
}

.home-canvas .home-services-story .story-inline-points .pain-card h2 em{
  color:#ff654f !important;
}

.home-canvas .home-services-story .story-inline-points .solution-card h2 em{
  color:#6fe7a2 !important;
}

@media(max-width:760px){
  .home-canvas main{
    --home-section-gap:136px !important;
  }

  .home-canvas .home-hero-v3{
    padding-bottom:0 !important;
    background:transparent !important;
  }

  .home-canvas .home-hero-v3::before{
    inset:0 0 calc(var(--home-section-gap) * -1) 0 !important;
    background:linear-gradient(180deg,#000 0%,#000 72%,rgba(0,0,0,.70) 84%,rgba(0,0,0,.28) 93%,rgba(0,0,0,0) 100%) !important;
  }
}

/* Match the homepage hero title treatment to the shared services/page title style. */
.home-canvas .home-hero-v3 h1,
.home-canvas .home-hero-v3 h1 em{
  font-family:"Inter Tight",Inter,system-ui,sans-serif !important;
  font-size:clamp(28px,2.45vw,38px) !important;
  line-height:1.02 !important;
  letter-spacing:-.025em !important;
  font-weight:500 !important;
  font-style:normal !important;
  color:#f8fbff !important;
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:#f8fbff !important;
}

/* Homepage loads this file last, so repeat the final title rule here for all home headings. */
.home-canvas main :where(h1,h2,h3){
  font-family:"Inter Tight",Inter,system-ui,sans-serif !important;
  font-size:clamp(28px,2.45vw,38px) !important;
  line-height:1.02 !important;
  letter-spacing:-.025em !important;
  font-weight:500 !important;
  font-style:normal !important;
}

.home-canvas main :where(h1,h2,h3) :where(a,em,span){
  font-family:inherit !important;
  font-size:inherit !important;
  line-height:inherit !important;
  letter-spacing:inherit !important;
  font-weight:inherit !important;
  font-style:normal !important;
}

.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main h1,
.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main h2,
.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main h3,
.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main h1 :where(a,em,span),
.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main h2 :where(a,em,span),
.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main h3 :where(a,em,span){
  font-family:"Inter Tight",Inter,system-ui,sans-serif !important;
  font-size:clamp(28px,2.45vw,38px) !important;
  line-height:1.02 !important;
  letter-spacing:-.025em !important;
  font-weight:500 !important;
  font-style:normal !important;
}

/* Match before/after descriptions to the main body paragraph in the story card. */
.home-canvas .home-services-story .story-inline-points .simple-card{
  min-height:126px !important;
  padding:12px 22px 18px !important;
}

.home-canvas .home-services-story .story-inline-points .pain-card p,
.home-canvas .home-services-story .story-inline-points .solution-card p{
  max-width:420px !important;
  margin:0 !important;
  color:#d4dae5 !important;
  font-family:var(--font-body) !important;
  font-size:14.5px !important;
  line-height:1.78 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-shadow:0 2px 16px rgba(0,0,0,.72) !important;
}

.home-canvas.home-canvas.home-canvas.home-canvas.home-canvas main .service-card h3{
  font-family:"Inter Tight",Inter,system-ui,sans-serif !important;
  font-size:30px !important;
  line-height:34.5px !important;
  letter-spacing:-1.05px !important;
  font-weight:500 !important;
  font-style:normal !important;
  color:#f8fbff !important;
}

@media(max-width:760px){
  .home-canvas .home-services-story.services-story-hero{
    width:100vw !important;
    max-width:none !important;
    min-height:760px !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    overflow:hidden !important;
    isolation:isolate !important;
    background:
      linear-gradient(90deg,rgba(2,8,18,.86) 0%,rgba(2,8,18,.58) 39%,rgba(2,8,18,.12) 68%,rgba(2,8,18,.02) 100%),
      linear-gradient(180deg,rgba(2,8,18,.38) 0%,rgba(2,8,18,.26) 42%,rgba(2,8,18,.14) 66%,rgba(3,9,20,.78) 100%),
      url("home/managed-flow-office-bg-v2.webp") -18% 7% / auto 50% no-repeat,
      url("home/managed-flow-office-bg-v2.webp") 88% 100% / auto 42% no-repeat !important;
  }

  .home-canvas .home-services-story.services-story-hero::before{
    border-radius:0 !important;
    background:
      linear-gradient(90deg,rgba(2,8,18,.58) 0%,rgba(2,8,18,.30) 43%,rgba(2,8,18,0) 76%),
      linear-gradient(180deg,rgba(2,8,18,.04) 0%,rgba(2,8,18,.16) 48%,rgba(3,9,20,.44) 100%) !important;
  }

  .home-canvas .home-services-story .services-story-copy{
    position:relative !important;
    z-index:2 !important;
  }

  .home-canvas .home-services-story .story-inline-points{
    position:relative !important;
    z-index:2 !important;
  }

  .home-canvas .home-services-story .services-story-copy{
    display:block !important;
    min-height:760px !important;
    padding:56px 16px 66px !important;
  }

  .home-canvas .home-services-story .services-story-text,
  .home-canvas .home-services-story .services-story-copy h2,
  .home-canvas .home-services-story .services-story-copy p,
  .home-canvas .home-services-story .services-story-copy .hero-subtitle{
    max-width:286px !important;
    margin-left:0 !important;
    margin-right:auto !important;
    text-align:left !important;
  }

  .home-canvas .home-services-story .services-story-copy .hero-subtitle,
  .home-canvas .home-services-story .services-story-text > p:not(.hero-subtitle){
    max-width:258px !important;
    margin-left:8px !important;
  }

  .home-canvas .home-services-story .story-inline-points{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    z-index:2 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
    width:100% !important;
    max-width:286px !important;
    margin:34px 0 0 !important;
    padding:0 !important;
  }

  .home-canvas .home-services-story .story-inline-points .simple-card,
  .home-canvas .home-services-story .story-inline-points .solution-card{
    min-height:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#f8fbff !important;
  }

  .home-canvas .home-services-story .story-inline-points h2{
    font-size:clamp(24px,7.2vw,30px) !important;
    line-height:.96 !important;
    margin:0 0 10px !important;
    text-align:left !important;
  }

  .home-canvas .home-services-story .story-inline-points p,
  .home-canvas .home-services-story .story-inline-points .pain-card p,
  .home-canvas .home-services-story .story-inline-points .solution-card p{
    max-width:286px !important;
    font-size:14px !important;
    line-height:1.52 !important;
    text-align:left !important;
    color:#f8fbff !important;
  }

  .home-canvas .home-services-story .story-inline-points .solution-card h2,
  .home-canvas .home-services-story .story-inline-points .solution-card p{
    color:#f8fbff !important;
  }

  .home-canvas .home-services-story .story-inline-points .solution-card h2 em{
    color:#6fe7a2 !important;
  }
}
