@charset "UTF-8";
/* RocketIvy Home Styles — v1.0.3.3 */

  body.home ul.et_pb_side_nav {
      right: 0;
      width: 30px;
      padding: 5px
  }

  div#hero-section .et_pb_button:after {
      font-size: 1.2em;
      padding: 4px
  }

  #subhero h2 a {
      display: block
  }

  #subhero dotlottie-player {
      max-height: 400px;
      margin-top: -70px !important;
      position: relative;
      max-width: 500px
  }

  body.home .et_pb_section_0 .et_pb_button:hover {
      color: #fff
  }

  body.home header#main-header:not(.et-fixed-header) {
      background-color: rgba(255, 255, 255, .05)
  }

  body.home div#hero-section .price-tag {
      display: inline-block;
      background: #9600d5;
      color: #fff;
      padding: 5px 8px;
      font-size: 14px;
      border-radius: 10px;
      max-width: 72px;
      line-height: 1.2em;
      letter-spacing: .15px;
      font-weight: 700;
      margin-top: 4px;
      transform: scale(.8) rotate(0);
      transition-duration: 1s
  }

  body.home div#hero-section a.price-tag:hover {
      transform: scale(1.2) rotate(-10deg);
      transition-duration: .2s;
      box-shadow: 0 0 10px #00f0ff
  }

  body.home .et_pb_section_0 h1 *:not(.rocket-power-text) {
      display: inline-block;
  }

  @media (min-width:700px) {
      body.home div#hero-section .price-tag {
          position: absolute !important
      }
  }

  @media(min-width:780px) {
      div#hero-animation {
          margin-top: 0 !important;
          position: relative;
          pointer-events: none
      }
  }

  @media(max-width:600px) {
      body.home .et_pb_section_0 h1 {
          text-align: center;
          width: 110%;
          margin-left: -5%;
      }

      body.home .et_pb_section_0 h1>span:first-child {
          font-size: 36px !important;
          line-height: 1.1em;
      }



      /* ul#hero-checklist li {
          display: inline-block !important;
          min-width: 130px !important;
          width: 40% !important;
          margin: 1%
      } */

      body.home #hero-section {
          padding-top: 80px !important
      }

      body.home #hero-section .rocket-power-text {
          font-size: 1.2em !important;
          background-position: center -80px;
      }

      #subhero h2 {
          font-size: 2em !important
      }

      body.home #hero-section .et_pb_row_0,
      body.home #main-header>.container {
          width: 85% !important
      }

      div#hero-section .et_pb_text .et_pb_button {
          display: block;
          margin: 20px auto !important;
          max-width: 400px
      }
  }

  body.home .et_pb_section_1 .et_pb_blurb .et-pb-icon.et-animated,
  body.home .et_pb_section_1 .et_pb_blurb .et_pb_main_blurb_image {
      transition-duration: 1s;
      transform: scale(1);
      opacity: 1
  }

  body.home .et_pb_section_1 .et_pb_blurb:hover .et-pb-icon.et-animated {
      opacity: 0;
      transition: 1s;
      transform: scale(.3)
  }

  body.home .et_pb_section_1 .et_pb_blurb {
      transition-duration: 1s
  }

  body.home .et_pb_section_1 .et_pb_blurb:hover .et_pb_main_blurb_image {
      transform: scale(1.2) !important;
      transition-duration: .3s
  }

  body.home .et_pb_section_1 .et_pb_main_blurb_image {
      margin: auto
  }

  body.home .et_pb_section_1 .et_pb_blurb_container {
      min-height: 50px;
      display: block
  }

  @media(max-width:980px) {
      body.home #hero-section {
          padding-top: 129px !important
      }

      #hero-animation dotlottie-player {
          top: 0
      }

      body.home #hero-section span.et_parallax_gradient.et_pb_parallax_css {
          background-image: linear-gradient(-3deg, #b496ff 2%, rgba(43, 177, 255, 0.77) 45%, #ffffff 66%, rgba(239, 244, 255, 0.9) 81%, rgba(0, 148, 255, 0.8) 94%) !important;
      }
  }

  body.home #hero-section {
      padding-top: 140px !important;
      background-attachment: fixed;
      padding-bottom: 5px;
  }

  @media(max-width:780px) {
      body.home #hero-section .et_pb_button {
          display: block !important;
          margin: 15px auto !important;
          max-width: 500px !important
      }

      body.home #hero-section .et_pb_button:first-child {
          margin-top: 0 !important
      }

      #hero-animation,
      #hero-animation dotlottie-player {
          top: 0;
          height: auto !important;
          width: auto !important;
          max-width: 100%;
          min-height: 200px;
          margin-top: 40px !important;
          display: block;
          float: none
      }
  }

  @media(max-width:400px) {
      body.home #hero-section .rocket-power-text {
          font-size: 1.1em
      }

      /* ul#hero-checklist li {
          display: block !important;
          min-width: 180px !important;
          width: 100% !important;
          max-width: 280px;
          margin: auto !important
      } */
  }

  body.home .et_pb_section_0 ul {
      list-style: none
  }

  ul#hero-checklist {
      padding: 0;
      /* display: block; */
      margin-top: 20px
  }

  /* Card icon — SVG from /icons/ used as a mask so it takes the text color.
     Falls back to a checkmark for cards without an icon class. */
  ul#hero-checklist li:before {
      content: '\2713'; /* ✓ */
      display: block;
      text-align: center;
      margin: 0 auto 6px;
      font-size: 20px;
      font-weight: 700;
      line-height: 1;
      transition-duration: .7s;
      pointer-events: none
  }

  /* Icon: white, centered inside a 52px box that the circle (:after) sits behind */
  ul#hero-checklist li[class*="card-"] {
      position: relative
  }

  ul#hero-checklist li[class*="card-"]:before {
      content: '';
      position: relative;
      z-index: 1;
      width: 52px;
      height: 52px;
      margin: 0 auto;
      background-color: #fff;
      -webkit-mask: var(--icon) center / 26px no-repeat;
      mask: var(--icon) center / 26px no-repeat
  }

  /* Filled circle behind the icon */
  ul#hero-checklist li[class*="card-"]:after {
      content: '';
      position: absolute;
      z-index: 0;
      top: var(--card-pad, 1.25rem);
      left: 50%;
      width: 52px;
      height: 52px;
      transform: translateX(-50%);
      border-radius: 50%;
      background: linear-gradient(135deg, #2bb1ff, #8a6bff);
      box-shadow: 0 4px 12px rgba(43, 120, 255, .35), inset 0 1px 0 rgba(255, 255, 255, .35);
      pointer-events: none
  }

  ul#hero-checklist li.card-best-prices       { --icon: url(/icons/award.svg) }
  ul#hero-checklist li.card-quick-easy        { --icon: url(/icons/zap.svg) }
  ul#hero-checklist li.card-professional      { --icon: url(/icons/sparkles.svg) }
  ul#hero-checklist li.card-easily-editable   { --icon: url(/icons/square-pen.svg) }
  ul#hero-checklist li.card-unlimited-pages   { --icon: url(/icons/file-stack.svg) }
  ul#hero-checklist li.card-responsive        { --icon: url(/icons/monitor-smartphone.svg) }
  ul#hero-checklist li.card-ecommerce         { --icon: url(/icons/shopping-cart.svg) }
  ul#hero-checklist li.card-content-seo       { --icon: url(/icons/pencil-sparkles.svg) }
  ul#hero-checklist li.card-performance       { --icon: url(/icons/rocket.svg) }
  ul#hero-checklist li.card-developer-freedom { --icon: url(/icons/hammer.svg) }
  ul#hero-checklist li.card-made-in-usa       { --icon: url(/icons/heart.svg) }
  ul#hero-checklist li.card-faster-cheaper    { --icon: url(/icons/trophy.svg) }

  /* Glassy cards with white text at rest, bright white with dark text on hover */
  ul#hero-checklist.card-list > li {
      --card-bg: rgba(255, 255, 255, .18);
      --card-blur: 10px;
      --card-border: rgba(255, 255, 255, .35);
      --card-fg: #fff;
      transition: transform .18s cubic-bezier(.2, .7, .2, 1),
          box-shadow .18s cubic-bezier(.2, .7, .2, 1),
          border-color .18s cubic-bezier(.2, .7, .2, 1),
          background-color .25s ease,
          color .25s ease
  }

  ul#hero-checklist.card-list > li:hover,
  ul#hero-checklist.card-list > li:focus-within {
      --card-bg: rgba(255, 255, 255, .88);
      --card-border-hover: rgba(255, 255, 255, .95);
      --card-fg: #1a1d23
  }

  /* Inline link colors are light — darken them on the white hover bg */
  ul#hero-checklist.card-list > li:hover a,
  ul#hero-checklist.card-list > li:focus-within a {
      color: #1a7fe0 !important
  }

  ul#hero-checklist.card-list > li h3 {
      margin-top: 10px;
      margin-bottom: -10px;
      padding-top: 0;
      text-shadow: 0 1px 3px rgba(0, 0, 0, .25);
      transition: text-shadow .25s ease, color .25s ease
  }

  ul#hero-checklist.card-list > li:hover h3,
  ul#hero-checklist.card-list > li:focus-within h3 {
      text-shadow: 0 0 6px #fff, 0 0 14px #fff, 0 0 24px rgba(255, 255, 255, .8)
  }

  /* ul#hero-checklist li:hover:before {
      margin-left: 10%;
      padding: 4px;
      color: #000;
      margin-top: 30px;
      font-size: 150px !important;
      z-index: 0;
      top: -15px;
      opacity: .03 !important;
      left: 60%
  }

  @media(max-width:580px) {
      body.home ul#hero-checklist ul li:hover:before {
          margin-left: 40%;
          padding: 4px;
          color: #000;
          margin-top: 20px;
          font-size: 12em;
          z-index: 0;
          opacity: .1
      }
  } */

  body.home .et_pb_section_0 .et_pb_slides .et_pb_slide_content {
      max-width: 900px;
      margin: auto
  }

  body.home .et_pb_section_6:after {
      z-index: 0
  }

  body.home .et_pb_section_0 h1,
  body.home .et_pb_section_0 h2,
  body.home .product {
      text-align: center
  }

  body.home .product img,
  body.home .woocommerce ul.products li.product a img {
      max-height: none;
      width: 100% !important;
      min-width: 50px;
      margin: auto !important;
      display: block !important;
      float: none;
      text-align: center;
      height: auto !important
  }

  body.home .et_pb_main_blurb_image {
      overflow: hidden;
      max-height: 140px;
      width: 100%
  }

  /* ul#hero-checklist li {
      display: inline-block;
      min-width: 162px;
      vertical-align: top;
      width: 30%;
      margin-right: 1%;
      margin-bottom: 5px !important;
      font-size: 12px;
      line-height: 1.3em;
      padding: 10px;
      box-sizing: border-box;
      transform: scale(.9);
      transition-duration: 1.2s;
      text-align: left
  }

  ul#hero-checklist li:hover {
      background: rgba(255, 255, 255, .8);
      transform: scale(1.05);
      transition-duration: .2s;
      color: #222 !important;
      backdrop-filter: blur(5px)
  }

  ul#hero-checklist li:hover h3 {
      color: #2a7 !important
  }

  ul#hero-checklist li:hover a {
      color: #2af !important
  }

  ul#hero-checklist li>h3,
  ul#hero-checklist li>strong:first-child {
      margin-top: 1px;
      font-size: 16px !important;
      display: inline-block;
      clear: both;
      font-weight: 700
  } */

  body.home .et_pb_section_0 h1 {
      font-size: 3em
  }

  @media (max-width:380px) {
      body.home .et_pb_section_0 h1 {
          font-size: 30px !important;
          min-height: fit-content;
          padding-top: 40px;
          width: 100%;
          margin-left: -5px;
          text-align: center !important
      }
  }

  @media(min-width:980px) {
      body.home .et_pb_section_0 h1 {
          font-size: 3em !important;
          text-align: left;
          display: block;
          margin-top: 40px
      }

      body.home #hero-text h2 {
          text-align: left;
          max-width: 565px
      }
  }

  div#hero-animation {
      margin-top: -70px !important;
      position: relative;
      pointer-events: none
  }

  @media(min-width:1130px) {
      #hero-animation dotlottie-player {
          position: relative;
          left: -3%;
          width: 95%
      }
  }

  @media(max-width:1450px) {
      #hero-animation dotlottie-player {
          position: relative;
          max-width: 95%;
          margin: auto
      }
  }

  @media(max-width:1100px) {
      /* ul#hero-checklist li {
          display: inline-block;
          min-width: 162px;
          width: 48%
      } */

      #hero-animation dotlottie-player {
          position: relative;
          max-width: 95%;
          margin: auto
      }
  }

  @media(min-width:1600px) {
      body.home div#hero-section .price-tag {
          transform: scale(.75) rotate(-15deg) !important
      }

      body.home .et_pb_section_0 h1 {
          font-size: 48px !important
      }
  }
  /* Testimonials slider — add CSS class "testimonial-slider" to the Divi row.
     Columns are flattened with display:contents so every testimonial becomes one swipeable track. */
  .testimonial-slider.et_pb_row {
      display: flex !important;
      flex-wrap: nowrap;
      gap: 20px;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      scroll-behavior: smooth;
      overscroll-behavior-x: contain;
      -webkit-overflow-scrolling: touch;
      padding-top: 30px;
      padding-bottom: 16px;
      scrollbar-width: none
  }

  .testimonial-slider.et_pb_row::-webkit-scrollbar {
      display: none
  }

  .testimonial-slider.et_pb_row:after {
      display: none
  }

  .testimonial-slider>.et_pb_column {
      display: contents !important
  }

  .testimonial-slider .et_pb_testimonial {
      flex: 0 0 calc((100% - 40px) / 3);
      scroll-snap-align: start;
      margin: 0 !important
  }

  @media(max-width:980px) {
      .testimonial-slider .et_pb_testimonial {
          flex-basis: calc((100% - 20px) / 2)
      }
  }

  @media(max-width:600px) {
      .testimonial-slider .et_pb_testimonial {
          flex-basis: 85%
      }
  }

  /* Testimonials slider arrows — pure CSS scroll buttons (progressive enhancement;
     browsers without support just get swipe/scroll) */
  @supports selector(::scroll-button(*)) {
      .testimonial-slider.et_pb_row {
          anchor-name: --testimonial-slider
      }

      .testimonial-slider.et_pb_row::scroll-button(*) {
          position: fixed;
          position-anchor: --testimonial-slider;
          width: 36px;
          height: 36px;
          margin: 0 6px;
          border: 0;
          border-radius: 50%;
          background: #9600d5;
          color: #fff;
          font-size: 24px;
          line-height: 1;
          cursor: pointer;
          box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
          transition-duration: .2s
      }

      .testimonial-slider.et_pb_row::scroll-button(*):hover {
          box-shadow: 0 0 10px #00f0ff;
          transform: scale(1.1)
      }

      .testimonial-slider.et_pb_row::scroll-button(*):disabled {
          opacity: .3;
          cursor: default;
          box-shadow: none;
          transform: none
      }

      .testimonial-slider.et_pb_row::scroll-button(left) {
          content: "‹" / "Previous testimonials";
          position-area: left center
      }

      .testimonial-slider.et_pb_row::scroll-button(right) {
          content: "›" / "Next testimonials";
          position-area: right center
      }
  }
