.elementor-21 .elementor-element.elementor-element-ddceb3e{--display:flex;}/* Start custom CSS for html, class: .elementor-element-edc2c32 */.rvmm-menu {

  /* PRIMARY COLORS */

  --rvmm-blue: #2563ff;
  --rvmm-blue-dark: #12307f;

  --rvmm-navy: #071122;

  --rvmm-text: #18243a;
  --rvmm-muted: #65748a;

  /* SALESABLE ORANGE */

  --rvmm-orange: #f97316;
  --rvmm-orange-soft: #fff3eb;

  /* STRUCTURE */

  --rvmm-border: #e1e8f2;
  --rvmm-line: #edf1f7;

  /* COLUMN BACKGROUNDS */

  --rvmm-find-bg: #f3f6ff;
  --rvmm-engage-bg: #edf2ff;
  --rvmm-grow-bg: #e7edff;


  /* --------------------------------
     MAIN CONTAINER
  -------------------------------- */

  position: relative;

  width: 100%;
  max-width: 660px;

  margin: 0 auto;

  padding: 9px;

  font-family: "Poppins", sans-serif;

  background: #fff;

  border: 1px solid var(--rvmm-border);

  border-radius: 15px;

  box-shadow:
    0 24px 65px -30px rgba(7, 17, 34, 0.35);

  isolation: isolate;

  overflow: hidden;
}


/* ==========================================================
   SAFE RESET
========================================================== */

.rvmm-menu *,
.rvmm-menu *::before,
.rvmm-menu *::after {
  box-sizing: border-box;
}


.rvmm-menu a {
  text-decoration: none;
}


/* ==========================================================
   VERY SUBTLE TOP BRAND ACCENT
========================================================== */

.rvmm-menu::before {

  content: "";

  position: absolute;

  top: 0;

  left: 10%;

  width: 80%;

  height: 2px;

  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(37, 99, 255, 0.45) 30%,
    rgba(37, 99, 255, 0.45) 82%,
    rgba(249, 115, 22, 0.75) 92%,
    transparent 100%
  );

  pointer-events: none;
}


/* ==========================================================
   GRID
========================================================== */

.rvmm-grid {

  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 7px;

  width: 100%;
}


/* ==========================================================
   STAGE
========================================================== */

.rvmm-stage {

  position: relative;

  min-width: 0;

  padding: 11px 9px;

  border-radius: 11px;

  overflow: hidden;

  transition:
    transform 0.22s ease,
    box-shadow 0.22s ease;
}


.rvmm-stage-find {
  background: var(--rvmm-find-bg);
}


.rvmm-stage-engage {
  background: var(--rvmm-engage-bg);
}


.rvmm-stage-grow {
  background: var(--rvmm-grow-bg);
}


.rvmm-stage:hover {

  box-shadow:
    0 8px 20px rgba(7, 17, 34, 0.05);
}


/* ==========================================================
   SMALL ORANGE GROW ACCENT
========================================================== */

.rvmm-orange-accent {

  position: absolute;

  top: 0;

  right: 15px;

  width: 29px;

  height: 3px;

  border-radius:
    0
    0
    10px
    10px;

  background: var(--rvmm-orange);
}


/* ==========================================================
   STAGE HEADER
========================================================== */

.rvmm-stage-heading {

  display: flex;

  align-items: center;

  gap: 7px;

  padding: 0 5px;

  margin-bottom: 7px;
}


/* ==========================================================
   ICON BOX
========================================================== */

.rvmm-stage-icon {

  width: 27px;

  height: 27px;

  flex: 0 0 27px;

  display: flex;

  align-items: center;

  justify-content: center;

  color: var(--rvmm-blue);

  background:
    rgba(255, 255, 255, 0.85);

  border:
    1px solid
    rgba(37, 99, 255, 0.11);

  border-radius: 7px;

  box-shadow:
    0 2px 5px rgba(7, 17, 34, 0.03);
}


/* GROW ICON:
   subtle orange usage */

.rvmm-stage-icon-orange {

  color: var(--rvmm-orange);

  background:
    var(--rvmm-orange-soft);

  border-color:
    rgba(249, 115, 22, 0.13);
}


/* ICON SVG */

.rvmm-stage-icon svg {

  width: 14px;

  height: 14px;

  display: block;

  fill: none;

  stroke: currentColor;

  stroke-width: 1.8;

  stroke-linecap: round;

  stroke-linejoin: round;
}


/* ==========================================================
   STAGE LABEL
========================================================== */

.rvmm-stage-label {

  display: block;

  font-family:
    "Poppins",
    sans-serif;

  font-size: 10px;

  line-height: 1;

  font-weight: 600;

  letter-spacing: 0.09em;

  text-transform: uppercase;

  color: var(--rvmm-blue-dark);
}


/* ==========================================================
   MENU ITEM
========================================================== */

.rvmm-item {

  display: block;

  width: 100%;

  padding: 9px;

  margin: 0;

  border-radius: 8px;

  color: var(--rvmm-text);

  transition:
    background-color 0.22s ease,
    transform 0.22s ease,
    box-shadow 0.22s ease;
}


.rvmm-item + .rvmm-item {

  margin-top: 1px;
}


/* HOVER */

.rvmm-item:hover {

  background:
    rgba(255, 255, 255, 0.96);

  transform:
    translateX(2px);

  box-shadow:
    0 4px 13px rgba(7, 17, 34, 0.045);
}


/* KEYBOARD ACCESSIBILITY */

.rvmm-item:focus-visible {

  outline:
    2px solid var(--rvmm-blue);

  outline-offset: 1px;

  background: #ffffff;
}


/* ==========================================================
   ITEM TITLE
========================================================== */

.rvmm-item-title {

  display: block;

  margin-bottom: 3px;

  font-family:
    "Poppins",
    sans-serif;

  font-size: 12.5px;

  line-height: 1.35;

  font-weight: 600;

  letter-spacing: -0.01em;

  color: var(--rvmm-navy);
}


/* ==========================================================
   ITEM DESCRIPTION
========================================================== */

.rvmm-item-desc {

  display: block;

  font-family:
    "Poppins",
    sans-serif;

  font-size: 9.8px;

  line-height: 1.45;

  font-weight: 400;

  color: var(--rvmm-muted);
}


/* ==========================================================
   AI ORANGE DETAIL
========================================================== */

.rvmm-ai-title {

  display: flex;

  align-items: center;

  gap: 6px;
}


.rvmm-ai-dot {

  width: 5px;

  height: 5px;

  display: inline-block;

  flex: 0 0 5px;

  border-radius: 50%;

  background:
    var(--rvmm-orange);

  box-shadow:
    0 0 0 3px
    rgba(249, 115, 22, 0.09);
}


/* Subtle AI hover */

.rvmm-item-ai:hover {

  background:
    rgba(255, 248, 243, 0.92);
}


/* ==========================================================
   FOOTER
========================================================== */

.rvmm-footer {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 15px;

  margin-top: 7px;

  padding:
    10px
    10px
    3px;

  border-top:
    1px solid var(--rvmm-line);
}


/* ==========================================================
   FOOTER TEXT
========================================================== */

.rvmm-footer-text {

  margin: 0;

  font-family:
    "Poppins",
    sans-serif;

  font-size: 10.5px;

  line-height: 1.5;

  font-weight: 400;

  color: var(--rvmm-muted);
}


/* ==========================================================
   FOOTER LINK
========================================================== */

.rvmm-footer-link {

  position: relative;

  display: inline-flex;

  align-items: center;

  gap: 7px;

  flex: 0 0 auto;

  padding-bottom: 2px;

  font-family:
    "Poppins",
    sans-serif;

  font-size: 11.5px;

  line-height: 1.4;

  font-weight: 600;

  color: var(--rvmm-blue);

  white-space: nowrap;
}


/* ==========================================================
   FOOTER ARROW ORANGE ACCENT
========================================================== */

.rvmm-footer-arrow {

  width: 22px;

  height: 22px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  color: var(--rvmm-orange);

  background:
    var(--rvmm-orange-soft);

  transition:
    background-color 0.25s ease,
    transform 0.25s ease;
}


.rvmm-footer-arrow svg {

  width: 11px;

  height: 11px;

  display: block;

  fill: none;

  stroke: currentColor;

  stroke-width: 2;

  stroke-linecap: round;

  stroke-linejoin: round;
}


/* Footer hover */

.rvmm-footer-link:hover
.rvmm-footer-arrow {

  background:
    var(--rvmm-orange);

  color: #ffffff;

  transform:
    translateX(2px);
}


/* ==========================================================
   FOOTER UNDERLINE
========================================================== */

.rvmm-footer-link::after {

  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  width: calc(100% - 29px);

  height: 1px;

  background:
    var(--rvmm-blue);

  transform:
    scaleX(0);

  transform-origin:
    right;

  transition:
    transform 0.3s ease;
}


.rvmm-footer-link:hover::after {

  transform:
    scaleX(1);

  transform-origin:
    left;
}


.rvmm-footer-link:focus-visible {

  outline:
    2px solid var(--rvmm-blue);

  outline-offset:
    4px;

  border-radius:
    3px;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 800px) {

  .rvmm-menu {

    max-width: 620px;

    padding: 8px;

    border-radius: 14px;
  }


  .rvmm-grid {

    gap: 6px;
  }


  .rvmm-stage {

    padding:
      10px
      7px;
  }


  .rvmm-item {

    padding:
      8px
      7px;
  }


  .rvmm-item-title {

    font-size: 11.8px;
  }


  .rvmm-item-desc {

    font-size: 9.3px;
  }


  .rvmm-stage-icon {

    width: 25px;

    height: 25px;

    flex-basis: 25px;
  }


  .rvmm-stage-icon svg {

    width: 13px;

    height: 13px;
  }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 600px) {

  .rvmm-menu {

    width: 100%;

    max-width: 100%;

    padding: 8px;

    border-radius: 13px;

    box-shadow:
      0 14px 35px -20px
      rgba(7, 17, 34, 0.25);
  }


  /*
     Three columns become
     one vertical column
  */

  .rvmm-grid {

    grid-template-columns:
      1fr;

    gap: 6px;
  }


  .rvmm-stage {

    width: 100%;

    padding: 10px;
  }


  .rvmm-stage-heading {

    margin-bottom: 4px;
  }


  .rvmm-stage-icon {

    width: 27px;

    height: 27px;

    flex-basis: 27px;
  }


  .rvmm-stage-icon svg {

    width: 14px;

    height: 14px;
  }


  .rvmm-stage-label {

    font-size: 10px;
  }


  .rvmm-item {

    padding:
      8px
      9px;
  }


  /* No horizontal movement on touch */

  .rvmm-item:hover {

    transform:
      none;
  }


  .rvmm-item-title {

    font-size:
      12.7px;
  }


  .rvmm-item-desc {

    font-size:
      10px;

    line-height:
      1.5;
  }


  .rvmm-footer {

    flex-direction:
      column;

    align-items:
      flex-start;

    gap: 8px;

    padding:
      10px
      8px
      3px;
  }


  .rvmm-footer-text {

    font-size:
      10.5px;
  }


  .rvmm-footer-link {

    font-size:
      11.5px;
  }

}


/* ==========================================================
   VERY SMALL MOBILE
========================================================== */

@media (max-width: 380px) {

  .rvmm-menu {

    padding:
      7px;
  }


  .rvmm-stage {

    padding:
      9px
      8px;
  }


  .rvmm-item {

    padding:
      8px;
  }


  .rvmm-item-title {

    font-size:
      12.2px;
  }


  .rvmm-item-desc {

    font-size:
      9.7px;
  }

}


/* ==========================================================
   REDUCED MOTION
========================================================== */

@media (prefers-reduced-motion: reduce) {

  .rvmm-menu *,
  .rvmm-menu *::before,
  .rvmm-menu *::after {

    transition:
      none !important;
  }

}/* End custom CSS */