/* RSNV Quote Built 1.0.0
   White section. Cyan panel is #E9FEFF, fading from transparent.
   Panel is 460×923, radius 20, starting 80px in from the laptop's left.
   Laptop frame 620×349, radius 20, 1px #9C45F5, shadow 0 50 90 -30 rgba(0,0,0,.3).
   Heading Oswald Regular 40/59, two lines, height 118.
   "HR & Payroll" is #7A23D6. The rest is #091443.
   Points Poppins Regular 24/36. Rule is 4×60 #7A23D6, 6px above the text.
   Two columns of 300 with a 20px gap. 50px between rows. 40px under the heading.
   Side space 80px. 40px between the laptop and the copy.
   This section has no button.
*/

@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@400&family=Poppins:wght@400&display=swap");

.elementor-section:has(.elementor-widget-resnv-quote-built),
.elementor-section:has(.elementor-widget-resnv-quote-built) > .elementor-container,
.elementor-section:has(.elementor-widget-resnv-quote-built) .elementor-column,
.elementor-section:has(.elementor-widget-resnv-quote-built) .elementor-widget-wrap,
.e-con:has(.elementor-widget-resnv-quote-built),
.e-con:has(.elementor-widget-resnv-quote-built) > .e-con-inner,
.elementor-widget-resnv-quote-built,
.elementor-widget-resnv-quote-built > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: clip !important;
  overflow-y: visible !important;
  background: transparent !important;
  background-color: transparent !important;
}

.elementor-section.elementor-section-boxed:has(.elementor-widget-resnv-quote-built) > .elementor-container {
  max-width: none !important;
  width: 100% !important;
}

.rsnv-quote-built {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible;
  background: #ffffff;
  color: #091443;
}

.rsnv-quote-built__inner {
  position: relative;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0, 620px) minmax(0, 620px);
  column-gap: 40px;
  align-items: start;
  width: min(1440px, 100%);
  margin: 0 auto;
  padding: 251px 80px 72px;
  padding-top:0px !important;
}

.rsnv-quote-built__stage {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 620px;
  margin-top: 129px;
  aspect-ratio: 620 / 349;
}

.rsnv-quote-built__panel {
  position: absolute;
  z-index: 0;
  left: 12.903%;
  top: -108.883%;
  width: 74.194%;
  height: 264.47%;
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(233, 254, 255, 0) 0%, rgba(233, 254, 255, 0.5) 30.2%, #e9feff 100%);
  pointer-events: none;
}

.elementor-widget-resnv-quote-built img.rsnv-quote-built__shot,
.rsnv-quote-built__shot {
  position: absolute;
  z-index: 1;
  top: -2.865% !important;
  left: -9.677% !important;
  display: block;
  width: 119.355% !important;
  height: 134.384% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: fill;
  pointer-events: none;
}

.rsnv-quote-built__stage--custom {
  overflow: hidden;
  border: 1px solid #9c45f5;
  border-radius: 20px;
  box-shadow: 0 50px 90px -30px rgba(0, 0, 0, 0.3);
  background: #ffffff;
}

.elementor-widget-resnv-quote-built .rsnv-quote-built__stage--custom img.rsnv-quote-built__shot,
.rsnv-quote-built__stage--custom .rsnv-quote-built__shot {
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: contain;
  object-position: center center;
}

.rsnv-quote-built__copy {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 620px;
}

.elementor-widget-resnv-quote-built h2.rsnv-quote-built__title {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 620px;
  color: #091443 !important;
  font-family: Oswald, sans-serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  font-size: 40px !important;
  line-height: 59px !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.rsnv-quote-built__line {
  display: block;
}

.elementor-widget-resnv-quote-built h2.rsnv-quote-built__title span span {
  color: #7a23d6 !important;
  font-family: Oswald, sans-serif !important;
  font-weight: 400 !important;
  font-size: 40px !important;
  line-height: 59px !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.rsnv-quote-built__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 20px;
  row-gap: 50px;
  width: 100%;
  max-width: 620px;
  margin-top: 40px;
}

.rsnv-quote-built__item p {
  margin: 6px 0 0;
  padding: 0;
  color: #091443;
  font-family: Poppins, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 24px;
  line-height: 36px;
  letter-spacing: 0;
}

.rsnv-quote-built__rule {
  display: block;
  width: 60px;
  height: 4px;
  background: #7a23d6;
}

@media (max-width: 1100px) {
  .rsnv-quote-built__inner {
    padding: 120px 40px 64px;
    column-gap: 32px;
  }

  .rsnv-quote-built__stage {
    margin-top: 48px;
  }

  .rsnv-quote-built__panel {
    top: -55%;
    height: 210%;
  }
}

@media (max-width: 860px) {
  .rsnv-quote-built__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    padding: 72px 24px 56px;
  }

  .rsnv-quote-built__stage,
  .rsnv-quote-built__copy {
    width: min(620px, 100%);
    max-width: 620px;
  }

  .rsnv-quote-built__stage {
    margin-top: 72px;
  }

  .rsnv-quote-built__copy {
    text-align: left;
  }
}

@media (max-width: 760px) {
  .elementor-widget-resnv-quote-built h2.rsnv-quote-built__title,
  .elementor-widget-resnv-quote-built h2.rsnv-quote-built__title span span {
    font-size: 32px !important;
    line-height: 44px !important;
  }

  .rsnv-quote-built__list {
    row-gap: 28px;
    margin-top: 28px;
  }

  .rsnv-quote-built__item p {
    font-size: 18px;
    line-height: 28px;
  }
}

@media (max-width: 560px) {
  .rsnv-quote-built__inner {
    padding: 56px 20px 48px;
  }

  .rsnv-quote-built__list {
    grid-template-columns: minmax(0, 1fr);
  }

  .rsnv-quote-built__stage {
    margin-top: 48px;
  }

  .rsnv-quote-built__panel {
    top: -28%;
    height: 160%;
  }
}
